-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Reactive GraphQL #809
Reactive GraphQL #809
Conversation
… flow-typed folder
…eactive.js for refactor
…ted files and then pop them back
…e testable via setting a ENV variable `RUN_MODE`
…JS-based graphql. Still one failed test is unresolved.
Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at [email protected]. Thanks! If you are contributing on behalf of someone else (eg your employer): the individual CLA is not sufficient - use https://developers.facebook.com/opensource/cla?type=company instead. Contact [email protected] if you have any questions. |
@xareelee i would love to know whether there is any progress here or whether you figured out what caused the memory issue with rx. |
@Birowsky sorry, I'm working in ofo (China's biggest bike-sharing startup) and I'm too busy in this year. |
@xareelee no problemo, have fun mate! |
BTW there's also this implementation by @DxCx: https://www.npmjs.com/package/graphql-rxjs |
For repo maintenance I'm going to close this issue. I'm happy to see the experimentation of a reactive executor in related github projects! |
For anyone around here, I stumbled upon this very promising implementation and amazing work: https://github.com/mesosphere/reactive-graphql 👏 |
This PR is only for discussion about Reactive GraphQL we discussed before in the #647 (comment).
Here are what I did in January (sorry for delayed PR):
graphql.js
using RxJS to replace Promise-basedgraphql.js
(all tests passed, you could run ). Runyarn run testonly-rx
.graphql.js
using most.js to replace Promise-basedgraphql.js
(one test failed, still unresolved). Runyarn run testonly-most
.benchmark.js
to test the performance for Promise-based, RxJS-based and Most.js-basedgraphql()
. Runyarn run benchmark
.Current progress:
graphql
version for reactive programming.Current Issues:
graphql()
failed one test (has been reported at Unexpected raising error sequence cujojs/most#404).graphql()
with reach a memory issue when running benchmark — "JavaScript heap out of memory"TODO (if we agree to keep going this fork):
exeContext.errors.push
and use reactiveObservable.error()
instead ofthrow
for error-handling.graphql.js
with callback functions or our own version of Monad for Reactive Programming without any 3rd-party Rx dependency.