-
Notifications
You must be signed in to change notification settings - Fork 284
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
prep release: v1.61.0 #6858
Merged
Merged
prep release: v1.61.0 #6858
Conversation
This file contains 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
|
lrlna
commented
Feb 25, 2025
SimonSapin
previously approved these changes
Feb 25, 2025
IvanGoncharov
previously approved these changes
Feb 25, 2025
lrlna
commented
Feb 25, 2025
Co-authored-by: Ivan Goncharov <ivan.goncharov.ua@gmail.com>
IvanGoncharov
approved these changes
Feb 25, 2025
SimonSapin
approved these changes
Feb 25, 2025
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.
🚀 Features
Query planner dry-run option (PR #6656)
This PR adds a new
dry-run
option to theApollo-Expose-Query-Plan
header value that emits the query plans back to Studio for visualizations. This new value will only emit the query plan, and abort execution. This can be helpful for tools likerover
, where query plan generation is needed but not full runtime, or for potentially prewarming query plan caches out of band.By @aaronArinder and @lennyburdette in #6656.
Enable Remote Proxy Downloads
This enables users without direct download access to specify a remote proxy mirror location for the github download of
the Apollo Router releases.
By @LongLiveCHIEF in #6667
🐛 Fixes
Header propagation rules passthrough (PR #6690)
Header propagation contains logic to prevent headers from being propagated more than once. This was broken
in #6281 which always considered a header propagated regardless if a rule
actually matched.
This PR alters the logic so that a header is marked as fixed only when it's populated.
The following will now work again:
Note that defaulting a header WILL populate it, so make sure to include your defaults last in your propagation
rules.
Instead, make sure that your headers are defaulted last:
By @BrynCooke in #6690
Entity cache: fix directive conflicts in cache-control header (Issue #6441)
Unnecessary cache-control directives are created in cache-control header. The router will now filter out unnecessary values from the
cache-control
header when the request resolves. So if there'smax-age=10, no-cache, must-revalidate, no-store
, the expected value for the cache-control header would simply beno-store
. Please see the MDN docs for justification of this reasoning: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#preventing_storingBy @bnjjj in #6543
Query Planning: fix
__typename
selections in sibling typename optimizationThe query planner uses an optimization technique called "sibling typename", which attaches
__typename
selections to their sibling selections so the planner won't need to plan them separately.Previously, when there were multiple identical selections and one of them has a
__typename
attached, the query planner could pick the one without the attachment, effectively losing a__typename
selection.Now, the query planner favors the one with a
__typename
attached without losing the__typename
selection.By @duckki in #6824
📃 Configuration
promote experimental_otlp_tracing_sampler from experimental (PR #6070)
The router's otlp tracing sampler feature that was previously experimental is now generally available.
If you used its experimental configuration, you should migrate to the new configuration option:
telemetry.apollo.experimental_otlp_tracing_sampler
is nowtelemetry.apollo.otlp_tracing_sampler
The experimental configuration option is now deprecated. It remains functional but will log warnings.
By @garypen in #6070
Remove
experimental_
prefix for PQlocal_manifests
configurationThe
experimental_local_manifests
PQ configuration option is being promoted to stable. This change updates the configuration option name and any references to it, as well as the related documentation. Theexperimental_
usage remains valid as an alias for existing usages.By @trevor-scheer in #6564
🛠 Maintenance
Reduce demand control allocations on start/reload (PR #6754)
When demand control is enabled, the router now preallocates capacity for demand control's processed schema and shrinks to fit after processing. When it's disabled, the router skips the type processing entirely to minimize startup impact.
By @tninesling in #6754