fix: map ssl=True to connection_class=SSLConnection so TLS works via pool_kwargs (redis-4)

Signed-off-by: disqualifier <dev@disqualifier.me>
This commit is contained in:
2026-07-02 17:22:30 -04:00
parent a0e9fc28d6
commit 4688dd4181
3 changed files with 21 additions and 4 deletions
+8 -3
View File
@@ -14,19 +14,19 @@ datastore trio (`redis` / `psql` / `mysql`), a sibling of the `mongo` lib.
`requirements.txt`:
```
redis_store @ git+ssh://git@git.rethinkstudios.io/rethink-public/redis.git@v0.1.2
redis_store @ git+ssh://git@git.rethinkstudios.io/rethink-public/redis.git@v0.1.3
```
Direct:
```bash
pip install "redis_store @ git+ssh://git@git.rethinkstudios.io/rethink-public/redis.git@v0.1.2"
pip install "redis_store @ git+ssh://git@git.rethinkstudios.io/rethink-public/redis.git@v0.1.3"
```
Pulls `redis>=5` (redis-py, which ships the asyncio client — **not** the dead standalone
`aioredis`).
Drop the `@v0.1.2` suffix from the line above to install the latest unpinned.
Drop the `@v0.1.3` suffix from the line above to install the latest unpinned.
## Usage
@@ -66,6 +66,11 @@ Pool sizing/timeout are `max_connections=` and `pool_timeout=` (how long a calle
a free connection when the pool is saturated). Pass the driver's own `timeout=` in
`pool_kwargs` and construction raises a clear `ValueError` — use `pool_timeout=`.
`ssl=True` maps to `connection_class=redis.asyncio.SSLConnection`, so TLS works via the
documented `pool_kwargs` path (the default connection class has no `ssl` parameter and
would otherwise defer a `TypeError` to `connect()`). Pass ssl-prefixed kwargs alongside
it (`ssl_ca_certs`, `ssl_certfile`, ...) to configure the handshake.
## Error contract — fail loud
Unlike the `mongo` lib (which log-and-swallows, returning a safe default), **this lib