close

Spring Batch 4.0.4, 4.1.3 and 4.2.1 available now!

I am pleased to announce the release of Spring Batch 4.0.4, 4.1.3 and 4.2.1 with bug fixes as well as documentation and dependencies updates. Please find the complete list of changes in the release notes: 4.0.4, 4.1.3, 4.2.1.

As we announced earlier this year, version 4.0.4 is the last release of the 4.0 line. The 4.1.x line will get another bug fix release next year and 4.1.4 will be the last release for this line. Please upgrade to v4.2+ at your earliest convenience as this is the primary active branch for the moment and which will be supported until the end of 2020.

Read more

Stream Processing with Spring Cloud Stream and Apache Kafka Streams. Part 3 - Data deserialization and serialization

Part 1 - Programming Model
Part 2 - Programming Model Continued

Continuing on the previous two blog posts, in this series on writing stream processing applications with Spring Cloud Stream and Kafka Streams, now we will look at the details of how these applications handle deserialization on the inbound and serialization on the outbound.

All three major higher-level types in Kafka Streams - KStream<K,V>, KTable<K,V> and GlobalKTable<K,V> - work with a key and a value.

With Spring Cloud Stream Kafka Streams support, keys are always deserialized and serialized by using the native Serde mechanism. A Serde is a container object where it provides a deserializer and a serializer.

Read more

Spring Data Moore SR3 and Lovelace SR14 released

On behalf of the community, we are pleased to announce that Spring Data Moore SR3 and Lovelace SR14 are now available from Maven Central. Both releases ship with almost 70 tickets in total, mostly bugfixes and dependency upgrades.

Moore SR3 is built on top of the recently released Spring Framework 5.2.2 and will be picked up by Spring Boot 2.2.2 for easier consumption and Lovelace SR14 is built on top of the recently released Spring Framework 5.1.12 and will be picked up by Spring Boot 2.1.11 for easier consumption.

Read more

Stream Processing with Spring Cloud Stream and Apache Kafka Streams. Part 2 - Programming Model Continued

On the heels of the previous blog in which we introduced the basic functional programming model for writing streaming applications with Spring Cloud Stream and Kafka Streams, in this part, we are going to further explore that programming model.

Let’s look at a few scenarios.

Scenario 1: Single input and output binding

If your application consumes data from a single input binding and produces data into an output binding, you can use Java’s Function interface to do that. Keep in mind that binding in this sense is not necessarily mapped to a single input Kafka topic, because topics could be multiplexed and attached to a single input binding (with comma-separated multiple topics configured on a single binding - see below for an example). On the outbound case, the binding maps to a single topic here.

Read more

Spring Framework maintenance roadmap in 2020 (including 4.3 EOL)

Dear Spring community,

With Spring Framework 5.2.2 and 5.1.12 being available now, let me take the opportunity to provide an update on the maintenance roadmap in 2020.

Most importantly, Spring Framework 4.3.x and therefore Spring Framework 4 overall will reach its end-of-life next year: Our EOL cut-off is December 31st, 2020, with no further support on 4.3.x beyond that point. At the same time, we are also phasing out 5.0.x and 5.1.x for good.

As for planned releases, first up is a full round in mid January: with 5.2.3 and 5.1.13 accompanied by 5.0.16 and 4.3.26. The latter are the last maintenance releases in the 5.0.x and 4.3.x lines. We may do critical patches in case of vulnerabilities but otherwise no further releases are planned in those lines until the final cut-off at the end of 2020.

Read more

Spring Framework 5.2.2 and 5.1.12 available now

On behalf of the team and everyone who has contributed, I am pleased to announce that Spring Framework 5.2.2 and 5.1.12 are available now.

The second maintenance release of the 5.2 line includes over 100 fixes and improvements. Spring Framework 5.1.12 includes 25 selected fixes and improvements.

As usual, we’ll follow up shortly with corresponding Spring Boot releases (2.2.2 and 2.1.11).

See you early 2020 for a full round of Spring Framework releases, from 4.3.x up to the 5.2.x generation. More on that in a future blog post, stay tuned!

Read more

This Week in Spring - December 3, 2019

Hi, Spring fans! Can you believe - and I can’t, by the way - that we’re already in December 2019? The last month before the new year? The last month of this decade? It defies belief! I can’t even imagine how we got this far so quickly, but it’s great that we did. I started writing This Week in Spring in the first week of January 2011, so we’re fast approaching 9 years of This Week in Spring!

As I write this I am in Toronto, Canada, for the last stop on the SpringOne Tour train for 2019. I enjoyed giving a two-hour talk introducing all sorts of stuff in the wide world of Reactive Spring yesterday. Now, I am just biding my time, preparing for my departure to Australia later today. I am off to Australia for two stops on the YOW! conference circuit. I wholely look forward to seeing everyone there!

Read more

Stream Processing with Spring Cloud Stream and Apache Kafka Streams. Part 1 - Programming Model

This is the first in a series of blog posts in which we will look at how stream processing applications are written using Spring Cloud Stream and Kafka Streams.

The Spring Cloud Stream Horsham release (3.0.0) introduces several changes to the way applications can leverage Apache Kafka using the binders for Kafka and Kafka Streams.
One of the major enhancements that this release brings to the table is first class support for writing apps by using a fully functional programming paradigm. This blog post gives an introduction to how this functional programming model can be used to develop stream processing applications with Spring Cloud Stream and Kafka Streams. In the subsequent blog posts in this series, we will look into more details.

Read more

A Bootiful Podcast: Spring Tools lead Martin Lippert

Hi, Spring fans! In today’s episode Josh Long (@starbuxman) talks to Spring Tools lead Martin Lippert (@martinlippert) about his time at Pivotal, and on the Spring team, his work on Spring Tools, and his work on language servers that now serve as the foundational integration for Spring users using Microsoft’s Visual Studio Code, emacs and Atom, among other things.

Thanks, dear listener, and Happy Thanksgiving!

Read more

Spring Cloud Hoxton Released

On behalf of the community, I am pleased to announce that the General Availability (RELEASE) of the Spring Cloud Hoxton Release Train is available today. The release can be found in Maven Central. You can check out the Hoxton release notes for more information.

Notable Changes in the Hoxton Release Train

Spring Cloud Hoxton.RELEASE is based on Spring Boot 2.2.1.RELEASE.

Documentation Changes

The Hoxton.RELEASE docs have a new landing page, new theme and a single-page, multi-page and a pdf version.The landing page will link you to the documentation for the specific project you are interested in. We hope you find that the new documentation structure easier to consume.

Read more