dependabot[bot] opened a new pull request, #20794: URL: https://github.com/apache/druid/pull/20794
Bumps the maven-minor-patch group with 29 updates: | Package | From | To | | --- | --- | --- | | software.amazon.awssdk:s3 | `2.55.6` | `2.56.0` | | software.amazon.awssdk:s3-transfer-manager | `2.55.6` | `2.56.0` | | software.amazon.awssdk:sts | `2.55.6` | `2.56.0` | | software.amazon.awssdk:apache-client | `2.55.6` | `2.56.0` | | software.amazon.awssdk:auth | `2.55.6` | `2.56.0` | | software.amazon.awssdk:regions | `2.55.6` | `2.56.0` | | software.amazon.awssdk:ec2 | `2.55.6` | `2.56.0` | | software.amazon.awssdk:aws-core | `2.55.6` | `2.56.0` | | software.amazon.awssdk:sdk-core | `2.55.6` | `2.56.0` | | software.amazon.awssdk:netty-nio-client | `2.55.6` | `2.56.0` | | software.amazon.awssdk:aws-crt-client | `2.55.6` | `2.56.0` | | software.amazon.awssdk:bom | `2.55.6` | `2.56.0` | | software.amazon.awssdk:retries-spi | `2.55.6` | `2.56.0` | | software.amazon.awssdk:retries | `2.55.6` | `2.56.0` | | software.amazon.awssdk:kinesis | `2.55.6` | `2.56.0` | | software.amazon.awssdk:identity-spi | `2.55.6` | `2.56.0` | | software.amazon.awssdk:http-client-spi | `2.55.6` | `2.56.0` | | software.amazon.awssdk:utils | `2.55.6` | `2.56.0` | | software.amazon.awssdk:rds | `2.55.6` | `2.56.0` | | software.amazon.awssdk:glue | `2.55.6` | `2.56.0` | | software.amazon.awssdk:kms | `2.55.6` | `2.56.0` | | [org.jooq:joou-java-6](https://github.com/jOOQ/jOOU) | `0.9.5` | `0.9.6` | | [com.github.fppt:jedis-mock](https://github.com/fppt/jedis-mock) | `1.1.19` | `1.1.20` | | [it.unimi.dsi:fastutil](https://github.com/vigna/fastutil) | `8.5.4` | `8.5.19` | | [it.unimi.dsi:fastutil-core](https://github.com/vigna/fastutil) | `8.5.4` | `8.5.19` | | [io.grpc:grpc-bom](https://github.com/grpc/grpc-java) | `1.84.2` | `1.85.0` | | [io.grpc:grpc-bom](https://github.com/grpc/grpc-java) | `1.84.3` | `1.85.0` | | [io.grpc:grpc-stub](https://github.com/grpc/grpc-java) | `1.84.3` | `1.85.0` | | [io.grpc:grpc-netty-shaded](https://github.com/grpc/grpc-java) | `1.84.3` | `1.85.0` | Updates `software.amazon.awssdk:s3` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:s3-transfer-manager` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:sts` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:apache-client` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:auth` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:regions` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:ec2` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:aws-core` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:sdk-core` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:netty-nio-client` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:aws-crt-client` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:bom` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:retries-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:retries` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:kinesis` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:identity-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:http-client-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:utils` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:rds` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:glue` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:kms` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:s3-transfer-manager` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:sts` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:apache-client` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:auth` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:regions` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:ec2` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:aws-core` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:sdk-core` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:netty-nio-client` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:aws-crt-client` from 2.55.6 to 2.56.0 Updates `org.jooq:joou-java-6` from 0.9.5 to 0.9.6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/jOOQ/jOOU/releases">org.jooq:joou-java-6's releases</a>.</em></p> <blockquote> <h2>0.9.6</h2> <ul> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/26">#26</a> ULong.valueOf(String) accepts out-of-range decimal values</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/27">#27</a> Reject out-of-range unsigned long strings</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/28">#28</a> subtract wrongly throws when the result drops below 2⁶³</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/29">#29</a> add(Long.MIN_VALUE) and subtract(Long.MIN_VALUE) cause a StackOverflowError</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/30">#30</a> Consistently validate values on deserialisation</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/31">#31</a> Consistently accept -0 as a valid value</li> <li><a href="https://redirect.github.com/jOOQ/jOOU/issues/32">#32</a> ulong((BigInteger) null) should return null for consistency reasons</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/jOOQ/jOOU/commit/b47c4a3bb941f0ef305ede86727860d088ad0e86"><code>b47c4a3</code></a> Release 0.9.6</li> <li><a href="https://github.com/jOOQ/jOOU/commit/48bfe60d54a1a6166ecd4e9ac2121e552457e5c1"><code>48bfe60</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/31">#31</a> Consistently accept -0 as a valid value</li> <li><a href="https://github.com/jOOQ/jOOU/commit/106e7a9af9e64b4ae264801e91d49a91ac08dc86"><code>106e7a9</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/31">#31</a> Consistently accept -0 as a valid value</li> <li><a href="https://github.com/jOOQ/jOOU/commit/b016a2bb2b83e3dcdc9a131a2b7cf4958e6c1589"><code>b016a2b</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/32">#32</a> ulong((BigInteger) null) should return null for consistency reasons</li> <li><a href="https://github.com/jOOQ/jOOU/commit/f540a5f66825013e56585f6c6631516376b634e5"><code>f540a5f</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/31">#31</a> Consistently accept -0 as a valid value</li> <li><a href="https://github.com/jOOQ/jOOU/commit/62dd1b19340f276c53b88daef59edcd66b08a1cd"><code>62dd1b1</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/30">#30</a> Consistently validate values on deserialisation</li> <li><a href="https://github.com/jOOQ/jOOU/commit/3620bd8896d070478f3ee63de5785a030e4b8030"><code>3620bd8</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/29">#29</a> add(Long.MIN_VALUE) and subtract(Long.MIN_VALUE) cause a StackOverflowE...</li> <li><a href="https://github.com/jOOQ/jOOU/commit/b3f6368a971668c2071f68d7408b3cdbb0054058"><code>b3f6368</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/28">#28</a> subtract wrongly throws when the result drops below 2⁶³</li> <li><a href="https://github.com/jOOQ/jOOU/commit/e085b606158c47ed65a73abde3dc1dd21e1a8e94"><code>e085b60</code></a> <a href="https://redirect.github.com/jOOQ/jOOU/issues/26">#26</a> Added more tests</li> <li><a href="https://github.com/jOOQ/jOOU/commit/6769665efd5caec03b5018525ce711fd0b395ea3"><code>6769665</code></a> Merge pull request <a href="https://redirect.github.com/jOOQ/jOOU/issues/27">#27</a> from PHJ2000/fix-unsigned-long-decimal-range</li> <li>Additional commits viewable in <a href="https://github.com/jOOQ/jOOU/compare/version-0.9.5...version-0.9.6">compare view</a></li> </ul> </details> <br /> Updates `com.github.fppt:jedis-mock` from 1.1.19 to 1.1.20 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fppt/jedis-mock/releases">com.github.fppt:jedis-mock's releases</a>.</em></p> <blockquote> <h2>1.1.20</h2> <p>This release adds <strong>Redis Functions</strong> and <strong>read-only scripting</strong> (<code>EVAL_RO</code>, <code>EVALSHA_RO</code>, <code>FCALL_RO</code>, function flags), models <strong>unkillable scripts and <code>SHUTDOWN NOSAVE</code></strong>, validates <strong>command arity before dispatch</strong> for every command, and fixes several long-standing bugs around key TTLs and <code>WATCH</code>. Thank you again to <a href="https://github.com/RafeArnold"><code>@RafeArnold</code></a>, who contributed a large part of this release!</p> <h2>🚀 New commands</h2> <ul> <li><strong><a href="https://valkey.io/commands/function/"><code>FUNCTION</code></a></strong> and <strong><a href="https://valkey.io/commands/fcall/"><code>FCALL</code></a></strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/854">#854</a>) — load and call Lua function libraries. <code>FUNCTION DUMP</code>/<code>RESTORE</code> are not yet supported.</li> <li><strong><a href="https://valkey.io/commands/eval_ro/"><code>EVAL_RO</code></a></strong>, <strong><a href="https://valkey.io/commands/evalsha_ro/"><code>EVALSHA_RO</code></a></strong> and <strong><a href="https://valkey.io/commands/fcall_ro/"><code>FCALL_RO</code></a></strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>) — run a script in read-only mode. A write command via <code>redis.call</code> is refused with <code>ERR Write commands are not allowed from read-only scripts.</code>; via <code>redis.pcall</code> it comes back as an error table. Unknown-command and arity errors still take precedence, as on a real server. <code>FCALL_RO</code> additionally requires the function to carry the <code>no-writes</code> flag.</li> <li><strong><a href="https://valkey.io/commands/shutdown/"><code>SHUTDOWN</code></a></strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/872">#872</a>) — <code>SHUTDOWN NOSAVE</code> stops the whole <code>RedisServer</code> as real Redis does: every connection is closed without a reply, the port is released, and afterwards <code>isRunning()</code> is <code>false</code> and <code>start()</code> may be called again. Option validation (<code>SAVE</code>, <code>NOSAVE</code>, <code>ABORT</code>, <code>ERR syntax error</code>, rejection inside <code>MULTI</code>) matches the real server.</li> </ul> <h2>📜 Scripting</h2> <ul> <li><strong>Function flags are honoured</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>). <code>redis.register_function</code> used to parse and ignore its <code>flags</code> table. <code>no-writes</code>, <code>allow-oom</code>, <code>allow-stale</code>, <code>no-cluster</code> and <code>allow-cross-slot-keys</code> are now accepted, validated (<code>ERR unknown flag given</code>) and reported by <code>FUNCTION LIST</code> in canonical order. Only <code>no-writes</code> changes behaviour: such functions run read-only even under plain <code>FCALL</code>.</li> <li><strong>Scripts that have written data cannot be killed</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/872">#872</a>). Once a timed-out script has dispatched a write command, <code>SCRIPT KILL</code> / <code>FUNCTION KILL</code> reply <code>UNKILLABLE Sorry the script already executed write commands against the dataset. ...</code> and the server stays <code>BUSY</code> until the script ends — <code>SHUTDOWN NOSAVE</code> is the only way out, exactly as in real Redis. The mock used to kill every script.</li> <li><strong><code>SCRIPT KILL</code> can no longer be caught from inside the script</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/872">#872</a>). A kill wrapped in <code>redis.pcall(...)</code> could previously be swallowed and the script would run to completion.</li> <li><strong>Error locations for tail calls</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>). <code>return redis.call(...)</code> compiles to a Lua tail call, so errors raised there used to be reported on line 1; they now carry the correct <code>user_script:N</code> / <code>user_function:N</code> location, making the error text identical to Redis.</li> <li><strong><code>FCALL</code> restores the selected database</strong> after the function returns, as <code>EVAL</code> already did (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>).</li> </ul> <h2>🐞 Bug fixes</h2> <ul> <li><strong>Write commands no longer wipe a key's TTL</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/857">#857</a>). <code>SETBIT</code>, <code>PFADD</code>, list and set pushes, <code>APPEND</code>, <code>INCR</code>/<code>DECR</code> and others used to reset the expiration of the key they modified; on a real server it is preserved.</li> <li><strong>Expiration changes now invalidate <code>WATCH</code></strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/856">#856</a>, <a href="https://redirect.github.com/fppt/jedis-mock/issues/858">#858</a>). <code>EXPIREAT</code>, <code>PERSIST</code> and the hash field-TTL commands (<code>HEXPIRE</code>, <code>HEXPIREAT</code>, <code>HPERSIST</code>, …) now abort a transaction watching the key, and only when they actually change the TTL.</li> <li><strong>Wrong argument count is rejected before dispatch, on every path</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/868">#868</a>, <a href="https://redirect.github.com/fppt/jedis-mock/issues/870">#870</a>). Inside <code>MULTI</code>, a command with the wrong number of arguments used to be queued anyway; real Redis rejects it up front. More generally, arity was checked only after the operation was constructed, so commands that parse their parameters in the constructor (<code>BZPOPMAX</code>, <code>LREM</code>, <code>COPY</code>, …) threw <code>IndexOutOfBoundsException</code> instead, about a third of the commands declared no bounds at all, and six (<code>SADD</code>, <code>INCRBY</code>, <code>DECRBY</code>, <code>INCRBYFLOAT</code>, <code>SETEX</code>, <code>PSETEX</code>) declared wrong ones. Every command now replies <code>ERR wrong number of arguments for '<cmd>' command</code> on plain dispatch, inside <code>MULTI</code>, and from <code>r edis.call</code>/<code>redis.pcall</code>.</li> <li><strong><code>RedisServer.stop()</code> waits for a running script to terminate</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/873">#873</a>). It used to return as soon as the sockets were closed, so a server restarted immediately after <code>stop()</code> could still answer <code>BUSY</code> from the previous script, and a plain <code>stop()</code> with an infinite script left it spinning forever. The stop/restart path was also hardened against a number of races found in review: concurrent stops, connections accepted while stopping, commands of closed clients resuming against a restarted server. Calling <code>stop()</code> or <code>start()</code> from inside a <code>RedisCommandInterceptor</code> of the same server now throws <code>IllegalStateException</code> instead of deadlocking; use <code>RedisClient.shutdownServer()</code> there instead.</li> </ul> <h2>🛠 Internals</h2> <ul> <li><strong>Command arity and read-only flag are declared on <code>@RedisCommand</code></strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/870">#870</a>), in Redis' own terms: <code>arity</code> is the value <code>COMMAND INFO</code> reports, <code>readOnly = false</code> marks commands with the <code>write</code> flag. All 179 commands are annotated with the Redis 8.0 values; <code>minArgs()</code>/<code>maxArgs()</code> are gone.</li> <li><strong>The generated command registry holds descriptors, not classes</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/865">#865</a>, <a href="https://redirect.github.com/fppt/jedis-mock/issues/870">#870</a>). Constructor injection is resolved at compile time from parameter types — an unsupported parameter type is now a javac error rather than a runtime exception — and no reflection remains on the request path.</li> </ul> <h2>🧪 Testing</h2> <ul> <li><strong><code>CommandParityTest</code></strong> runs <code>COMMAND</code> against the Redis testcontainer and asserts that every registered command's declared arity and read-only flag match the real server (<a href="https://redirect.github.com/fppt/jedis-mock/issues/870">#870</a>).</li> <li><strong>Valkey's <code>unit/functions</code> TCL suite runs in the native-tests CI matrix</strong> (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>), including the previously disabled <code>fcall_ro</code> and <code>no-writes</code> tests; the <code>UNKILLABLE</code> and <code>SHUTDOWN NOSAVE</code> tests of <code>unit/scripting</code> are enabled too (<a href="https://redirect.github.com/fppt/jedis-mock/issues/872">#872</a>).</li> <li>Fixed flaky tests (<a href="https://redirect.github.com/fppt/jedis-mock/issues/859">#859</a>, <a href="https://redirect.github.com/fppt/jedis-mock/issues/873">#873</a>).</li> </ul> <h2>💼 Dependencies</h2> <ul> <li><code>org.slf4j:slf4j-api</code> 2.0.19 → 2.0.20 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/861">#861</a>).</li> </ul> <p>Build and test scope only:</p> <ul> <li><code>io.netty:netty-all</code> 4.2.17.Final → 4.2.19.Final (<a href="https://redirect.github.com/fppt/jedis-mock/issues/852">#852</a>, <a href="https://redirect.github.com/fppt/jedis-mock/issues/869">#869</a>).</li> <li><code>io.lettuce:lettuce-core</code> 7.7.0.RELEASE → 7.8.0.RELEASE (<a href="https://redirect.github.com/fppt/jedis-mock/issues/863">#863</a>).</li> <li><code>org.redisson:redisson</code> 4.7.0 → 4.8.0 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/867">#867</a>).</li> <li><code>org.mockito:mockito-core</code> 5.23.0 → 5.24.0 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/860">#860</a>).</li> <li><code>com.tngtech.archunit:archunit</code> 1.5.0 → 1.5.1 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/864">#864</a>).</li> <li><code>com.palantir.javapoet:javapoet</code> 0.19.0 → 0.20.0 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/855">#855</a>).</li> <li><code>com.puppycrawl.tools:checkstyle</code> 14.1.0 → 14.3.0 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/866">#866</a>).</li> <li><code>org.codehaus.mojo:extra-enforcer-rules</code> 1.12.0 → 1.12.1 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/853">#853</a>).</li> <li><code>org.slf4j:slf4j-simple</code> 2.0.19 → 2.0.20 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/862">#862</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fppt/jedis-mock/commit/787ecdcfd739294159faa283c4c81bbe10aeb274"><code>787ecdc</code></a> 1.1.20</li> <li><a href="https://github.com/fppt/jedis-mock/commit/21f9010fc597299eb46a0f81a999685e6eabab7c"><code>21f9010</code></a> Update warning message in README.md</li> <li><a href="https://github.com/fppt/jedis-mock/commit/54624f83e554341d965fbfa78ddff061a590f3d5"><code>54624f8</code></a> Bump redis.clients:jedis from 8.0.1 to 8.0.2 (<a href="https://redirect.github.com/fppt/jedis-mock/issues/871">#871</a>)</li> <li><a href="https://github.com/fppt/jedis-mock/commit/31cf0f7de46d3eafefd167ba99af180c389e6c31"><code>31cf0f7</code></a> Update list of supported operations</li> <li><a href="https://github.com/fppt/jedis-mock/commit/4d9cc762b9b50b99789e24800c83a677bc52ea70"><code>4d9cc76</code></a> read-only lua commands (<a href="https://redirect.github.com/fppt/jedis-mock/issues/874">#874</a>)</li> <li><a href="https://github.com/fppt/jedis-mock/commit/e246a96c25060a5483e66cc64c38291b987eef8e"><code>e246a96</code></a> Update list of supported operations</li> <li><a href="https://github.com/fppt/jedis-mock/commit/860e4f93af8e6481e9d3a778e9886ec63c2bd4e7"><code>860e4f9</code></a> RedisServer.stop() waits for a running script to terminate (fixes flaky Shutd...</li> <li><a href="https://github.com/fppt/jedis-mock/commit/9e973fbf5f395cf459e028651e4cb97638d0eb0d"><code>9e973fb</code></a> Model UNKILLABLE scripts and SHUTDOWN NOSAVE; make SCRIPT KILL uncatchable fr...</li> <li><a href="https://github.com/fppt/jedis-mock/commit/f9ae55df55f17d82c2adc6ff22a729fb5b639275"><code>f9ae55d</code></a> Declare command arity and read-only flag on <a href="https://github.com/RedisCommand"><code>@RedisCommand</code></a>, validate arity bef...</li> <li><a href="https://github.com/fppt/jedis-mock/commit/606a992d571216fc37f4ea86ad68bbda020d00f2"><code>606a992</code></a> fix: reject command with invalid arity when queued (<a href="https://redirect.github.com/fppt/jedis-mock/issues/868">#868</a>)</li> <li>Additional commits viewable in <a href="https://github.com/fppt/jedis-mock/compare/v.1.1.19...v.1.1.20">compare view</a></li> </ul> </details> <br /> Updates `it.unimi.dsi:fastutil` from 8.5.4 to 8.5.19 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vigna/fastutil/blob/master/CHANGES">it.unimi.dsi:fastutil's changelog</a>.</em></p> <blockquote> <p>8.5.19</p> <ul> <li> <p>Fixed BigArrays.getAndIncrement() for atomic big arrays, which was actually decrementing.</p> </li> <li> <p>Fixed skip() for concatenated iterators, which could leave the iterator positioned on an exhausted component.</p> </li> <li> <p>Fixed skip() for concatenated spliterators, which could throw an ArrayIndexOutOfBoundsException.</p> </li> <li> <p>Fixed removal from the entry set of tree-map submaps, which ignored the submap range and the entry value.</p> </li> <li> <p>Fixed deserialization of open-addressing big hash sets with load factor 1, which could produce a table without free entries.</p> </li> <li> <p>Fixed decoding of lengths greater than or equal to 2^15 in short front-coded lists.</p> </li> <li> <p>Fixed bounds checking in getElements() for immutable-list sublists.</p> </li> <li> <p>Fixed changed(int) for array-based indirect priority queues, which could leave a stale cached minimum.</p> </li> <li> <p>binarySearch() for floats and doubles is now consistent with the sorting order (-0 less than 0, NaN greatest).</p> </li> <li> <p>Fixed integer overflow in trySplit() for wide int interval spliterators.</p> </li> <li> <p>Fixed integer overflow in skip() and back() for int interval iterators near the extremal values.</p> </li> <li> <p>Fixed file-descriptor leaks in the File-based BinIO loaders: the byte loadBytes(File...) methods leaked on every call, and the multi-byte loaders leaked on the end-of-file error path.</p> </li> <li> <p>Fixed serialization of big-array big lists with more than 2^31 elements.</p> </li> <li> <p>Fixed integer overflow in the swap phase of big-array sorting for more than 2^31 elements.</p> </li> <li> <p>The expected-size argument of the big hash set constructor is now correctly checked for negativity.</p> </li> <li> <p>Fixed a garbled index in an exception message of abstract-list sublists.</p> </li> <li> <p>Fixed the upper-bound symbol in the out-of-range exception messages of tree-map and tree-set submaps and subsets.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vigna/fastutil/commit/46316b125eeb75fe42ab0bfed6e25bf756de8117"><code>46316b1</code></a> Round of fixes by Fable</li> <li><a href="https://github.com/vigna/fastutil/commit/29fc48b416338ec9f626e878a45a89908b49b973"><code>29fc48b</code></a> Made grow methods public</li> <li><a href="https://github.com/vigna/fastutil/commit/5609ef7e01a6ac71f6cea9e3438cf163fe38e8c1"><code>5609ef7</code></a> Added note about ensureCapacity not growing exponentially</li> <li><a href="https://github.com/vigna/fastutil/commit/c6434abd1177b9933c68f11005ec457d5abf58d3"><code>c6434ab</code></a> Revised forEach for maps</li> <li><a href="https://github.com/vigna/fastutil/commit/ca67ef7e81a910b13fa7fee513300d7c280193c8"><code>ca67ef7</code></a> Updated site</li> <li><a href="https://github.com/vigna/fastutil/commit/1ff1922f5b28d8da27126e8a724b9e0bd0863551"><code>1ff1922</code></a> Fixed non-existent method</li> <li><a href="https://github.com/vigna/fastutil/commit/106a7479c47043bfef2f42ac416620a13b3e457b"><code>106a747</code></a> Type-specific map forEach and ObjectInput/Output support for fast byte array ...</li> <li><a href="https://github.com/vigna/fastutil/commit/be6898b5989feac6bc2bb7dabbc4e6722efc716f"><code>be6898b</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/360">#360</a> from magicprinc/FBAOS_DO</li> <li><a href="https://github.com/vigna/fastutil/commit/5bed452ec377878b888904a42a1722b81520c1ec"><code>5bed452</code></a> Fixed docs and tests</li> <li><a href="https://github.com/vigna/fastutil/commit/27ddd254e642031cf31f175185bf9b6f820e63a4"><code>27ddd25</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/369">#369</a> from viciscat/type-specific-foreach</li> <li>Additional commits viewable in <a href="https://github.com/vigna/fastutil/compare/8.5.4...8.5.19">compare view</a></li> </ul> </details> <br /> Updates `it.unimi.dsi:fastutil-core` from 8.5.4 to 8.5.19 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vigna/fastutil/blob/master/CHANGES">it.unimi.dsi:fastutil-core's changelog</a>.</em></p> <blockquote> <p>8.5.19</p> <ul> <li> <p>Fixed BigArrays.getAndIncrement() for atomic big arrays, which was actually decrementing.</p> </li> <li> <p>Fixed skip() for concatenated iterators, which could leave the iterator positioned on an exhausted component.</p> </li> <li> <p>Fixed skip() for concatenated spliterators, which could throw an ArrayIndexOutOfBoundsException.</p> </li> <li> <p>Fixed removal from the entry set of tree-map submaps, which ignored the submap range and the entry value.</p> </li> <li> <p>Fixed deserialization of open-addressing big hash sets with load factor 1, which could produce a table without free entries.</p> </li> <li> <p>Fixed decoding of lengths greater than or equal to 2^15 in short front-coded lists.</p> </li> <li> <p>Fixed bounds checking in getElements() for immutable-list sublists.</p> </li> <li> <p>Fixed changed(int) for array-based indirect priority queues, which could leave a stale cached minimum.</p> </li> <li> <p>binarySearch() for floats and doubles is now consistent with the sorting order (-0 less than 0, NaN greatest).</p> </li> <li> <p>Fixed integer overflow in trySplit() for wide int interval spliterators.</p> </li> <li> <p>Fixed integer overflow in skip() and back() for int interval iterators near the extremal values.</p> </li> <li> <p>Fixed file-descriptor leaks in the File-based BinIO loaders: the byte loadBytes(File...) methods leaked on every call, and the multi-byte loaders leaked on the end-of-file error path.</p> </li> <li> <p>Fixed serialization of big-array big lists with more than 2^31 elements.</p> </li> <li> <p>Fixed integer overflow in the swap phase of big-array sorting for more than 2^31 elements.</p> </li> <li> <p>The expected-size argument of the big hash set constructor is now correctly checked for negativity.</p> </li> <li> <p>Fixed a garbled index in an exception message of abstract-list sublists.</p> </li> <li> <p>Fixed the upper-bound symbol in the out-of-range exception messages of tree-map and tree-set submaps and subsets.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vigna/fastutil/commit/46316b125eeb75fe42ab0bfed6e25bf756de8117"><code>46316b1</code></a> Round of fixes by Fable</li> <li><a href="https://github.com/vigna/fastutil/commit/29fc48b416338ec9f626e878a45a89908b49b973"><code>29fc48b</code></a> Made grow methods public</li> <li><a href="https://github.com/vigna/fastutil/commit/5609ef7e01a6ac71f6cea9e3438cf163fe38e8c1"><code>5609ef7</code></a> Added note about ensureCapacity not growing exponentially</li> <li><a href="https://github.com/vigna/fastutil/commit/c6434abd1177b9933c68f11005ec457d5abf58d3"><code>c6434ab</code></a> Revised forEach for maps</li> <li><a href="https://github.com/vigna/fastutil/commit/ca67ef7e81a910b13fa7fee513300d7c280193c8"><code>ca67ef7</code></a> Updated site</li> <li><a href="https://github.com/vigna/fastutil/commit/1ff1922f5b28d8da27126e8a724b9e0bd0863551"><code>1ff1922</code></a> Fixed non-existent method</li> <li><a href="https://github.com/vigna/fastutil/commit/106a7479c47043bfef2f42ac416620a13b3e457b"><code>106a747</code></a> Type-specific map forEach and ObjectInput/Output support for fast byte array ...</li> <li><a href="https://github.com/vigna/fastutil/commit/be6898b5989feac6bc2bb7dabbc4e6722efc716f"><code>be6898b</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/360">#360</a> from magicprinc/FBAOS_DO</li> <li><a href="https://github.com/vigna/fastutil/commit/5bed452ec377878b888904a42a1722b81520c1ec"><code>5bed452</code></a> Fixed docs and tests</li> <li><a href="https://github.com/vigna/fastutil/commit/27ddd254e642031cf31f175185bf9b6f820e63a4"><code>27ddd25</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/369">#369</a> from viciscat/type-specific-foreach</li> <li>Additional commits viewable in <a href="https://github.com/vigna/fastutil/compare/8.5.4...8.5.19">compare view</a></li> </ul> </details> <br /> Updates `it.unimi.dsi:fastutil-core` from 8.5.4 to 8.5.19 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vigna/fastutil/blob/master/CHANGES">it.unimi.dsi:fastutil-core's changelog</a>.</em></p> <blockquote> <p>8.5.19</p> <ul> <li> <p>Fixed BigArrays.getAndIncrement() for atomic big arrays, which was actually decrementing.</p> </li> <li> <p>Fixed skip() for concatenated iterators, which could leave the iterator positioned on an exhausted component.</p> </li> <li> <p>Fixed skip() for concatenated spliterators, which could throw an ArrayIndexOutOfBoundsException.</p> </li> <li> <p>Fixed removal from the entry set of tree-map submaps, which ignored the submap range and the entry value.</p> </li> <li> <p>Fixed deserialization of open-addressing big hash sets with load factor 1, which could produce a table without free entries.</p> </li> <li> <p>Fixed decoding of lengths greater than or equal to 2^15 in short front-coded lists.</p> </li> <li> <p>Fixed bounds checking in getElements() for immutable-list sublists.</p> </li> <li> <p>Fixed changed(int) for array-based indirect priority queues, which could leave a stale cached minimum.</p> </li> <li> <p>binarySearch() for floats and doubles is now consistent with the sorting order (-0 less than 0, NaN greatest).</p> </li> <li> <p>Fixed integer overflow in trySplit() for wide int interval spliterators.</p> </li> <li> <p>Fixed integer overflow in skip() and back() for int interval iterators near the extremal values.</p> </li> <li> <p>Fixed file-descriptor leaks in the File-based BinIO loaders: the byte loadBytes(File...) methods leaked on every call, and the multi-byte loaders leaked on the end-of-file error path.</p> </li> <li> <p>Fixed serialization of big-array big lists with more than 2^31 elements.</p> </li> <li> <p>Fixed integer overflow in the swap phase of big-array sorting for more than 2^31 elements.</p> </li> <li> <p>The expected-size argument of the big hash set constructor is now correctly checked for negativity.</p> </li> <li> <p>Fixed a garbled index in an exception message of abstract-list sublists.</p> </li> <li> <p>Fixed the upper-bound symbol in the out-of-range exception messages of tree-map and tree-set submaps and subsets.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vigna/fastutil/commit/46316b125eeb75fe42ab0bfed6e25bf756de8117"><code>46316b1</code></a> Round of fixes by Fable</li> <li><a href="https://github.com/vigna/fastutil/commit/29fc48b416338ec9f626e878a45a89908b49b973"><code>29fc48b</code></a> Made grow methods public</li> <li><a href="https://github.com/vigna/fastutil/commit/5609ef7e01a6ac71f6cea9e3438cf163fe38e8c1"><code>5609ef7</code></a> Added note about ensureCapacity not growing exponentially</li> <li><a href="https://github.com/vigna/fastutil/commit/c6434abd1177b9933c68f11005ec457d5abf58d3"><code>c6434ab</code></a> Revised forEach for maps</li> <li><a href="https://github.com/vigna/fastutil/commit/ca67ef7e81a910b13fa7fee513300d7c280193c8"><code>ca67ef7</code></a> Updated site</li> <li><a href="https://github.com/vigna/fastutil/commit/1ff1922f5b28d8da27126e8a724b9e0bd0863551"><code>1ff1922</code></a> Fixed non-existent method</li> <li><a href="https://github.com/vigna/fastutil/commit/106a7479c47043bfef2f42ac416620a13b3e457b"><code>106a747</code></a> Type-specific map forEach and ObjectInput/Output support for fast byte array ...</li> <li><a href="https://github.com/vigna/fastutil/commit/be6898b5989feac6bc2bb7dabbc4e6722efc716f"><code>be6898b</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/360">#360</a> from magicprinc/FBAOS_DO</li> <li><a href="https://github.com/vigna/fastutil/commit/5bed452ec377878b888904a42a1722b81520c1ec"><code>5bed452</code></a> Fixed docs and tests</li> <li><a href="https://github.com/vigna/fastutil/commit/27ddd254e642031cf31f175185bf9b6f820e63a4"><code>27ddd25</code></a> Merge pull request <a href="https://redirect.github.com/vigna/fastutil/issues/369">#369</a> from viciscat/type-specific-foreach</li> <li>Additional commits viewable in <a href="https://github.com/vigna/fastutil/compare/8.5.4...8.5.19">compare view</a></li> </ul> </details> <br /> Updates `software.amazon.awssdk:bom` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:retries-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:retries` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:kinesis` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:identity-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:http-client-spi` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:utils` from 2.55.6 to 2.56.0 Updates `software.amazon.awssdk:rds` from 2.55.6 to 2.56.0 Updates `io.grpc:grpc-bom` from 1.84.2 to 1.85.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/grpc/grpc-java/releases">io.grpc:grpc-bom's releases</a>.</em></p> <blockquote> <h2>v1.85.0</h2> <h2>gRPC Java 1.85.0 Release Notes</h2> <h3>API Changes</h3> <ul> <li>netty: Support never-indexed metadata keys (<a href="https://redirect.github.com/grpc/grpc-java/issues/12976">#12976</a>) (e9a8c2bf83). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds <code>NettyChannelBuilder.neverIndexMetadataKey()</code> and <code>neverIndexMetadataKeys(</code>) so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.</li> <li>binder: Add Context-based <code>hasPermissions()</code> to <code>SecurityPolicies</code> and deprecate the <code>PackageManager</code> version.</li> </ul> <h3>Behavior Changes</h3> <ul> <li>xds: allow wildcard listener port in LDS (5fda0c7c35). It now accepts a port of 0 in the LDS listener address as matching any port.<br /> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> xds: Make RawMessageClientInterceptor conditional on ext_proc flags (<a href="https://redirect.github.com/grpc/grpc-java/issues/13015">#13015</a>) (e58489ffa0). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.</li> <li>core: Reset configSelector on realChannel while entering IDLE state (<a href="https://redirect.github.com/grpc/grpc-java/issues/12832">#12832</a>) (fc4314419d). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.</li> <li>core: Gracefully handle GOAWAY frames with unrecognized error codes (<a href="https://redirect.github.com/grpc/grpc-java/issues/13035">#13035</a>) (b3ae8010c9). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged <code>NullPointerException: Http2Error cannot be null for GOAWAY</code> and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.</li> </ul> <h3>Improvements</h3> <ul> <li>netty: make hostname verification configurable (<a href="https://redirect.github.com/grpc/grpc-java/issues/13002">#13002</a>) (2858db2862). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.</li> <li>bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>) (c9ee3f8a79). <code>java_grpc_library</code> and <code>java_lite_grpc_library</code> now invoke protoc through Protobuf's <code>proto_lang_toolchain</code> instead of always using <code>@com_google_protobuf//:protoc</code>. They now use the same protoc and protoc options as <code>java_proto_library</code>.</li> </ul> <h3>New Features</h3> <ul> <li>api: Implement custom events framework in gRPC-Java server (<a href="https://redirect.github.com/grpc/grpc-java/issues/12980">#12980</a>) (dd00881a6e). This adds triggerEvent/onEvent APIs to <code>ServerCall</code> and <code>ServerCall.Listener</code>. This allows events to be triggered on the <code>ServerCall</code> and be delivered as a listener callback.</li> </ul> <h3>Dependencies</h3> <ul> <li>Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13013">#13013</a>) (9799887b74)</li> <li>netty: Upgrade Netty to 4.2.17 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13036">#13036</a>) (61b910bb43). netty-tcnative remains at 2.0.81.</li> </ul> <h3>Documentation</h3> <ul> <li>stub: Clarify flow control javadoc (<a href="https://redirect.github.com/grpc/grpc-java/issues/12977">#12977</a>) (893eb70807)</li> </ul> <p> </p> <h3>Thanks to</h3> <p><a href="https://github.com/kkalin68"><code>@kkalin68</code></a></p> <p><a href="https://github.com/petedmarsh"><code>@petedmarsh</code></a></p> <h2>v1.84.3</h2> <h3>Bug Fixes</h3> <ul> <li>xDS: fix DistributorWatcher thread safety in CertificateProvider- <a href="https://redirect.github.com/grpc/grpc-java/issues/13087">#13087</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/grpc/grpc-java/commit/73a9039966d1e3e84f139585ae7b835b4c1b338f"><code>73a9039</code></a> Bump version to 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/44ef493e8434de02aa6d960c87d06d3ac4f3816e"><code>44ef493</code></a> Update README etc to reference 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/4d0d548ea050d002c66573a30785f14bdfd41bea"><code>4d0d548</code></a> api: move ATTR_ADDRESS_NAME to EquivalentAddressGroup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13072">#13072</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/9e0ff283e9a727546c46d889e02a9376c36ab411"><code>9e0ff28</code></a> xds: fix TSAN data race in ext_proc client interceptor test cleanup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13071">#13071</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/c9ee3f8a7957660cdfe387a94805aafa269cb09e"><code>c9ee3f8</code></a> bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/fc562061767e57f64af7a6fdb85be7323bf87625"><code>fc56206</code></a> xds: fix ext_authz unit test issues creating import issues (<a href="https://redirect.github.com/grpc/grpc-java/issues/13061">#13061</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/4865560dbaa2c11f0821f1395e0400907de39aa8"><code>4865560</code></a> binder: deliver, even in the case where a prefix-only txn arrives last</li> <li><a href="https://github.com/grpc/grpc-java/commit/126f42ef883318dc559e00918033e85f47785268"><code>126f42e</code></a> binder: Add true unit tests for io.grpc.binder.internal.Inbound</li> <li><a href="https://github.com/grpc/grpc-java/commit/4c8d26db376efda5785087345bdc46f0a88470e5"><code>4c8d26d</code></a> binder: Fix OneWayBinderProxy to be a complete abstraction, removing getDeleg...</li> <li><a href="https://github.com/grpc/grpc-java/commit/872b8c8792dcae9e29e79eba6fd7d21ac3049a51"><code>872b8c8</code></a> binder: Add Context-based hasPermissions to SecurityPolicies and deprecate th...</li> <li>Additional commits viewable in <a href="https://github.com/grpc/grpc-java/compare/v1.84.2...v1.85.0">compare view</a></li> </ul> </details> <br /> Updates `io.grpc:grpc-bom` from 1.84.3 to 1.85.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/grpc/grpc-java/releases">io.grpc:grpc-bom's releases</a>.</em></p> <blockquote> <h2>v1.85.0</h2> <h2>gRPC Java 1.85.0 Release Notes</h2> <h3>API Changes</h3> <ul> <li>netty: Support never-indexed metadata keys (<a href="https://redirect.github.com/grpc/grpc-java/issues/12976">#12976</a>) (e9a8c2bf83). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds <code>NettyChannelBuilder.neverIndexMetadataKey()</code> and <code>neverIndexMetadataKeys(</code>) so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.</li> <li>binder: Add Context-based <code>hasPermissions()</code> to <code>SecurityPolicies</code> and deprecate the <code>PackageManager</code> version.</li> </ul> <h3>Behavior Changes</h3> <ul> <li>xds: allow wildcard listener port in LDS (5fda0c7c35). It now accepts a port of 0 in the LDS listener address as matching any port.<br /> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> xds: Make RawMessageClientInterceptor conditional on ext_proc flags (<a href="https://redirect.github.com/grpc/grpc-java/issues/13015">#13015</a>) (e58489ffa0). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.</li> <li>core: Reset configSelector on realChannel while entering IDLE state (<a href="https://redirect.github.com/grpc/grpc-java/issues/12832">#12832</a>) (fc4314419d). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.</li> <li>core: Gracefully handle GOAWAY frames with unrecognized error codes (<a href="https://redirect.github.com/grpc/grpc-java/issues/13035">#13035</a>) (b3ae8010c9). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged <code>NullPointerException: Http2Error cannot be null for GOAWAY</code> and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.</li> </ul> <h3>Improvements</h3> <ul> <li>netty: make hostname verification configurable (<a href="https://redirect.github.com/grpc/grpc-java/issues/13002">#13002</a>) (2858db2862). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.</li> <li>bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>) (c9ee3f8a79). <code>java_grpc_library</code> and <code>java_lite_grpc_library</code> now invoke protoc through Protobuf's <code>proto_lang_toolchain</code> instead of always using <code>@com_google_protobuf//:protoc</code>. They now use the same protoc and protoc options as <code>java_proto_library</code>.</li> </ul> <h3>New Features</h3> <ul> <li>api: Implement custom events framework in gRPC-Java server (<a href="https://redirect.github.com/grpc/grpc-java/issues/12980">#12980</a>) (dd00881a6e). This adds triggerEvent/onEvent APIs to <code>ServerCall</code> and <code>ServerCall.Listener</code>. This allows events to be triggered on the <code>ServerCall</code> and be delivered as a listener callback.</li> </ul> <h3>Dependencies</h3> <ul> <li>Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13013">#13013</a>) (9799887b74)</li> <li>netty: Upgrade Netty to 4.2.17 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13036">#13036</a>) (61b910bb43). netty-tcnative remains at 2.0.81.</li> </ul> <h3>Documentation</h3> <ul> <li>stub: Clarify flow control javadoc (<a href="https://redirect.github.com/grpc/grpc-java/issues/12977">#12977</a>) (893eb70807)</li> </ul> <p> </p> <h3>Thanks to</h3> <p><a href="https://github.com/kkalin68"><code>@kkalin68</code></a></p> <p><a href="https://github.com/petedmarsh"><code>@petedmarsh</code></a></p> <h2>v1.84.3</h2> <h3>Bug Fixes</h3> <ul> <li>xDS: fix DistributorWatcher thread safety in CertificateProvider- <a href="https://redirect.github.com/grpc/grpc-java/issues/13087">#13087</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/grpc/grpc-java/commit/73a9039966d1e3e84f139585ae7b835b4c1b338f"><code>73a9039</code></a> Bump version to 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/44ef493e8434de02aa6d960c87d06d3ac4f3816e"><code>44ef493</code></a> Update README etc to reference 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/4d0d548ea050d002c66573a30785f14bdfd41bea"><code>4d0d548</code></a> api: move ATTR_ADDRESS_NAME to EquivalentAddressGroup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13072">#13072</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/9e0ff283e9a727546c46d889e02a9376c36ab411"><code>9e0ff28</code></a> xds: fix TSAN data race in ext_proc client interceptor test cleanup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13071">#13071</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/c9ee3f8a7957660cdfe387a94805aafa269cb09e"><code>c9ee3f8</code></a> bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/fc562061767e57f64af7a6fdb85be7323bf87625"><code>fc56206</code></a> xds: fix ext_authz unit test issues creating import issues (<a href="https://redirect.github.com/grpc/grpc-java/issues/13061">#13061</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/4865560dbaa2c11f0821f1395e0400907de39aa8"><code>4865560</code></a> binder: deliver, even in the case where a prefix-only txn arrives last</li> <li><a href="https://github.com/grpc/grpc-java/commit/126f42ef883318dc559e00918033e85f47785268"><code>126f42e</code></a> binder: Add true unit tests for io.grpc.binder.internal.Inbound</li> <li><a href="https://github.com/grpc/grpc-java/commit/4c8d26db376efda5785087345bdc46f0a88470e5"><code>4c8d26d</code></a> binder: Fix OneWayBinderProxy to be a complete abstraction, removing getDeleg...</li> <li><a href="https://github.com/grpc/grpc-java/commit/872b8c8792dcae9e29e79eba6fd7d21ac3049a51"><code>872b8c8</code></a> binder: Add Context-based hasPermissions to SecurityPolicies and deprecate th...</li> <li>Additional commits viewable in <a href="https://github.com/grpc/grpc-java/compare/v1.84.2...v1.85.0">compare view</a></li> </ul> </details> <br /> Updates `io.grpc:grpc-stub` from 1.84.3 to 1.85.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/grpc/grpc-java/releases">io.grpc:grpc-stub's releases</a>.</em></p> <blockquote> <h2>v1.85.0</h2> <h2>gRPC Java 1.85.0 Release Notes</h2> <h3>API Changes</h3> <ul> <li>netty: Support never-indexed metadata keys (<a href="https://redirect.github.com/grpc/grpc-java/issues/12976">#12976</a>) (e9a8c2bf83). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds <code>NettyChannelBuilder.neverIndexMetadataKey()</code> and <code>neverIndexMetadataKeys(</code>) so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.</li> <li>binder: Add Context-based <code>hasPermissions()</code> to <code>SecurityPolicies</code> and deprecate the <code>PackageManager</code> version.</li> </ul> <h3>Behavior Changes</h3> <ul> <li>xds: allow wildcard listener port in LDS (5fda0c7c35). It now accepts a port of 0 in the LDS listener address as matching any port.<br /> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> xds: Make RawMessageClientInterceptor conditional on ext_proc flags (<a href="https://redirect.github.com/grpc/grpc-java/issues/13015">#13015</a>) (e58489ffa0). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.</li> <li>core: Reset configSelector on realChannel while entering IDLE state (<a href="https://redirect.github.com/grpc/grpc-java/issues/12832">#12832</a>) (fc4314419d). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.</li> <li>core: Gracefully handle GOAWAY frames with unrecognized error codes (<a href="https://redirect.github.com/grpc/grpc-java/issues/13035">#13035</a>) (b3ae8010c9). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged <code>NullPointerException: Http2Error cannot be null for GOAWAY</code> and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.</li> </ul> <h3>Improvements</h3> <ul> <li>netty: make hostname verification configurable (<a href="https://redirect.github.com/grpc/grpc-java/issues/13002">#13002</a>) (2858db2862). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.</li> <li>bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>) (c9ee3f8a79). <code>java_grpc_library</code> and <code>java_lite_grpc_library</code> now invoke protoc through Protobuf's <code>proto_lang_toolchain</code> instead of always using <code>@com_google_protobuf//:protoc</code>. They now use the same protoc and protoc options as <code>java_proto_library</code>.</li> </ul> <h3>New Features</h3> <ul> <li>api: Implement custom events framework in gRPC-Java server (<a href="https://redirect.github.com/grpc/grpc-java/issues/12980">#12980</a>) (dd00881a6e). This adds triggerEvent/onEvent APIs to <code>ServerCall</code> and <code>ServerCall.Listener</code>. This allows events to be triggered on the <code>ServerCall</code> and be delivered as a listener callback.</li> </ul> <h3>Dependencies</h3> <ul> <li>Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13013">#13013</a>) (9799887b74)</li> <li>netty: Upgrade Netty to 4.2.17 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13036">#13036</a>) (61b910bb43). netty-tcnative remains at 2.0.81.</li> </ul> <h3>Documentation</h3> <ul> <li>stub: Clarify flow control javadoc (<a href="https://redirect.github.com/grpc/grpc-java/issues/12977">#12977</a>) (893eb70807)</li> </ul> <p> </p> <h3>Thanks to</h3> <p><a href="https://github.com/kkalin68"><code>@kkalin68</code></a></p> <p><a href="https://github.com/petedmarsh"><code>@petedmarsh</code></a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/grpc/grpc-java/commit/73a9039966d1e3e84f139585ae7b835b4c1b338f"><code>73a9039</code></a> Bump version to 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/44ef493e8434de02aa6d960c87d06d3ac4f3816e"><code>44ef493</code></a> Update README etc to reference 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/4d0d548ea050d002c66573a30785f14bdfd41bea"><code>4d0d548</code></a> api: move ATTR_ADDRESS_NAME to EquivalentAddressGroup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13072">#13072</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/9e0ff283e9a727546c46d889e02a9376c36ab411"><code>9e0ff28</code></a> xds: fix TSAN data race in ext_proc client interceptor test cleanup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13071">#13071</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/c9ee3f8a7957660cdfe387a94805aafa269cb09e"><code>c9ee3f8</code></a> bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/fc562061767e57f64af7a6fdb85be7323bf87625"><code>fc56206</code></a> xds: fix ext_authz unit test issues creating import issues (<a href="https://redirect.github.com/grpc/grpc-java/issues/13061">#13061</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/4865560dbaa2c11f0821f1395e0400907de39aa8"><code>4865560</code></a> binder: deliver, even in the case where a prefix-only txn arrives last</li> <li><a href="https://github.com/grpc/grpc-java/commit/126f42ef883318dc559e00918033e85f47785268"><code>126f42e</code></a> binder: Add true unit tests for io.grpc.binder.internal.Inbound</li> <li><a href="https://github.com/grpc/grpc-java/commit/4c8d26db376efda5785087345bdc46f0a88470e5"><code>4c8d26d</code></a> binder: Fix OneWayBinderProxy to be a complete abstraction, removing getDeleg...</li> <li><a href="https://github.com/grpc/grpc-java/commit/872b8c8792dcae9e29e79eba6fd7d21ac3049a51"><code>872b8c8</code></a> binder: Add Context-based hasPermissions to SecurityPolicies and deprecate th...</li> <li>Additional commits viewable in <a href="https://github.com/grpc/grpc-java/compare/v1.84.3...v1.85.0">compare view</a></li> </ul> </details> <br /> Updates `io.grpc:grpc-netty-shaded` from 1.84.3 to 1.85.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/grpc/grpc-java/releases">io.grpc:grpc-netty-shaded's releases</a>.</em></p> <blockquote> <h2>v1.85.0</h2> <h2>gRPC Java 1.85.0 Release Notes</h2> <h3>API Changes</h3> <ul> <li>netty: Support never-indexed metadata keys (<a href="https://redirect.github.com/grpc/grpc-java/issues/12976">#12976</a>) (e9a8c2bf83). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds <code>NettyChannelBuilder.neverIndexMetadataKey()</code> and <code>neverIndexMetadataKeys(</code>) so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.</li> <li>binder: Add Context-based <code>hasPermissions()</code> to <code>SecurityPolicies</code> and deprecate the <code>PackageManager</code> version.</li> </ul> <h3>Behavior Changes</h3> <ul> <li>xds: allow wildcard listener port in LDS (5fda0c7c35). It now accepts a port of 0 in the LDS listener address as matching any port.<br /> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> xds: Make RawMessageClientInterceptor conditional on ext_proc flags (<a href="https://redirect.github.com/grpc/grpc-java/issues/13015">#13015</a>) (e58489ffa0). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.</li> <li>core: Reset configSelector on realChannel while entering IDLE state (<a href="https://redirect.github.com/grpc/grpc-java/issues/12832">#12832</a>) (fc4314419d). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.</li> <li>core: Gracefully handle GOAWAY frames with unrecognized error codes (<a href="https://redirect.github.com/grpc/grpc-java/issues/13035">#13035</a>) (b3ae8010c9). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged <code>NullPointerException: Http2Error cannot be null for GOAWAY</code> and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.</li> </ul> <h3>Improvements</h3> <ul> <li>netty: make hostname verification configurable (<a href="https://redirect.github.com/grpc/grpc-java/issues/13002">#13002</a>) (2858db2862). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.</li> <li>bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>) (c9ee3f8a79). <code>java_grpc_library</code> and <code>java_lite_grpc_library</code> now invoke protoc through Protobuf's <code>proto_lang_toolchain</code> instead of always using <code>@com_google_protobuf//:protoc</code>. They now use the same protoc and protoc options as <code>java_proto_library</code>.</li> </ul> <h3>New Features</h3> <ul> <li>api: Implement custom events framework in gRPC-Java server (<a href="https://redirect.github.com/grpc/grpc-java/issues/12980">#12980</a>) (dd00881a6e). This adds triggerEvent/onEvent APIs to <code>ServerCall</code> and <code>ServerCall.Listener</code>. This allows events to be triggered on the <code>ServerCall</code> and be delivered as a listener callback.</li> </ul> <h3>Dependencies</h3> <ul> <li>Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13013">#13013</a>) (9799887b74)</li> <li>netty: Upgrade Netty to 4.2.17 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13036">#13036</a>) (61b910bb43). netty-tcnative remains at 2.0.81.</li> </ul> <h3>Documentation</h3> <ul> <li>stub: Clarify flow control javadoc (<a href="https://redirect.github.com/grpc/grpc-java/issues/12977">#12977</a>) (893eb70807)</li> </ul> <p> </p> <h3>Thanks to</h3> <p><a href="https://github.com/kkalin68"><code>@kkalin68</code></a></p> <p><a href="https://github.com/petedmarsh"><code>@petedmarsh</code></a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/grpc/grpc-java/commit/73a9039966d1e3e84f139585ae7b835b4c1b338f"><code>73a9039</code></a> Bump version to 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/44ef493e8434de02aa6d960c87d06d3ac4f3816e"><code>44ef493</code></a> Update README etc to reference 1.85.0</li> <li><a href="https://github.com/grpc/grpc-java/commit/4d0d548ea050d002c66573a30785f14bdfd41bea"><code>4d0d548</code></a> api: move ATTR_ADDRESS_NAME to EquivalentAddressGroup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13072">#13072</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/9e0ff283e9a727546c46d889e02a9376c36ab411"><code>9e0ff28</code></a> xds: fix TSAN data race in ext_proc client interceptor test cleanup (<a href="https://redirect.github.com/grpc/grpc-java/issues/13071">#13071</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/c9ee3f8a7957660cdfe387a94805aafa269cb09e"><code>c9ee3f8</code></a> bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/fc562061767e57f64af7a6fdb85be7323bf87625"><code>fc56206</code></a> xds: fix ext_authz unit test issues creating import issues (<a href="https://redirect.github.com/grpc/grpc-java/issues/13061">#13061</a>)</li> <li><a href="https://github.com/grpc/grpc-java/commit/4865560dbaa2c11f0821f1395e0400907de39aa8"><code>4865560</code></a> binder: deliver, even in the case where a prefix-only txn arrives last</li> <li><a href="https://github.com/grpc/grpc-java/commit/126f42ef883318dc559e00918033e85f47785268"><code>126f42e</code></a> binder: Add true unit tests for io.grpc.binder.internal.Inbound</li> <li><a href="https://github.com/grpc/grpc-java/commit/4c8d26db376efda5785087345bdc46f0a88470e5"><code>4c8d26d</code></a> binder: Fix OneWayBinderProxy to be a complete abstraction, removing getDeleg...</li> <li><a href="https://github.com/grpc/grpc-java/commit/872b8c8792dcae9e29e79eba6fd7d21ac3049a51"><code>872b8c8</code></a> binder: Add Context-based hasPermissions to SecurityPolicies and deprecate th...</li> <li>Additional commits viewable in <a href="https://github.com/grpc/grpc-java/compare/v1.84.3...v1.85.0">compare view</a></li> </ul> </details> <br /> Updates `io.grpc:grpc-netty-shaded` from 1.84.3 to 1.85.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/grpc/grpc-java/releases">io.grpc:grpc-netty-shaded's releases</a>.</em></p> <blockquote> <h2>v1.85.0</h2> <h2>gRPC Java 1.85.0 Release Notes</h2> <h3>API Changes</h3> <ul> <li>netty: Support never-indexed metadata keys (<a href="https://redirect.github.com/grpc/grpc-java/issues/12976">#12976</a>) (e9a8c2bf83). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds <code>NettyChannelBuilder.neverIndexMetadataKey()</code> and <code>neverIndexMetadataKeys(</code>) so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.</li> <li>binder: Add Context-based <code>hasPermissions()</code> to <code>SecurityPolicies</code> and deprecate the <code>PackageManager</code> version.</li> </ul> <h3>Behavior Changes</h3> <ul> <li>xds: allow wildcard listener port in LDS (5fda0c7c35). It now accepts a port of 0 in the LDS listener address as matching any port.<br /> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> xds: Make RawMessageClientInterceptor conditional on ext_proc flags (<a href="https://redirect.github.com/grpc/grpc-java/issues/13015">#13015</a>) (e58489ffa0). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.</li> <li>core: Reset configSelector on realChannel while entering IDLE state (<a href="https://redirect.github.com/grpc/grpc-java/issues/12832">#12832</a>) (fc4314419d). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.</li> <li>core: Gracefully handle GOAWAY frames with unrecognized error codes (<a href="https://redirect.github.com/grpc/grpc-java/issues/13035">#13035</a>) (b3ae8010c9). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged <code>NullPointerException: Http2Error cannot be null for GOAWAY</code> and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.</li> </ul> <h3>Improvements</h3> <ul> <li>netty: make hostname verification configurable (<a href="https://redirect.github.com/grpc/grpc-java/issues/13002">#13002</a>) (2858db2862). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.</li> <li>bazel: Adopt proto_lang_toolchain for java_grpc_library() (<a href="https://redirect.github.com/grpc/grpc-java/issues/12994">#12994</a>) (c9ee3f8a79). <code>java_grpc_library</code> and <code>java_lite_grpc_library</code> now invoke protoc through Protobuf's <code>proto_lang_toolchain</code> instead of always using <code>@com_google_protobuf//:protoc</code>. They now use the same protoc and protoc options as <code>java_proto_library</code>.</li> </ul> <h3>New Features</h3> <ul> <li>api: Implement custom events framework in gRPC-Java server (<a href="https://redirect.github.com/grpc/grpc-java/issues/12980">#12980</a>) (dd00881a6e). This adds triggerEvent/onEvent APIs to <code>ServerCall</code> and <code>ServerCall.Listener</code>. This allows events to be triggered on the <code>ServerCall</code> and be delivered as a listener callback.</li> </ul> <h3>Dependencies</h3> <ul> <li>Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (<a href="https://redirect.github.com/grpc/grpc-java/issues/13013">#13013</a>) (9799887b74)</li> <... _Description has been truncated_ -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
