Commit Graph

3567 Commits (893792450884650b53bd478747ef2bb27bc159b6)

Author SHA1 Message Date
Madhura Bhave e24f5b7efd Revert "Upgrade to Embedded Mongo 3.4.1"
This reverts to Embedded Mongo 3.3.1 due to some breaking
changes in 3.4.1 and 3.4.2
3 years ago
Phillip Webb 5454e2e26a Merge branch '2.7.x' 3 years ago
Phillip Webb 9f00c3acf5 Polish 3 years ago
Phillip Webb adfaa8f778 Merge branch '2.6.x' into 2.7.x 3 years ago
Phillip Webb 9411fc264d Merge branch '2.5.x' into 2.6.x 3 years ago
Phillip Webb 57009d5623 Polish 3 years ago
Moritz Halbritter 54f1058d63 Merge branch '2.7.x' 3 years ago
Moritz Halbritter fd36215d72 Omit empty values for AutoConfigureAfter and AutoConfigureBefore
As @AutoConfiguration is now meta-annotated with @AutoConfigureAfter
and @AutoConfigureBefore, the generated property files have a lot of
superfluous lines in the format <class>.AutoConfigureAfter= and
<class>.AutoConfigureBefore=.

One can now configure in the annotation processor for each property key
if empty values should be omitted. This is currently only activated for
AutoConfigureAfter and AutoConfigureBefore

See gh-29907
3 years ago
Moritz Halbritter 7872f61bfc Add @AutoConfiguration annotation support to the autoconfigure-processor
See gh-29907
3 years ago
Moritz Halbritter 9149ae50da Use @AutoConfiguration for relative ordering on auto-configurations 3 years ago
Moritz Halbritter 9e9049ca7f Add relative ordering to @AutoConfiguration
The relative ordering is implemented with @AliasFor annotations on the
@AutoConfiguration annotation. The production code already works without
changes, only the test code had to be modified. It now uses
AnnotationMetadata which already knows how to deal with @AliasFor
instead of using the reflection API directly.

See gh-29907
3 years ago
Andy Wilkinson d427fa4b5d Merge branch '2.7.x' 3 years ago
Andy Wilkinson 57cd34be88 Merge branch '2.6.x' into 2.7.x
Closes gh-29971
3 years ago
Andy Wilkinson a979925e63 Merge branch '2.5.x' into 2.6.x
Closes gh-29970
3 years ago
Andy Wilkinson 7aca75c58c Preserve ObjectName property order when name is unchanged
Closes gh-29953
3 years ago
Stephane Nicoll c8b7a17545 Upgrade to Spring Kafka 2.8.3
Closes gh-29722
3 years ago
Scott Frederick b64a6e6229 Merge branch '2.7.x' into main 3 years ago
Scott Frederick c1fec6967e Support constructor injection for FailureAnalyzers
This commit adds support for instantiating FailureAnalyzer
implementations with BeanFactory and/or an Environment constructor
arguments and deprecates support for setter injection of these values
using BeanFactoryAware and EnvironmentAware.

Closes gh-29811
3 years ago
Stephane Nicoll fcca4920d3 Merge branch '2.7.x' 3 years ago
Stephane Nicoll dda3bae02a Upgrade to Embedded Mongo 3.4.1
Closes gh-29944
3 years ago
Andy Wilkinson 5e56757d4c Merge branch '2.7.x' 3 years ago
Andy Wilkinson da96eeab21 Remove redundant requestMappingHandlerMapping override
The bean no longer needs to be primary so the override is not needed
any more.

Closes gh-29682
3 years ago
Stephane Nicoll 935d37b2ca Polish "Reuse BatchLoaderRegistry in GraphQlService"
See gh-29929
3 years ago
dugenkui03 043e5ff0f5 Reuse BatchLoaderRegistry in GraphQlService
See gh-29929
3 years ago
Moritz Halbritter 03e5dcdb3a Merge branch '2.7.x' 3 years ago
Moritz Halbritter 1325153ee9 Move ManagementContextConfiguration from spring.factories
The import selector will now, in addition to spring.factories, look for
ManagementContextConfiguration classes in a file called
META-INF/spring/org.springframework.boot.actuate.autoconfigure.web.ManagementContextConfiguration.imports

The existing ManagementContextConfigurations have been moved from
spring.factories to the new file.

Closes gh-29730
3 years ago
Moritz Halbritter d42f675959 Merge branch '2.7.x' 3 years ago
Moritz Halbritter d7b229d3c7 Rename AutoConfigurationLoader to ImportCandidates
Move the class to a more suitable package, and load the files from
META-INF/spring/<fqn>.imports

See gh-29872
3 years ago
Stephane Nicoll 3b2288899b Merge branch '2.7.x' 3 years ago
Stephane Nicoll 3ffd88158e Polish "Add support for Redis sentinel username"
See gh-29661
3 years ago
mourezwell 202a426bd6 Add support for Redis sentinel username
See gh-29661
3 years ago
Stephane Nicoll 414b7539de Merge branch '2.7.x' 3 years ago
Gary Russell d56403b64f Add support for Kafka immediateStop property
See gh-29884
3 years ago
Moritz Halbritter f5f6a1fe83 Merge branch '2.7.x' 3 years ago
Moritz Halbritter 4f49e8c990 Polish JavaDoc 3 years ago
Andy Wilkinson 1e1b2a062e Merge branch '2.7.x' 3 years ago
Andy Wilkinson 0e5a82522c Merge branch '2.6.x' into 2.7.x
Closes gh-29904
3 years ago
Andy Wilkinson 9da6fb4a5a Merge branch '2.5.x' into 2.6.x
Closes gh-29903
3 years ago
Andy Wilkinson c676b8b84d Remove KafkaPropertiesKafka24Tests
We now use Kafka 2.7 by default so tests against 2.4 are no longer
required.

Closes gh-29882
3 years ago
Andy Wilkinson 41d516cb4f Merge branch '2.7.x' 3 years ago
Andy Wilkinson b6fea07001 Merge branch '2.6.x' into 2.7.x
Closes gh-29902
3 years ago
Andy Wilkinson 0cebb332d1 Merge branch '2.5.x' into 2.6.x
Closes gh-29901
3 years ago
Andy Wilkinson ac38a5a3e9 Update javadoc to reflect move to SecurityFilterChain
Closes gh-29900
3 years ago
Scott Frederick cb69d01e04 Merge branch '2.7.x' into main 3 years ago
Scott Frederick 42328771ad Suppress deprecation warnings for WebSecurityConfigurerAdapter
Fixes gh-29897
3 years ago
Moritz Halbritter 896345df23 Fix test 3 years ago
Moritz Halbritter 42808ff13c Merge branch '2.7.x'
# Conflicts:
#	spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring.factories
3 years ago
Moritz Halbritter 7c96294641 Move our auto-configurations from spring.factories to new file
Closes gh-29873
3 years ago
Moritz Halbritter 303979fb65 Merge branch '2.7.x' 3 years ago
Moritz Halbritter 7d68b58c8f Load auto-configurations from META-INF/spring-boot
Implements a new AutoConfigurationLoader, which loads
auto-configurations from a file in META-INF/spring-boot.

Adapts the AutoConfigurationImportSelector to use the new loader.

Adapts the ImportAutoConfigurationImportSelector to use the new loader.

Adapts the metadata plugin in the build to additionally load the
auto-configurations from the new file.

Updates the documentation for auto-configurations and test slices.

Closes gh-29872
3 years ago
Phillip Webb ff4b92a3ba Update copyright year of changed files 3 years ago
Phillip Webb 37263ea7dd Merge branch '2.7.x' 3 years ago
Phillip Webb c0ffb35668 Update copyright year of changed files 3 years ago
Phillip Webb 4092afc98f Polish 3 years ago
Madhura Bhave bf1ed5f2f8 Update copyright header on changed files 3 years ago
Madhura Bhave 44b88cc88c Allow @ConstructorBinding to be optional
This commit makes @ConstructorBinding optional for a type
that has a single parameterized constructor. An @Autowired annotation
on any of the constructors indicates that the type should not be constructor
bound.

Since @ConstructorBinding is now deduced for a single parameterized constructor,
the annotation is no longer needed at the type level.

Closes gh-23216
3 years ago
Moritz Halbritter fdb1010cbc Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
3 years ago
Moritz Halbritter 8e99788fc8 Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
3 years ago
Moritz Halbritter cb08065ece Merge branch '2.7.x' 3 years ago
Moritz Halbritter 100f80d073 Add @AutoConfiguration annotation
This annotation can be used to mark auto-configurations with a dedicated
annotation. Under the hood, it's a standard @Configuration with
proxyBeanMethods set to false.

Closes gh-29870
3 years ago
Henning Poettker 7d83dfc0c7 Reinstate support for H2 Console
See gh-29755

Closes gh-29755
3 years ago
Stephane Nicoll 15e14e23c9 Start building against Spring Kafka 2.8.3 snapshots
See gh-29759
3 years ago
Andy Wilkinson d9acde2961 Merge branch '2.7.x' 3 years ago
Andy Wilkinson 0c15fab881 Merge branch '2.6.x' into 2.7.x
Closes gh-29744
3 years ago
Andy Wilkinson b74f668254 Only auto-configure WebSessionIdResolver in reactive web app
Closes gh-29669
3 years ago
Andy Wilkinson d14450dc88 Merge branch '2.7.x' 3 years ago
Andy Wilkinson fc5ede7b94 Polish "Auto-configure Spring rather than Nimbus opaque token introspectors"
See gh-29572
3 years ago
Lukas Kuster 131ea706c7 Auto-configure Spring rather than Nimbus opaque token introspectors
See gh-29572
3 years ago
Andy Wilkinson 4c3289395a Merge branch '2.7.x' 3 years ago
Andy Wilkinson c761dc517b Merge branch '2.6.x' into 2.7.x
Closes gh-29732
3 years ago
Andy Wilkinson 197ba9ebc9 Merge branch '2.5.x' into 2.6.x
Closes gh-29731
3 years ago
Andy Wilkinson 64ee54423a Polish "Configure ForwardedHeaderFilter with Tomcat's use relative redirects"
See gh-29333
3 years ago
Guirong Hu cec69feb95 Configure ForwardedHeaderFilter with Tomcat's use relative redirects
Previously, when Tomcat was configured to use relative redirects
and the ForwardedHeaderFilter is in use, the filter would ignore
the use of the relative redirects.

This commit corrects this misalignment by applying Tomcat's use
relative redirects setting to the filter, but only when Tomcat is
being used as the servlet container.

See gh-29333
3 years ago
Stephane Nicoll 3b4832445b Merge branch '2.7.x' 3 years ago
Stephane Nicoll 098a57affb Upgrade to R2DBC Borca-RELEASE
See gh-28524
3 years ago
Stephane Nicoll 8c8c9c5f28 Upgrade to H2 2.1.210
H2 2.x contains several important changes such as moving the primary key
generation mechanism to a sequence-based identifier. This commit fixes
a number of tests that were failing.

