Update operation normalization to deterministically sort fragments.#1158
Merged
Update operation normalization to deterministically sort fragments.#1158
Conversation
943413c to
2192b9f
Compare
trevor-scheer
approved these changes
Apr 1, 2019
Contributor
trevor-scheer
left a comment
There was a problem hiding this comment.
These changes LGTM @abernix, thanks for putting this PR together! I've rebased against master (which seems to have removed any notion of a publish ever happening on another branch 👍) and added a fix to the generated types (which could be squashed into the commit before it).
I'll leave this for you to merge or give a final LGTM before we merge/publish, but good to go as far as I'm concerned.
2192b9f to
67cd0d0
Compare
67cd0d0 to
e420e8e
Compare
abernix
added a commit
that referenced
this pull request
Apr 2, 2019
2255c74 to
7213bcc
Compare
This includes the work from #1027, #1115 and #1118, which first surfaced in an `apollo@next` CLI version which was released in order to provide a migration path for paying customers who utilize the Apollo Operation Registry through the CLI's `apollo client:push` features. Those customers were notified and advised to either pin their `apollo` version prior to this being released, so the hope is that we'll be able to released this under the `apollo@2` cover without incurring breaking changes on anyone else. For more information on the operation registry, see: https://www.apollographql.com/docs/platform/operation-registry.html And if you encounter any problems, please contact our customer support via Intercom from within your Engine UI. --- The summary of the relevant commit messages is below: 1) Remove duplication from client:push and client:extract. 2) Create a test to verify upcoming changes for this PR. Cutover to apollo-graphql * Add apollo-graphql as a dependency (and project reference) * Remove apollo-engine-reporting as a dependency * Update sortAST to normalize order of fragments w.r.t operations * Tests are failing expectedly at this point Centralize operation hashing function These two operations will likely be used in tandem, and we want this to be consistent across consumers. Incorporate rename suggestions Update version for extracted manifest output. Use empty string and add comment about unused metadata field. Revert changes to defaultEngineReportingSignature. Apply changes to new function, defaultOperationRegistrySignature. This new function is the effective interim fix, and the current existing function is now left alone. Pass operation name along to the operation registry signature function Leverage updated registerOperations API Now that registerOperations supports version as an argument to the mutation, we can leverage this for v2 oeprations manifest work.
7213bcc to
ea54115
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This re-lands the work from #1027, #1115 and #1118, which first surfaced in
an
apollo@nextCLI version via #1113 which was released in order to provide amigration path for customers of Apollo Engine plans which support the operation registry who utilize the CLI's
apollo client:pushfeatures.Those customers were notified and advised to either pin their
apolloversion prior to this being released, so the hope is that we'll be able to
released this under the
apollo@2cover without incurring breaking changeson anyone else.
That said, if you find yourself in a predicament that links back to this PR, we suggest re-registering all operations using the new version of the
apollo client:pushcommand available in this version and, once all client operations are re-registered, upgrade theapollo-server-plugin-operation-registryto0.1.0-alpha.1.