Releases: liflab/beepbeep-3
Version 0.11.3
- New methods in
GroupProcessor
to shorten Groovy scripts - Additional map, bags and lists utility functions
- Bugfix to
Bags.ApplyToAll
Version 0.11.2
Cumulates the fixes and updates of the last 10 months.
- Optional default value to
Maps.get
- New functions:
Lists.Sort
,Lists.SortOn
,Strings.FindRegexOnce
,Strings.ReplaceAll
,Numbers.Modulo
,Booleans.BooleanCast
- Refactoring of
ReadLines
- Processors can output the content of their internal queues
- Fix to behavior of
Insert
in pull mode, bugfix inQueueSource
Version 0.11.1
Changes in this release:
- Added the
Integrate
processor - Added the
ReadTokens
processor - I/O processors now correctly handle named pipes in addition to finite sources
- Changed constructor visibility of utility classes
Version 0.11
This release incorporates modifications of the last six months.
Important changes
- Clarification to the contract of
SynchronousProcessor.compute
. A call that returns false is now interpreted as the promise not to produce any new output events in future calls to the method. The current call is allowed to produce output events. - Support for
Pushable.pushFast
is dropped. Its implementation was not very robust, not used in any known project, and for most processors,pushFast
simply contained a call topush
. As an upside, the removal of this non-blocking mode might provide a slight performance boost for blocking (i.e. normal) mode, due to a simpler management in some processors, such as Slice. - For the same reason,
CompoundFuture
has been deleted and support forFunction.evaluateFast
is dropped.
Additions to the API
- The constructor for
Cumulate
accepts aFunction
object directly, instead of wrapping it into aCumulativeFunction
(the old syntax is still accepted) - Utility methods added to
Processor
: these methods make it easier to pipe processors using Groovy with syntactical shortcuts - Changed visibility of
GroupProcessor
's no-args constructor SinkLast
can be queried for the end of the traceRunOn
has an optional default value for empty collections- Functions in
ToCollection
can have variant arguments - Added
Println
, which is a special case ofPrint
- Added
DetectEnd
Other
- Update to dependencies on Azrael and Petit Poucet
- Fix to end of trace signaling in
SynchronousProcessor
: it could send this signal multiple times to downstream processors - Fix to deserialization of
GroupProcessor
Print
no longer prints a dangling separator after the last token- Version numbering no longer uses the
-alpha
suffix - Better description of library in the JAR file's manifest
Version 0.10.9
This is a pre-release of what will actually become version 0.11. It is put online because other ongoing projects rely on this up-to-date version of the library to compile.
If you don't know what I am talking about, you should stick with 0.10.8 and wait for the official 0.11 some time in the future. ;-)
Version 0.10.8
This version only contains bugfixes related to provenance tracking.
Version 0.10.7
Integrates additions and bug fixes since 9/30/2021:
- Added the
PubliclyStateful
interface, where processors can (optionally) publicly expose an object that represents their internal state; core processors now all implement this interface - Fix to end of trace signal
- Multiple fixes to provenance tracking for GroupProcessors
- Refactoring of EventTracker
- Equals.equalsTo works for MathSet
- Multiple other fixes at the source level (thanks @mernst)
Version 0.10.6
Version 0.10.5
Minor bugfixes that were overlooked when preparing the previous version.
Version 0.10.4
This new release includes about one year of additions, tweaks and bugfixes (last release was in March 2020).
Additions:
Maps
has theMultiValues
functionMultiset
has theGetCardinalities
function- Update to build script and to various dependencies used during compilation
- Compiled JAR guaranteed to work in Java 6
Bugfixes:
- Bugfix to
Multiplex