Skip to content
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

Release @apollo/[email protected] #892

Merged
merged 16 commits into from
Jul 21, 2021
Merged

Release @apollo/[email protected] #892

merged 16 commits into from
Jul 21, 2021

Conversation

trevor-scheer
Copy link
Member

@trevor-scheer trevor-scheer commented Jul 18, 2021

As with release PRs in the past, this is a PR tracking a release-x.y.z branch for an upcoming release of Apollo Gateway. 🙌 The version in the title of this PR should correspond to the appropriate branch.

The intention of these release branches is to gather changes which are intended to land in a specific version (again, indicated by the subject of this PR). Release branches allow additional clarity into what is being staged, provide a forum for comments from the community pertaining to the release's stability, and to facilitate the creation of pre-releases (e.g. alpha, beta, rc) without affecting the master branch.

PRs for new features might be opened against or re-targeted to this branch by the project maintainers. The master branch may be periodically merged into this branch up until the point in time that this branch is being prepared for release. Depending on the size of the release, this may be once it reaches RC (release candidate) stage with an -rc.x release suffix. Some less substantial releases may be short-lived and may never have pre-release versions.

When this version is officially released onto the latest npm tag, this PR will be merged into main.

trevor-scheer and others added 2 commits July 16, 2021 14:02
…ration (#881)

This commit switches our default managed federation behavior over to our new service
(named Uplink). Under the hood, this is a fairly significant change. Gateway currently
handles composition of the subgraphs itself, pulling them down from GCS. Via uplink,
the gateway receives the composition outright, meaning it doesn't perform any composition
itself.

The rules for configuring Uplink are as follows:

1. If config.schemaConfigDeliveryEndpoint is set to a string, use it
2. If config.schemaConfigDeliveryEndpoint is explicitly set to null, fallback to GCS and old behavior
3. If the env var (APOLLO_SCHEMA_CONFIG_DELIVERY_ENDPOINT) is set, use that
4. If config.schemaConfigDeliveryEndpoint is undefined, use the default uplink URL
@trevor-scheer trevor-scheer added the 🏷️ release Release branch label Jul 18, 2021
@trevor-scheer trevor-scheer added this to the MM-2021-07 milestone Jul 18, 2021
@trevor-scheer trevor-scheer self-assigned this Jul 18, 2021
Require @tag directive definition in subgraphs when there are @tag usages.
Validate correctness of the @tag definition.
@trevor-scheer trevor-scheer changed the title Release @apollo/[email protected] Release @apollo/[email protected] Jul 18, 2021
martijnwalraven and others added 3 commits July 19, 2021 10:46
This is an initial implementation of support for @inaccessible when converting
a composed schema to an API schema. For now, it removes any fields, object
types, or interface types with an @inaccessible directive.

As part of this change, buildComposedSchema no longer returns an API
schema. Instead, a separate toAPISchema function is used to convert the
composed schema. The reason for this is that the gateway needs the complete
schema for query planning, including elements that will be removed by
@inaccessible.

Co-authored-by: Trevor Scheer <[email protected]>
Co-authored-by: Jesse Rosenberger <[email protected]>
@trevor-scheer
Copy link
Member Author

trevor-scheer commented Jul 20, 2021

Merge apollographql/apollo#1202 upon landing this PR

…ror messages (#893)

A type which is marked as @inaccessible and implements an interface can trigger
runtime/execution errors if a resolver returns that type. That type's name will end
up in the response.errors array, but it really shouldn't be leaked.

This commit captures all known inaccessible type names of the format
"<Name>" and field names of the format "<Name>.<Name>" and masks them in
any response errors that occur during final pass graphql execution.

For Name regex reference, see https://spec.graphql.org/June2018/#Name
@trevor-scheer
Copy link
Member Author

trevor-scheer commented Jul 20, 2021

Update docs here upon landing this PR #899 thanks @abernix !

@trevor-scheer trevor-scheer enabled auto-merge July 21, 2021 19:26
Copy link
Member

@abernix abernix left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🌮 :shipit:

@trevor-scheer trevor-scheer merged commit 6d48698 into main Jul 21, 2021
@trevor-scheer trevor-scheer deleted the release-gateway-0.34 branch July 21, 2021 19:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏷️ release Release branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants