Skip to content

Releases: dbmdz/flusswerk

Release 4.2.0

26 Oct 17:00
Compare
Choose a tag to compare

This release introduces improved support for structured logging.

4.1.0

06 Oct 09:29
Compare
Choose a tag to compare
Bump version to 4.1.0

v4.0.1

20 Aug 12:50
Compare
Choose a tag to compare

Fixes a bug in Maven plugin management that adds the Sonatype deploy plugin for Maven Central to all child projects.

v4.0.0

04 Aug 12:46
Compare
Choose a tag to compare

Breaking Changes

  • Any Flusswerk application uses now Spring Boot and needs beans for
    [FlowSpec][FlowSpec] (defining the processing) and
    [IncomingMessageType][IncomingMessageType].
  • The package names changed from de.digitalcollections.flusswerk.engine to
    com.github.dbmdz.framework.
  • Messages don't have a default id field anymore - that's data the app is responsible for (if needed)
  • FlowBuilder API has been simplified a lot

New Features

Logging und monitoring:

  • Automatic metrics collection without explicit configuration
  • Improved support for custom metrics collection
  • Flusswerk automatically propagates tracing ids if present (you can override those at any time)
  • Automatic structured logging with id and tracingId if present
  • Improved DefaultProcessReport: Now less verbose and more to the point

Process synchronisation:

  • Centralized locking via Redis

Data Processing

  • Improved and simplified FlowBuilder
  • Support for data processing as Message → Message instead of Reader, Transformer and Writer for small apps
  • Harnessing the power of Spring Boot makes configuration of Workflow apps easier than ever

v3.2.0

21 Apr 09:16
Compare
Choose a tag to compare

Typing for generic classes

For most classes, a class reference can be used in the builder interfaces, like String.class. As this does not work with generics, we introduced new type references. The following lines are equivalent

FlowBuilder.with(String.class, String.class, String.class)
FlowBuilder.with(new Type<String>(), new Type<String>(), new Type<String>())

While the class reference is more concise, the type variant allows for generics:

FlowBuilder.with(new Type<List<String>>(), ...)

Default Metrics collection in Spring Boot Starter

If you do not need to collect custom processing metrics, the Spring Boot Starter has metrics collection out of the box. The Metrics class there can be used a base class for your own metrics collection, too.

Experimental Flow Builder

This release introduces an ExperimentalFlowBuilder with a strong focus on usability that will become default in Flusswerk 4.

v3.1.1

11 Mar 16:13
aea0b8a
Compare
Choose a tag to compare

Fix issues with Spring Boot autoconfiguration.

v3.1.0

12 Mar 08:49
Compare
Choose a tag to compare

Version 3.1.0 introduces

  • Support for Spring Boot:

    • a Spring Boot Starter for autoconfiguration
    • configuration via application.yml
    • provide metrics via Spring Boot actuator and Promtheus
  • Improved exception handling:

    • new exception types that are easier to understand
      (StopProcessingException and RetryProcessingException)
    • new exception types now require error descriptions in any case
    • convenience API for error handling, esp. in combination with
      Java's Optional
  • Simplified custom messages:

    • new base class for ready to go custom message implementations
    • a new API to implement custom messages: Implementing
      FlusswerMessage is now all you need
    • Custom Jackson mixins are now optional
  • new API for collecting metrics

  • minor fixes and improvements

Version 3.1.0 prepares:

  • The control exception types of previous versions are deprecated now
    and will be removed in version 4.0.0

v3.0.0

03 Jul 12:51
Compare
Choose a tag to compare
Release 3.0.0

 - Security bugfix for Jackson
 - Drop support for Java 8

v2.3.0

07 May 09:43
Compare
Choose a tag to compare
Release version 2.3.0

 - Support for tracking IDs through a chain of workflow jobs
 - Reconnect when RabbitMQ restarts while Flusswerk is already running
 - Better Spring Boot examples

v2.2.1

27 Nov 09:55
Compare
Choose a tag to compare
Increased version number