Commit Graph

132 Commits (0d4a6ee6877702432128fd968bc83d3f687b15dc)

Author SHA1 Message Date
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
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
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
Andy Wilkinson 1dbfcf8b57 Reinstate support for Spring Data Couchbase
Closes gh-28976
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
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 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 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
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 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 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 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 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
Gary Russell 9784838229 Add auto-configuration for spring-rabbit-stream
See gh-27480
3 years ago
Andy Wilkinson 6d50e65572 Revert "Add support for InfluxDB 2.x"
This reverts commit 52fedb2bb4.

See gh-25891
3 years ago
Andy Wilkinson c00e885ac4 Work around compile warnings from Data Neo4j's use of API Guardian
See gh-27170
3 years ago
Stephane Nicoll 52fedb2bb4 Add support for InfluxDB 2.x
Closes gh-25891
3 years ago
Stephane Nicoll 6505e03cb2 Polish "Add auto-configuration for Spring Data Envers"
See gh-22610
3 years ago
Stefano Cordio 91da8c9fc6 Add auto-configuration for Spring Data Envers
See gh-22610
3 years ago
Andy Wilkinson 4517f6057e Merge branch '2.4.x'
Closes gh-26573
4 years ago
Andy Wilkinson 1d5abf5af7 Merge branch '2.3.x' into 2.4.x
Closes gh-26572
4 years ago
Andy Wilkinson eecb7dd101 Remove stale jboss-transaction-spi dependencies
Closes gh-26569
4 years ago
Andy Wilkinson ba2583900f Provide auto-configuration for using Apache HttpClient 5 with WebClient
Closes gh-26004
4 years ago
Andy Wilkinson db781a0d84 Merge branch '2.4.x'
See gh-25077
4 years ago
Andy Wilkinson 788a42d694 Merge branch '2.3.x' into 2.4.x
See gh-25076
4 years ago
Andy Wilkinson 67479b6380 Add junit-platform-launcher dependency by convention
Closes gh-25074
4 years ago
Stephane Nicoll 012a199773 Remove Spring Data Solr support
In preparation to the upgrade to Spring Data 2021.0, this commit removes
auto-configuration for Spring Data Solr.

Closes gh-24939
4 years ago
Stephane Nicoll a18f01addf Remove bitronix support
See gh-24806
4 years ago
Stephane Nicoll 1fd17cf641 Add support for Elasticsearch sniffer
Closes gh-24174
4 years ago
Stephane Nicoll 75554ce236 Polish "Add support for Oracle UCP"
See gh-23403
4 years ago
Fabio Grassi a21ab392b6 Add support for Oracle UCP
See gh-23403
4 years ago
Stephane Nicoll 137f4ec980 Merge branch '2.3.x'
Closes gh-23522
4 years ago
Stephane Nicoll 466c1012d6 Merge branch '2.2.x' into 2.3.x
Closes gh-23521
4 years ago
Stephane Nicoll 4009acf025 Add support for Hazelcast
This commit upgrades to Hazelcast 4.0.3, yet keeping compatibility with
Hazelcast 3.x.

Closes gh-20856
Closes gh-23475
4 years ago
Andy Wilkinson 969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
4 years ago
Brian Clozel fb1234a22c Upgrade to Reactor 2020.0.0 SNAPSHOTs
See gh-22667
4 years ago
Gerrit Meier 15cd343737 Upgrade to Spring Data Neo4j 6
See gh-22299
4 years ago
Andy Wilkinson 3b54fe20a8 Merge branch '2.3.x'
Closes gh-22642
4 years ago
Andy Wilkinson a580e3a370 Merge branch '2.2.x' into 2.3.x
Closes gh-22641
4 years ago
Gerrit Meier 6134ff19f9 Add auto-configuration for Neo4j driver
This commit adds the support for creating a managed instance of the
Neo4j Java driver. The low-level support for Neo4j is helpful in
situations where the high-level abstraction of Spring Data Neo4j is not
needed.

See gh-22301
4 years ago
Andy Wilkinson 0de466e06e Require dependency on s-b-dependencies to use its constraints
Previously, Spring Boot's modules published Gradle Module Metadata
(GMM) the declared a platform dependency on spring-boot-dependencies.
This provided versions for each module's own dependencies but also had
they unwanted side-effect of pulling in spring-boot-dependencies
constraints which would influence the version of other dependencies
declared in the same configuration. This was undesirable as users
should be able to opt in to this level of dependency management, either
by using the dependency management plugin or by using Gradle's built-in
support via a platform dependency on spring-boot-dependencies.

This commit reworks how Spring Boot's build uses
spring-boot-dependencies and spring-boot-parent to provide its own
dependency management. Configurations that aren't seen by consumers are
configured to extend a dependencyManagement configuration that has an
enforced platform dependency on spring-boot-parent. This enforces
spring-boot-parent's version constraints on Spring Boot's build without
making them visible to consumers. To ensure that the versions that
Spring Boot has been built against are visible to consumers, the
Maven publication that produces pom files and GMM for the published
modules is configured to use the resolved versions from the module's
runtime classpath.

Fixes gh-21911
4 years ago
Andy Wilkinson 69a25e4d80 Stop relying on transitive com.nimbusds:oauth2-oidc-sdk dependency 5 years ago
dreis2211 5b9d8bfc17 Upgrade to Testcontainers 1.14.0
See gh-20936
5 years ago
Stephane Nicoll abe43b2e83 Upgrade to Couchbase SDK v3
This commit upgrades to the Couchbase SDK v3 which brings the following
breaking changes:

* Bootstrap hosts have been replaced by a connection string and the
authentication is now mandatory.
* A `Bucket` is no longer auto-configured. The
`spring.couchbase.bucket.*` properties have been removed
* `ClusterInfo` no longer exists and has been replaced by a dedicated
API on `Cluster`.
* `CouchbaseEnvironment` no longer exist in favour of
`ClusterEnvironment`, the customizer has been renamed accordingly.
* The bootstrap-related properties have been removed. Users requiring
custom ports should supply the seed nodes and initialize a Cluster
themselves.
* The endpoints-related configuration has been consolidated in a
single IO configuration.

The Spring Data Couchbase provides an integration with the new SDK. This
leads to the following changes:

* A convenient `CouchbaseClientFactory` is auto-configured.
* Repositories are configured against a bucket and a scope. Those can
be set via configuration in `spring.data.couchbase.*`.
* The default consistency property has been removed in favour of a more
flexible annotation on the repository query methods instead. You can now
specify different query consistency on a per method basis.
* The `CacheManager` implementation is provided, as do other stores for
consistency so a dependency on `couchbase-spring-cache` is no longer
required.

See gh-19893

Co-authored-by: Michael Nitschinger <michael@nitschinger.at>
5 years ago
Artem Bilan 3967e76b9b Auto-Configure RSocket support for Spring Integration
This commit adds a new auto-configuration for RSocket support in Spring
Integration.

Given an application with `spring-messaging`, `spring-integration-rsocket`
and RSocket dependencies, developers are now able to leverage Spring
Integration features with RSocket.

It is now possible to configure an RSocket server with
`"spring.rsocket.server.*"` properties and let it use
`IntegrationRSocketEndpoint` or `RSocketOutboundGateway` components to
handle incoming RSocket messages. This infrastructure can handle Spring
Integration RSocket channel adapters and `@MessageMapping` handlers
(given `"spring.integration.rsocket.server.message-mapping-enabled"`is
configured.

If the `"spring.integration.rsocket.client.host"` and
`"spring.integration.rsocket.client.port"` (for TCP protocol), or
`"spring.integration.rsocket.client.uri"`  (for WebSocket) is configured
then a `ClientRSocketConnector` will be configured accordingly.

Closes gh-18834

Co-authored-by: Brian Clozel <bclozel@pivotal.io>
5 years ago
Stephane Nicoll 19fbac7d59 Add auto-configuration for Spring Data R2DBC
This commit adds auto-configuration support for Spring Data R2DBC. If a
`ConnectionFactory` and Spring Data are available, scanning of reactive
repositories is enabled.

This commit also adds a starter to bring R2DBC and the necessary Spring
Data libraries.

See gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
5 years ago
Stephane Nicoll 5c174feb65 Add auto-configuration for R2DBC's ConnectionFactory
This commit adds auto-configuration for R2DBC. If R2DBC is on the
classpath, a `ConnectionFactory` is created similarly to the algorithm
used to create a `DataSource`.

If an url is specified, it is used to determine the R2DBC driver and
database location. If not, an embedded database is started (with only
support of H2 via r2dbc-h2). If none of those succeed, an exception is
thrown that is handled by a dedicated FailureAnalyzer.

To clearly separate reactive from imperative access, a `DataSource` is
not auto-configured if a `ConnectionFactory` is present. This makes sure
that any auto-configuration that relies on the presence of a
`DataSource` backs off.

There is no dedicated database initialization at the moment but it is
possible to configure flyway or liquibase to create a local `DataSource`
for the duration of the migration. Alternatively, if Spring Data R2DBC
is on the classpath, a `ResourceDatabasePopulator` bean can be defined
with the scripts to execute on startup.

See gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
5 years ago
Stephane Nicoll aa56a6f647 Add missing mockito dependency
Closes gh-20097
5 years ago
Stephane Nicoll c4daff7225 Polish "Upgrade to MongoDB Java Driver 4.0 beta1"
See gh-19960
5 years ago
Christoph Strobl d2d6dbdc00 Upgrade to MongoDB Java Driver 4.0 beta1
See gh-19960
5 years ago
Phillip Webb e0013454b5 Use parentheses when declaring dependencies
Update all dependencies declarations to use the form `scope(reference)`
rather than `scope reference`.

Prior to this commit we declared dependencies without parentheses unless
we were forced to add them due to an `exclude`.
5 years ago
Phillip Webb 0209cd3e4c Polish quote form used in Gradle scripts
Replace Gradle single quote strings with the double quote form
whenever possible. The change helps to being consistency to the
dependencies section where mostly single quotes were used, but
occasionally double quotes were required due to `${}` references.
5 years ago
Scott Frederick ed6fbc6bec Remove Spring Cloud Connectors auto-config/starter
The Spring Cloud Connectors project has been deprecated in favor of the
Java CFEnv project. The Boot auto-configuration and starter that support
Connectors were deprecated in Boot 2.2.

This commit removes the Connectors auto-configuration, starter,
and dependency management.

Closes gh-19798
5 years ago
Stephane Nicoll 4d70f58bc8 Polish "Upgrade to Infinispan 10.1.1.Final"
See gh-19790
5 years ago
Scott Frederick c4592e7df8 Remove deprecated Joda-Time support
See gh-19699
5 years ago
Andy Wilkinson 714a187d8f Rework dep mgmt again to avoid consumers picking up strict constraints
This paves the way for publishing Gradle module metadata once the
problem caused by snapshot versions and our two-step publication
process has been addressed.

See gh-19609
5 years ago
Andy Wilkinson aefe52e4d0 Revert "Rework dep management to avoid consumers picking up strict constraints"
This reverts commit b34a311d02 as,
having disabled the publishing of Gradle's module metadata (4f75ab5),
the changes are no longer needed.

See gh-19609
5 years ago
Scott Frederick c789592e26 Remove support for deprecated Elasticsearch Jest client
Closes #19676
5 years ago
Andy Wilkinson b34a311d02 Rework dep management to avoid consumers picking up strict constraints
Previously, enforcedPlatform dependencies were using to pull in the
constraints defined in spring-boot-dependencies and
spring-boot-parent and applied them strictly so that the constrained
version had to be used. This worked as intended in Spring Boot's own
build but incorrectly enforced those same strict version requirements
on external consumers of Spring Boot's modules.

This commit reworks how Spring Boot defines its internal dependency
management so that platform dependencies are exposed to external
consumers while enforced platform dependencies are using internally.

See gh-19609
5 years ago
Brian Clozel b780e5247c Remove support for Elasticsearch transport client
The Elasticsearch transport client has been deprecated since Spring Boot
2.2.0 and is about to be removed from Spring Data Elasticsearch and
Elasticsearch itself in their next major releases.

The available REST client support variants are now the preferred way of
using Elasticsearch features.

Closes gh-19668
5 years ago
Andy Wilkinson ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
5 years ago