renovate-bot opened a new pull request, #2986:
URL: https://github.com/apache/polaris/pull/2986

   This PR contains the following updates:
   
   | Package | Change | Age | Confidence |
   |---|---|---|---|
   | [org.agrona:agrona](https://redirect.github.com/aeron-io/agrona) | `2.2.4` 
-> `2.3.1` | 
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.agrona:agrona/2.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
 | 
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.agrona:agrona/2.2.4/2.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
 |
   
   ---
   
   ### Release Notes
   
   <details>
   <summary>aeron-io/agrona (org.agrona:agrona)</summary>
   
   ### 
[`v2.3.1`](https://redirect.github.com/aeron-io/agrona/releases/tag/2.3.1)
   
   [Compare 
Source](https://redirect.github.com/aeron-io/agrona/compare/2.3.0...2.3.1)
   
   - Fixed racy file creation in 
`org.agrona.MarkFile.mapNewOrExistingMarkFile`. 
([#&#8203;340](https://redirect.github.com/aeron-io/agrona/issues/340))
   - Upgrade to `ByteBuddy` 1.17.8.
   - Upgrade to `Checkstyle` 12.1.1.
   - Upgrade to `JUnit` 6.0.1.
   
   ### 
[`v2.3.0`](https://redirect.github.com/aeron-io/agrona/releases/tag/2.3.0)
   
   [Compare 
Source](https://redirect.github.com/aeron-io/agrona/compare/2.2.4...2.3.0)
   
   - **\[Breaking]** Changed `org.agrona.concurrent.ShutdownSignalBarrier` to 
use shutdown hooks instead of signals.
   
     Previously `ShutdownSignalBarrier` relied on intercepting `SIGINT` and 
`SIGTERM` [OS signals](https://man7.org/linux/man-pages/man7/signal.7.html) 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:
   
     ```java
     class UsageSample
     {
         public static void main(final String[] args) 
         {
             try (MyService service = new MyService())
             {
                 new ShutdownSignalBarrier().await();
             }
         }
     }
     ```
   
     - New:
   
     ```java
     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:
   
     ```java
     class FlagSample
     {
         public static void main(final String[] args)
         {
             final AtomicBoolean running = new AtomicBoolean(false);
             SigInt.register(() -> running.set(false));
             while(running.get())
             {
                 ...
             }
         }
     }
     ```
   
     - New:
   
     ```java
     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. 
([#&#8203;338](https://redirect.github.com/aeron-io/agrona/pull/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.
   
   </details>
   
   ---
   
   ### Configuration
   
   📅 **Schedule**: 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.
   
   ---
   
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this 
box
   
   ---
   
   This PR was generated by [Mend Renovate](https://mend.io/renovate/). View 
the [repository job log](https://developer.mend.io/github/apache/polaris).
   
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS1wb2xhcmlzIl19-->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to