Releases: apollographql/apollo-server
@apollo/[email protected]
Patch Changes
-
#7313
ec28b4b33
Thanks @vtipparam! - Allow case insensitive lookup on headers. Use HeaderMap instead of plain Map for headers in expressMiddleware. -
#7311
322b5ebbc
Thanks @axe-me! - Export intermediate ApolloServerOptions* types -
#7274
3b0ec8529
Thanks @patrick91! - The subgraph spec has evolved in Federation v2 such that the type of
_Service.sdl
(formerly nullable) is now non-nullable. Apollo Server now
detects both cases correctly in order to determine whether to:- install / enable the
ApolloServerPluginInlineTrace
plugin - throw on startup if
ApolloServerPluginSchemaReporting
should not be installed - warn when
ApolloServerPluginUsageReporting
is installed and configured with the__onlyIfSchemaIsNotSubgraph
option
- install / enable the
@apollo/[email protected]
Patch Changes
-
#7285
35fa72bdd
Thanks @glasser! - Adds an integration test verifying that Rover's introspection query works. This should not break any integration that passes other tests. -
#7276
15c912f4c
Thanks @renovate! - Update graphql-http dependency -
Updated dependencies [
ec28b4b33
,322b5ebbc
,3b0ec8529
]:- @apollo/[email protected]
@apollo/[email protected]
Minor Changes
- #7241
d7e9b9759
Thanks @glasser! - If the cache you provide to thepersistedQueries.cache
option is created withPrefixingKeyValueCache.cacheDangerouslyDoesNotNeedPrefixesForIsolation
(new in@apollo/[email protected]
), theapq:
prefix will not be added to cache keys. Providing such a cache tonew ApolloServer()
throws an error.
Patch Changes
-
#7232
3a4823e0d
Thanks @glasser! - Refactor the implementation ofApolloServerPluginDrainHttpServer
's grace period. This is intended to be a no-op. -
#7229
d057e2ffc
Thanks @dnalborczyk! - Improve compatibility with Cloudflare workers by avoiding the use of the Nodeutil
package. This change is intended to be a no-op. -
#7228
f97e55304
Thanks @dnalborczyk! - Improve compatibility with Cloudflare workers by avoiding the use of the Nodeurl
package. This change is intended to be a no-op. -
#7241
d7e9b9759
Thanks @glasser! - For ease of upgrade from the recommended configuration of Apollo Server v3.9+, you can now passnew ApolloServer({ cache: 'bounded' })
, which is equivalent to not providing thecache
option (as a bounded cache is now the default in AS4).
@apollo/[email protected]
Minor Changes
- #7241
d7e9b9759
Thanks @glasser! - If the cache you provide to thecache
option is created withPrefixingKeyValueCache.cacheDangerouslyDoesNotNeedPrefixesForIsolation
(new in@apollo/[email protected]
), thefqc:
prefix will not be added to cache keys.
@apollo/[email protected]
Patch Changes
-
#7228
f97e55304
Thanks @dnalborczyk! - Improve compatibility with Cloudflare workers by avoiding the use of the Nodeurl
package. This change is intended to be a no-op. -
Updated dependencies [
3a4823e0d
,d057e2ffc
,f97e55304
,d7e9b9759
,d7e9b9759
]:- @apollo/[email protected]
@apollo/[email protected]
@apollo/[email protected]
@apollo/[email protected]
Patch Changes
-
#7187
3fd7b5f26
Thanks @trevor-scheer! - Update@apollo/utils.keyvaluecache
dependency to the latest patch which correctly specifies its version oflru-cache
. -
Updated dependencies [
3fd7b5f26
]:- @apollo/[email protected]
@apollo/[email protected]
Minor Changes
-
#7171
37b3b7fb5
Thanks @glasser! - If a POST body contains a non-stringoperationName
or a non-objectvariables
orextensions
, fail with status code 400 instead of ignoring the field.In addition to being a reasonable idea, this provides more compliance with the "GraphQL over HTTP" spec.
This is a backwards incompatible change, but we are still early in the Apollo Server 4 adoption cycle and this is in line with the change already made in Apollo Server 4 to reject requests providing
variables
orextensions
as strings. If this causes major problems for users who have already upgraded to Apollo Server 4 in production, we can consider reverting or partially reverting this change. -
#7184
b1548c1d6
Thanks @glasser! - Don't automatically install the usage reporting plugin in servers that appear to be hosting a federated subgraph (based on the existence of a field_Service.sdl: String
). This is generally a misconfiguration. If an API key and graph ref are provided to the subgraph, log a warning and do not enable the usage reporting plugin. If the usage reporting plugin is explicitly installed in a subgraph, log a warning but keep it enabled.
Patch Changes
-
#7170
4ce738193
Thanks @trevor-scheer! - Update @apollo/utils packages to v2 (dropping node 12 support) -
#7172
7ff96f533
Thanks @trevor-scheer! - startStandaloneServer: Restore body-parser request limit to 50mb (as it was in theapollo-server
package in Apollo Server 3) -
#7183
46af8255c
Thanks @glasser! - Apollo Server tries to detect if execution errors are variable coercion errors in order to give them acode
extension ofBAD_USER_INPUT
rather thanINTERNAL_SERVER_ERROR
. Previously this would unconditionally set thecode
; now, it only sets thecode
if nocode
is already set, so that (for example) custom scalarparseValue
methods can throw errors with specificcode
s. (Note that a separate graphql-js bug can lead to these extensions being lost; see graphql/graphql-js#3785 for details.) -
Updated dependencies [
4ce738193
,45856e1dd
]:- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
- #7187
3fd7b5f26
Thanks @trevor-scheer! - Update@apollo/utils.keyvaluecache
dependency to the latest patch which correctly specifies its version oflru-cache
.