Closes gh-29651

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
3 years ago
Phillip Webb 6c74e24147 Update copyright year of changed files 3 years ago
Stephane Nicoll b22e3d51dc Merge branch '2.7.x' 3 years ago
Henning Poettker e3d0f1feee Adjust IDENTITY in DDLs for H2 2.x compatibility
See gh-29200
3 years ago
Stephane Nicoll 8885964a56 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 37c1f47902 Merge branch '2.6.x' into 2.7.x
Closes gh-29650
3 years ago
Stephane Nicoll 03d393bc4c Merge branch '2.5.x' into 2.6.x
Closes gh-29649
3 years ago
Stephane Nicoll 48649192cb Fix schema file name for Batch auto-configuration tests
Closes gh-29648
3 years ago
Phillip Webb a282f912e6 Organize imports
Organize imports according to updated checkstyle rules.
3 years ago
Phillip Webb a05903b9d1 Polish GraphQL auto-configuration 3 years ago
Phillip Webb 501d174db0 Merge branch '2.7.x' 3 years ago
Stephane Nicoll e749f30642 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 9028ab33f2 Merge branch '2.6.x' into 2.7.x
Closes gh-29617
3 years ago
Stephane Nicoll d130819fb4 Merge branch '2.5.x' into 2.6.x
Closes gh-29616
3 years ago
Stephane Nicoll 5fe6176966 Polish "Add a note on early init with @ConditionalOnExpression"
See gh-29276
3 years ago
Mihail Cornescu fce3cd1684 Add a note on early init with @ConditionalOnExpression
See gh-29276
3 years ago
Stephane Nicoll 41fb9cf562 Merge branch '2.7.x' 3 years ago
Stephane Nicoll f812b33cbd Merge branch '2.6.x' into 2.7.x
Closes gh-29613
3 years ago
Stephane Nicoll 136b5959c3 Merge branch '2.5.x' into 2.6.x
Closes gh-29612
3 years ago
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
3 years ago
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
3 years ago
Andy Wilkinson 7b35fabf07 Upgrade to Derby 10.15.2.0
Closes gh-29509
3 years ago
Phillip Webb 5b1486cc26 Merge branch '2.5.x' into 2.6.x 3 years ago
Phillip Webb d211b0f3b3 Disable test is Docker is not available
See gh-28843
3 years ago
Andy Wilkinson a3bfc67249 Merge branch '2.7.x' 3 years ago
Andy Wilkinson 1e4b786ff9 Merge branch '2.6.x' into 2.7.x
Closes gh-29489
3 years ago
Andy Wilkinson 6bea2172cb Switch tests to properties that are not deprecated
Closes gh-29488
3 years ago
Andy Wilkinson 0829dcd572 Merge branch '2.6.x' into 2.7.x
Closes gh-29486
3 years ago
Andy Wilkinson ee9c399eba Merge branch '2.5.x' into 2.6.x
Closes gh-29485
3 years ago
Andy Wilkinson 1b3d088056 Move JdbcSessionDataSourceInitializerTests into src/test/java
Closes gh-29484
3 years ago
Andy Wilkinson de3b9a4910 Remove code deprecated for removal in 2.x
Closes gh-29482
3 years ago
Stephane Nicoll 4d03f89a55 Harmonize dependency upgrades with Spring Boot 2.7.0-M1
Closes gh-29476
3 years ago
Andy Wilkinson 26fecbe230 Upgrade to Thymeleaf and Security Extras 3.1.0-M1
Closes gh-49452
Closes gh-49453
3 years ago
Andy Wilkinson 12cd97a20c Reinstate support for Thymeleaf 3 years ago
rstoyanchev 68f4938367 Update GraphQL QBE auto-config
This change is the same as 68806bfef8
for Querydsl, but applied also to the Query By Example auto config.

Closes gh-29445
3 years ago
Andy Wilkinson db6e9a7a5f Start building against Spring Batch 5.0 snapshots
This commit adapts to some changes in Spring Batch 5.0:

- A DataSource bean is now required by Batch
- A PlatformTransactionManager bean is no longer defined by Batch

See gh-29278
3 years ago
Brian Clozel fe82098d7d Merge branch '2.7.x' 3 years ago
Brian Clozel cdee953252 Polish 3 years ago
Brian Clozel 68806bfef8 Fix build after Spring for GraphQL changes
See spring-projects/spring-graphql#244
3 years ago
Andy Wilkinson 16447e1bce Merge branch '2.7.x' 3 years ago
Andy Wilkinson ece4c8ad93 Merge branch '2.6.x' into 2.7.x
Closes gh-29400
3 years ago
Andy Wilkinson 8868d34c24 Merge branch '2.5.x' into 2.6.x
Closes gh-29399
3 years ago
Andy Wilkinson d051146eb4 Use Testcontainers instead on Embedded Mongo
We've seen some problems, particularly on CI, where Embedded Mongo
hangs while trying to start the Mongo process. To limit the problem,
this commit replaces the use of Embedded Mongo with Testcontainers
where we can, leaving Embedded Mongo in use only where we're
specifically testing our Embedded Mongo support.

