Commit Graph

102 Commits

Author SHA1 Message Date
Scott Frederick
32d378a348 Use test harness for image building integration tests
This commit modifies the integration tests for the Maven and Gradle
image building goal and task to use a custom builder as a test harness
to verify that the plugins invoke the builder as expected.

Fixes gh-25838
2021-05-12 14:51:45 -05:00
dreis2211
9b1b47ae5d Rename nohttp whitelist to allowlist
See gh-26264
2021-04-28 11:39:52 +01:00
Andy Wilkinson
9e5f738f7a Make relative file references in checkstyle.xml more robust
Closes gh-26174
2021-04-20 15:47:08 +01:00
Andy Wilkinson
82198a99e0 Polish nohttp configuration
Closes gh-26166
2021-04-20 11:15:13 +01:00
Andy Wilkinson
b35d1ec6e8 Revert "Use test harness for image building integration tests"
This reverts commit da9d8d6055.

See gh-25838
2021-04-07 09:30:51 +01:00
Scott Frederick
da9d8d6055 Use test harness for image building integration tests
This commit modifies the integration tests for the Maven and Gradle
image building goal and task to use a custom builder as a test harness
to verify that the plugins invoke the builder as expected.

Fixes gh-25838
2021-03-30 16:48:28 -05:00
Andy Wilkinson
f8c1a73bf2 Prevent import of Micrometer class outside of the Actuator
Closes gh-25760
2021-03-23 10:16:42 +00:00
Madhura Bhave
df1d1dbaa9 Fallback to BeanPropertyBindingResult for unbound property validation
gh-17424 updated `ValidationBindHandler` so that it would
only look at bound values when validating. This commit updates
`ValidationBindHandler` to use Spring Framework's `BeanPropertyBindingResult`.
This means that for fields that are not bound, JavaBean accessor methods can
be used to get the value to validate.

Fixes gh-25356
2021-03-12 13:56:54 -08:00
Phillip Webb
49e754f48b Merge branch '2.2.x' into 2.3.x
Closes gh-24411
2020-12-08 17:23:33 -08:00
Phillip Webb
286ef61071 Narrow auto-configure checkstyle suppressions
Closes gh-21015
2020-12-08 17:04:03 -08:00
Andy Wilkinson
2dce4aa42b Merge branch '2.2.x' into 2.3.x
Closes gh-24009
2020-11-03 14:04:08 +00:00
Andy Wilkinson
30a0ccab02 Remove use of @PostConstruct from main code
When running on Java 11 (where `@PostConstruct` is no longer part of
the JRE) and without a dependency on jakarta-annotation-api,
`@PostContruct` annotions are silently dropped. This leads to obscure and
hard-to-track down changes in the behaviour of our auto-configuration
as the `@PostConstruct`-annotated methods are not invoked.

To allow users to run on Java 11 without having jakarta-annotation-api
on the classpath, this commit removes use of `@PostConstruct` from main
code. A Checkstyle rule has also been added to prevent its usage in
main code from being reintroduced.

Closes gh-23723
2020-11-03 13:59:38 +00:00
Phillip Webb
e12a449ed9 Merge branch '2.2.x' into 2.3.x 2020-09-21 22:32:49 -07:00
Phillip Webb
8b3728a57e Refine StringSequence checkstyle suppression
See gh-23440
2020-09-21 22:31:43 -07:00
Phillip Webb
3fca8c6b4e Merge branch '2.2.x' into 2.3.x
Closes gh-23441
2020-09-21 22:27:45 -07:00
Phillip Webb
4945806d84 Make StringSequence.isEmpty() public
Make `StringSequence.isEmpty()` public for compatibility with JDK 15.

Closes gh-23440
2020-09-21 22:26:20 -07:00
Stephane Nicoll
652561c274 Review checkstyle rule to prevent non BDD mockito imports
Closes gh-20902
2020-09-01 11:50:14 +02:00
Stephane Nicoll
a149edcfd7 Merge branch '2.2.x' into 2.3.x
Closes gh-23077
2020-08-25 14:06:12 +02:00
Stephane Nicoll
066471b1d9 Merge branch '2.1.x' into 2.2.x
Closes gh-23076
2020-08-25 14:05:07 +02:00
dreis2211
7bf32e9bb1 Disallow Apache Commons Lang & Lang3 imports
See gh-23071
2020-08-25 14:03:37 +02:00
Andy Wilkinson
38db129146 Remove checkstyle config made redundant by ee758fa6
Closes gh-21473
2020-05-15 18:22:13 +01:00
Andy Wilkinson
ee758fa670 Use HTTPS for license links
This commit updates the MavenPublishingConventions to use HTTPS to
link to the Apache license. The configuration of NoHTTP has also
been reworked so that it will correctly find usch uses of http://
URLs.

Closes gh-21459
2020-05-15 16:33:11 +01:00
Andy Wilkinson
3f56f97e03 Merge branch '2.2.x'
Closes gh-21472
2020-05-15 16:21:33 +01:00
Andy Wilkinson
4a896f2272 Merge branch '2.1.x' into 2.2.x
Closes gh-21471
2020-05-15 16:20:23 +01:00
Andy Wilkinson
fdc63d71fe Use HTTPS when linking to groovy-lang.org
Closes gh-21466
2020-05-15 16:18:23 +01:00
Phillip Webb
eb3b0f82a3 Use http liquibase XSDs
Update the lquibase test to use `http://` rather than `https://` so that
it can be resolved from the local jar.
2020-05-14 17:55:10 -07:00
Scott Frederick
158933c3e5 Improve API of ErrorAttributes and DefaultErrorAttributes
This commit improves the backward-compatibility of the ErrorAttributes
interfaces by providing a default implementation of a new method. It
also encapsulates several parameters that control the inclusion or
exclusion of error attributes into a new ErrorAttributeOptions type to
make it easier and less intrusive to add additional options in the
future. This encapsulation also makes the handling of the
includeException option more similar to other options.

Fixes gh-21324
2020-05-11 15:36:24 -05:00
dreis2211
b0eea26260 Prevent shaded imports from Datastax
See gh-20967
2020-04-15 09:21:56 +02:00
dreis2211
5b9d8bfc17 Upgrade to Testcontainers 1.14.0
See gh-20936
2020-04-15 09:20:31 +02:00
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>
2020-03-17 17:00:09 +01:00
Brian Clozel
ab72cc8fdb Revert "Add actuator specific ObjectMapper"
See gh-12951
See gh-20291
2020-02-21 17:16:24 +01:00
Brian Clozel
97af0b2f3a Add actuator specific ObjectMapper
Prior to this commit, Actuator endpoints would use the application
ObjectMapper instance for serializing payloads as JSON. This was
problematic in several cases:

* application-specific configuration would change the actuator endpoint
output.
* choosing a different JSON mapper implementation in the application
would break completely some endpoints.

Spring Boot Actuator already has a hard dependency on Jackson, and this
commit uses that fact to configure a shared `ObjectMapper` instance that
will be used by the Actuator infrastructure consistently, without
polluting the application context.

This `ObjectMapper` is used in Actuator for:

* JMX endpoints
* Spring MVC endpoints with an HTTP message converter
* Spring WebFlux endpoints with an `Encoder`
* Jersey endpoints with a `ContextResolver<ObjectMapper>`

For all web endpoints, this configuration is limited to the
actuator-specific media types such as
`"application/vnd.spring-boot.actuator.v3+json"`.

Fixes gh-12951
2020-02-12 20:10:25 +01:00
Phillip Webb
aa1954717c Add cloud native buildpack module
Add a Java implementation of the buildpacks.io specification allowing
projects to be packaged into OCI containers. The `builder` class
provides a Java equivalent of `pack build` command and is based on
the `pack` CLI Go code published at https://github.com/buildpacks/pack.

Closes gh-19828
2020-01-20 23:48:47 -08:00
Andy Wilkinson
ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
2020-01-10 14:15:35 +00:00
Andy Wilkinson
dd4377e69c Merge branch '2.1.x'
Closes gh-18912
2019-11-07 09:33:11 +00:00
Andy Wilkinson
d1ead884c4 Fix @ServletComponentScan with a component index
Previously @ServletComponentScan did not work when there was a
component index on the classpath as it made an assumption about
the concrete type of the BeanDefinitions produced by scanning that
does not hold true when an index is present.

This commit updates the scanning and the handlers to correct the
assumpution by working with a bean definition type that is produced
by scanning both when there is and when there is not an index present.

To prevent the problem from reoccuring, a test that uses and index
has been added and the import of ScannedGenericBeanDefinition is now
prohibited by Checkstyle.

Closes gh-18910
2019-11-07 09:20:19 +00:00
Andy Wilkinson
cf62dc862b Polish "Correct Mono import in LegacyHealthEndpointCompatibilityConfiguration"
See gh-18571
2019-10-14 09:34:53 +01:00
dreis2211
d8de6fff53 Polish
See gh-18557
2019-10-12 16:55:07 +01:00
dreis2211
38d5a52ac4 Remove obsolete checkstyle suppressions
See gh-17522
2019-07-15 21:36:58 +01:00
dreis2211
0f0278e69b Migrate ModifiedClassPath tests to JUnit 5
Migrate the remaining JUnit 4 tests to JUnit 5, making use of the
new `ModifiedClassPathExtension`.

See gh-17491
2019-07-15 00:31:03 +01:00
Andy Wilkinson
a40bc64f6e Merge branch '2.1.x'
Closes gh-17463
2019-07-09 15:14:41 +01:00
Andy Wilkinson
c5241f0e82 Remove accidental usage of com.hazelcast.util.Base64
Closes gh-17461
2019-07-09 15:03:31 +01:00
Phillip Webb
a66c4d3096 Unify method visibility of private classes
Apply checkstyle rule to ensure that private and package private
classes do not have unnecessary public methods. Test classes have
also been unified as much as possible to use default scoped
inner-classes.

Closes gh-7316
2019-07-03 11:39:47 -07:00
Ilya Lukyanovich
569830cdca Migrate LogbackLoggingSystemTests to JUnit 5
See gh-17107
2019-06-29 23:20:40 +01:00
Phillip Webb
605599138e Merge branch '2.1.x' 2019-06-28 23:56:02 -07:00
Phillip Webb
92bff3c328 Merge branch '2.0.x' into 2.1.x 2019-06-28 23:42:28 -07:00
Phillip Webb
cfeb0239b7 Merge branch '1.5.x' into 2.0.x 2019-06-28 23:28:34 -07:00
Phillip Webb
fc7a99d0df Merge branch '2.1.x'
Closes gh-17362
2019-06-28 21:35:49 -07:00
Phillip Webb
6425fb6ec8 Merge branch '2.0.x' into 2.1.x
Closes gh-17361
2019-06-28 21:34:35 -07:00
Phillip Webb
4f079803d2 Merge branch '1.5.x' into 2.0.x
Closes gh-17359
2019-06-28 21:29:20 -07:00