Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relationship properties - connection variable not defined #369

Closed
aitor3ml opened this issue Jul 30, 2021 · 5 comments
Closed

Relationship properties - connection variable not defined #369

aitor3ml opened this issue Jul 30, 2021 · 5 comments
Labels
2.0.0 bug report Something isn't working

Comments

@aitor3ml
Copy link

aitor3ml commented Jul 30, 2021

Describe the bug
Variable not defined error when trying to request relationship properties (using interface).

Type definitions

type Dato {
  uuid: ID
  dependeTo : [Dato] @relationship(type: "DEPENDE", direction: OUT, properties: "Depende")
  dependeFrom : [Dato] @relationship(type: "DEPENDE", direction: IN, properties: "Depende")
}

interface Depende {
  uuid: ID
  variable: String
}

type Query {
  getDato(uuid: String): Dato
    @cypher(
      statement: """
        MATCH (d:Dato {uuid: $uuid}) RETURN d
        """
    )
}

To Reproduce
Steps to reproduce the behavior:

  1. Run a server with the previous graphql schema
  2. Execute the following Query
    This will work correctly.
{
  getDato(uuid:"4ebd5854-9caf-403f-bc96-f23f1a39e83d"){
    uuid
    dependeTo {
        uuid
      dependeFrom {
        uuid
      }      
    }
  }
}
  1. Then run the following Query
    This will return error.
{
  getDato(uuid:"4ebd5854-9caf-403f-bc96-f23f1a39e83d"){
    uuid
    dependeToConnection {
      edges {
        uuid
        variable
      }
    }
  }
}
{
  "errors": [
    {
      "message": "Variable `dependeToConnection` not defined (line 6, column 22 (offset: 223))\n\"RETURN this { .uuid, dependeToConnection } AS this\"\n                      ^",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "getDato"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "code": "Neo.ClientError.Statement.SyntaxError",
          "name": "Neo4jError",
          "stacktrace": [
            "Neo4jError: Variable `dependeToConnection` not defined (line 6, column 22 (offset: 223))",
            "\"RETURN this { .uuid, dependeToConnection } AS this\"",
            "                      ^",
            ": ",
            "    at captureStacktrace (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/result.js:239:17)",
            "    at new Result (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/result.js:59:23)",
            "    at newCompletedResult (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/transaction.js:372:12)",
            "    at Object.run (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/transaction.js:226:20)",
            "    at Transaction.run (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/transaction.js:98:34)",
            "    at /home/amartin/projects/lynx/gits/lynx-backend/node_modules/@neo4j/graphql/src/utils/execute.ts:88:16",
            "    at TransactionExecutor._safeExecuteTransactionWork (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/internal/transaction-executor.js:92:26)",
            "    at TransactionExecutor._executeTransactionInsidePromise (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/internal/transaction-executor.js:83:34)",
            "    at /home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/internal/transaction-executor.js:40:19",
            "    at new Promise (<anonymous>)",
            "    at TransactionExecutor.execute (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/internal/transaction-executor.js:39:16)",
            "    at Session._runTransaction (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/session.js:305:42)",
            "    at Session.writeTransaction (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/neo4j-driver-core/lib/session.js:301:21)",
            "    at Object.<anonymous> (/home/amartin/projects/lynx/gits/lynx-backend/node_modules/@neo4j/graphql/src/utils/execute.ts:87:92)",
            "    at Generator.next (<anonymous>)",
            "    at /home/amartin/projects/lynx/gits/lynx-backend/node_modules/@neo4j/graphql/dist/utils/execute.js:26:71"
          ]
        }
      }
    }
  ],
  "data": {
    "getDato": null
  }
}

Expected behavior
Is expected to receive the variable property for each relationship "DEPENDE".

System (please complete the following information):

  • OS: Debian 10
  • Version: 2.0.0-alpha.4
  • Node.js version: v14.16.0