Closes gh-28843
3 years ago
Phillip Webb 13f257a706 Merge branch '2.7.x' 3 years ago
Phillip Webb 8147eb6d6d Merge branch '2.6.x' into 2.7.x 3 years ago
Stephane Nicoll 90b8d2190f Adapt to latest change in Spring Data Elasticsearch 3 years ago
Stephane Nicoll 88049ff11a Merge branch '2.7.x' 3 years ago
Stephane Nicoll ca432309aa Polish "Add option to allow Spring Batch custom isolation levels"
See gh-28859
3 years ago
stibi a8d1d3104e Add option to allow Spring Batch custom isolation levels
See gh-28859
3 years ago
Brian Clozel fc794f17e1 Update GraphiQlHandler configuration
This commit updates the `GraphiQlHandler` auto-configuration after a
constructor change was done in Spring GraphQL for WebSocket support in
GraphiQL.
3 years ago
Stephane Nicoll 2078a7f3e1 Merge branch '2.7.x' 3 years ago
Stephane Nicoll e92e35d56f Polish "Stop configuring a default user with SAML 2.0 Login"
See gh-29263
3 years ago
Guirong Hu ab49acc782 Stop configuring a default user with SAML 2.0 Login
See gh-29263
3 years ago
Brian Clozel b7de02d908 Fix build after Spring GraphQL changes
See pring-projects/spring-graphql#229
3 years ago
Stephane Nicoll 0af6761993 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 270e162479 Stop aliasing MariaDB to MySQL
Closes gh-28728
3 years ago
Stephane Nicoll 5f67546534 Adapt to latest API change in SD Elasticsearch
See gh-29292
3 years ago
Stephane Nicoll 9e27bddfc7 Start building against Spring Data 2021.2.0-M1 snapshots
This commit also upgrades to Elasticsearch 7.16.2

See gh-29223
See gh-29292
3 years ago
Andy Wilkinson 894f83fb13 Upgrade to Artemis 2.20.0 and switch to Jakarta EE 9 JMS API
Closes gh-29203
3 years ago
Andy Wilkinson 89e79e826e Reinstate support for Apache Artemis
See gh-29203
3 years ago
Stephane Nicoll 9392ff59f7 Merge branch '2.7.x' 3 years ago
Stephane Nicoll a9d8befe72 Fix build failures
See gh-29290
3 years ago
Andy Wilkinson eba2c8c8fe Merge branch '2.7.x' 3 years ago
Andy Wilkinson 94fa50af1c Polish 3 years ago
Stephane Nicoll 11e604af41 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 9821cdfd8b Remove deprecated code
Closes gh-29290
3 years ago
Stephane Nicoll aec6c1ed92 Merge branch '2.7.x' 3 years ago
Stephane Nicoll c62aa0deab Remove support for Hazelcast 3
Closes gh-29287
3 years ago
Stephane Nicoll 164c2f7164 Polish
See gh-29265
3 years ago
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
Stephane Nicoll d271e76b48 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 83d732823d Merge branch '2.6.x' into 2.7.x
Closes gh-29136
3 years ago
Stephane Nicoll 653fdbd0a4 Configure comment prefixes
Closes gh-29095
3 years ago
Phillip Webb 003fb229fd Merge branch '2.7.x' 3 years ago
Phillip Webb f3bcbca841 Update copyright year of changed files 3 years ago
Stephane Nicoll 75d2c36846 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 63427b77d1 Merge branch '2.6.x' into 2.7.x
Closes gh-29086
3 years ago
Stephane Nicoll 55859ea64c Stop accessing the datasource if initialization mode is set to never
Closes gh-28931
3 years ago
Stephane Nicoll 035adf4f05 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 38aeeee381 Merge branch '2.6.x' into 2.7.x 3 years ago
Stephane Nicoll 3b4d27e4d3 Merge branch '2.5.x' into 2.6.x 3 years ago
Stephane Nicoll 30ebb17b2b Polish 3 years ago
Stephane Nicoll cd69781457 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 9ca1cffab7 Merge branch '2.6.x' into 2.7.x
Closes gh-29016
3 years ago
Stephane Nicoll ba60e3d358 Merge branch '2.5.x'
Closes gh-29002
3 years ago
Stephane Nicoll 157b3aa25f Allow platform to be configured in DataSourceInitializers
Closes gh-28932
3 years ago
Andy Wilkinson 3c8d4d33e1 Upgrade to Spring Data Elasticsearch 7.16.0
Closes gh-28987
3 years ago
Stephane Nicoll b961b14d0f Merge branch '2.6.x' into 2.7.x
Closes gh-28980
3 years ago
Stephane Nicoll dfab6ee307 Merge branch '2.5.x' into 2.6.x
Closes gh-28979
3 years ago
Stephane Nicoll f6f5aec183 Polish "Check for the presence of Spring Security"
See gh-28967
3 years ago
Guirong Hu 4462f9157e Check for the presence of Spring Security
See gh-28967
3 years ago
Stephane Nicoll d61d597a96 Merge branch '2.7.x' 3 years ago
Stephane Nicoll a2eeb77e21 Merge branch '2.6.x' into 2.7.x
Closes gh-28951
3 years ago
Vedran Pavic 0af4431db8 Apply SameSite session cookie property to Spring Session
This commit maps the `server.servlet.session.cookie.same-site`
configuration property to the `DefaultCookieSerializer` bean configured
in the Spring Session auto-configuration.

