Publication
Spring Framework
Tests: 20286 passed
Duration: 15 minutes
Changes: Who: Sébastien Deleuze
Why: Polishing
See gh-23219

Who: Sébastien Deleuze
Why: Polishing
See gh-23219
4.3.x
Spring Framework - Publication
Tests: 16580 passed
Duration: 16 minutes
Changes: Who: Sam Brannen
Why: Support empty target request path in FlashMap
Prior to this commit, if the user configured an empty path for the
targetRequestPath property of a FlashMap, the FlashMapManager threw a
StringIndexOutOfBoundsException when saving the output FlashMap for the
next request.

This commit fixes this by skipping the decoding and normalization of an
empty target request path.

Fixes gh-23240

Who: Sam Brannen
Why: Polish contribution
See gh-23237

Who: Rossen Stoyanchev
Why: Polish

Who: Sam Brannen
Why: Polishing

Who: Сергей Цыпанов <sergei.tsypanov@yandex.ru>
Why: Use StringJoiner where possible to simplify String joining
Closes gh-23237

...
Changes by 12 people
5.0.x
Spring Framework - Publication
Tests: 18707 passed
Duration: 14 minutes
Changes: Who: Sam Brannen
Why: Support empty target request path in FlashMap
Prior to this commit, if the user configured an empty path for the
targetRequestPath property of a FlashMap, the FlashMapManager threw a
StringIndexOutOfBoundsException when saving the output FlashMap for the
next request.

This commit fixes this by skipping the decoding and normalization of an
empty target request path. An empty target request path is therefore
effectively treated as the root path.

Fixes gh-23240

Who: Sam Brannen
Why: Polish AbstractMockWebServerTestCase

Who: Sam Brannen
Why: Improve diagnostics for all server failures in RestTemplateIntegrationTests

Who: Juergen Hoeller
Why: Upgrade to Kotlin 1.3.41, Netty 4.1.37, Log4J 2.12, HSQLDB 2.5

Who: Phil Webb
Why: Restore StringUtils.hasLength check
Update `MimeTypeUtils` so that the  StringUtils.hasLength check is
performed immediately on the incoming argument, rather than in
`parseMimeTypeInternal`. This restores the `IllegalArgumentException`
rather than the `NullPointerException` which is thrown by the
`ConcurrentHashMap`.

Closes gh-23215
See gh-23211

...
Changes by 12 people
5.1.x
Spring Framework - Publication
Tests: 18846 passed
Duration: 14 minutes
Changes: Who: Rossen Stoyanchev
Why: Filtering for nested ERROR dispatch
OncePerRequestFilter now has a doFilter method that allows separate
processing of nested ERROR dispatches. This is useful for filters
that wrap the request and response.

Closes gh-23196

Who: Sam Brannen
Why: Execute test suite in Gradle using JUnit Platform
Closes gh-23286

Who: Sam Brannen
Why: Run JUnit 4 tests in spring-test on the JUnit Platform
This commit simplifies the build for spring-test by running JUnit 4
tests and JUnit Jupiter tests together in the standard Gradle `test`
task.

As an added bonus, the ignored tests in SpringJUnit4ConcurrencyTests
and ClassLevelDisabledSpringRuleTests are now reported in the test
results.

See gh-23286

Who: Arjen Poutsma
Why: Make sure built ClientResponses have HttpRequest

Who: Rossen Stoyanchev
Why: Merge branch "5.1.x"

...
Changes by 4 people