Skip to content

Releases: real-logic/agrona

2.0.0

17 Dec 13:33
Compare
Choose a tag to compare

Breaking changes

  • org.agrona.UnsafeAccess was removed. Use org.agrona.UnsafeApi instead.
    Note: --add-opens java.base/jdk.internal.misc=ALL-UNNAMED JVM option must be specified in order to use org.agrona.UnsafeApi.

  • org.agrona.concurrent.MemoryAccess was removed. Use either the equivalent APIs provided by org.agrona.UnsafeApi or java.lang.invoke.VarHandle.

  • org.agrona.concurrent.SigIntBarrier was removed. Use org.agrona.concurrent.ShutdownSignalBarrier instead.

Changelog

  • [Java] Added API to compute CRC-32C (org.agrona.checksum.Crc32c) and CRC-32 (org.agrona.checksum.Crc32) checksums.
    Note: Requires --add-opens java.base/java.util.zip=ALL-UNNAMED JVM option at run time in order to use these classes.

  • [Java] stop allocating on addAll / removeAll on ObjectHashSet. (#308)

  • [Java] Run Mockito as Agent, i.e. fix the following warning.

  • [Doc] Remove reference to java 8 (#304)

  • [Gradle] Disable auto detection of JVMs to force a specific JVM for test execution in CI.

  • [Gradle] Use Gradle's version catalog feature for declaring dependencies.

  • [Java] Add concurrent tests for getAndAdd and getAndSet operations.

  • [Java] Improve RingBuffer tests by reading one message at a time and minimizing the number of valid states.

  • [Java] Fail build on JavaDoc errors.

  • [Java] Use JUnit BOM.

  • [Java] Upgrade to Gradle 8.11.1.

  • [Java] Upgrade to Checkstyle 10.21.0.

  • [Java] Upgrade to ByteBuddy 1.15.11.

  • [Java] Upgrade to bnd 7.1.0.

  • [Java] Upgrade to Shadow 8.3.5.

  • [Java] Upgrade to JUnit 5.11.4.

  • [Java] Upgrade to Guava TestLib 33.4.0-jre.

1.23.1

01 Oct 13:03
Compare
Choose a tag to compare
  • [Java] Fix Object2IntHashMap#merge resizing the map while updating an existing key.

1.23.0 (JDK 17 migration)

23 Aug 20:21
Compare
Choose a tag to compare

Breaking changes

  • JDK 17 is required for compiling and running!
  • Removed NioSelectedKeySet and the corresponding TransportPoller.selectedKeySet field.
  • Removed MappedResizeableBuffer class to avoid having to open an internal JDK module (i.e. --add-opens java.base/sun.nio.ch=ALL-UNNAMED).
  • Removed RecordBuffer class.

Changelog

  • [Java] Improved documentation for the BackoffIdleStrategy. #297
  • [Java] Resolve pid using ProcessHandle.current().pid().
  • [Java] Use Thread.onSpinWait().
  • [Java] Use invokeCleaner without MethodHandles.
  • [Java] Remove Selector hacks in favor of the new java.nio.channels.Selector.selectNow(Consumer<SelectionKey>) API.
  • [Java] Upgrade to Gradle 8.10.
  • [Java] Upgrade to ByteBuddy 1.15.0.
  • [Java] Upgrade to Shadow 8.3.0.
  • [Java] Upgrade to bnd 7.0.0.
  • [Java] Upgrade to Mockito 5.12.0.

1.22.0

01 Aug 16:20
01978e3
Compare
Choose a tag to compare
  • [Java] Improve performance of IntHashSet via avoiding the fill operation by using 0 as MISSING_VALUE.
  • [Java] Restore thread safety by overriding missing mutating operations in ConcurrentCountersManager.
  • [Java] Remove volatile read for FREE_FOR_REUSE_DEADLINE_OFFSET in CountersManager.
  • [Java] Upgrade to ByteBuddy 1.14.18.
  • [Java] Upgrade to Guava TestLib 33.2.1-jre.
  • [Java] Upgrade to JUnit 5.10.3.

1.21.2

04 Jun 11:01
5915ae7
Compare
Choose a tag to compare
  • [Java] Fix {Int,Long}2ObjectCache. (#294)
  • [Java] ErrorLogReader: Do not crash when reading partial or corrupted error messages. Attempt to recover last error message when length is out of bounds.
  • [Java] SnowflakeIdGenerator: Increment sequence if the clock is not advancing or going backwards.
  • [Java] Fix build on JDK 23-ea caused by deprecation in Unsafe, i.e. https://openjdk.org/jeps/471.
  • [CI] Split the build into slow and fast, i.e. run concurrency tests only during slow build.
  • [Java] Upgrade to ByteBuddy 1.14.17.
  • [Java] Upgrade to Guava TestLib 33.2.0-jre.

1.21.1

29 Mar 16:26
Compare
Choose a tag to compare
  • [Java] Fix Javadoc copyright year range.
  • [Java] Fix JDK 22 javadoc URL.
  • [CI] Enable JDK 23-ea build.
  • [Java] Upgrade to ASM 9.7.
  • [Java] Upgrade to ByteBuddy 1.14.13.

1.21.0

14 Mar 10:54
Compare
Choose a tag to compare
  • [Java] Use -XX:+EnableDynamicAgentLoading on JDK 21+.
  • [CI] Add Mac M1 to the build matrix.
  • [CI] Build PRs against merge commit.
  • [CI] Action updates.
  • [Java] Upgrade to JUnit 5.10.2.
  • [Java] Upgrade to Versions 0.51.0.
  • [Java] Upgrade to ByteBuddy 1.14.12.
  • [Java] Upgrade to Guava TestLib 33.1.0-jre.

1.20.0

02 Nov 10:31
Compare
Choose a tag to compare
  • Add Reference ID, a new metadata field, to counters in the value padding.
  • Suppress warnings about Unsafe APIs being deprecated for removal in JDK 22.
  • Enable dynamic agent loading on JDK 22 + run ByteBuddy in the experimental mode.
  • CI: Use JDK 21 GA, drop JDK 11, and add JDK 22-ea.
  • Fix JavaDoc link for JDK 21 GA.
  • Move bnd into bundle section to make it forward compatible with the next major version of the plugin.
  • Upgrade to ByteBuddy 1.14.9.
  • Upgrade to Guava TestLib 32.1.3-jre.
  • Upgrade to ASM 9.6.
  • Upgrade to Versions 0.49.0.

1.19.2

01 Sep 14:55
Compare
Choose a tag to compare
  • Add missing bounds check to AbstractMutableDirectBuffer#getInt(int, java.nio.ByteOrder) (#285)
  • Upgrade to ByteBuddy 1.14.7.

1.19.1

09 Aug 15:57
Compare
Choose a tag to compare
  • Fix NPE in SigInt.java (#283)
  • Upgrade to JMH 1.37.
  • Upgrade to Guava TestLib 32.1.2-jre.
  • Upgrade to JUnit 5.10.0.