See gh-28784
3 years ago
Stephane Nicoll c83ab9bbc5 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 89635eafa3 Update copyright year of changed files
See gh-28862
3 years ago
Stefano Cordio a5c56043b9 Simplify AssertJ usage
See gh-28862
3 years ago
Stephane Nicoll 77c8303bd0 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 25a2888be5 Fix default value of spring.mvc.pathmatch.matching-strategy property
Closes gh-28936
3 years ago
Scott Frederick 33953823fc Replace usage of deprecated Spring Framework methods
See gh-28642
3 years ago
Andy Wilkinson fe7b13ec46 Upgrade to Spring Framework 6 and Jakarta EE 9
Closes gh-28619
Closes gh-28620
Closes gh-28621
Closes gh-28622
Closes gh-28623
Closes gh-28624
Closes gh-28625
Closes gh-28626
Closes gh-28627
Closes gh-28628
Closes gh-28629
Closes gh-28630
Closes gh-28631
Closes gh-28632
Closes gh-28633
Closes gh-28634
Closes gh-28635
Closes gh-28636
Closes gh-28638
Closes gh-28639
Closes gh-28640
Closes gh-28644
Closes gh-28645
Closes gh-28650
Closes gh-28711
Closes gh-28866
Closes gh-28867
Closes gh-28868
Closes gh-28872

See gh-28641
See gh-28642
See gh-28643
See gh-28646
See gh-28647
See gh-28648
See gh-28649
See gh-28721
See gh-28869
See gh-28871
3 years ago
Andy Wilkinson 4a8904aaa9 Drop support for jOOQ until its dependencies are Jakarta EE 9 compatible
Closes gh-28821
3 years ago
Andy Wilkinson ba19440f8c Drop support for EhCache 3 until it supports Jakarta EE 9
Closes gh-28800
3 years ago
Andy Wilkinson a17d6f9791 Drop support for Infinispan until it is Jakarta EE 9 compatible
Closes gh-28799
3 years ago
Scott Frederick 015dca1956 Remove support for Thymeleaf
Closes gh-28611
3 years ago
Andy Wilkinson 22cc9ca6fa Drop support for CommonsMultipartResolver
Closes gh-28782
3 years ago
Andy Wilkinson 6e7f2766c8 Remove support for pooled-jms as it is not JMS 3.0 compatible
Closes gh-28701
3 years ago
Madhura Bhave c8fd5f0080 Remove support for Artemis
Closes gh-28593
3 years ago
Andy Wilkinson 8bf2ffd93c Drop support for Jersey until jersey-spring6 is available
Closes gh-28808
3 years ago
Scott Frederick 29a21d4621 Remove support for Spring Data Couchbase and Couchbase caching
Fixes gh-28613
3 years ago
Andy Wilkinson 5944041f2a Switch to Yasson for JSON-B testing
Closes gh-28615
3 years ago
Andy Wilkinson 63492507b4 Remove support for Apache ActiveMQ
Closes gh-28591
3 years ago
Andy Wilkinson a3c4059ee8 Remove support for H2's web console
Closes gh-28590
3 years ago
Andy Wilkinson 64bf33038d Remove support for EhCache 2
Closes gh-28588
3 years ago
Andy Wilkinson ef02cc9bff Remove support for Atomikos
Closes gh-28589
3 years ago
Andy Wilkinson 99f33ede14 Remove SecurityManager support
Closes gh-28213
3 years ago
Željko Tomić 1c1c85c3f8 Fix MariaDB mapping for Quartz DataSource initialization
See gh-28779
3 years ago
Phillip Webb beb68671bb Update copyright year of changed files 3 years ago
Madhura Bhave e7ff2cf358 Guard ErrorPageSecurityFilter configuration with ConditionalOnClass
Update `ErrorPageSecurityFilterConfiguration` to guard against the case
where `spring-security-core` is on the classpath but
`spring-security-web` is not.

