The Spring Blog

News and Events

Spring Cloud for Google Cloud Platform 1.0 Milestone 2 Available

Dear Spring Community!

It’s my pleasure to announce today a new project in the Spring Cloud family. It’s called Spring Cloud GCP and its goal is to bring into your applications well-known Spring patterns and Spring Boot conventions for consuming Google Cloud Platform services.

The project currently is in version 1.0.0.M2 and is available from the Spring Milestone Repository:


Spring Data Lovelace M1 released.

On behalf of the Spring Data team I’m happy to announce the first milestone of the Lovelace release train. The release ships over 200 tickets fixed! The most important new features are:

  • JPA 2.2 result streaming.
  • MongoDB Validator and JsonSchema support.
  • Support for MongoDB Change Streams.
  • Neo4J OGM 3.1 upgrade.
  • Exist/Count projections as well as a fluent template API in Spring Data for Apache Cassandra.
  • Spring Data for Apache Geode added JCache Annotation support.
  • Query By Example for Redis repository abstractions.
  • Spring Data REST offers more fine grained method exposure mechanisms.

This Week in Spring - February 6th, 2018

Hi Spring fans! Welcome to another installment of This Week in Spring! This week I’m in Stockholm, Sweden, for the epic (and snowy) JFokus event, then it’s off to Frankfurt, Germany for the OOP show. If you’re at either event, don’t hesitate to reach out and say hi on Twitter (@starbuxman)!


Spring Cloud Skipper 1.0 GA Released

On behalf of the team, I am pleased to announce the release of Spring Cloud Skipper 1.0 GA

Skipper is a lightweight tool that allows you to discover Spring Boot applications and manage their lifecycle on multiple Cloud Platforms. You can use Skipper standalone or integrate it with Continuous Integration pipelines to help implement the practice of Continuous Deployment.

The getting started section in the reference guide is the best place to start kicking the tires.

Release Highlights:

  • Introduction of Flyway to manage schema along with various schema tweaks.

  • Option to delete a release along with its package.

  • Refined the REST API.

  • Updated properties to YAML converter.

  • Add resource metadata in manifest template.

  • Separate platform deployers into multiple maven modules.

  • Support passing to the shell commands to execute.

  • Updated documentation.

  • Various bug fixes.


Spring Cloud Stream Elmhurst.M4 /2.0.0.M4 Release Announcement

We are pleased to announce the 2.0.0.M4 release of the Spring Cloud Stream Elmhurst release train.

Spring Cloud Stream Elmhurst 2.0.0.M4 is available for use in the Spring Milestone repository. The release notes include relevant information about version compatibility with Spring Boot, Spring Cloud, Spring AMQP, and Spring for Apache Kafka.

The following sections list the summary of features and improvements included in this release:

  • Continuing performance improvements around Content-type resolution
  • Introduction of Polling Source as an alternative to the event-driven message consumption
  • StreamListener Infrastructure enhancements to primarily deal with multiple destination (details to follow)
  • Continuing Documentation improvements
  • Various other enhancements and bug fixes

Spring Cloud Data Flow 1.3 GA released

On behalf of the team, I am pleased to announce the general availability of Spring Cloud Data Flow 1.3 across a range of platforms

Follow the Getting Started guides for Local Server, Cloud Foundry, and Kubernetes

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 Data Flow 1.3 we have provided the ability to update sources, processors, and sinks independently without having to undeploy and redeploy the entire stream.

The stream update and rollback functionality is implemented by delegating the deployment process to a new Spring Cloud project called Skipper. Skipper is a lightweight Spring Boot application, purpose-built to fill this feature gap in Data Flow. Skipper defines a package format, much like helm or brew and can also deploy/undeploy applications to multiple cloud platforms: Local, Cloud Foundry, and Kubernetes. It uses the same Spring Cloud Deployer libraries that have been part of Data Flow since the beginning. Recent presentations at SpringOne 2017 introduces Skipper and the integration with Data Flow in more depth.

When deploying a Stream, Data Flow creates Skipper package describing the Stream and the applications that are part of the Stream definition. Skipper then deploys the applications to the desired platform. When requesting a stream update, only the application or applications that need to be changed are automatically redeployed. A simple strategy managed by a Spring Statemachine instance performs the update or rollback steps.

Data Flow includes new stream commands to make upgrade and rollback operations.

dataflow:>app register --name transform --type processor --uri maven://

dataflow:>stream create mystream --definition "jdbc | transform | mongodb"

dataflow:>app register --name transform --type processor --uri maven://

dataflow:>stream update mystream --properties “version.transform=0.0.2”

dataflow:>stream rollback mystream

In this series of commands, the stream is deployed using version 0.0.1 of the transformer. The jdbc and mongodb source and sink are already registered. The stream is then updated to use version 0.0.2 of the transformer. Only the transform application is updated, with version 0.0.2 being deployed and version 0.0.1 being undeployed. The jdbc and mongodb applications are left as-is. The rollback command does the opposite, bringing the stream back to the state with version 0.0.1 of the transformer.

Note: To use Data Flow and Skipper, Data Flow’s feature toggle for Skipper must be enabled in both the Data Flow Server and shell.


Spring IO Platform Brussels SR7

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

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

  • Spring AMQP 1.7.6
  • Spring Boot 1.5.10
  • Spring Data Ingalls-SR10
  • Spring Framework 4.3.14
  • Spring Integration 4.3.14
  • Spring Retry 1.2.2
  • Spring Security 4.2.4
  • Spring Web Flow 2.4.7

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

Project Page | GitHub | Issues | Documentation


Spring Boot 2.0.0 RC1 available now

On behalf of the team, it is my great pleasure to announce that Spring Boot 2.0.0.RC1 has been released and is now available from our milestone repository.

This release closes a massive 313 issues and pull requests, and is our first release candidate. At this point we’re not anticipating that any major API changes or new features will be added before our final 2.0 GA release.

We’ve refined a number of items from previous milestone, and provide a number of notable new features including:

  • A module to help with legacy property migration
  • HTTP/2 support for Jetty (to go along with the Tomcat and Undertow that was added in M7)
  • Greatly enhanced GSON support (thanks to an external contribution)
  • Improved actuator JSON structures
  • Helpful security matchers for both Servlet and Reactive deployements

Spring Boot 1.5.10 available now

Spring Boot 1.5.10 has been released and is is now available from and Maven Central.

This release includes an important fix for security vulnerability CVE-2018-1196, which can affect anyone using Spring Boot’s systemd and init.d service support. It also provides the latest version of Spring Security which fixed CVE-2018-1199.

In addition the security fix, Spring Boot 1.5.10 includes over 55 fixes, improvements and dependency updates. Thanks to all that have contributed with issue reports and pull requests.


This Week in Spring - January 30th, 2018

Hi Spring fans! Welcome to another installment of This Week in Spring! This week I was in Los Angeles and Chicago and now I’m in San Francisco, taking meetings with Pivotal ecosystem folks and customers. We’ve got an incredibly busy week’s worth of stuff ahead of us, so let’s get to it!