-
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
[AS-223] Use forked version of protobufjs #3530
Conversation
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.
Looks great to me! Thanks for putting this together.
Just leaving some artifacts here in this PR to create references to the commit/line which stepped on Long
(d8ade4d#diff-d5d9fcc27f8062d80afd9d8a291b85e6R7) and the PR that introduced it (#2900) for posterity's sake!
We'll want to add a CHANGELOG.md
entry before we merge this. I'll suggest this relatively straight-forward and bland wording, but I think it basically encapsulates the change:
- `apollo-engine-reporting`: Swap usage of `protobufjs` for a newly published fork located
at [`@apollo/protobufjs`](https://npm.im/@apollo/protobufjs). This is to account for
the [relative uncertainty](https://github.com/protobufjs/protobuf.js/issues/1199)
into the continued on-going maintenance of the official `protobuf.js` project.
This should immediately resolve a bug that affected `Long` types in
`apollo-engine-reporting` and other non-Apollo projects that rely on `protobuf.js`'s
`Long` type. [PR #3530](https://github.com/apollographql/apollo-server/pull/3530)
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.
🎉
Use a the forked version of protobufjs in Apollo Server (https://github.com/apollographql/protobuf.js)
We want to do this for a few reasons:
first and foremost, a user is suffering from a bug where we override a global property in protobufjs (
long
override), and they want the default behavior in another package.We want to introduce some functionality to this package soon. (David's PR: Allow plain JS object repeated fields to use toArray() method protobufjs/protobuf.js#1302)