Releases: aeron-io/agrona
Releases · aeron-io/agrona
1.19.1
1.19.0
- Update BiInt2ObjectMap to support null values and add methods to get close to feature parity with Java 8 collections.
- Restore the original behavior around the signal handling by not delegating to the previously registered handler.
- Add MarkFile method to handle the creation of link files.
- Upgrade Versions to 0.47.0
- Upgrade Guava to 32.1.1-jre
- Update ByteBuddy to 1.14.5
1.18.2
- Fix
IntHashSet#retainAll(IntHashSet)
andIntHashSet#removeIfInt
which were skipping removal of some elements if the chain compaction moved them to the beginning of the array. - JDK 21-ea warning fixes.
- Upgrade to ByteBuddy 1.14.4.
- Upgrade to JUnit 5.9.3.
- Upgrade to ASM 9.5 for JDK 21-ea support.
- Upgrade to Shadow 8.1.1.
- Upgrade to Gradle 8.1.1.
1.17.2
- Fix
IntHashSet#retainAll(IntHashSet)
andIntHashSet#removeIfInt
which were skipping removal of some elements if the chain compaction moved them to the beginning of the array.
1.18.1
- Fix
AbstractMutableDirectBuffer#putStringAscii*
methods when invoked with thenull
value (i.e. null reference) in which case they were overwriting the first four bytes of the buffer by writing the zero length at the wrong offset. - Remove address alignment of the underlying native
ByteBuffer
from theExpandableDirectByteBuffer
class as this might break the existing code that does not handle thewrapAdjustment()
properly. - Avoid allocation when returning an empty String from the
AbstractMutableDirectBuffer#getString*
methods.
1.18.0
- Add buffer alignment optimisations and checks (
STRICT_ALIGNMENT_CHECKS
). PR #267. - Add missing copy constructors on maps. PR #275.
- Add implementation of
DataInput
interface that reads from DirectBuffer. PR #274. - Fix shut down signal barrier jvm signal not called. PR #271.
- Add CodeQL workflow for GitHub code scanning. PR #268.
- Allow
ExpandableDirectByteBuffer
to grow up to 2147483584 bytes, i.e. the last aligned value to which Alignment can be added without causing an overflow. - Add align methods for longs.
- Make map/unmap by address work on JDK 20.
- Rename
SystemUtil.isX86Arch
toisX64Arch
. - Change algorithm for rehash so bounds check is done on loop level to help optimiser.
- Eliminate int vs long comparison in
IoUtil.mapNewFile
. - Declare
NumberFormatException
onStrings.parseIntOrDefault
. - Fix
ExpandableArrayBuffer
andUnsafeBuffer
toString when using a raw array. - Add
CountersManager.toString
. - Fix
HighResolutionTimer
race conditions. - Exit early if the
DistinctErrorLog
buffer is full. - Invoke the
EpochClock.time
outside the synchronized block. - Fix
ExpandableArrayBuffer.checkLimit
regression, i.e. grow capacity if the limit exceeds current capacity. - Do not use 128 bytes as a minimum length when growing the buffer, i.e. allow smaller buffers to grow slower.
- Upgrade to ByteBuddy 1.14.3.
- Upgrade to JUnit 5.9.2
- Upgrade to Mockito 4.11.0.
- Upgrade to Gradle 7.6.
- Upgrade JMH to 1.36.
- Upgrade to versions plugin 0.46.0.
- Upgrade to JCStress 0.16
- Upgrade BND to 6.4.0
- Add mockito-inline dependency.
1.17.1
1.17.0
- Add
DynamicPackageOutputManager
so code generation can target multiple Java packages. PR #266. - Eliminate boxing operations on collections by providing non-boxing alternatives. PR #265.
- Add
getOrDefault
non-boxing implementations to collections. PR #264. - Add Javadoc note about freeing of aligned buffers which have been split. Issue #263.
- Fix for
Int2ObjectCache.get
can return unmatched value when full. Issue #262. - Upgrade to ByteBuddy 1.12.16.
- Upgrade to Mockito 4.8.0.
- Upgrade to JUnit 5.9.0.
- Upgrade to Gradle 7.5.1.
Binaries can be found here...
1.16.0
- Add optimised versions of
compute
on maps. PR #259. - Add
Object2IntCounterMap
. PR #257. - Fix
Int2ObjectCache/Int2ObjectHashMap.containsValue()
to perform equality based on the value stored in the map. - Ensure that
Object2*HashMaps
andObjectHashSet
always check equality using the value in the map and not vice versa. PR #253. - Add primitive unboxed for-each methods to primitive maps. PR #254.
- Fix race on
MarkFile.close
with unmapping files. - Upgrade to BND 6.3.1.
- Upgrade to ByteBuddy 1.10.12.
- Upgrade to Mockito 4.6.1.
Binaries can be found here...
1.15.2
- Improved error messages for Counters.
- Perform equality checks using the keys/values stored in the map, i.e. add support for the asymmetric keys which can match on multiple types. For an example see the
CharSequenceKey
from the test package. - Fix
MapEntry.getValue
to return current value aftersetValue
was called. - Various fixes for
EntrySet/MapEntry
across different map implementations.
Binaries can be found here...