graphql-parser icon indicating copy to clipboard operation
graphql-parser copied to clipboard

proposal:embed graphql-parser as a secure graphql parser for multiple languages

Open devkral opened this issue 1 year ago • 1 comments

Currently the reference implementation and python graphql-core have a stack problem (this project most probably too, but easily fixable via the generator hack, see graphql-core issue) and the evaluation of graphql strings is slow (performance bottleneck which could be used for a ddos):

You can specify highly nested graphs and the parser crashes before any security software can evaluate the tree.

See issue:

  • https://github.com/graphql/graphql-js/issues/4031
  • https://github.com/graphql-python/graphql-core/issues/216

So my idea is to fix the projects properly by replacing their parsers with a high performance graphql string parser. And this could be something like this project.

Are you interested in this idea?

Given that I have no rust knowledge yet I would need some guidance should we start the project. Also it would require some coordination between the three projects (not sure how this can be handled).

devkral avatar Apr 12 '24 13:04 devkral

I think we would take PRs to expose and test the crate via other languages (using something like Neon for JS for example) but it is not a priority for us.

LegNeato avatar Jul 11 '24 22:07 LegNeato

I'm going to close this as it is not actionable, but we would love PRs that add support for other langs!

LegNeato avatar Dec 03 '24 22:12 LegNeato

actually there is one approach. But I have no time, so far future. Just close it.

devkral avatar Dec 06 '24 07:12 devkral