Releases: nats-io/nats.java
Releases · nats-io/nats.java
2.24.1 Minor and Automatic-Module-Name
2.24.0
Core
- [BUG] Properly return pending bytes #1437 @scottf
- Improve ConnectionListener #1438 @scottf
- Server Pool Improvement #1443 @scottf
- Improved reconnect determining when to switch queues #1444 @scottf
- Improve output queue push locking and error message #1446 @scottf
- ConnectionListener event time #1448 @scottf
- Optimize header reading #1449 @scottf
- Header fine tuning #1451 @scottf
- Header tuning don't over engineer #1453 @scottf
- Micro-optimization getBytes(ISO_8859_1) vs getBytes(US_ASCII) #1455 @scottf
- Reduce calls to stats by combining. #1465 @scottf
- [BUG] MessageQueue drainTo was not properly copying length and size. #1468 @scottf
- MessageQueue drainTo more #1469 @scottf
- Auth Error is allowed to be set before being connected #1475 @scottf
JetStream
- Stream Config Persist mode #1436 @scottf
- Review methods with varargs for proper validation #1456 @scottf
- [BUG] AccountTier read reserved values as int instead of long #1457 @scottf
- Handle both wrong last sequence 10071 / 10164 #1463 @scottf
- Pinned Consumer Support #1472 @scottf
Docs
Test
- Refactor test to validate issue 1426 #1447 @scottf
- Additional test coverage #1452 @scottf
- Demonstrate Pull Status Warning Handling #1454 @scottf
- Miscellaneous Test Coverage #1460 @scottf
- Fix and Enable ReconnectTests testForceReconnectQueueBehaviorCheck #1473 @scottf
- Javadoc Technical Debt #1476 @scottf
Build
2.23.0 Server 2.12 Support and Core Socket Customizations
Server 2.12 Specific
Core
- Make NatsStatistics public so it can be extended #1414 @scottf
- Statistics classes improvements #1415 @scottf
- Lock around access to pending message and byte counts #1416 @scottf
- Socket Read Timeout remove validation #1417 @scottf
- Ensure write timeout is not less than 100 nanoseconds #1429 @scottf
- Options to set underlying socket configuration of SO_SNDBUF and SO_RCVBUF #1432 @scottf
JetStream
- Exposed StreamName #1431 @roeschter
Misc
2.22.0 Fixes and catch-up
Core
JetStream
- Add publish header "Nats-Expected-Last-Subject-Sequence-Subject" #1401 @scottf
- Add publish header "Nats-Expected-Last-Subject-Sequence-Subject" part b. #1402 @scottf
- [Fix] Reset cached consumer info when re-making ordered consumers #1405 @scottf
- consumers - metadata comparison #1410 @scottf
ObjectStore
Misc
- Clarify documentation for JetStreamSubscription #1400 @davidmorley
- Build (CI/CD) Stuff #1404 @scottf
- Update version of bouncycastle to resolve CVE-2025-9341 #1406 @vkolomeyko
2.21.5
Core
- Implement Fast fallback algorithm in SocketDataPort #1351 @jitinsharma
- [FIX] Shutdown internal executors on connection close. #1357 @scottf
- Convert serverAuthErrors to ConcurrentHashMap #1359 @scottf
- Fix SSL handshake listeners never removed, preventing garbage collection #1360 @scottf
- Fix core unsubscribe by subject #1363 @scottf
- Move from JetBrains nullability annotations to JSpecify #1366
- Fix timeout computing to address possible nano time overflow #1375 @scottf @magicprinc
- Create NatsInetAddress to allow replacement of InetAddress #1378 @scottf @jitinsharma
- Json parser tuning. #1382 @scottf
- Connection and adjacent objects nullability markers. #1383 @scottf
- Headers +toString(), fixes #1385 @magicprinc
- Header nullability #1395 @scottf
- Updated SSL Files and Build preparing for server 2.12 #1397 @scottf
JetStream
- [Fix] Simplified Ordered Consumer - Getting name early can cause NPE #1354 @scottf
- Stream Name cannot be null #1377 @scottf
- Fix JetStreamApiException constructor nullability conflict #1379 @scottf
- Ensuring nullability contracts #1387 @scottf
Key Value
- Add revision guard on KV key "create" #1356 @scottf
- Fixed limit marker test for server change #1367 @scottf
- Additional KV Marker / TTL testing #1391 @scottf
Testing / Examples / Docs / Etc
- Ordered Consumer Examples #1352 @scottf
- Update readme for fast fallback option #1353 @jitinsharma
- Improved Consumer Name Testing #1365 @scottf
- Review for Issues (#1361 and #1362) #1368 @scottf
- Unit test refactor #1369
- Use String.replace instead of String.replaceAll #1381 @scottf @magicprinc
- Fixed Jacoco from considering test classes #1390 @scottf
- Fixing flapping tests #1393 @scottf
- Fix test flappers #1396 @scottf
2.21.4 Features and Fixes
Core
- Fix race condition during reconnect sends UNSUB messages #1321 @ajax-surovskyi-y
- Add connection auth token supplier option #1324 @buleuszmatak
- Nano time for elapsed timings and Nats System Clock #1334 @scottf
- Replace Timer with scheduled tasks #1335 @scottf
- [Bug] Fix UNSUBs after disconnect can cause auth violations #1336 @scottf @ajax-surovskyi-y
- Options allow token supplier from property, not just api method #1349 @scottf
JetStream
- Annotating API objects with NotNull and Nullable #1333 @scottf
- [Bug] MessageConsumer.isFinished() not set properly in certain conditions #1339 @scottf
- [Bug] Pull Heartbeat handler intermittent failure after switch to scheduler #1345 @scottf
- Fix heartbeat timer handling broken when replacing timer with scheduler. #1348 @scottf
Key Value
- Nats-Marker-Reason must be mapped to a Key Value Operation #1323 @scottf
- KV Purge Per Message TTL #1344 @scottf
Tests
- Addition validation and test for token / token supplier #1325 @scottf
- Add test for auth violations during reconnect #1328 @ajax-surovskyi-y
- Fixed KV Limit Marker Test to only run against 2.11.2 or later #1338 @scottf
- Fix flapping test: testOverflowFetch #1340 @scottf
- Set the test timeout default to 3 minutes. #1343 @scottf
Misc
2.21.3 DO NOT USE. REPLACED BY 2.21.4
DO NOT USE. REPLACED BY 2.21.4
2.21.2 Bug Fixes and JetStream and KeyValue Improvements
Core
- Changed header value validation to accept any ascii except CR & LF #1316 @francoisprunier
JetStream
- Update account ApiStats with level and inflight #1304 @scottf
- Update account AccountTier with reserved memory and reserved storage #1305 @scottf
- Add StreamAlternate structure to StreamInfo response #1306 @scottf
- Better workflow for leadership change while pull consuming. #1313 @scottf
- Ability to supply a prefix for watches. Fixed ordered consumer naming bug. #1314 @scottf
- Use full NUID for generated consumer names #1317 @scottf
Key Value
- Update KV consumeKeys() to return the BlockingQueue immediately. #1308 @scottf
- KV Limit Marker #1310 @scottf
- KV LimitMarker add missing getter, additional docs and tests #1311 @scottf