|
3 | 3 | # 9.9.0 (2024-03-21)
|
4 | 4 |
|
5 | 5 | ## 🚀 Highlights
|
6 |
| -- **Token-based Authentication**: Added `StreamingCredentialsProvider` for dynamic credential updates |
| 6 | +- **Token-based Authentication**: Added `StreamingCredentialsProvider` for dynamic credential updates (experimental) |
7 | 7 | - Can be used with [go-redis-entraid](https://github.com/redis/go-redis-entraid) for Azure AD authentication
|
8 | 8 | - **Connection Statistics**: Added connection waiting statistics for better monitoring
|
9 | 9 | - **Failover Improvements**: Added `ParseFailoverURL` for easier failover configuration
|
| 10 | +- **Ring Client Enhancements**: Added shard access methods for better Pub/Sub management |
10 | 11 |
|
11 | 12 | ## ✨ New Features
|
12 |
| -- Added `StreamingCredentialsProvider` for token-based authentication (#3320) |
| 13 | +- Added `StreamingCredentialsProvider` for token-based authentication ([#3320](https://github.com/redis/go-redis/pull/3320)) |
13 | 14 | - Supports dynamic credential updates
|
14 | 15 | - Includes connection close hooks
|
15 | 16 | - Note: Currently marked as experimental
|
16 |
| -- Added `ParseFailoverURL` for parsing failover URLs (#3362) |
17 |
| -- Added connection waiting statistics (#2804) |
| 17 | +- Added `ParseFailoverURL` for parsing failover URLs ([#3362](https://github.com/redis/go-redis/pull/3362)) |
| 18 | +- Added connection waiting statistics ([#2804](https://github.com/redis/go-redis/pull/2804)) |
18 | 19 | - Added new utility functions:
|
19 |
| - - `ParseFloat` and `MustParseFloat` in public utils package (#3371) |
20 |
| - - Unit tests for `Atoi`, `ParseInt`, `ParseUint`, and `ParseFloat` (#3377) |
| 20 | + - `ParseFloat` and `MustParseFloat` in public utils package ([#3371](https://github.com/redis/go-redis/pull/3371)) |
| 21 | + - Unit tests for `Atoi`, `ParseInt`, `ParseUint`, and `ParseFloat` ([#3377](https://github.com/redis/go-redis/pull/3377)) |
| 22 | +- Added Ring client shard access methods: |
| 23 | + - `GetShardClients()` to retrieve all active shard clients |
| 24 | + - `GetShardClientForKey(key string)` to get the shard client for a specific key ([#3388](https://github.com/redis/go-redis/pull/3388)) |
21 | 25 |
|
22 | 26 | ## 🐛 Bug Fixes
|
23 |
| -- Fixed routing reads to loading slave nodes (#3370) |
24 |
| -- Added support for nil lag in XINFO GROUPS (#3369) |
25 |
| -- Fixed pool acquisition timeout issues (#3381) |
26 |
| -- Optimized unnecessary copy operations (#3376) |
| 27 | +- Fixed routing reads to loading slave nodes ([#3370](https://github.com/redis/go-redis/pull/3370)) |
| 28 | +- Added support for nil lag in XINFO GROUPS ([#3369](https://github.com/redis/go-redis/pull/3369)) |
| 29 | +- Fixed pool acquisition timeout issues ([#3381](https://github.com/redis/go-redis/pull/3381)) |
| 30 | +- Optimized unnecessary copy operations ([#3376](https://github.com/redis/go-redis/pull/3376)) |
27 | 31 |
|
28 | 32 | ## 📚 Documentation
|
29 |
| -- Updated documentation for XINFO GROUPS with nil lag support (#3369) |
| 33 | +- Updated documentation for XINFO GROUPS with nil lag support ([#3369](https://github.com/redis/go-redis/pull/3369)) |
30 | 34 | - Added package-level comments for new features
|
31 | 35 |
|
32 | 36 | ## ⚡ Performance and Reliability
|
33 |
| -- Optimized `ReplaceSpaces` function (#3383) |
34 |
| -- Set default value for `options.protocol` in `init()` (#3387) |
35 |
| -- Exported pool errors for public consumption (#3380) |
| 37 | +- Optimized `ReplaceSpaces` function ([#3383](https://github.com/redis/go-redis/pull/3383)) |
| 38 | +- Set default value for `Options.Protocol` in `init()` ([#3387](https://github.com/redis/go-redis/pull/3387)) |
| 39 | +- Exported pool errors for public consumption ([#3380](https://github.com/redis/go-redis/pull/3380)) |
36 | 40 |
|
37 | 41 | ## 🔧 Dependencies and Infrastructure
|
38 |
| -- Updated Redis CI to version 8.0.1 (#3372) |
39 |
| -- Updated spellcheck GitHub Actions (#3389) |
40 |
| -- Removed unused parameters (#3382, #3384) |
| 42 | +- Updated Redis CI to version 8.0.1 ([#3372](https://github.com/redis/go-redis/pull/3372)) |
| 43 | +- Updated spellcheck GitHub Actions ([#3389](https://github.com/redis/go-redis/pull/3389)) |
| 44 | +- Removed unused parameters ([#3382](https://github.com/redis/go-redis/pull/3382), [#3384](https://github.com/redis/go-redis/pull/3384)) |
41 | 45 |
|
42 | 46 | ## 🧪 Testing
|
43 |
| -- Added unit tests for pool acquisition timeout (#3381) |
44 |
| -- Added unit tests for utility functions (#3377) |
| 47 | +- Added unit tests for pool acquisition timeout ([#3381](https://github.com/redis/go-redis/pull/3381)) |
| 48 | +- Added unit tests for utility functions ([#3377](https://github.com/redis/go-redis/pull/3377)) |
45 | 49 |
|
46 | 50 | ## 👥 Contributors
|
47 | 51 |
|
48 | 52 | We would like to thank all the contributors who made this release possible:
|
49 | 53 |
|
50 |
| -[@ndyakov](https://github.com/ndyakov), [@ofekshenawa](https://github.com/ofekshenawa), [@LINKIWI](https://github.com/LINKIWI), [@iamamirsalehi](https://github.com/iamamirsalehi), [@fukua95](https://github.com/fukua95), [@lzakharov](https://github.com/lzakharov) |
| 54 | +[@ndyakov](https://github.com/ndyakov), [@ofekshenawa](https://github.com/ofekshenawa), [@LINKIWI](https://github.com/LINKIWI), [@iamamirsalehi](https://github.com/iamamirsalehi), [@fukua95](https://github.com/fukua95), [@lzakharov](https://github.com/lzakharov), [@DengY11](https://github.com/DengY11) |
| 55 | + |
| 56 | +## 📝 Changelog |
| 57 | + |
| 58 | +For a complete list of changes, see the [full changelog](https://github.com/redis/go-redis/compare/v9.8.0...v9.9.0). |
51 | 59 |
|
52 | 60 | # 9.8.0 (2025-04-30)
|
53 | 61 |
|
|
0 commit comments