Skip to main content
Version: 0.2

Project status

Nussknacker is production ready - it's been used in major Polish telcom since beginning of 2017. However, it's still under active development, so some parts of the API may change in the future.

For detailed instructions how to migrate to the newest version please see migration guide.

Nussknacker versions

0.2.2

  • #1175 Fix for: BestEffortAvroEncoder haven't produced record with logical types for missing field with default values
  • #1173 Fix for: Avro source wasn't be able to read record with schema with invalid defaults

0.2.1

  • #1127 Fix too small count values
  • #1133 Improvements: More flexible TestReporter instancies implementation
  • #1131 Fix: Disable "deploy" & "metrics" buttons for subprocess
  • #1148 Fix FE regexp for match node id

0.2.0

  • #1099 New outer-join node
  • #1024 Added default async interpretation value configured by asyncExecutionConfig.defaultUseAsyncInterpretation (false if missing).
  • #879 Metrics can now use Flink variables for better reporting, it's recommended to use InfluxDB native protocol instead of legacy Graphite protocol to send metrics to InfluxDB.
  • #940 More detailed node errors
  • #949 JVM options can be configured via JDK_JAVA_OPTIONS env variable (in docker and standalone distribution)
  • #954 Correct handling of types in empty inline lists
  • #944 System cache mechanism
  • #704 Preloaded creator panel node icons
  • #943 Literal min / max validators
  • #976 Fixed save button & groups expand for businessView
  • #973 Textarea editor
  • #987 Optimized graph rendering time, fixed minor bugs (expand group icon, view center & fit after layout).
  • Introduction to KafkaAvro API: #871, #881, #903, #981, #989, #998, #1007, #1014, #1041,
  • Performance improvements in interpreter: #1008, #1013. The second one also removes Future[] from expression evaluation
  • Dynamic parameters: filter validation, GenericNodeTransformation introduction (for CustomNodes, Sources, Sinks) - also handling dynamic parameters on UI: #978, #996, #1001, #1011
  • #988 Json editor
  • #1066 Duration and period editors fixes
  • #1126 New nodes: periodic source, delay and dead-end

0.1.2

  • #965 Added new, 'aggregate-tumbling' node.
  • #957 Custom node aggregate has now additional aggregation function Sum. Also was changed parameter from windowLengthInSeconds to windowLength with human friendly duration input.

0.1.1

  • Branch parameters now can be eager (computed during process compilation)
  • More restrictive type checking in SpEL - mainly added verification of types of method's paramaters
  • Added support for Kafka consumer group strategies - setted up by kafka.consumerGroupNamingStrategy configuraton option
  • Bugfixes for joins

0.1.0

  • Added support for explicitly setting uids in operators - turned on by explicitUidInStatefulOperators model's flag. By default setted up to false.
  • Old way of configuring Flink and model (via flinkConfig and processConfig) is removed. processTypes configuration should be used from now on.
  • Change of additional properties configuration

0.0.12 (26 Oct 2019)

  • Cross builds with Scala 2.11 and 2.12
  • First version of join nodes
  • OAuth2 authentication capabilities
  • Migration of Argonaut to Circe
  • Preliminary version of dictionaries in expressions
  • Major upgrade of frontend libraries (React, Redux, etc)
  • Various usability improvements

0.0.11 (1 Apr 2019)

0.0.10 (13 Nov 2018)

0.0.9 (13 Jul 2018)

0.0.8 (7 May 2018)

  • expressions code syntax highlighting
  • source/sink params as expressions
  • multiline expression suggestions
  • method signature and documentation in code suggestions
  • inject new node after dragging on edge
  • Query services tab in UI
  • subprocess disabling
  • display http request-response for query service tab
  • flink kafka 0.11 connector
  • dynamic source return type
  • SQL can be used as expression language
  • Processes page rendering optimized
  • suggestions for projections/selections in spel
  • upgrade to flink 1.4.2
  • upgrade to scala 2.11.12
  • Make sinks disableable

0.0.7 (22 Dec 2017)

  • global imports in expressions
  • deployment standalone on multiple nodes
  • typed SpEL expressions - first iteration
  • can post process standalone results
  • support for java services
  • handling get requests in standalone mode
  • metric fixes for standalone
  • compare with other env
  • split in request/response mode by expression
  • ProcessConfigCreator Java API support added
  • extendable authentication
  • comparing environments - first part, can compare processes
  • subprocess versions
  • process migrations + some refactoring
  • async execution with toggle
  • better exception for errors in service invocations
  • nussknacker java api
  • spring version bump because of SPR-9194

0.0.6 (9 Aug 2017)

First open source version :)

Compatibility matrix

Table below contains versions of libraries/apps that can be used with Nussknacker

NussknackerFlinkKafkaInfluxDBGrafana
master1.7.20.11.0.21.2.05.4.0
0.0.121.7.20.11.0.21.2.05.4.0
0.0.111.6.10.11.0.21.2.05.4.0
0.0.101.6.10.11.0.21.2.05.4.0
0.0.91.4.20.11.0.21.2.05.4.0
0.0.81.4.20.11.0.21.2.04.0.1
0.0.71.3.10.9.0.11.2.04.0.1
0.0.61.3.10.9.0.11.2.04.0.1