The Spring Blog

Engineering
Releases
News and Events

Spring for Apache Kafka 2.1.0.RELEASE (and 1.3.2, 2.0.2) Available

I am pleased to announce the availability of Spring for Apache Kafka 2.1.0.RELEASE.

In addition, maintenance releases 1.3.2.RELEASE and 2.0.2.RELEASE are available, containing important bug fixes. See also below for information about spring-integration-kafka 3.0.0.RELEASE. It is recommended that all users upgrade.

The main purpose of the 2.1 release is to upgrade the kafka-clients library to 1.0.0, but we have included a few improvements:

  • Sometimes, when a message can’t be processed, you may wish to stop the container so the condition can be corrected and the message re-delivered. The framework now provides the ContainerStoppingErrorHandler for record listeners and ContainerStoppingBatchErrorHandler for batch listeners.

  • The KafkaAdmin now supports increasing partitions when a NewTopic bean is detected with a larger number of partitions than currently exist on the topic.

  • StringJsonMessageConverter and JsonSerializer/JsonDeserializer now pass and consume type information in Headers. This allows multiple types to be easily sent/received on the same topic:

Read more...

Spring Boot 2.0.0 M7 available now

On behalf of the team, it is my pleasure to announce that Spring Boot 2.0.0.M7 has been released and is now available from our milestone repository. This release closes 165 issues and pull requests and continues our progress towards 2.0 GA. Thanks to everyone that has contributed!

This release refines a number of items from previous milestones, and provides a number of notable new features:

  • Condition evaluation report deltas on Devtools triggered restart
  • A new scheduled tasks actuator endpoint
  • Support for Duration types in configuration properties (e.g. 5ms, 1s, 10m)
  • Reactive Couchbase support
Read more...

Spring IO Platform Brussels-SR6

I am pleased to announce that Spring IO Platform Brussels-SR6 is now available from both repo.spring.io and Maven Central.

This maintenance release upgrades the versions of a number of the projects in the Platform:

  • AspectJ 1.8.13
  • Spring Boot 1.5.9
  • Spring Cloud Connectors 1.2.5
  • Spring Data Ingalls-SR9
  • Spring Framework 4.3.13
  • Spring Kafka 1.1.7
  • Spring LDAP 2.3.2
  • Spring Web Services 2.4.2

The versions of a number of third-party dependencies have also been updated.

Project Page | GitHub | Issues | Documentation

Read more...

Spring Cloud Data Flow 1.3.0.M3 released

We are pleased to announce the 1.3.0.M3 release of the Spring Cloud Data Flow and its associated ecosystem of projects.

Local Server: Getting Started Guide

Release Highlights

Stream updates and rollback

A streaming data pipeline orchestrated as a series of microservice applications has always been the core value of Spring Cloud Data Flow’s design. In 1.3.0.M3 we have provided the ability to update sources, processors, and sinks independently without having to undeploy and redeploy the entire stream.

The stream update feature is implemented by delegating the deployment process to a new Spring Cloud project called Skipper. Introduced in this blog, Spring Cloud Skipper is a standalone server that deploys Spring Boot applications to multiple cloud platforms. It also keeps track of the application version, application properties, and deployment properties of the deployed application or applications so that the changes to any of these properties can be calculated upon an update request.

When a request is made to update applications in a Stream, only the application or applications that need to be changed are updated. A simple red/black update is performed and the design relies on Spring Boot’s health endpoint associated with the new application(s). By keeping track of the deployments, Skipper can also rollback to previous versions of the stream.

The following new Data Flow commands show the basic lifecycle of updating the log sink from version 1.1.0 to version 1.2.0 and then rolling back to 1.1.0. This assumes that both version 1.1.0 and 1.2.0 of the log sink were deployed as maven artifacts. Note that the HTTP source application remains deployed throughout the changes to the log sink.

dataflow:> app register --name http --type source --uri maven://org.springframework.cloud.stream.app:http-source-rabbit:1.2.0.RELEASE

dataflow:> app register --name log --type sink --uri maven://org.springframework.cloud.stream.app:log-sink-rabbit:1.1.0.RELEASE

dataflow:> stream create --name httptest --definition "http --server.port=9000 | log"

dataflow:> stream skipper deploy --name httptest

dataflow:> stream skipper update --name httptest --properties version.log=1.2.0.RELEASE

dataflow:> stream skipper rollback --name httptest

The Getting Started and Streams with Skipper sections of the documentation walk through the process in much greater detail.

Read more...

Spring Integration 5.0 GA Available

On behalf of the Spring Integration team I am pleased to announce that the GA release for the Spring Integration 5.0 version (5.0.0.RELEASE) is now available.

It can be downloaded from Maven Central, JCenter, and our release repository:

compile "org.springframework.integration:spring-integration-core:5.0.0.RELEASE"

First of all, special thanks to all community members for their ongoing active contributions to the framework!

Several JIRAs (and some GitHub issues), since the previously announced RC1, are included in this release, mostly bug fixes from early adopters and Reference Manual improvements.

Read more...

Spring AMQP 1.7.5 and 2.0.1 Available

On behalf of the community, I’m pleased to announce 1.7.5 and 2.0.1 maintenance releases of Spring AMQP. They are available from Maven Central, JCenter, and our release repository.

These versions are mostly bug fixes and recommended for everyone to upgrade.

The version 2.0.1 is a foundation for the upcoming Spring Boot 2.0 M7 release.

Thanks to all the community contributors for various feedback and pull requests.

We hope to see you at SpringOne Platform next week. It will be packed with many Spring talks, opportunities to learn about the latest and greatest features and of course some previews about what we’re planning to do next.

Read more...

Spring REST Docs 2.0.0.RELEASE

On behalf of everyone who contributed, it’s my pleasure to announce that Spring REST Docs 2.0.0.RELEASE has been released and is available from Maven Central, JCenter, and our release repository

What’s new?

Spring REST Docs 2.0 is the latest generation of the project and requires Spring Framework 5.0 and Java 8.

The main highlight of the 2.0 release is support for using Spring WebFlux’s WebTestClient to document an API. WebTestClient can be used for lightweight testing and documentation of APIs implemented using WebFlux Fn and WebFlux’s annotation-based programming model. It can also be used to document any API that’s accessible via HTTP, something that was previously only possible when using REST Docs’ REST Assured support.

Read more...

Spring Security 5.0.0.RELEASE Released

On behalf of the community, I’m pleased to announce the release of Spring Security 5.0.0.RELEASE. This release resolves 400+ tickets. For highlights and details about the release, refer to the What’s New in Spring Security 5.0 section.

We hope to see you at SpringOne Platform next week. It will be packed with many Spring talks, opportunities to learn about the latest and greatest features and of course some previews about what we’re planning to do next.

Read more...

Spring REST Docs 1.2.3.RELEASE

It’s my pleasure to announce that Spring REST Docs 1.2.3.RELEASE is available from Maven Central, JCenter, and our release repository. My thanks to everyone who contributed to this release by reporting bugs and opening pull requests.

This maintenance release includes a handful of bug fixes and documentation improvements. It is a recommend upgrade for all Spring REST Docs users.

GitHub | Issues | Documentation | Twitter | Gitter | Stack Overflow

Read more...