Fixes gh-28774
3 years ago
Andy Wilkinson 03e283a2e6 Mention WebProperties in deprecation of ResourceProperties
Closes gh-28762
3 years ago
Madhura Bhave dd1d1482dc Deny unauthorized access to the error page
Fixes gh-26356

Co-authored-by Andy Wilkinson <wilkinsona@vmware.com>
3 years ago
Stephane Nicoll 7fbb9d471b Polish "Upgrade to Neo4j Java Driver 4.2.8"
See gh-28717
3 years ago
Stephane Nicoll f1991d8d80 Avoid bean override with CachingMetadataReaderFactoryPostProcessor
Closes gh-28705
3 years ago
Stephane Nicoll 8356204430 Upgrade to Flyway 8.0.4
Closes gh-28697
3 years ago
Filip Hrisafov d6bead1a2a Expose RestClientBuilder when RestHighLevelClient is not available
This commits exposes the RestClientBuilder as a bean even when the
RestHighLevelClient is not available. It allows users to create their
own RestClient beans using the Spring Boot configured RestClientBuilder
when they are not using the RestHighLevelClient.

Fixes gh-28655
3 years ago
Stephane Nicoll 6e06e69bba Merge branch '2.5.x'
Closes gh-28673
3 years ago
Stephane Nicoll 4c193a1511 Merge branch '2.4.x' into 2.5.x
Closes gh-28672
3 years ago
Stephane Nicoll d21c48e474 Update copyright year of changed file
See gh-28532
3 years ago
Josh Cummings d817029575 Harmonize @ConditionalOnMissingBean definition
See gh-28532
3 years ago
Andy Wilkinson 2a342ef416 Merge branch '2.5.x'
Closes gh-28662
3 years ago
Andy Wilkinson 5e4a502b2d Merge branch '2.4.x' into 2.5.x
Closes gh-28661
3 years ago
Andy Wilkinson 2cec3971d7 Prohibit unwanted dependencies in all modules not just starters
Closes gh-28658
3 years ago
Andy Wilkinson 925ddd6b09 Merge branch '2.5.x' 3 years ago
Andy Wilkinson 3b180f42b7 Polish 3 years ago
Andy Wilkinson 7a24ee88ae Merge branch '2.5.x'
Closes gh-28607
3 years ago
Andy Wilkinson 23197c34c7 Merge branch '2.4.x' into 2.5.x
Closes gh-28606
3 years ago
Andy Wilkinson c018788846 Test JTA auto-configured from JNDI
Closes gh-28594
3 years ago
Andy Wilkinson ceacb1533a Merge branch '2.5.x' 3 years ago
Andy Wilkinson b5653ad551 Merge branch '2.4.x' into 2.5.x 3 years ago
Andy Wilkinson f3b5e6bb3e Adapt to removal of static resource location filtering
See gh-28506
3 years ago
Stephane Nicoll 629e1d3ac5 Upgrade to Flyway 8.0.3
Closes gh-28572
3 years ago
Stephane Nicoll bf88405121 Flag BeanDefinitionRegistryPostProcessor beans with role infrastructure
Closes gh-28540
3 years ago
Stephane Nicoll 11a5055b8f Merge branch '2.5.x' 3 years ago
Stephane Nicoll cd5508a679 Polish 3 years ago
Stephane Nicoll 98b9e1ab21 Start building against Spring Framework 5.3.13 snapshots
See gh-28515
3 years ago
izeye 5d8dce70dc Polish
See gh-28494
3 years ago
Andy Wilkinson ef2bcdd3ed Merge branch '2.5.x'
Closes gh-28483
3 years ago
Andy Wilkinson 07ed7ab944 Merge branch '2.4.x' into 2.5.x
Closes gh-28482
3 years ago
Andy Wilkinson 2462f67be4 Align test for spring.data.mongodb.autoIndexCreation with new default
Closes gh-28481
3 years ago
Andy Wilkinson c9dd6b7e86 Merge branch '2.5.x'
Closes gh-28480
3 years ago
Andy Wilkinson ae93bb3a11 Merge branch '2.4.x' into 2.5.x
Closes gh-28479
3 years ago
Andy Wilkinson 10f0017d69 Fix method validation in child contexts
Bean post-processors only apply to the context in which they're
registered. ValidationAutoConfiguration will only auto-configure the
MethodValidationPostProcessor if the post-processor is missing from
the current context and any of its ancestors. If an ancestor context
contains the post-processor it will not be auto-configured and the
descendant context will not have method validation configured.

This commit updates the auto-configuration to limit the search for
an existing MethodValidationPostProcessor bean to the current
context.

Fixes gh-27890
3 years ago
Stephane Nicoll 9241f228d5 Add .gitattributes
Closes gh-28474
3 years ago
Stephane Nicoll 66553ac8c7 Add .gitattributes
Closes gh-28473
3 years ago
Stephane Nicoll 1b3f52d609 Harmonize line endings
See gh-27615
3 years ago
Stephane Nicoll 837e2ac277 Fix bean type visibility
Closes gh-28437
3 years ago
Andy Wilkinson 3605388787 Merge branch '2.5.x'
Closes gh-28440
3 years ago
Andy Wilkinson 50d4eaad63 Merge branch '2.4.x' into 2.5.x
Closes gh-28439
3 years ago
Andy Wilkinson a545b6e0b4 Polish "Polish"
See gh-28367
3 years ago
Leo Li 1586232761 Polish
See gh-28367
3 years ago
Andy Wilkinson 47da70632f Merge branch '2.5.x'
Closes gh-28430
Closes gh-28431
3 years ago
Andy Wilkinson 585b8880c7 Merge branch '2.4.x' into 2.5.x
Closes gh-28424
3 years ago
Andy Wilkinson 7f976dab9e Polish "Don't use markdown syntax in javadoc or error messages"
See 2f6651c3cb.

Closes gh-28408
3 years ago
Phillip Webb e25f216eab Merge branch '2.5.x'
Closes gh-28425
3 years ago
Phillip Webb daf36dff55 Merge branch '2.4.x' into 2.5.x
Closes gh-28424
3 years ago
Phillip Webb 2f6651c3cb Don't use markdown syntax in javadoc or error messages
Closes gh-28408
3 years ago
Andy Wilkinson 2541c0cbdc Disable on Windows tests that use embedded Kafka
Closes gh-28406
3 years ago
Phillip Webb 1ad39b5fce Fix ReactiveSessionAutoConfigurationRedisTests
See gh-26714
3 years ago
Phillip Webb cf9156e497 Add SameSite cookie support for servlet web servers
Update Tomcat, Jetty and Undertow `ServletWebServerFactory`
implementations so that they can write SameSite cookie attributes.

The session cookie will be customized whenever the
`server.servlet.session.cookie.same-site` property is set.

Other cookies can be customized with the new `CookieSameSiteSupplier`
interface which can be registered using `@Bean` methods.

Closes gh-20971

Co-authored-by Andy Wilkinson <wilkinsona@vmware.com>
3 years ago
Phillip Webb b72ff25220 Relocate and unify reactive cookie properties
Relocate the recently introduced `spring.webflux.session` properties
to `server.reactive.session` and create a unified `Cookie` properties
class.

Reactive session properties now mirror the existing
`server.servlet.session` properties and better reflect the fact that
they are related to the server and not just for WebFlux.

See gh-26714
3 years ago
Phillip Webb 3c71637fa2 Polish 'Add more session properties for reactive web servers'
See gh-26714
3 years ago
weixsun a2a802a14a Add more session properties for reactive web servers
Expand the session properties supported by reactive web servers to
include `timeout` support and additional `cookie` properties.

See gh-26714
3 years ago
Madhura Bhave ea65c28bfa Polish 3 years ago
Madhura Bhave 07aeb2156d Merge pull request #28123 from timtebeek
* pr/28123:
  Polish "Support PEM format for Kafka SSL certs and private key"
  Support PEM format for Kafka SSL certs and private key

Closes gh-28123
3 years ago
Madhura Bhave 0d06a2854d Polish "Support PEM format for Kafka SSL certs and private key"
See gh-28123
3 years ago
Tim te Beek 7a98364a23 Support PEM format for Kafka SSL certs and private key
See gh-28123
3 years ago