graphql

A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations.

APACHE-2.0 License

Downloads
80K
Stars
503
Committers
61

Bot releases are hidden (Show)

graphql - [email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - [email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - [email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Major Changes

  • #4675 9befbb8 Thanks @Andy2003! - change the name of the *EdgeAggregationWhereInput so it uses the name of the type defining the edge properties

  • #4410 a76c9c9 Thanks @angrykoala! - Change @relationshipProperties to target types instead of interfaces:

    Instead of defining relationship properties in an interface, they must be defined as a type:

    type Actor {
        name: String!
        actedIn: [Show!]! @relationship(type: "ACTED_IN", direction: OUT, properties: "ActedIn")
    }
    
    type ActedIn @relationshipProperties {
        screenTime: Int
    }
    
  • #4441 6653a9e Thanks @a-alle! - Introduce new properties field in connection edges field for relationship properties.

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Major Changes

  • #4410 a76c9c9 Thanks @angrykoala! - Change @relationshipProperties to target types instead of interfaces:

    Instead of defining relationship properties in an interface, they must be defined as a type:

    type Actor {
        name: String!
        actedIn: [Show!]! @relationship(type: "ACTED_IN", direction: OUT, properties: "ActedIn")
    }
    
    type ActedIn @relationshipProperties {
        screenTime: Int
    }
    
  • #4441 6653a9e Thanks @a-alle! - Introduce new properties field in connection edges field for relationship properties.

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Migration guide

In order to help facilitate the version upgrade we have written a migration guide for migrating to 5.0.0

Major Changes

  • #4675 9befbb8 Thanks @Andy2003! - change the name of the *EdgeAggregationWhereInput so it uses the name of the type defining the edge properties

  • #4623 980f078 Thanks @angrykoala! - Makes aggregation types nullable, even if the original property is non-nullable.

    This is because, in case of no nodes existing in the database, a null value will be returned by the aggregation

  • #4410 a76c9c9 Thanks @angrykoala! - Change @relationshipProperties to target types instead of interfaces:

    Instead of defining relationship properties in an interface, they must be defined as a type:

    type Actor {
        name: String!
        actedIn: [Show!]! @relationship(type: "ACTED_IN", direction: OUT, properties: "ActedIn")
    }
    
    type ActedIn @relationshipProperties {
        screenTime: Int
    }
    
  • #4441 6653a9e Thanks @a-alle! - Introduce new properties field in connection edges field for relationship properties.

  • #4661 99fc744 Thanks @Andy2003! - The old *AggregateSelectionNonNullable-types and *AggregateSelectionNullable-types are now merged into *AggregateSelection-types`.

  • #4360 5c42f8d Thanks @angrykoala! - Remove _on filter for interfaces

Minor Changes

  • #4285 1bba6d186 Thanks @angrykoala! - Add support for top level aggregation operations on interfaces

  • #4257 b58812f8e Thanks @mjfwebb! - Added nested aggregations on interfaces

  • #4375 d3c6d0e Thanks @angrykoala! - Add support for logical operators on filters for interfaces:

    interface Show {
        title: String!
    }
    
    type Movie implements Show {
        title: String!
    }
    
    type Series implements Show {
        title: String!
    }
    
    
    query actedInWhere {
        shows(where: { OR: [{ title: "Show 1" }, { title: "Show 2" }] }) {
            title
        }
    }
    
  • #4409 387e455 Thanks @MacondoExpress! - Add support for typename_IN filters for interfaces:

    interface Show {
        title: String!
    }
    type Movie implements Show {
        title: String!
    }
    type Series implements Show {
        title: String!
    }
    
    query actedInWhere {
        shows(where: { typename_IN: [Series] }) {
            title
        }
    }
    

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 8 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 9 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 9 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 9 months ago

Patch Changes

  • #4449 2bb8f8b Thanks @mjfwebb! - Fix: allow non-generated mutations on timestamp fields

    Before this patch, it wasn't possible to update a field with a timestamp directive even when the directive specified that only the UPDATE or CREATE operation field should be generated by the database.

  • #4375 d3c6d0e Thanks @angrykoala! - Add support for logical operators on filters for interfaces under the experimental flag:

    interface Show {
        title: String!
    }
    
    type Movie implements Show {
        title: String!
    }
    
    type Series implements Show {
        title: String!
    }
    
    
    query actedInWhere {
        shows(where: { OR: [{ title: "Show 1" }, { title: "Show 2" }] }) {
            title
        }
    }
    
  • #4360 5c42f8d Thanks @angrykoala! - Remove _on filter for interfaces under experimental flag

  • #4409 387e455 Thanks @MacondoExpress! - Add support for typename_IN filters for interfaces under the experimental flag:

    interface Show {
        title: String!
    }
    type Movie implements Show {
        title: String!
    }
    type Series implements Show {
        title: String!
    }
    
    query actedInWhere {
        shows(where: { typename_IN: [Series] }) {
            title
        }
    }
    
  • #4483 4b97531 Thanks @darrellwarde! - Fix authorization variable naming in create operations

  • #4507 66a19c5 Thanks @mjfwebb! - Fixes filtering on nested read operations

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes

graphql - @neo4j/[email protected]

Published by neo4j-team-graphql 11 months ago

Patch Changes