You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update operation normalization to deterministically sort fragments.
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.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+5Lines changed: 5 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,11 @@
2
2
3
3
## Upcoming
4
4
5
+
## `apollo`
6
+
7
+
-`apollo`
8
+
- Update operation normalization technique to deterministically order fragments within operations. This update affects those users of the [operation registry](https://www.apollographql.com/docs/platform/operation-registry.html) feature of the Apollo Platform. Anyone using the operation registry should re-register their operations with this new version of the `apollo` CLI via the `apollo client:push` command. Once all client operations are re-registered, the `apollo-server-plugin-operation-manifest` plugin within Apollo Server (which reads the manifest published with `apollo client:push`) should be updated to `0.1.0-alpha.1`. [#1158](https://github.com/apollographql/apollo-tooling/pull/1158)
"document": "fragment IntrospectionFullType on IntrospectionType{__typename description enumValues(includeDeprecated:true){__typename depreactionReason description isDeprecated name}fields{__typename args{__typename...IntrospectionInputValue}deprecationReason description isDeprecated name type{__typename...IntrospectionTypeRef}}inputFields{__typename...IntrospectionInputValue}interfaces{__typename...IntrospectionTypeRef}kind name possibleTypes{__typename...IntrospectionTypeRef}}fragment IntrospectionInputValue on IntrospectionInputValue{__typename defaultValue description name type{__typename...IntrospectionTypeRef}}fragment IntrospectionTypeRef on IntrospectionType{__typename kind name ofType{__typename kind name ofType{__typename kind name ofType{__typename kind name ofType{__typename kind name ofType{__typename kind name ofType{__typename kind name ofType{__typename kind name}}}}}}}}query GetSchemaByTag($tag:String!){service:me{__typename...on Service{schema(tag:$tag){__typename hash __schema:introspection{__typename directives{__typename args{__typename...IntrospectionInputValue}description locations name}mutationType{__typename name}queryType{__typename name}subscriptionType{__typename name}types{__typename...IntrospectionFullType}}}}}}",
0 commit comments