Additional context

  • In neo4j-graphql-js this query failed when relationships when from and to the same label (in this case (:Dato)-[]->(:Dato) but in this case fails even when this are different.
  • When only one direction is defined the query also fails.
  • Cypher Debug:
@neo4j/graphql:execute About to execute Cypher:
Cypher:

                WITH apoc.cypher.runFirstColumn("MATCH (d:Dato {uuid: $uuid}) RETURN d", {auth: $auth, uuid: $uuid}, false) as x
                UNWIND x as this
                WITH this
            
RETURN this { .uuid, dependeToConnection } AS this
Params:
{
  "uuid": "4ebd5854-9caf-403f-bc96-f23f1a39e83d",
  "auth": {
    "isAuthenticated": false,
    "roles": []
  }
} +4s
  @neo4j/graphql:execute Neo4jError: Variable `dependeToConnection` not defined (line 6, column 22 (offset: 223))
@aitor3ml aitor3ml added bug report Something isn't working inbox labels Jul 30, 2021
@darrellwarde
Copy link
Contributor

Thanks @aitor3ml, we'll look into it! 🙂

danstarns added a commit to danstarns/graphql that referenced this issue Jul 30, 2021
danstarns added a commit to danstarns/graphql that referenced this issue Jul 30, 2021
@aitor3ml
Copy link
Author

@darrellwarde thank you for you fast response.
Btw, any idea when you will release a new version including this fix (alpha)?
We are finishing the migration from neo4j-graphql-js and trying to continue our product development using this library.
Hopefully we will be able to migrate all of our clients to an stable release in our product's next milestone.

@darrellwarde
Copy link
Contributor

Hey @aitor3ml, obviously no promises, but we're aiming to do the next release this afternoon (UK time). 🙂

danstarns added a commit that referenced this issue Jul 30, 2021
* fix: issue #369 connections using cypher

* test: coverage for issue #369
@danstarns
Copy link
Contributor

Hey, @aitor3ml download the latest next version for the update https://www.npmjs.com/package/@neo4j/graphql/v/2.0.0-rc.1 Have a nice day :)

@aitor3ml
Copy link
Author

Worked like a charm (2.0.0-rc.1), thank you once again!
image

darrellwarde added a commit that referenced this issue Aug 10, 2021
* Relationship properties - connection fields with filtering and sorting (#205)

* Schema generation and Cypher translation for basic relationship property queries using GraphQL cursor connections

Somewhat TCK tested, but still requires integration tests

* Connection fields now returned for both queries and mutations

An array of new TCK tests validating the new filtering code and projections of connections

* Relationship Properties Union Support (#215)

* Schema generation and Cypher translation for basic relationship property queries using GraphQL cursor connections

Somewhat TCK tested, but still requires integration tests

* Connection fields now returned for both queries and mutations

An array of new TCK tests validating the new filtering code and projections of connections

* Union support

* Few loose ends for unions with relationship properties (#218)

* Feat/relationship-properties-create (#219)

* test: add inital for creating rel properties

* feat: add inital for creating rel properties

* feat: get unions working with nested create

* test: fix ogm tests to include nested create changes

* Relationship property update operations (#222)

* Schema generation and Cypher translation for basic relationship property queries using GraphQL cursor connections

Somewhat TCK tested, but still requires integration tests

* Connection fields now returned for both queries and mutations

An array of new TCK tests validating the new filtering code and projections of connections

* Union support

* A couple of loose ends for unions - __resolveType and filtering

* Merging 2.0.0 branch is for some reason reverting some of my changes, trying to fix

* Make breaking schema changes and fix tests

* Update relationship properties, validated by TCK tests

* Integration tests for update operations

* Feat/relationship-properties-connect (#224)

* test: add cases for connecting with rel properties

* feat: add logic for connecting with rel properties

* fix: change properties set to use the new appointed name

* refactor: only add update with when needed

* test: update all breaking tests due to changes in rel properties connect

* feat: add union connect support

* test: union connect support

* Feat/composite-where-on-delete-and-disconnect (#239)

* test: add composite where without unions and auth

Co-authored-by: Darrell Warde <[email protected]>

* feat: added union support for composite where

Co-authored-by: Darrell Warde <[email protected]>

* config: add husky back

Co-authored-by: Darrell Warde <[email protected]>

* Fix bug in code merged in from master

* Update version and mark prerelease

* Bring 2.0.0 in line with master (#250)

* Update neo-push-server to enforce nodemon uses local ts-node install
(force rerun cla check)

* Fix typos

* refactor: add more debug logs for get jwt

Co-authored-by: Evan Reed <[email protected]>
Co-authored-by: Matt Murphy <[email protected]>
Co-authored-by: Daniel Starns <[email protected]>

* Documentation for 2.0.0 (#242)

* Beginning of documentation for relationship properties

* Basic migration guide (navigation a little broken)

* Continued work on 2.0.0 docs

* Fixed headers not working for new pages (page keys cannot begin with a number)

* Remove node from where clause of connect

* A couple of outstanding documentation tasks

* Highlight that req must be passed into context, add lambda edge case

* Clarify Point and CartesianPoint usage in docs

* Relationship propery enum support

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* General 2.0.0 housekeeping (#255)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Bring 2.0.0 in line with master (#264)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Fixed nullability of Query return type

* Update code comment

* refactor: remove neoSchema from OGM properties (#256)

* feat: add cypherParams (#254)

* Use upperFirst from graphql-compose in all cases (#262)

* Remove upper-case-first and our own util function from @neo4j/graphql - use upperFirst from graphql-compose

* Re-export graphql-compose upperFirst from @neo4j/graphql for use in @neo4j/graphql-ogm, remove upper-case-first dependency

* Fix TCK tests broken from merge

Co-authored-by: Daniel Starns <[email protected]>

* Version update

* Update index.adoc

Fix broken link

* Update relationships.adoc

Fix typo, relationship properties type should be interface

* Update filtering.adoc

Add missing word, and change phrasing

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Add scalars earlier to fix DateTime relationship properties, and merge changes from master (#272)

* Potential fix for the problem serializing Int/Float values

* Fix bug in previous bugfix code related to this fix

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Fixed nullability of Query return type

* Update code comment

* refactor: remove neoSchema from OGM properties (#256)

* feat: add cypherParams (#254)

* Quick fix for custom type resolvers on unions. Prevents generated resolvers from being overwritten with __resolveType.

* Use upperFirst from graphql-compose in all cases (#262)

* Remove upper-case-first and our own util function from @neo4j/graphql - use upperFirst from graphql-compose

* Re-export graphql-compose upperFirst from @neo4j/graphql for use in @neo4j/graphql-ogm, remove upper-case-first dependency

* Fix TCK tests broken from merge

* update: documentation

* Update filtering.adoc

Add missing word and change phrasing

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Dan Gerard <[email protected]>
Co-authored-by: dmoree <[email protected]>

* Version update

* Fix exact match when checking for existing scalars

“Date” would otherwise match “scalar DateTime”.

* Add Date type and map it to Neo4j Date

* Fix for projecting connection fields from relationship fields (#284)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Fix projecting connection field from a relationship field

* Feat/Connection Auth (#286)

* test: add coverage for connections auth

* feat: add connections auth

* test: add coverage for auth where and user where

* Pagination Cursors on Connections (Relay Specification) (#282)

* skip and limit on connections

* add pageinfo and pagecursor definitions

* add totalCount, return connections

* add skip, limit on unions, make all tests pass

* add global node resolution, green on tests

* add copyright header to connection.ts

* minor cleanup

* cleanup

* remove before/last arguments; move pagination arguments into options

* use one consistent node interface definition

* remove cursor Scalar

* use isInt on totalCount check in make-augmented-schema connection resolver

* remove redundant arraySlice check in createConnectionWithEdge properties

* remove Node global resolution from this pr

* remove erroneous yalc stuff, formatting cleanup

* hoist connection args to field level, fix tests from merge, simplify connection cursor function

* integration test for pagination, fix skipLimitStr

* add pagination helper tests, fix off-by-one error in cursor calculation

* remove erroneous console

* move pagination tests

* Add union relationship where (#291)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Add top-level where for union relationship fields

* Add "node" level to connect where (#290)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Remove seemingly redundant input type

* Add "node level" to connect where

* Update other tests, and documentation

* Only return union members which have fragments in the selection set (#289)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Only return union members of which a fragment is present in the selection set

* Fix test broken from merge

* Refactor/rename skip to offset (#294)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Rename skip to offset

* Nested update argument change (#295)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* Update structure of nested updates

* Update documentation with new update structure

* Merge most recent changes from master into 2.0.0 (#306)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* fix(jwt): req.cookies might be undefined

this fix prevents the app from crashing id req.cookies is undefined

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* fix: use package json for useragent name and version (#271)

* fix: use package json for useragent name and version

* fix: add userAgent support for <=4.2 and >=4.3 drivers

* config: remove codeowners (#277)

* Version update

* fix(login): avoid confusion caused by secondary button (#265)

* fix: losing params while creating Auth Predicate (#281)

* fix: loosing params while creating Auth Predicate

* fix: typos

* fix: typo

* feat: add projection to top level cypher directive (#251)

* feat: add projection to top level queries and mutations using cypher directive

* fix: add missing cypherParams

* Fix for loss of scalar and field level resolvers (#297)

* wrapCustomResolvers removed in favour of schema level resolver auth injection

* Add test cases for this fix

* Mention double escaping for @cypher directive

* Version update

Co-authored-by: gaspard <[email protected]>
Co-authored-by: Oskar Hane <[email protected]>
Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>
Co-authored-by: Arnaud Gissinger <[email protected]>

* Refactor/union arguments (#304)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* fix(jwt): req.cookies might be undefined

this fix prevents the app from crashing id req.cookies is undefined

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* fix: use package json for useragent name and version (#271)

* fix: use package json for useragent name and version

* fix: add userAgent support for <=4.2 and >=4.3 drivers

* config: remove codeowners (#277)

* Version update

* fix(login): avoid confusion caused by secondary button (#265)

* fix: losing params while creating Auth Predicate (#281)

* fix: loosing params while creating Auth Predicate

* fix: typos

* fix: typo

* feat: add projection to top level cypher directive (#251)

* feat: add projection to top level queries and mutations using cypher directive

* fix: add missing cypherParams

* Fix for loss of scalar and field level resolvers (#297)

* wrapCustomResolvers removed in favour of schema level resolver auth injection

* Add test cases for this fix

* Mention double escaping for @cypher directive

* Version update

* checkpoint: commit all changes to date - NOT WORKING

* Committing before merging in 2.0.0 changes

* Union connect and test needs fixing

* Add .huskyrc back

* Reformat schema TCK tests for better diff

* Reorganise schema TCK for better diff

* Create union input types in a map

* Various work, including nested connects and disconnects for unions, fixing a variety of bugs

* Documentation changes

* Fix structure of nested creates for unions, and add tests for nested union mutations

* Fix where input for nested update

* Add integration tests for multiple union create/update

Co-authored-by: gaspard <[email protected]>
Co-authored-by: Oskar Hane <[email protected]>
Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>
Co-authored-by: Arnaud Gissinger <[email protected]>

* Merge changes from master into 2.0.0 (#309)

* Missing copyright headers

* Point to prerelease documentation for 2.0.0 branch

* General housekeeping before release

* Update code comment

* Fix TCK tests broken from merge

* fix(jwt): req.cookies might be undefined

this fix prevents the app from crashing id req.cookies is undefined

* Add scalars earlier in schema augmentation for use in types and interfaces without throwing Error (fixes DateTime relationship properties)

* Changes to accomodate merge from master

* fix: use package json for useragent name and version (#271)

* fix: use package json for useragent name and version

* fix: add userAgent support for <=4.2 and >=4.3 drivers

* config: remove codeowners (#277)

* Version update

* fix(login): avoid confusion caused by secondary button (#265)

* fix: losing params while creating Auth Predicate (#281)

* fix: loosing params while creating Auth Predicate

* fix: typos

* fix: typo

* feat: add projection to top level cypher directive (#251)

* feat: add projection to top level queries and mutations using cypher directive

* fix: add missing cypherParams

* Fix for loss of scalar and field level resolvers (#297)

* wrapCustomResolvers removed in favour of schema level resolver auth injection

* Add test cases for this fix

* Mention double escaping for @cypher directive

* Version update

* Allows users to pass in decoded JWT (#303)

* Allows users to pass in decoded JWT - needs more testing

* More tests for decoded JWTs

* Updates to auth documentation

* Fix relationships documentation examples (#296)

* Version update

Co-authored-by: gaspard <[email protected]>
Co-authored-by: Oskar Hane <[email protected]>
Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>
Co-authored-by: Arnaud Gissinger <[email protected]>

* Selectively project union members

* Replace instances of "properties" with "relationship"

* Fix errors when no sorting available on related nodes

* Add tests for #288 which previously didn't work due to this bug

* Fixed tests broken after merge

* Merge 1.2.1 changes from master into 2.0.0 (#319)

* Fix for bug, caused by returning a union

* Docs media (#310)

* config: remove codeowners

* docs: add some media links

* docs: change links to list

* Update README.md

Capitalise NODES

* docs: add wills talk to list

Co-authored-by: Darrell Warde <[email protected]>

* Version update

* Fixed tests broken after merge

Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>

* refactor: change union where on connections (#317)

* refactor: change union where on connections

* Merge changes from 2.0.0 into union-where

* test: add coverage for using relationship on union where

* refactor: remove temp file

* test: format and add relationship and node coverage

* Jwt type (#321)

* config: remove codeowners

* refactor: type change to boolean

* Refactor/tck test formatting (#323)

* Fix for bug, caused by returning a union

* Docs media (#310)

* config: remove codeowners

* docs: add some media links

* docs: change links to list

* Update README.md

Capitalise NODES

* docs: add wills talk to list

Co-authored-by: Darrell Warde <[email protected]>

* Version update

* Fixed tests broken after merge

* Refactor headings and add markdownlint config to allow nested heading re-use

* Use code block tags which allow formatting

* Replace ```schema with ```graphql

* Slight markdownlint config tweak

* Merge branch '2.0.0' into refactor/tck-test-formatting

Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>

* Version update

* Add Connection where field to node where types

Co-authored-by: Daniel Starns <[email protected]>

* Added more test cases

* Ensure that all combinations of connection projections work without error

* Remove commented code

* Make startCursor and endCursor nullable

* fix: relationship cypher params added for create

* update: integration test for update -> create

* fix: use correct property for proper translation

* update: integration test for update -> update

* fix: formatting

* Feat/Count queries (#329)

* test: add init coverage for count

* feat: add count queries

* test: changes to existing for count queries

* docs: add count queries

* docs: remove misleading comment on count

* refactor: change to xCount over countX

* feat: add count to ogm

* Align naming of "issue tests"

* Version update

* Manually add schemaDirectives after resolvers

* Add missing copyright header

* Remove leftover comment, add some explanation to order

* A new approach for deciding which union members to return!

* Validation of Type Definitions (#300)

* docs: add aura flag apoc

* fix: temporarily disable validateTypeDefs

Co-authored-by: Darrell Warde <[email protected]>

* docs: duplicate doc text

* docs: remove auth aura flag

* docs: add license to docs and readmes

* docs: wrong licence link

* fix: validate document

* refactor: remove compose from validate document

* test: add the correct issue test cases

* refactor: remove checkNodeImplementsInterfaces

* test: add case for github issue

* Working solution for type definition validation

* Allow for skipping of validation for some edge cases such as using our internally generated types

* Add tests that demonstrate errors will be thrown if using "protected" types

* Filter out internel input type names during validation so that they can be used without error

* Add test to demonstrate that directives cannot be redefined

* Make suggested changes from PR

Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Darrell Warde <[email protected]>

* Remove redundant comments

* Rename points.md to point.md

* Add missing types to where for relationship properties

* Add missing Date filters

* Test that Date and Boolean relationship property filters added to schema

* Added Cypher TCK test for filtering by relationship property temporal values

* Allow OGM selectionSet to be SelectionSetNode

* Dependency patch upgrades

* Upgrade graphql-compose to 8.1.0

* graphql-compose to 9.x and fix results of breaking changes

* Fix/issue 369 (#370)

* fix: issue #369 connections using cypher

* test: coverage for issue #369

* Alias connections (#368)

* fix: alias connections

* test: alias connections

* refactor: change to source and info

* test: add a case with many alias

* 2.0.0 documentation updates (#366)

* Docs changes

* Add unions page back to migration guide

* Document union where changes in migration guide

* Move custom resolvers page down

* Ensure contents in type definitions map to underlying pages

* Documentation changes from editorial comments, aligning frontpage with other products

* Missing summaries in contents

* Restructure following editorial comments

* Split out each Mutation operation into separate chapters

* Rewrite of getting started guide, with more examples and screenshots

* Add type definitions basics page

* Add documentation for all GraphQL types

* Fix order of type definitions pages

* Rewrite introduction page with features, interacting and deployment section

* Change documentation for interfaces, highlighting that they are used for relationship properties

* Fix references to pagination

* Continued rewriting and restructuring

* Rework auth content

* Overhaul API references for both Neo4jGraphQL and OGM

* Changes reflecting @danstarns comments

* Version update

* Remove duplicate sentence

* Fix OGM contents

* Remove ; and &

* Filter out nested input types during validation

* Change minimum database version to 4.1.5

* Fix validation of database versions using semver package

* Don't list temporal and spatial types on filtering page - could fall out of date

* Error auth relationship properties (#379)

* feat: throw error when auth directive is used on relationship props

* test: when auth directive is used on relationship props

* Add a simple util file which can be called with ts-node to clear down database before/after running integration tests

* Add comment explaining teardown file

* Error relationship on relationship properties (#381)

* feat: throw error when relationship directive is used on relationship props

* test: when relationship directive is used on relationship props

* Coerce Aura database version numbers

* Refactor/unify relationship fields (#383)

* feat: throw error when relationship directive is used on relationship props

* test: when relationship directive is used on relationship props

* refactor: unify relationship properties fields and reuse existing functions

* test: add for cypher on interface

* Rough find/replace attempt at passing last bookmark into GraphQL execution

* Treat custom scalars, enums and primitives the same for custom Cypher fields

* Also fix custom scalars for Query-level custom Cypher

* Style guidance - remove instances of "whilst"

* Remove "Step x" from Getting Started, change to second person

* Attempt to change all wording to second person

* refactor: change schema references from relationship to edge (#389)

* refactor: change schema references from relationship to edge

* docs: add note about relationship and edges

* Update relationships.adoc

Rephrase sentence to be passive

* feat: export auth errors from index (#394)

* Reserved properties (#396)

* feat: throw error when using reserved names

* test: error when using reserved names

* docs: remove useage of Node type

* refactor: changes from PR comments

* Version update

* Fix multiple connections being returned from custom Cypher

* Remove _IN and _NOT_IN filters for relationships

* Remove translation for surplus _IN and _NOT_IN

* Remove prerelease marker

* refactor: use alias for params and name for fields

* add: int test for nested connections and aliasing

* add: tck test for multiple aliasing on connections

Co-authored-by: Daniel Starns <[email protected]>
Co-authored-by: Darrell Warde <[email protected]>
Co-authored-by: Neil Dewhurst <[email protected]>
Co-authored-by: Evan Reed <[email protected]>
Co-authored-by: Matt Murphy <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>
Co-authored-by: Dan Gerard <[email protected]>
Co-authored-by: dmoree <[email protected]>
Co-authored-by: Oskar Hane <[email protected]>
Co-authored-by: nsethi <[email protected]>
Co-authored-by: gaspard <[email protected]>
Co-authored-by: Arnaud Gissinger <[email protected]>
Co-authored-by: dmoree <[email protected]>
Co-authored-by: Neo Technology Build Agent <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.0.0 bug report Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants