Commit Graph

3172 Commits (025fe4fd43d5c777533ec001b21fd4ea9d629c9e)

Author SHA1 Message Date
Stephane Nicoll 025fe4fd43 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 69d1c3674a Upgrade to latest Hazelcast 3.x in integration tests 3 years ago
Stephane Nicoll a780e87e9c Upgrade to Hazelcast 5.0.2
See gh-29265
3 years ago
Andy Wilkinson c2e86096cd Reinstate support for jOOQ as it now supports Jakarta EE 9
Closes gh-29271
3 years ago
Stephane Nicoll fed89f98aa Merge branch '2.7.x' 3 years ago
Stephane Nicoll ce7a3d0ef2 Upgrade to Flyway 8.3.0
Closes gh-29249
3 years ago
Phillip Webb 06398eabed Merge branch '2.7.x' 3 years ago
Phillip Webb b25e92f3e2 Merge branch '2.6.x' into 2.7.x 3 years ago
Phillip Webb 760dcffd8b Merge branch '2.7.x' 3 years ago
Andy Wilkinson 1dbfcf8b57 Reinstate support for Spring Data Couchbase
Closes gh-28976
3 years ago
Stephane Nicoll 9bfe3c21e5 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 4799d2a71a Polish "Add transactionIdPrefix Property to KafkaTemplate"
See gh-29089
3 years ago
Gary Russell 33814a4a42 Add transactionIdPrefix Property to KafkaTemplate
See gh-29089
3 years ago
Stephane Nicoll e87b4cfb5b Merge branch '2.7.x' 3 years ago
Stephane Nicoll c943ef18ca Polish "Add principal resolution in RSocket handler methods"
See gh-28444
3 years ago
Guirong Hu cf05964499 Add principal resolution in RSocket handler methods
See gh-28444
3 years ago
Stephane Nicoll 4442f91f63 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 076ddc8579 Polish "Add server.netty.max-keep-alive-requests"
See gh-28875
3 years ago
Leo Li 0e94b2ce6e Add server.netty.max-keep-alive-requests
See gh-28875
3 years ago
Stephane Nicoll 8cb6a79e60 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 578855f512 Restore support for Hazelcast 3
See gh-28801
3 years ago
Stephane Nicoll 64062adf0d Merge branch '2.7.x' 3 years ago
Stephane Nicoll e1a5be83d2 Polish "Inject SpringManagedContext into Hazelcast configuration"
See gh-28801
3 years ago
Jaromir Hamala b875b55711 Inject SpringManagedContext into Hazelcast configuration
This commit makes it possible to inject Spring managed beans into
objects instantiated by Hazelcast.

See gh-28801
3 years ago
Stephane Nicoll e378705383 Merge branch '2.7.x' 3 years ago
Stephane Nicoll f26bee1196 Polish "Upgrade to Embedded Mongo 3.2.5"
See gh-28543
3 years ago
Julien Herr 679231c120 Upgrade to Embedded Mongo 3.2.5
See gh-28543
3 years ago
Brian Clozel c5817f21eb Add property for disabling GraphQL schema introspection
Prior to this commit, the GraphQL schema assembled by the
auto-configuration would provide no option for disabling the field
introspection.

While this feature is essential for many tools (including GraphiQL),
some prefer disabling it because this allows clients to gather
information about types and schema easily. This commit introduces a new
`spring.graphql.schema.introspection.enabled` configuration property.

Because potential attackers can still gather this information and this
feature is a core concern in the GraphQL spec, introspection is enabled
by default for Spring Boot applications.

Closes gh-29248
3 years ago
izeye 728206dba0 Polish GraphQL changes
See gh-29140
Closes gh-29194
3 years ago
Stephane Nicoll 8b21c71fd6 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 91d7295c62 Polish "Add support for IdlePartitionEventInterval"
See gh-28290
3 years ago
Pascal Ayotte 9274baeb68 Add support for IdlePartitionEventInterval
See gh-28290
3 years ago
Stephane Nicoll 5864c300e0 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 6b6da22f2c Polish "Add support for RabbitStreamTemplate"
See gh-28060
3 years ago
Eddú Meléndez 3952046132 Add support for RabbitStreamTemplate
See gh-28060
3 years ago
Stephane Nicoll 09486b8fc7 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 2b140950e3 Merge branch '2.6.x' into 2.7.x
Closes gh-29176
3 years ago
izeye 7fbb5749d1 Polish
See gh-29157
3 years ago
Brian Clozel 88ee4fab36 Polish
See gh-29140
3 years ago
Brian Clozel f61c87c3a7 Revert "Merge branch '2.7.x'"
This reverts commit f0677a119c, reversing
changes made to 938d58f32c.
3 years ago
Brian Clozel f0677a119c Merge branch '2.7.x' 3 years ago
Brian Clozel 6dbcd0e95e Auto-configure security for Spring GraphQL
This commit configures security features for Spring GraphQL.
In the case of both MVC and WebFlux, this contributes
`DataFetcherExceptionResolver` instances to resolve security exceptions
and expose them as proper errors in the GraphQL response.

For MVC only, this also configures a
`SecurityContextThreadLocalAccessor`. This component ensures that the
security context is propagated between `ThreadLocal` and the Reactor
asynchronous execution.

See gh-29140
3 years ago
Brian Clozel 9954b4c63e Auto-configure Query* support for GraphQL
This commit auto-configures Spring Data Querydsl and QueryByExample
support for Spring GraphQL.

See gh-29140
3 years ago
Brian Clozel 6ef1ed0dd0 Auto-configure GraphQL WebSocket endpoint
This commit auto-configures a GraphQL WebSocket endpoint for both Spring
MVC and Spring WebFlux. This is only enabled if the required libraries
are on the classpath and if the `"spring.graphql.websocket.path"`
property is defined.

See gh-29140
3 years ago
Brian Clozel 4ef9b9e3e5 Auto-configure CORS options for GraphQL web endpoints
This commit adds `"spring.graphql.cors.*"` configuration properties to
customize the CORS configuration for GraphQL web endpoints.

See gh-29140
3 years ago
Brian Clozel 0099460155 Auto-configure graphiql endpoint
Spring GraphQL ships with a static version of the graphiql IDE for
exploring and querying GraphQL endpoints.
See https://github.com/graphql/graphiql for more information.

This commit auto-configures the GraphiQL handler for both MVC and
WebFlux and points GraphiQL to the GraphQL HTTP endpoint exposed by the
application. This feature is disabled by default and can be switched on
with "spring.graphql.graphiql.enabled=true".

See gh-29140
3 years ago
Brian Clozel ff9a421786 Auto-configure schema printer endpoint
This commit configuresa new endpoint for printing in text format the
resolved GraphQL schema.
This endpoint is exposed by default under "/graphql/schema" and must be
enabled with "spring.graphql.schema.printer=true".

See gh-29140
3 years ago
Brian Clozel b38d04556e Auto-configure HTTP transport for MVC and WebFlux
This commit adds two new auto-configuration classes for Spring GraphQL
support. Once the base GraphQL infrastructure is in place, we can now
expose the `GraphQlService` over an HTTP transport.

Spring GraphQL supports both MVC and WebFlux, so this commit ships with
one auto-configuration for each.
Developers can configure the HTTP path where the GraphQL resource is
exposed using the `spring.graphql.path` configuration property (this
defaults to `"/graphql"`).

See gh-29140
3 years ago
Brian Clozel 5cf0a4db94 Add FailureAnalyzer for InvalidSchemaLocationsException
This commit adds a new `FailureAnalyzer` for exceptions thrown when no
GraphQL schema file could be found.
This lists configured locations (with `"classpath:..."` notation) and
also resolved locations - this helps developers figure out how the
pattern are resolved and why schema files cannot be found.

See gh-29140
3 years ago
Brian Clozel de808834f5 Auto-configure Spring GraphQL base infrastructure
This commit adds the auto-configuration for setting up the base Spring
GraphQL infrastructure. Because GraphQL doesn't depend on any particular
transport, we must have a separate configuration for creating:

* the `GraphQlSource`, which holds the schema and the `GraphQL` instance
* the `GraphQlService` for executing incoming requests
* the `BatchLoaderRegistry` for batch loading support
* the `AnnotatedControllerConfigurer` for supporting the annotated
  controllers programming model

This comes with a starting point for the `"spring.graphql.*"`
configuration properties; we can now configure the locations and file
extensions of GraphQL schema files we should load and configure at
startup.

See gh-29140
3 years ago