Skip to content

Update dependency org.agrona:agrona to v2#907

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/org.agrona-agrona-2.x
Open

Update dependency org.agrona:agrona to v2#907
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/org.agrona-agrona-2.x

Conversation

@renovate

@renovate renovate Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
org.agrona:agrona 1.22.02.5.0 age confidence

Release Notes

aeron-io/agrona (org.agrona:agrona)

v2.5.0

Compare Source

See 2.5.0 release notes.

v2.4.1

Compare Source

  • Upgrade to JUnit 6.0.3.
  • Upgrade to Gradle 9.4.1.
  • Upgrade to Mockito 5.23.0
  • Upgrade to Shadow 9.4.1.
  • Upgrade to ByteBuddy 1.18.7
  • Upgrade to Checkstyle 12.3.1

v2.4.0

Compare Source

  • [Breaking] Remove org.agrona.concurrent.SigInt. Use org.agrona.concurrent.ShutdownSignalBarrier instead.

  • [Breaking] Change SystemUtil#parseDuration to reject negative values.

  • [Breaking] Change SystemUtil#parseSize to reject negative values.

  • Fix DeadlineTimerWhee#forEach which could cause wrong timerId to be returned.
    (#​346)

  • DeadlineTimerWheel clarify timer expires at or after deadline. (#​345)

  • Add plain methods to MarkFile every weak method. (#​344)

  • Fix UnsafeBuffer#wrap with raw memory address where wrapAdjustment was not reset.
    (#​348)

  • Fix Int2ObjectCache#remove which was returning last checked value when nothing was actually removed.
    (#​351)

  • Fix DirectBufferDataInput#readStringUTF8. (#​353)

  • Change BroadcastReceiver#lapCount operations to use opaque access. (#​349)

  • Use Objects#checkFromIndexSize for out of bounds checks in DirectBuffer.

  • Use AtomicLong#setRelease in DynamicCompositeAgent. (#​352)

  • Add SystemUtil#formatDuration.

  • Add SystemUtil#formatSize.

  • Upgrade to ByteBuddy 1.18.3.

  • Upgrade to Checkstyle 12.3.0.

  • Upgrade to Mockito 5.21.0.

  • Upgrade to Shadow 9.3.0.

  • Remove bnd plugin.

v2.3.2

Compare Source

  • Prevent concurrent MarkFile activation when org.agrona.MarkFile.mapNewOrExistingMarkFile is used.

    If the mark file already exists and is not active, then the activity timestamp (timestampFieldOffset) is atomically
    set to a special sentinel value (org.agrona.MarkFile.ACTIVATION_IN_PROGRESS_TIMESTAMP) to prevent other processes from
    concurrent activation.

    NB: If the current activation fails it will leave the activity timestamp at a sentinel value which will prevent a
    restart of the process. Therefore, it is recommended to reset the activity timestamp upon failure.

v2.3.1

Compare Source

  • Fixed racy file creation in org.agrona.MarkFile.mapNewOrExistingMarkFile. (#​340)
  • Upgrade to ByteBuddy 1.17.8.
  • Upgrade to Checkstyle 12.1.1.
  • Upgrade to JUnit 6.0.1.

v2.3.0

Compare Source

  • [Breaking] Changed org.agrona.concurrent.ShutdownSignalBarrier to use shutdown hooks instead of signals.

    Previously ShutdownSignalBarrier relied on intercepting SIGINT and SIGTERM OS signals by overriding JVM's signal handling which was preventing shutdown hooks from be executed. This in turn was breaking applications and frameworks that relied on shutdown hooks for clean termination.

    New implementation uses shutdown hooks instead and requires ShutdownSignalBarrier to be explicitly closed.

    NB: Failure to close ShutdownSignalBarrier might result in JVM not terminating!

    As the result the code using ShutdownSignalBarrier needs to be updated:

    • Old:
    class UsageSample
    {
        public static void main(final String[] args) 
        {
            try (MyService service = new MyService())
            {
                new ShutdownSignalBarrier().await();
            }
        }
    }
    • New:
    class UsageSample
    { 
        public static void main(final String[] args) 
        {
            try (ShutdownSignalBarrier barrier = new ShutdownSignalBarrier();
                 MyService service = new MyService())
            {
                barrier.await();
            }
        }
    }

    In the above example ShutdownSignalBarrier is closed last to ensure that service terminates completely before ShutdownSignalBarrier closes which in turn allows JVM to exit.

  • [Breaking] Deprecated org.agrona.concurrent.SigInt for removal. Use org.agrona.concurrent.ShutdownSignalBarrier instead.

    NB: org.agrona.concurrent.SigInt.register(java.lang.Runnable) is unsafe as it overrides SIGINT signal handling of the JVM thus preventing shutdown hooks from being executed.

    An example using ShutdownSignalBarrier instead of SigInt:

    • Old:
    class FlagSample
    {
        public static void main(final String[] args)
        {
            final AtomicBoolean running = new AtomicBoolean(false);
            SigInt.register(() -> running.set(false));
            while(running.get())
            {
                ...
            }
        }
    }
    • New:
    class FlagSample
    {
        public static void main(final String[] args)
        {
            final AtomicBoolean running = new AtomicBoolean(true);
            try (ShutdownSignalBarrier barrier = new ShutdownSignalBarrier(() -> running.set(false))
            {
                while (running.get())
                {
                    ...
                }
            }
        }
    }
  • [Breaking] Agrona jars no longer provide OSGI metadata as bnd plugin was removed, because it breaks
    compatibility with Gradle 9.1 and causes self-dependency via baseline task.

  • AtomicCounter minor javadoc improvements. (#​338)

  • Upgrade to Gradle 9.1.0.

  • Upgrade to ByteBuddy 1.17.7.

  • Upgrade to Checkstyle 11.1.0.

  • Upgrade to JUnit 5.13.4.

  • Upgrade to Mockito 5.20.0.

  • Upgrade to Shadow 9.2.2.

  • Upgrade to Versions 0.53.0.

v2.2.4

Compare Source

Changed
  • Bump JUnit to 5.13.2.
  • Bump Checkstyle to 10.26.0.
  • Bump Shadow to 8.3.7.
Fixed
  • Fix possible IndexOutOfBoundsException in MarkFile constructor which creates the parent directory. (#​337)

v2.2.3

Compare Source

Changed
  • Publish release artifacts to Central Portal using OSSRH Staging API service.
  • Bump ByteBuddy to 1.17.6.
  • Bump JUnit to 5.13.1.
  • Bump Gradle to 8.14.2.
Added
  • Add SystemEpochNanoClock#INSTANCE constant.
Removed
  • Remove unused and broken CompilerUtil#compileOnDisk and CompilerUtil#persist methods.

v2.2.2

Changed
  • Publish release artifacts to Central Portal using OSSRH Staging API service.
  • Bump Checkstyle to 10.25.0.

v2.2.1

Compare Source

Changed
  • IntHashSet#retainAll(Collection) and IntHashSet#retainAll(IntHashSet) no longer change the capacity of the set.
  • Bump JUnit to 5.13.0.
Fixed
  • Infinite loop in IntHashSet when retainAll leaves collections with a power of two number of elements.

v2.2.0

Compare Source

Changed
  • Protect against numeric overflow when recording errors at the end of the large buffer.
  • CI: Use gradle/actions/setup-gradle action for caching Gradle dependencies.
  • CI: Enable JDK 24 GA build.
  • Bump Gradle to 8.14.1.
  • Bump Checkstyle to 10.24.0.
  • Bump ByteBuddy to 1.17.5.
  • Bump Shadow to 8.3.6.
  • Bump JUnit to 5.12.2.
  • Bump Mockito to 5.18.0.
  • Bump Guava TestLib to 33.4.8-jre.
Added
  • Add SystemUtil#isMac method.
  • Add tests for file mapping.

v2.1.0

Compare Source

Changed
  • Move get method declaration to the ReadablePosition class. (eb3b7d284d)
  • Bump Gradle to 8.13.
  • Bump Checkstyle to 10.21.3.
  • Bump ByteBuddy to 1.17.1.
  • Bump Shadow to 8.3.6.
  • Bump JUnit to 5.12.0.
Added
  • Add compareAndExchange methods to AtomicBuffer. (#​334)
  • Add getAndAddPlain to AtomicCounter. (#​328)
  • Add acquire/release methods to AtomicBuffer. (#​314)
  • Add acquire/release methods to AtomicCounter. (#​315)
  • Add acquire/release methods to Position. (#​316)
  • Add plain methods to AtomicCounter. (#​317)
  • Add opaque methods to AtomicCounter. (#​319)
  • Add opaque methods to AtomicBuffer. (#​313)
  • Add opaque methods to Position. (#​324)
  • Add timestampRelease method to MarkFile. (#​318)
  • Add different flavors of concurrent methods to StatusIndicator. (#​323)
Fixed
  • CI: Fix crash logs upload on Windows + compress test data before upload.
  • Make UnsafeApi#arrayBaseOffset forwards compatible with JDK 25+ which changed the return type to long whereas we keep it as int.

v2.0.1

Compare Source

  • [Java] Deprecated ThreadHints. (#​312)
  • [Java] Adds a new convenience constructor to SleepingIdleStrategy. (#​310)
  • [Java] Improved ordering/atomic doc in AtomicBuffer. (#​309)
  • [Java] Upgrade to Mockito 5.15.2.
  • [Java] Upgrade to Checkstyle 10.21.1.
  • [CI] Add JDK 25-ea to the build matrix.

v2.0.0

Compare Source

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.

v1.23.1

Compare Source

  • [Java] Fix Object2IntHashMap#merge resizing the map while updating an existing key.

v1.23.0

Compare Source


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Pull requests that update a dependency file label Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants