Commit Graph

9241 Commits (240898121ff8a06d5e3fdc53f992b1130f81cc96)

Author SHA1 Message Date
Johnny Lim 665a127448 Fix JarFileTests.getInputStreamWhenClosed()
See gh-21365
5 years ago
Stephane Nicoll 846db6105f Merge branch '2.2.x'
Closes gh-21364
5 years ago
Stephane Nicoll 60ff8bafb5 Polish "Align TestRestTemplate Javadoc with documentation"
See gh-21318
5 years ago
Andrii Hrytsiuk f11c030b71 Align TestRestTemplate Javadoc with documentation
See gh-21318
5 years ago
dreis2211 71c8d5cda1 Update link to new Spring Security docs location
See gh-21040
5 years ago
Phillip Webb 7afd25fc9a Add ConfigurationPropertyCaching support
Add a `ConfigurationPropertyCaching` utility interface that can be
used to control the property source caching.

Prior to this commit, a `ConfigurationPropertySource` that was backed
by a mutable `EnumerablePropertySource` would need to call the
`getPropertyNames()` method each time a property was accessed. Since
this this operation can be expensive, we now provide a way to cache
the results for a specific length of time.

This commit also improves the performance of immutable property sources
by limiting the number of candidates that need to be searched.
Previously, all mapped names would be enumerated. Now, mappings are
grouped by `ConfigurationPropertyName`. This is especially helpful when
the `ConfigurationPropertyName` isn't mapped at all since the hash based
map lookup will be very fast and the resulting mappings will be empty.

Closes gh-20625
5 years ago
Phillip Webb 85e9a73e85 Add hashcode support to ConfigurationPropertyName
Provide a hashcode implementation for `ConfigurationPropertyName` so
that instances can be stored in Map without them all ending up in the
same bucket.

See gh-20625
5 years ago
Phillip Webb 5309912927 Test large property source performance
Add a test to ensure that a large number of property sources that each
contain many items can perform well.

See gh-20625
5 years ago
Phillip Webb 81058cab03 Allow clash in spring.config.name
Remove the recently added slash restriction since Spring Cloud
Config Server needs to support names with slashes.

See gh-21217
5 years ago
Phillip Webb 559c178637 Simplify regex expressions 5 years ago
Stephane Nicoll 09815cc99d Merge branch '2.2.x'
Closes gh-21352
5 years ago
Stephane Nicoll 31f9a965f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21351
5 years ago
Stephane Nicoll 1a4f6df0a3 Upgrade to Spring Ldap 2.3.3.RELEASE
Closes gh-21342
5 years ago
Stephane Nicoll 3ac38fd65e Upgrade to Spring Security 5.3.2.RELEASE
Closes gh-21349
5 years ago
Stephane Nicoll 55a1cd4a34 Upgrade to Spring Security 5.2.4.RELEASE
Closes gh-21348
5 years ago
Stephane Nicoll 66afe280cb Upgrade to Spring Security 5.1.10.RELEASE
Closes gh-21346
5 years ago
Madhura Bhave 8e7f816f48 Merge branch '2.2.x'
Closes gh-21344
5 years ago
Madhura Bhave 5583f64b1f Add tests to verify Jetty's thread pool defaults match server defaults
Closes gh-21213
5 years ago
Madhura Bhave 01404aa27b Merge branch '2.2.x'
Closes gh-21343
5 years ago
Madhura Bhave f29bce657e Harmonize default for server.tomcat.use-relative-redirects
Prior to this commit, the property was a Boolean with a null default.
If it was explicitly set by the user, a context customizer would use
that value to set it on the context. However, if it was not set, the default
wouldn't be tomcat's default but `false` because it was explicitly set to
`false` in `TomcatServletWebServerFactory`. This commit defaults the property
itself to `false` so that the default is more obvious to the user.

Fixes gh-20796
5 years ago
Madhura Bhave be7fe85b55 Polish 5 years ago
Phillip Webb b4963d2463 Fix legacy environment names in isAncestorOf
Fix the `SystemEnvironmentPropertyMapper.isAncestorOf` implementation
to convert names based on their dashed form and to silently ignore
any invalid results.

Closes gh-14479
5 years ago
Andy Wilkinson 70c4baeef6 Merge branch '2.2.x'
Closes gh-21341
5 years ago
Andy Wilkinson 386d678d99 Use Gradle's CreateStartScripts task with 6.4 and later
Fixes gh-20759
5 years ago
Andy Wilkinson 693fa918e2 Tolerate deprecation warnings generated by Gradle 6.4
The warnings will be addressed by gh-20759. CreateBootStartScripts
must be excluded from the classes that are validated by the
ValidatePlugins task. It is invalid, but only for Gradle 6.4. gh-20759
will cause it to only be used with Gradle 6.3 and earlier.

See gh-21329
5 years ago
Stephane Nicoll addaf5ff18 Upgrade to Jetty El 8.5.54
Closes gh-21340
5 years ago
Stephane Nicoll 4dc9aa082f Upgrade to Hibernate 5.4.15.Final
Closes gh-21339
5 years ago
Stephane Nicoll 5bb26bf9db Upgrade to Johnzon Jsonb 1.2.5
Closes gh-21338
5 years ago
Stephane Nicoll cd7048315d Upgrade to Byte Buddy 1.10.10
Closes gh-21337
5 years ago
Stephane Nicoll f4d007222f Upgrade to Dropwizard Metrics 4.1.7
Closes gh-21336
5 years ago
Stephane Nicoll 51740133c3 Upgrade to Saaj Impl 1.5.2
Closes gh-21335
5 years ago
Stephane Nicoll 30a48d55c4 Upgrade to Okhttp3 3.14.8
Closes gh-21334
5 years ago
Stephane Nicoll 5be1f67936 Upgrade to Hazelcast 3.12.7
Closes gh-21333
5 years ago
Stephane Nicoll 938a99bb21 Upgrade to Jackson 2.10.4
Closes gh-21332
5 years ago
Stephane Nicoll 293cd6edb9 Upgrade to Jetty El 8.5.54
Closes gh-21331
5 years ago
Stephane Nicoll 6c8f0a0082 Upgrade to Hibernate 5.3.17.Final
Closes gh-21330
5 years ago
Stephane Nicoll 02aacf4f04 Upgrade to Gradle 6.4
Closes gh-21329
5 years ago
Andy Wilkinson e03cb94190 Merge branch '2.2.x'
Closes gh-21327
5 years ago
Andy Wilkinson 9ba78db865 Allow Undertow to stop when a request is being handled
Previously, unlike embedded Jetty, Netty, and Tomcat, Undertow would
not stop when one of its worker threads was in use. This meant that a
a long-running or stalled request could prevent the application from
shutting down in response to SIGTERM or SIGINT, and SIGTERM would be
required to get the process to exit.

This commit updates the factories for the reactive and servlet
Undertow web server factories to configure Undertow to use a 0ms
shutdown timeout. This aligns it with the behaviour of Jetty, Netty,
and Tomcat. Tests have been introduced to verify the behaviour across
the reactive and servlet variants of all four supported embedded web
servers.

Fixes gh-21319
5 years ago
Andy Wilkinson 1bc41ec336 Stop developmentOnly from removing too much from executable jars and wars
Fixes gh-21288
5 years ago
Phillip Webb 5ae623c43a Polish 'Add Period converter support'
Polish period converter support, primarily by changing
`PeriodStyle` to parse and print periods that include
more than one unit.

See gh-21136
5 years ago
Grubhart dc4d71f91e Add Period converter support
Add converter support for `javax.time.Period` including:

	String -> Period
	Number -> Period
	Period -> String

Period to Number conversion is not supported since `Period` has no
ability to deduce the number of calendar days in the period.

See gh-21136
5 years ago
Madhura Bhave a8f56b57cb Consider legacy environment names in isAncestorOf
Update the `isAncestorOf` method of SpringConfigurationPropertySources
so that legacy names are considered for the system environment.

Prior to this commit, binding a property such as `my.camelCase.prop`
would detect `MY_CAMELCASE_PROP` but not `MY_CAMEL_CASE_PROP` in
the system environment.

Fixes gh-14479

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
5 years ago
Phillip Webb 4a8492d428 Further optimize StringSequence.startsWith
See gh-21259
5 years ago
dreis2211 70ffc70993 Optimize StringSequence.startsWith
See gh-21259
5 years ago
Madhura Bhave 7634901fb3 Return null when getting a logback logger that does not exist
Closes gh-21292
5 years ago
Madhura Bhave f23d0501e4 Merge branch '2.2.x'
Closes gh-21323
5 years ago
Madhura Bhave 43e7ccd620 Detect log4j2-test.* files when using log4J2
Fixes gh-17001
5 years ago
Phillip Webb 3325709a78 Upgrade to JNA 5.5.0
Upgrade JNA to 5.5.0 and only use the jna-platform dependency.

Closes gh-21313
5 years ago
Phillip Webb 365f65d214 Merge branch '2.2.x'
Closes gh-21321
5 years ago
Phillip Webb 98d27db767 Merge branch '2.1.x' into 2.2.x
Closes gh-21320
5 years ago
Phillip Webb df70c42f98 Allow classpath wildcards with Java 11 or above
Update `StaticResourceJars` to catch both `IOException` and
`InvalidPathException` when checking URLs. Prior to this commit only
`IOException` was caught which worked on Java 8 but not Java 11 or
above.

Fixes gh-21312
5 years ago
Phillip Webb 720d23af41 Further restrict configuration wildcard patterns
Extend wildcard restrictions to the `spring.config.name` property. Also
refine exception messages to include the property value.

Closes gh-21217
5 years ago
Katada, Junya bc2a83062b Fix duplicate slashes in URL links
See gh-21108
5 years ago
Andy Wilkinson f6d8c7d23c Simplify ReactiveWebServerApplicationContext.ServerManager
Closes gh-21315
5 years ago
Andy Wilkinson a688ac3f64 Improve testing of ReactiveWebServerApplicationContext
Closes gh-21314
5 years ago
Kyle Hoehns fd46002666 Fix typo for includeLayerTools
See gh-21310
5 years ago
Andy Wilkinson e484246388 Add missing implementation attributes to Shade config
Fixes gh-21304
5 years ago
Andy Wilkinson de1e3c6069 Include empty layers when listing and extracting
Fixes gh-21301
5 years ago
Stephane Nicoll f4ae2b0584 Merge branch '2.2.x'
Closes gh-21305
5 years ago
Stephane Nicoll 8abf658087 Remove dependency management for the Wavefront SDK
Closes gh-21295
5 years ago
Phillip Webb 9486842bad Merge branch '2.2.x'
Closes gh-21294
5 years ago
Phillip Webb 92ef515fbe Fix @DefaultValue PropertyEditor based conversion
Update `ValueObjectBinder` reattempt conversion if the `@DefaultValue`
contains a single element. Prior to this commit, single element
conversion relied on the `ArrayToObjectConverter` which isn't always
available.

Fixes gh-21264
5 years ago
Phillip Webb 07415e1603 Attempt to fix Windows CI test failure 5 years ago
Phillip Webb 57179c0d3d Add InputStreamSourceToByteArrayConverter
Add an `InputStreamSourceToByteArrayConverter` that can be used to
convert from an `InputStreamSource` (such as a `Resource`) to a
byte array.

Closes gh-21285
5 years ago
Phillip Webb d52bf83ab2 Polish 5 years ago
Madhura Bhave 8ec16bd027 Restrict wildcard pattern support for configuration files
This commit restricts how wildcards can be used in search
locations for property files. If a search location contains
a pattern, there must be only one '*' and the location should
end with a '*/'. For search locations that specify the file
name, the pattern should end with '*/<filename>'.

The list of files read from wildcard locations are now sorted
alphabetically according to the absolute path of the file.

Closes gh-21217
5 years ago
Andy Wilkinson 79a2e7f469 Upgrade to Undertow 2.1.0.Final
Closes gh-21278
5 years ago
Andy Wilkinson 1f00938c5a Upgrade to SAAJ Impl 1.5.2
Closes gh-21277
5 years ago
Andy Wilkinson a361583c8c Upgrade to Jetty EL 8.5.54
Closes gh-21276
5 years ago
Andy Wilkinson a7fd02e243 Upgrade to Hazelcast 3.12.7
Closes gh-21275
5 years ago
Andy Wilkinson 2b76f837b4 Upgrade to Byte Buddy 1.10.10
Closes gh-21274
5 years ago
Andy Wilkinson 04c7132eb3 Rename customize to reflect type that it customizes
See gh-20961
5 years ago
Scott Frederick 1c11e163c7 Fix Maven plugin command-line examples
Fixes gh-21078
5 years ago
Andy Wilkinson 83e4bb39b6 Add transaction auto-configuration to @DataMongoTest
Closes gh-20182
5 years ago
Stephane Nicoll 52fbf47e7f Upgrade to Flyway 6.4.1
Closes gh-21269
5 years ago
Stephane Nicoll 6051a27bd7 Upgrade to Spring Integration 5.2.6
Closes gh-20950
5 years ago
Stephane Nicoll 5292b3a693 Upgrade to Spring Integration 5.1.10
Closes gh-20941
5 years ago
dreis2211 dd11b8adba Fix checkstyle violation
See gh-21266
5 years ago
Andy Wilkinson 1abe0f16d0 Apply gridFsDatabase to auto-configured ReactiveGridFsTemplate
Closes gh-18284
5 years ago
Madhura Bhave 6007a71b9c Polish "Add support for customizing RSocketMessageHandler"
See gh-21081
5 years ago
Aarti Gupta 456d6e78fe Add support for customizing RSocketMessageHandler
See gh-21081
5 years ago
Scott Frederick 0cb090766f Fix typos in mock tests data 5 years ago
Scott Frederick a30740f8d2 Separate server properties for message and errors
Prior to this commit, there was a property server.error.include-details
that allowed configuration of the message and errors attributes in a
server error response.

This commit separates the control of the message and errors attributes
into two separate properties named server.error.include-message and
server.error.include-binding-errors. When the message attribute is
excluded from a servlet response, the value is changed from a
hard-coded text value to an empty value.

Fixes gh-20505
5 years ago
Andy Wilkinson d65d951318 Polish "Add support for customizing Spring Session's cookie serializer"
See gh-20961
5 years ago
Vedran Pavic 32454b83b4 Add support for customizing Spring Session's cookie serializer
This commit introduces a CookieSerializerCustomizer callback that
allows the customization of the auto-configured
DefaultCookieSerializer bean. This is particularly useful for
configuring cookie serializer's capabilities, such as SameSite, that
are not supported by the Servlet API and therefore not exposed via
server.servlet.session.cookie.* properties.

See gh-20961
5 years ago
Scott Frederick f3d717e97a Use paketo-buildpacks/builder as default builder
This commit changes the default builder image from
`cloudfoundry/cnb:bionic-platform-api-0.2` to
`gcr.io/paketo-buildpacks/builder:base-platform-api-0.3`. It also
uses a `paketo-buildpacks/builder` image instead of a
`cloudfoundry/cnb` image to test compatibility with lifecycle v2
and uses paketo naming instead of cloudfoundry when mocking builder
interactions.

Some adjustments to lifecycle phases were also made to align more
closely with the pack CLI.

Fixes gh-21066
5 years ago
Andy Wilkinson 14c88b3c04 Upgrade to Spring Integration 5.3.0.RC1
Closes gh-20951
5 years ago
Andy Wilkinson c7a5b72565 Improve compatibility by replacing use of seq with a native for-loop
Closes gh-21068
5 years ago
Andy Wilkinson 76d71e58d7 Upgrade to Spring Kafka 2.5.0.RC1
Closes gh-20953
5 years ago
Stephane Nicoll d16074d8fd Bind and unbind Kafka metrics as consumers and producers come and go
Fixes gh-21008

Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
5 years ago
Brian Clozel 692a8c47cc Rename property for registering default Servlet
As a follow-up for gh-21214, this commit renames the property to:

`"server.servlet.register-default-servlet=false"`

Closes gh-21214
5 years ago
Brian Clozel c7c01f8ab4 Add property for registering default Servlet
This commit adds a new configuration property for configuring the
registration of the default Servlet in Servlet containers.

`"server.servlet.default-servlet.registered=false"`

The default of this property is still `true`, as it's been the case in
previous releases.

Closes gh-21214
5 years ago
Andy Wilkinson 2d769e7679 Polish "Stop limiting layer customization to external modules"
See gh-21207
5 years ago
Paddy Drury 98644df64d Stop limiting layer customization to external modules
See gh-21207
5 years ago
dreis2211 c1c90b11b8 Fix some deprecations
See gh-21212
5 years ago
Stephane Nicoll 2eef71cba5 Upgrade to Spring AMQP 2.2.6
Closes gh-20947
5 years ago
Stephane Nicoll 371774c109 Upgrade to WebJars Locator Core 0.45
Closes gh-21255
5 years ago
Stephane Nicoll 2807e64e73 Upgrade to Tomcat 9.0.34
Closes gh-21254
5 years ago
Stephane Nicoll b042af606f Upgrade to Spring WS 3.0.9.RELEASE
Closes gh-21253
5 years ago