-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
feat: add support for npm 7 and Node 16, migrate to graphiql #1807
Conversation
Thanks for opening this pull request!
|
Yay! 🙌 for this PR! That's the way to go forward and address these issues sustainably. |
@mtrezza circular dependancies throws |
Without having looked into it, I'd assume the module is referenced somewhere but not imported or defined as dependency. Can also be an upstream issue. Or if you created package-lock using npm 7 with legacy peer dependencies it may be a missing dependency you'd have to manually define. |
Could there be incompatibilities between these different versions? In other words, do we need a compatibility table dashboard <> server? If so, maybe we should stick with graphql 15.4.0 because Parse Server |
Good idea, I will downgrade the dependancy to 15.4.0 |
Does this also add support for node 16? Currently dashboard requires |
I’m honestly not sure, I can check tomorrow |
Bumped some dependancies and some minor refactors to support Node 16 |
Looks good, I'll just try it out locally with some node versions to see whether it all works fine. |
For npm 7 it installs, but I get this:
Since webpack bumps from 4.x to 5.x there is also this:
crypto-js is a dependency of the Parse JS SDK:
The dashboard seems to run fine though, not sure which feature - if any in dashboard - is using crypto-js. See angular/angular-cli#20819 (comment); not sure whether this is something that needs to be fixed in dashboard or the JS SDK, and whether we can just ignore it for now, or not and have to stick to webpack 4.x. |
Let me know which way you think is best to approach this. I have no idea about webpack, react, etc, I was just trying to get this package fixed for npm 7. |
Webpack 4 used to auto-polyfill dependencies that were not meant to run in a browser. It seems this has been solved in brix/crypto-js#364. Parse JS SDK 3.3.0 depends on Maybe we release a new Parse JS SDK version first, then bump the JS SDK dependency to 3.3.1, then merge this PR. It should be fairly quick. |
I release Parse JS SDK 3.3.1 Can you bump parse to 3.3.1 in this PR? Then we should good to merge. |
Should be good to go! |
Really that easily? Does this build fine with npm 7 and 6? |
Yep, worked fine for me! |
I can confirm, it works for me locally too with npm 6 and 7. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing work! This fix will surely be a relief for many developers. Given the Node 16 / npm 7 support, I bumped this up to a feature commit.
# [3.1.0](3.0.0...3.1.0) (2021-09-29) ### Features * add support for npm 7 and Node 16, migrate to graphiql ([#1807](#1807)) ([b61fc7f](b61fc7f))
🎉 This pull request has been released in version 3.1.0 |
Congrats @dblythy, your PR was the first one across Parse to be released automatically 🙌 |
@dblythy |
@LMBernardo your generosity is greatly appreciated, however all of the core team are constantly working at improving our packages, and I can’t accept your offer simply because I addressed a neglected, difficult to isolate problem. If you would like to support our work, you are welcome to contribute to our OpenCollective 😊 Enjoy the update and let us know if you run into any other problems, or have any suggestions for improvements! |
Big win guys. Thank you. |
New Pull Request Checklist
Issue Description
Related issue: #1797
Approach
With GraphQL Playground soon to be archived and not receiving support, it's sub-dependancies are not compatible with GraphQL 15. The course of action here is to migrate to GraphQL playgrounds successor, GraphIQL
This fixes install issues on npm 7.
Note: GraphIQL is only compatible with GraphQL=<15.5.0
Closes:
#1797
#1752
#1633
#1639
TODOs before merging