Open sanchit-gupta-cn opened 3 years ago
I solved the issue using v2.0.0.dev29
pip install graphql-compiler==2.0.0.dev29
But still wondering when will v2.0.0 be released because we intend to use graphql-compiler
in production.
Hi, thanks for checking out this project and for tracking down the issue. For now, yes, I'd advise using one of the v2.0.0.dev releases — some of the API-breaking changes we need to do to release v2.0 (e.g. deprecate Gremlin and explicitly define the package's public API) have had to be pushed back. I unfortunately don't have a timeline I can share at the moment.
I also see that you are using the Cypher backend, potentially with Redis Graph? The Cypher backend is still in an alpha stage and not currently actively developed — last time we worked on it, we found that the then-most-recent Neo4j and Redis Graph versions didn't yet support all aspects of the latest published version of the Cypher language spec, so we paused development to allow them to catch up to the spec.
We are unfortunately a very small team and we don't have the bandwidth to pick Cypher development back up at this time. Our efforts have been focused largely on improving the SQL side of the compiler since that's a very common and large use case, so I'd encourage you to try the compiler's support for PostgreSQL. If instead you are set on using the Cypher backend, we'd be happy to take pull requests :)
Sorry I don't have a better reply!
Also, if you don't mind me asking out of curiosity, how did you hear about GraphQL compiler? Hoping to figure out the popular ways through which people discover our project.
Hi, Thank you for the detailed reply. Will be looking forward to v2 being released.
And yes, your guess was correct. I was trying to use graphql-compiler
along with RedisGraph. The main motivation was to avoid writing boilerplate code converting GraphQL to Cypher, something like this library, but for RedisGraph. I came across graphql-compiler
when going through this issue.
Btw, redisgraph-py now supports query parameters (Ref), so maybe this doc can be updated. But yeah, RedisGraph still doesn't have complete Cypher coverage.
Also, we really appreciate the kensho guys contributing to this project and keeping it open source (and for also writing awesome blogs!). I'll make sure to raise PRs if I find myself modifying the code for our use-case, or if I find any bugs :).
Thank you for the kind words, they made our day!
Please feel free to open PRs for anything that needs updating, and we'd be happy to review and accept them. The Cypher backend actually started off as @LWprogramming's intern project, and while we haven't worked on it in a while, we'd love to have it properly updated and as fully-functional as possible.
The doc you mentioned needs updating lives in this repo here and it'd be a great place to start contributing.
Also, if I understood correctly, you mentioned that this issue is resolved in the v2.0 prereleases? If so, I'd like to mark it as closed since fixing the reported problem doesn't require any further code changes, and simply requires v2.0 to be released.
Hi, I am getting a TypeError on importing
graphql_compiler.compile_graphql_to_cypher
.Stacktrace
Steps to Reproduce
System details
Linux: Ubuntu 20.04.1 LTS Python version: 3.6.12 The output of
pip list
:PS: The python virtual environment had just
graphql-compiler
installed.Things I already tried
I tried with python v3.8.5. Got the same error.
I went through this issue https://github.com/kensho-technologies/graphql-compiler/issues/861 and made sure that the package versions are correct, especially
graphql-core
as mentioned in setup.pyDigging a little more, I found that error points to L26 of graphql_compiler/schema.py. Snippet of code around there is:
here you are attempting to create a
GraphQLArgument
withtype
=GraphQLNonNull(GraphQLString), but going through the codebase ofgraphql-core
v2.3.2,class GraphQLArgument
constructor is this:the constructor seems to accept the keyword argument
type_
instead oftype
. So I went through your repo to find over here that this change fromtype
totype_
has already been done.pip install graphql-compiler
installs v1.11.0. Should I explicitly use one of v2.0.0dev versions?Sorry if this was a lot of info but I hope that it helps in resolving this issue. Looking forward to your reply.