-
Notifications
You must be signed in to change notification settings - Fork 45
fix(deps): update apollo graphql packages to v2 (major) #446
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
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/major-apollo-graphql-packages
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
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
b2da5c3
to
1007fd7
Compare
cdd71ef
to
cd7cb8b
Compare
dc298f7
to
c3dacb4
Compare
790d25e
to
d4d30cc
Compare
74670dd
to
9bf9115
Compare
e2e4bc1
to
ed4e040
Compare
3795a13
to
67d39f2
Compare
67d39f2
to
afb1d8f
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
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 PR contains the following updates:
0.6.1
->2.11.2
v1.59.2
->v2.4.0
Release Notes
apollographql/federation (@apollo/subgraph)
v2.11.2
Compare Source
Patch Changes
Revert change to @composeDirective definition to specify nullable argument value. (#3283)
We cannot fix the definition as that would break customers using older versions of
subgraph-js
. Our validations are already verifying that the values are specified.Updated dependencies [
28c08bef6e691aefc6ed07c0e7057f9cd803b317
]:v2.11.1
Compare Source
Patch Changes
7799ad1717becf15fb0e82f89619f2ec8a24b4d4
,b26794c5724ef23d1f0fd45a40aee3d301557489
]:v2.11.0
Compare Source
Minor Changes
Patch Changes
1462c91879d41884c0a7e60551d8dd0d67c832d3
,9614b26e5a17cbf1f6aaf08f6fcb1c95eb12592d
]:v2.10.2
Compare Source
Patch Changes
v2.10.1
Compare Source
Patch Changes
97d81b79c3da10175bdf92c2209039efe352de79
]:v2.10.0
Compare Source
Patch Changes
When resolving references, skip type resolution if the reference resolves to null. (#3215)
Updated dependencies [
8927e315ab0e865ef3ff12320f265ee95588b899
,8927e315ab0e865ef3ff12320f265ee95588b899
]:v2.9.3
Compare Source
Patch Changes
cc4573471696ef78d04fa00c4cf8e5c50314ba9f
,062572b3253e8640b60a0bf58b83945094b76b6f
,df5eb3cb0e2b4802fcd425ab9c23714de2707db3
,1c99cb0dcc6c639ac351210932623ab0bd6907e4
]:v2.9.2
Compare Source
Patch Changes
2192f355f50db33fe0807d16153f357696b9f190
,5ac01b534318105e904c1e6598070f753add3bb1
]:v2.9.1
Compare Source
Patch Changes
b8e4ab5352a4dfd262af49493fdd42e86e5e3d99
,e6c05b6c96023aa3dec79889431f8217fcb3806d
]:v2.9.0
Compare Source
Patch Changes
02c2a34a62c3717a4885449172e404f19ebf66c9
,0ccfd937d4b4a576f890665ceebbd7986fac5d0c
,e0a5075c0d12a0e2f7ef303b246e3216a139d3e0
]:v2.8.5
Compare Source
Patch Changes
v2.8.4
Compare Source
Patch Changes
Add descriptions for federation directives (#3095)
Updated dependencies [
5f4bb160d024678d6facd471c43c8ec61c86e701
,672aca7cbeb0a6a38586357a4e154f2dd91caa0c
]:v2.8.3
Compare Source
Patch Changes
50d648ccffb05591878de75dc5522914ed48698f
,f753d55e9a49d11389ee4f8d7976533447e95ede
,3af790517d662f3bec9064c0bf243014c579e9cd
]:v2.8.2
Compare Source
Patch Changes
b2e5ab66f84688ec304cfcf2c6f749c86aded549
]:v2.8.1
Compare Source
Patch Changes
v2.8.0
Compare Source
Patch Changes
Various set context bugfixes (#3017)
Updated dependencies [
c4744da360235d8bb8270ea048f0e0fa5d03be1e
,8a936d741a0c05835ff2533714cf330d18209179
]:v2.7.8
Compare Source
Patch Changes
Triggering a clean 2.7.8 release now that harmonizer build has been fixed. (#3010)
Updated dependencies [
2ad72802044310a528e8944f4538efe519424504
]:v2.7.7
Compare Source
Patch Changes
No logical changes since 2.7.5 or 2.7.6, but we fixed a bug in the release process, so we need to publish a new patch version (2.7.7). (#2999)
Updated dependencies [
bee0b0828b4fb6a1d3172ac330560e2ab6c046bb
]:v2.7.6
Compare Source
Patch Changes
v2.7.5
Compare Source
Patch Changes
v2.7.4
Compare Source
Patch Changes
d80b7f0ca1456567a0866a32d2b2abf940598f77
]:v2.7.3
Compare Source
Patch Changes
ec04c50b4fb832bfd281ecf9c0c2dd7656431b96
,a494631918156f0431ceace74281c076cf1d5d51
]:v2.7.2
Compare Source
Patch Changes
33b937b18d3c7ca6af14b904696b536399e597d1
,09cd3e55e810ee513127b7440f5b11af7540c9b0
,d7189a86c27891af408d3d0184db6133d3342967
]:v2.7.1
Compare Source
Patch Changes
493f5acd16ad92adf99c963659cd40dc5eac1219
]:v2.7.0
Compare Source
Minor Changes
Implement progressive
@override
functionality (#2911)The progressive
@override
feature brings a new argument to the@override
directive:label: String
. When a label is added to an@override
application, the override becomes conditional, depending on parameters provided to the query planner (a set of which labels should be overridden). Note that this feature will be supported in router for enterprise users only.Out-of-the-box, the router will support a percentage-based use case for progressive
@override
. For example:The above example will override the root
hello
field from the "original" subgraph 5% of the time.More complex use cases will be supported by the router via the use of coprocessors/rhai to resolve arbitrary labels to true/false values (i.e. via a feature flag service).
Patch Changes
6ae42942b13dccd246ccc994faa2cb36cd62cb3c
,66833fb8d04c9376f6ed476fed6b1ca237f477b7
,931f87c6766c7439936df706727cbdc0cd6bcfd8
]:v2.6.3
Compare Source
Patch Changes
v2.6.2
Compare Source
Patch Changes
7b5b836d15247c997712a47847f603aa5887312e
,74ca7dd617927a20d79b824851f7651ef3c40a4e
]:v2.6.1
Compare Source
Patch Changes
0d5ab01a
]:v2.6.0
Compare Source
Patch Changes
b18841be
,e325b499
]:v2.5.7
Compare Source
Patch Changes
v2.5.6
Compare Source
Patch Changes
c719214a
]:v2.5.5
Compare Source
Patch Changes
Fix specific case for requesting __typename on interface entity type (#2775)
In certain cases, when resolving a __typename on an interface entity (due to it actual being requested in the operation), that fetch group could previously be trimmed / treated as useless. At a glance, it appears to be a redundant step, i.e.:
It's actually necessary to preserve this in the case that we're coming from an interface object to an (entity) interface so that we can resolve the concrete __typename correctly.
Updated dependencies []:
v2.5.4
Compare Source
Patch Changes
v2.5.3
Compare Source
Patch Changes
4b9a512b
,c6e0e76d
,1add932c
]:v2.5.2
Compare Source
Patch Changes
35179f08
]:v2.5.1
Compare Source
Patch Changes
b9052fdd
]:v2.5.0
Compare Source
Minor Changes
Introduce the new
@authenticated
directive for composition (#2644)Users may now compose
@authenticated
applications from their subgraphs into a supergraph. This addition will support a future version of Apollo Router that enables authenticated access to specific types and fields via directive applications.The directive is defined as follows:
In order to compose your
@authenticated
usages, you must update your subgraph's federation spec version to v2.5 and add the@authenticated
import to your existing imports like so:@​link(url: "https://specs.apollo.dev/federation/v2.5", import: [..., "@​authenticated"])
Patch Changes
fe1e3d7b
,6b18af50
,9396c0d6
,2b5796a9
,4f3c3b9e
]:v2.4.13
Compare Source
Patch Changes
v2.4.12
Compare Source
Patch Changes
693c2433
]:v2.4.11
Compare Source
Patch Changes
a740e071
]:v2.4.10
Compare Source
Patch Changes
b6be9f96
]:v2.4.9
Compare Source
Patch Changes
7ac83456
,d60349b3
,1bb7c512
,02eab3ac
,fd4545c2
]:v2.4.8
Compare Source
Patch Changes
62e0d254
,7f1ef73e
]:v2.4.7
Compare Source
Patch Changes
2d44f346
]:v2.4.6
Compare Source
Patch Changes
5cd17e69
,e136ad87
]:v2.4.5
Compare Source
Patch Changes
Supersedes v2.4.4 due to a publishing error with no dist/ folder (#2583)
Updated dependencies [
c96e24c4
]:v2.4.4
Compare Source
Patch Changes
v2.4.3
Compare Source
Patch Changes
Resolve
Promise
references before calling__resolveType
on interface (#2556)Since the introduction of entity interfaces, users could not return
a
Promise
from__resolveReference
while implementing a synchronous,custom
__resolveType
function. This change fixes/permits this use case.Additional background / implementation details:
Returning a
Promise
from__resolveReference
has historically neverbeen an issue. However, with the introduction of entity interfaces, the
calling of an interface's
__resolveType
function became a new concern.__resolveType
functions expect a reference (and shouldn't be concernedwith whether those references are wrapped in a
Promise
). In order toaddress this, we can
await
the reference before calling the__resolveType
(this handles both the non-Promise
andPromise
case).Updated dependencies [
f6a8c1ce
]:v2.4.2
Compare Source
Patch Changes
2c370508
,179b4602
]:v2.4.1
Compare Source
Patch Changes
b6be9f96
]:v2.4.0
Compare Source
Patch Changes
Optimises query plan generation for parts of queries that can statically be known to not cross across subgraphs (#2449)
Updated dependencies [
260c357c
,7bc0f8e8
,1a555d98
,cab383b2
]:v2.3.6
Compare Source
Patch Changes
98844fd5
,11f2d7c0
,2894a1ea
]:v2.3.5
Compare Source
Patch Changes
v2.3.4
Compare Source
Patch Changes
6e2d24b5
]:v2.3.3
Compare Source
Patch Changes
Correctly attach provided subscription resolvers to the schema object (#2388)
Updated dependencies []:
v2.3.2
Compare Source
Patch Changes
v2.3.1
Compare Source
Patch Changes
This CHANGELOG pertains only to Apollo Federation packages in the 2.x range. The Federation v0.x equivalent for this package can be found here on the
version-0.x
branch of this repo.v2.3.0
Compare Source
@tag
directive support for theSCHEMA
location. This has been added to the 2.3 version of the federation spec, so to access this functionality you must bump your federation spec version to 2.3 by using@link(url: "https://specs.apollo.dev/federation/v2.3", ...)
on yourschema
element. PR #2314.v2.2.3
Compare Source
v2.2.2
Compare Source
v2.2.1
Compare Source
v2.2.0
Compare Source
@link(url: "https://specs.apollo.dev/federation/v2.2")
), which:@shareable
to be repeatable so it can be allowed on both a type definition and its extensions PR #2175.v2.1.4
Compare Source
v2.1.3
Compare Source
v2.1.2
Compare Source
v2.1.1
Compare Source
v2.1.0
Compare Source
graphql
to^16.5.0
to useGraphQLErrorOptions
PR #2060v2.0.5
Compare Source
v2.0.4
Compare Source
v2.0.3
Compare Source
printSubgraphSchema
method, ensuring it can be read back by composition andbuildSubgraphSchema
PR #1831.@key
to be repeatable PR #1826.v2.0.2
Compare Source
v2.0.1
Compare Source
v2.0.0
Compare Source
apollographql/router (ghcr.io/apollographql/router)
v2.4.0
Compare Source
🚀 Features
Support JWT audience (
aud
) validation (PR #7578)The router now supports JWT audience (
aud
) validation. This allows the router to ensure that the JWT is intendedfor the specific audience it is being used with, enhancing security by preventing token misuse across different audiences.
The following sample configuration will validate the JWT's
aud
claim against the specified audiences and ensure a match with eitherhttps://my.api
orhttps://my.other.api
. If theaud
claim does not match either of those configured audiences, the router will reject the request.By @Velfi in https://github.com/apollographql/router/pull/7578
Prioritize existing requests over query parsing and planning during "warm up" (PR #7223)
The router warms up its query planning cache during a hot reload. This change decreases the priority
of warm up tasks in the compute job queue to reduce the impact of warmup on serving requests.
This change adds new values to the
job.type
dimension of the following metrics:apollo.router.compute_jobs.duration
- A histogram of time spent in the compute pipeline by the job, including the queue and query planning.job.type
: (query_planning
,query_parsing
,introspection
,query_planning_warmup
,query_parsing_warmup
)job.outcome
: (executed_ok
,executed_error
,channel_error
,rejected_queue_full
,abandoned
)apollo.router.compute_jobs.queue.wait.duration
- A histogram of time spent in the compute queue by the job.job.type
: (query_planning
,query_parsing
,introspection
,query_planning_warmup
,query_parsing_warmup
)apollo.router.compute_jobs.execution.duration
- A histogram of time spent to execute job (excludes time spent in the queue).job.type
: (query_planning
,query_parsing
,introspection
,query_planning_warmup
,query_parsing_warmup
)apollo.router.compute_jobs.active_jobs
- A gauge of the number of compute jobs being processed in parallel.job.type
: (query_planning
,query_parsing
,introspection
,query_planning_warmup
,query_parsing_warmup
)By @carodewig in https://github.com/apollographql/router/pull/7223
Persisted queries: include operation name in
PERSISTED_QUERY_NOT_IN_LIST
error for debuggability (PR #7768)When persisted query safelisting is enabled and a request has an unknown PQ ID, the GraphQL error now has the extension field
operation_name
containing the GraphQL operation name (if provided explicitly in the request). Note that this only applies to thePERSISTED_QUERY_NOT_IN_LIST
error returned when manifest-based PQs are enabled, APQs are disabled, and the request contains an operation ID that is not in the list.By @glasser in https://github.com/apollographql/router/pull/7768
Introduce cooperative cancellation for query planning
The cooperative cancellation feature allows the router to gracefully handle query planning timeouts and cancellations, improving resource utilization.
The
mode
can be set tomeasure
orenforce
. We recommend starting withmeasure
. Inmeasure
mode, the router will measure the time taken for query planning and emit metrics accordingly. Inenforce
mode, the router will cancel query planning operations that exceed the specified timeout.To observe this behavior, the router telemetry has been updated:
outcome
attribute to theapollo.router.query_planning.plan.duration
metricoutcome
attribute to thequery_planning
spanBelow is a sample configuration to configure cooperative cancellation in measure mode:
By @Velfi in https://github.com/apollographql/router/pull/7604
🐛 Fixes
Align
on_graphql_error
selector withsubgraph_on_graphql_error
(PR #7676)The
on_graphql_error
selector will now returntrue
orfalse
, in alignment with thesubgraph_on_graphql_error
selector. Previously, the selector would returntrue
orNone
.By @carodewig in https://github.com/apollographql/router/pull/7676
Return valid GraphQL response when performing a websocket handshake (PR #7680)
PR #7141 added checks on GraphQL responses returned from coprocessors to ensure compliance with GraphQL specifications. This surfaced an issue where subscription responses over websockets could omit the required
data
field during the handshake, resulting in invalid GraphQL response payloads. All websocket subscription responses will now return a valid GraphQL response when doing the websocket handshake.By @bnjjj in https://github.com/apollographql/router/pull/7680
Fix SigV4 configuration handling (PR #7726)
Fixed an issue introduced in Router 2.3.0 where some SigV4 configurations would fail to start, preventing communication with SigV4-enabled services.
By @dylan-apollo in https://github.com/apollographql/router/pull/7726
Improve error message for invalid variables (Issue #2984)
When a variable in a GraphQL request is missing or contains an invalid value, the router now returns more useful error messages. Example:
By @SimonSapin in https://github.com/apollographql/router/pull/7567
Support exporting resources on all Prometheus metrics (PR #7394)
By default, the Prometheus metrics exporter will only export resources as
target_info
metrics, not inline on every metric. Now, you can add resources to every metric by settingresource_selector
toall
(default isnone
).Note: this change only affects Prometheus, not OTLP.
By @bnjjj in https://github.com/apollographql/router/pull/7394
Forbid unknown
@link
directives for supergraph schemas wherepurpose
isEXECUTION
orSECURITY
The legacy JavaScript query planner forbid any usage of unknown
@link
specs in supergraph schemas with eitherEXECUTION
orSECURITY
value set for thefor
argument (aka, the spec's "purpose"). This behavior had not been ported to the native query planner previously. This PR implements the expected behavior in the native query planner.By @duckki in https://github.com/apollographql/router/pull/7587
Supergraph stage correctly receives
on_graphql_error
selector (PR #7669)The
on_graphql_error
selector will now correctly fire on the supergraph stage; previously it only worked on the router stage.By @carodewig in https://github.com/apollographql/router/pull/7669
Invalid type condition in
@defer
fetchThe query planner was adding an inline spread (
...
) conditioned on theQuery
type in deferred subgraph fetch queries. Such a query would be invalid in the subgraph when the subgraph schema renamed the rootquery
type to somethhing other thanQuery
. The fix removes the root type condition from all subgraph queries, so that they stay valid even when root types are renamed.By @duckki in https://github.com/apollographql/router/pull/7580
Preserve
content-type
for file uploads when Rhai scripts are in use (PR #7559)If a Rhai script was invoked during file upload processing, then the "Content-Type" of the request was not preserved correctly. This would cause a file upload to fail.
The error message would be something like:
This issue has now been fixed.
By @garypen in https://github.com/apollographql/router/pull/7559
Improve OTLP metric HTTP endpoint behavior (PR #7595)
We made substantial updates to OpenTelemetry in router 2.0, but didn't catch that OpenTelemetry changed how it processed "endpoints" (destinations for metrics and traces) until now.
With the undetected change, the router wasn't setting the path correctly, resulting in failure to export metrics over HTTP when using the "default" endpoint. Neither metrics via gRPC nor traces were impacted.
We have fixed our interactions with the dependency and improved our testing to make sure this does not occur again. A
Configuration
📅 Schedule: Branch creation - At 12:00 AM through 04:59 AM and 10:00 PM through 11:59 PM, Monday through Friday ( * 0-4,22-23 * * 1-5 ), Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.