Updates to Spring Versions

Engineering | Rob Winch | April 30, 2020 | ...

The Spring team has decided to change the versioning scheme for both release trains and project modules. These changes will be coming in the next release train and minor releases for each project. In fact, the changes are already present in Spring Cloud 2020.0.0-M1. Maven and Gradle do not provide the exact same version ordering, but we are working with the Gradle team to ensure the Spring scheme ends up sorted in the same way with both tools.

Release Train Version Changes

Spring has been using alphabetically ordered, themed release train versions since 2013. Release trains contain a group of…

Spring Integration 5.3 RC1, 5.2.6 & 5.1.10 Available

Releases | Artem Bilan | April 30, 2020 | ...

I’m pleased to announce the first (and the last) release candidate for Spring Integration 5.3.

This release ships several bug fixes, a bunch of new features and improvements and will be picked up by Spring Boot 2.3 RC1.

It can be downloaded from our milestone repository:

compile 'org.springframework.integration:spring-integration-core:5.3.0.RC1'

The most important new features are:

  • The MongoDbChangeStreamMessageProducer - a reactive MessageProducerSupport implementation for the Spring Data ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class) API. This component produces a Flux of messages with a body of ChangeStreamEvent as the payload by default and some change stream related headers (see MongoHeaders).

  • The ReactiveMessageSourceProducer - a reactive implementation of the MessageProducerSupport to wrap a provided MessageSource into a Flux for on demand receive() calls.

  • The ReceiveMessageAdvice - a former AbstractMessageSourceAdvice is graduated now to more common advice approach which can be used also for the PollableChannel.receive() proxying.

Spring for Apache Kafka 2.5.0 Release Candidate

Releases | Gary Russell | April 30, 2020 | ...

The 2.5.0.RC1 release candidate is now avaialable in the Spring milestone repo.

Update: 2.5.0.RELEASE was released on May 13th.

Highlights:

  • kafka-clients 2.5.0 (alignment of version numbers is coincidental).

  • Support for re-committing retryable offset commit exceptions for retained partitions when using cooperative rebalancing.

  • Support for the new "fetch-offset-request" procuder fencing (when brokers are 2.5 or higher), requiring fewer producers.

  • Support for static group membership.

  • More integration with Micrometer.

  • Optional Delivery Attempts header.

  • RecoveringBatchErrorHandler can commit a partial batch and replay from failed record in a batch (with cooperation of the listener); this is now the default for a batch listener.

This Week in Spring - April 28th, 2020

Engineering | Josh Long | April 29, 2020 | ...

Hi, Spring fans! Welcome to another installment of This Week in Spring! It's already April 28th, 2020. I can't even believe it.

The time sure is flying, not just since the last time we spoke in this little blog of ours, but also since I first started writing these roundups the first week of January 2011. In four short months, it'll have been ten years since I officially joined the Spring team! Crazy.

It's also the case that time has flown by since this #COVID19 crisis forced much of the world into lockdown. I am an eternal optimist, and I was wondering if this COVID19 crisis was going to have…

Spring Tips: The Wavefront Observability Platform

Engineering | Josh Long | April 29, 2020 | ...

speaker: Josh Long (@starbuxman)

Hi, Spring fans! Welcome to another installment of Spring Tips! In this installment, we'll revisit two topics that we've addressed in two previous videos (distributed tracing and metrics collection) in terms of the superb Tanzu Wavefront observability platform.

The first video of the two videos, as mentioned above, dating way back in early 2017, looked at distributed tracing with spring cloud sleuth and openzipkin. Spring Cloud Sleuth is an abstraction for capturing the flow of messages from one node to another. It's useful to help you see how messages move through a system. Spring cloud sleuth integrates with all the usual ingress and egress points in a Spring Boot application. Make an HTTP request using either the Restteplat or the reactive WebClient or Spring Cloud Feign? It works. Receive an HTTP request to a traditional (Servlet-based) or…

Spring Framework 5.2.6, 5.1.15, 5.0.17, and 4.3.27 available now

Releases | Stéphane Nicoll | April 28, 2020 | ...

On behalf of the team and everyone who has contributed, I am pleased to announce a full round of Spring Framework releases.

Spring Framework 5.2.6 includes 46 fixes and improvements. Spring Framework 5.1.15 includes 16 selected fixes and improvements.

Maintenance releases for 5.0.x (5.0.17) and 4.3.x (4.3.27) with 12 selected fixes and improvements and 5 selected fixes and improvements respectively are also available today.

As usual, we'll follow up shortly with corresponding Spring Boot releases (2.2.7 and 2.1.14) as well as a release candidate for Spring Boot 2.3!

Project Page | GitHub | Issues |

Spring Data Neumann RC2, Moore SR7, and Lovelace SR17

Releases | Mark Paluch | April 28, 2020 | ...

On behalf of the team, I'm pleased to announce Spring Data releases Neumann RC2, Moore SR7, and Lovelace SR17. This triple-feature is built on top of today's Spring Framework releases 5.2.6 (Neumann and Moore) and 5.1.15 (Lovelace).

Spring Data Neumann RC2 contains 96 new features, improvements, and fixes. Spring Data Moore SR7 ships with 40 fixes and improvements. Finally, Spring Data Lovelace SR17 includes 39 selected fixes.

Spring Data Neumann RC2 ships with numerous improvements and new features. The most interesting amongst these are:

  • Query Derivation for Spring Data JDBC.
  • Refinements in the reactive resource lookup for Spring Data Cassandra and Spring Data MongoDB, introducing a deferred lookup for Session with a MongoDatabase that allows for routing implementations that use the Subscriber Context.
  • Embedded Types in Spring Data Cassandra
  • Additional Entity Callbacks in Spring Data Elasticsearch

Announcing Spring Cloud Stream Horsham.SR4 (3.0.4.RELEASE) and Spring Cloud Hoxton.SR4

Releases | Oleg Zhurakousky | April 27, 2020 | ...

We are pleased to announce the release of the Spring Cloud Stream Horsham.SR4 (3.0.4.RELEASE) release train which is available as part of Spring Cloud Hoxton.SR4 and builds on Spring Boot 2.2.6 and Spring Cloud Function 3.0.6.RELEASE which was also just released.

Spring Cloud Stream Horsham.SR4 modules are available for use in the Maven Central repository.

This release contains several fixes and enhancements primarily driven by user's feedback, so thank you. For more details please follow these links:

As mentioned, Spring Cloud Hoxton.SR4 was also released, but it only contains updates to Spring Cloud Stream and Spring Cloud Function.

Spring Tips: Configuration

Engineering | Josh Long | April 23, 2020 | ...

speaker: Josh Long (@starbuxman)

Hi, Spring fans! Welcome to another installment of Spring tips! in this installment, we're going to look at something that's rather foundational, and something that I wish I'd addressed earlier: configuration. And no, I don't mean functional configuration or java configuration or anything like that, I'm talking about the string values that inform how your code executes. the stuff that you put in application.properites. that configuration.

All configuration in Spring emanates from the Spring Environment abstraction. The Environment is sort of like a dictionary - a map with keys and values. Environment is just an interface through which we can ask questions about, you know, the Environment. The abstraction lives in Spring Framework and was introduced in Spring 3, more than a decade ago. up until that point, there was a focused mechanism to allow integration of configuration called property placeholder resolution. This environment mechanism and the constellation of classes around that interface more than…

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

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

Learn more

Get support

Tanzu Spring 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