Spring Team
Oleg Zhurakousky

Oleg Zhurakousky

Software Engineer

Philadelphia, PA

Open source practitioner with over 17 years of experience in software engineering across multiple disciplines including software architecture and design, consulting, business analysis and application development. Speaker who presented seminars at dozens of conferences worldwide (i.e. SpringOne, JavaZone, Hadoop Summit,, JavaOne, Scala Days, Oredev etc.)
Blog Posts by Oleg Zhurakousky

Spring Cloud Stream Fishtown.RC2 /2.1.0.RC2 Release Announcement

We are pleased to announce the second Release Candidate of the Spring Cloud Stream Fishtown release train - Fishtown.RC2/2.1.0.RC2.

Spring Cloud Stream Fishtown 2.1.0.RC2 is available for use in the Spring Milestone repository.

As a follow up to 2.0.0.RC2, this release primarily encompasses minor enhancements and bug fixes.
As it stands now this should be the final Release Candidate before General Availability release 2.0.0.RELEASE in several weeks.

NOTE:
If the applications are created from Spring Initializr, they need to add this BOM snippet in maven dependency management before the spring-cloud BOM declaration, otherwise you’ll end up with the latest snapshot:

<dependency>
           <groupId>org.springframework.cloud</groupId>
           <artifactId>spring-cloud-stream-dependencies</artifactId>
           <version>Fishtown.RC2</version>
           <type>pom</type>
           <scope>import</scope>
</dependency>
Read more...

Announcing Spring Cloud Function - 2.0.0.RC2

We are pleased to announce the second Release Candidate of the Spring Cloud Function - 2.0.0.RC2.

Individual modules of Spring Cloud Function 2.0.0.RC2 are available for use in the Spring Milestone repository.

As a follow up to 2.0.0.RC1, this release primarily encompasses minor enhancements and bug fixes.
As it stands now this should be the final Release Candidate before General Availability release 2.0.0.RELEASE in several weeks.

How can you help?

If you’re interested in helping out, check out the “ideal for contribution” tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-cloud-function tag.

Read more...

Spring Cloud Stream Fishtown.RC1 /2.1.0.RC1 Release Announcement

We are pleased to announce the first Release Candidate of the Spring Cloud Stream Fishtown release train - Fishtown.RC1/2.1.0.RC1.

Spring Cloud Stream Fishtown 2.1.0.RC1 is available for use in the Spring Milestone repository.

The following section provides a brief summary of features and improvements included in this release.

Notable Dependency Upgrades

  • Spring Boot 2.1.0.RC1
  • Reactor Californium.RELEASE
  • Spring Cloud Function 2.1.0.RC1

Spring Cloud Function support

The main theme for this release is the introduction of a new programming model which uses Spring Cloud Function as an alternative for defining stream handlers and sources which can now be expressed as beans of
type java.util.function.[Supplier/Function/Consumer]

Read more...

Announcing Spring Cloud Function - 2.0.0.RC1

We are pleased to announce the first Release Candidate of the Spring Cloud Function - 2.0.0.RC1.

Individual modules of Spring Cloud Function 2.0.0.RC1 are available for use in the Spring Milestone repository.

Aside form general enhancements and bug fixes, This release encompasses the following:

Read more...

Announcing Spring Cloud Function - 2.0.0.M2

We are pleased to announce the second Milestone of the Spring Cloud Function - 2.0.0.M2.

Individual modules of Spring Cloud Function 2.0.0.M2 are available for use in the Spring Milestone repository.

Aside form general enhancements and bug fixes, the primary themes for this release are

  • Kotlin support
  • new programming model for Azure Functions (blog to follow)
  • automatic (optional) export of Supplier on startup in web adapter

How can you help?

If you’re interested in helping out, check out the “ideal for contribution” tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-cloud-function tag.

Read more...

Kotlin Support in Spring Cloud Function

Rarely we blog about a single feature, but given that this one was one of the most requested ones in Spring Cloud Function (relatively young project), we thought it may be appropriate, so here it is.

Initial support for Kotlin lambdas has been added to Spring Cloud Function. What it means is that Spring Cloud Function can now recognize Kotlin lambdas that effectively match to one of Java’s Supplier, Function or Consumer and treat them as such.

That is:

@Bean
open fun kotlinFunction(): (String) -> String {
    return  { it.toUpperCase() }
}

@Bean
open fun kotlinConsumer(): (String) -> Unit {
    return  { println(it) }
}

@Bean
open fun kotlinSupplier(): () -> String {
    return  { "Hello Kotlin" }
}

Read more...

Spring Cloud Stream Fishtown.M2 /2.1.0.M2 Release Announcement

We are pleased to announce the second Milestone of the Spring Cloud Stream Fishtown release train - Fishtown.M2/2.1.0.M2.

Spring Cloud Stream Fishtown 2.1.0.M2 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 section provides a brief summary of features and improvements included in this release.

Notable Dependency Upgrades

  • Spring Boot 2.1.0.M2 (now fully compatible with Spring Initializr)
  • Reactor Californium M2
Read more...

Spring Cloud Stream Fishtown.M1 /2.1.0.M1 Release Announcement

We are pleased to announce the first Milestone of the Spring Cloud Stream Fishtown release train - Fishtown.M1/2.1.0.M1.

Spring Cloud Stream Fishtown 2.1.0.M1 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 section provides a brief summary of features and improvements included in this release.

Notable Features, Improvements & enhancements

Read more...

Announcing General Availability of Spring Cloud Stream - Elmhurst.RELEASE (2.0.0.RELEASE)

After a long and exciting journey, we are pleased to announce the General Availability release of the Spring Cloud Stream Elmhurst release train - Elmhurst.RELEASE/2.0.0.RELEASE.

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-stream-dependencies</artifactId>
            <version>Elmhurst.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
Read more...

Spring Cloud Stream 2.0 - content-type negotiation and transformation

This is the first blog in a series of pre-release blogs in preparation for Spring Cloud Stream 2.0.0.RELEASE.

Preface

Spring Cloud Stream 2.0 includes a complete revamp of content-type negotiation for the channel-based binders to address performance, flexibility and most importantly consistency. The following blog touches on some of the key points around what has been done, what to expect and how it may help you.

Introduction

Data transformation is one of the core features of any message-driven microservice architecture. In Spring Cloud Stream, such data is represented as a Spring Message.

Read more...