First milestone of Reactor 2020.0 (Codename Europium)

Engineering | Simon Baslé | July 10, 2020 | ...

Earlier this month, we released a first milestone of Reactor 2020.0. This cycle, codename Europium, follows the Dysprosium one (which included reactor-core 3.3.x and reactor-netty 0.9.x).

It includes reactor-core 3.4.0 and reactor-netty 1.0.0.

In this blog post, we'll cover a few highlights of the reactor-core milestone, and briefly mention what's in store for M2.

For reactor-netty, we'll link to a separate blog post here as soon as it is out.

Note also that there is a new versioning scheme in place, which has been adopted accross the Spring portfolio: see the reference guide and this blog post

This Week in Spring - July 7th, 2020

Engineering | Josh Long | July 06, 2020 | ...

Hi, Spring fans! What a crazy week it's been! How are you? I hope you're safe, healthy, happy.

I'll be speaking later today (Tuesday) at the Accento Digital conference and at the Jetbrains Java Day online event on the 10th (Friday). Both of these should be accessible from EMEA and APJ timezones. I look forward to seeing you there!

We've got a ton of good stuff to get to this week so let's get to it!

Spring Security 5.4.0-M2 Released

Releases | Josh Cummings | July 02, 2020 | ...

On behalf of the community, I’m pleased to announce the release of Spring Security 5.4.0-M2! You can find the complete details in the release notes and the highlights below:

OAuth 2.0

gh-8700 - OAuth2AuthorizedClientArgumentResolver picks up OAuth2AuthorizedClientManager bean
gh-8730 - Add JWTProcessor Configuration Post-Processor
gh-8669 - OAuth2AuthorizedClientArgumentResolver for XML
gh-8587 - Add ServerRequestCache setter in OAuth2AuthorizationCodeGrantWebFilter
gh-8603 - oauth2Client Test Support no longer requires an HttpSessionOAuth2AuthorizedClientRepository
gh-8501 - Add issuerUri to…

This Week in Spring - June 30th, 2020

Engineering | Josh Long | July 01, 2020 | ...

Hi, Spring fans! Welcome to another installment of This Week in Spring! What a wonderful week it's been and it's only Tuesday! I spoke to folks in Switzerland on Monday, had a few awesome meetings with folks later, then today spoke to folks in Germany in the morning and then folks in APJ (Singapore, mostly) in the evening. And tomorrow, I'm speaking at the JPoint virtual conference about Bootiful Kotlin. I'd love to see you there!

Now then, we've got a ton of things to look at this roundup so let's get to it!

URL Matching with PathPattern in Spring MVC

Engineering | Rossen Stoyanchev | June 30, 2020 | ...

The recent Spring Framework 5.3 M1 release announcement mentions "Spring MVC comes with PathPattern parsing for efficient URL matching". This post expands on that with more context and detail.

Overview

In Spring applications AntPathMatcher is used to identify classpath, file system, remote, and other resources in Spring configuration. It has also been used in Spring MVC to match URL paths. Over time the use of patterns in web applications grew in number and syntax with AntPathMatcher evolving to meet those needs but some pain points remain without a solution:

  1. In web applications, patterns need to be matched many times per request and therefore any gains in performance and efficiency matter. However String pattern matching limits what can be achieved.

  2. Choosing the most specific pattern among several that match a request has proven challenging over the years with no simple ways to make it more predictable without impacting other cases.

  3. Matching a String path to a String pattern makes it difficult to avoid URI encoding issues. For example should the incoming path be decoded first and then matched? That allows for patterns themselves to be declared without encoded characters, but what if the request path contains %2F or %3B which are / and ; respectively? Once decoded those alter the structure of the path making it harder to match reliably. We could leave the request path encoded via UrlPathHelper#urlDecode

Spring Boot 2.4.0-M1 is now available

Releases | Andy Wilkinson | June 29, 2020 | ...

On behalf of the team and everyone that contributed, I am pleased to announce that the first milestone of Spring Boot 2.4 has been released and is available from our milestone repository. This release closes over 120 issues and pull requests.

Please note the slight change in the format of the version. 2.4.0-M1 is the first Spring Boot release to use the new versioning scheme.

With Spring Boot 2.4, we have switched to a 6-month release cadence. All being well, you can expect to see 2.4.0 reach general availability in October or November.

Highlights of this first milestone include:

Spring Integration 5.4 M1 Available

Releases | Artem Bilan | June 29, 2020 | ...

Dear Spring community,

On behalf of the team and everyone who contributed, it is my pleasure to announce the first milestone for Spring Integration 5.4 generation.

It can be downloaded from our milestone repository:

compile 'org.springframework.integration:spring-integration-core:5.4.0-M1'

The Spring Integration 5.4 generation is full based on recently released Spring Framework 5.3 M1 including all the deprecation resolutions, removal some obsolete API and aggressive upgrade the latest versions for dependencies.

Long-waiting community request has been fulfilled and now Spring Integration…

Spring Batch 4.3.0-M1 is released now!

Releases | Mahmoud Ben Hassine | June 26, 2020 | ...

On behalf of the Spring Batch team, I am pleased to announce that Spring Batch 4.3.0-M1 is now available from our milestone repository.

What’s new?

This release is packed with new features, performance improvements, and bug fixes, as well as documentation and dependency updates! You can find the complete list of changes in the release notes, but here are the major highlights:

New features

1. New synchronized ItemStreamWriter

Similar to the SynchronizedItemStreamReader, we added a SynchronizedItemStreamWriter. This feature is useful in multi-threaded steps where concurrent threads need to be…

Get the Spring newsletter

Thank you for your interest. Someone will get back to you shortly.

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring Runtime offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all