You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Replaced dict merge (`|=`) with explicit per-key assignment to satisfy the `dict[str, str | int | float]` type
14
+
annotation
15
+
- Optional SSL fields (`SASL_MECHANISM`, `SSL_CERT_FILE`, `SSL_KEY_FILE`) now fall back to `""` when `None`,
16
+
preventing type errors
17
+
- Config dicts are now explicitly typed as `dict[str, str | int | float]` across all three adapters
18
+
19
+
#### Helpers - Utils
20
+
21
+
-**gRPC Interceptors Type Annotation** - Added explicit `list[grpc.ServerInterceptor]` type annotation to the
22
+
interceptors list in `AppUtils.create_async_grpc_app`
23
+
24
+
### Changed
25
+
26
+
#### Adapters - Testing
27
+
28
+
-**ScyllaDB Test Container** - Lowered minimum `aio-max-nr` requirement from `131072` to `65536`
29
+
- Reduces the kernel parameter requirement for running ScyllaDB in CI and local environments
30
+
- Reflects the actual minimum needed by the Seastar framework in containerised setups
31
+
32
+
#### Tests - Redis
33
+
34
+
-**Unified Redis BDD Tests** - Consolidated Redis mock and container tests into a single feature file
35
+
- Renamed `redis_mock.feature` → `redis_adapter.feature` and `redis_mock_steps.py` → `redis_adapter_steps.py`
36
+
- Single feature now covers both mock (fakeredis) and real container scenarios
37
+
38
+
#### Dependencies
39
+
40
+
-**cachetools** bumped from `>=7.0.1` to `>=7.0.5` (affects `cache`, `keycloak`, `minio`, `scylladb` extras)
41
+
-**fakeredis** bumped from `>=2.34.0` to `>=2.34.1`
42
+
-**fastapi** bumped from `>=0.133.0` to `>=0.135.1`
43
+
-**grpcio** / **grpcio-health-checking** floor lowered from `>=1.78.1` to `>=1.78.0`
44
+
-**confluent-kafka** bumped from `>=2.13.0` to `>=2.13.2`
45
+
-**boto3** (minio extra) bumped from `>=1.42.55` to `>=1.42.64`
46
+
-**sqlalchemy** / **sqlalchemy[asyncio]** bumped from `>=2.0.46` to `>=2.0.47`
47
+
-**bandit** (dev) bumped from `>=1.9.3` to `>=1.9.4`
48
+
5
49
## [v4.3.4] - 2026-02-24
6
50
7
51
### Fixed
8
52
9
53
#### Models - Errors
10
54
11
55
-**BaseError `__str__` Enhancement** - Improved string representation to expose full error context
12
-
-`__str__` now returns a structured, human-readable string including `class name`, `code`, `message`, `http_status`, `grpc_status`, and `additional_data`
56
+
-`__str__` now returns a structured, human-readable string including `class name`, `code`, `message`,
57
+
`http_status`, `grpc_status`, and `additional_data`
13
58
- Previous output was a minimal `[code] message` format, making debugging difficult
14
59
- New format: `ClassName(code='...', message='...', http_status=..., grpc_status=..., additional_data=...)`
15
60
- Consistent with `__repr__` behaviour — no information is hidden in logs or tracebacks
@@ -26,8 +71,10 @@ All notable changes to ArchiPy are documented in this changelog, organized by ve
26
71
27
72
#### Developer Tooling
28
73
29
-
-**Cursor Rules Restructured** - Replaced monolithic `checks.mdc` and `CLAUDE.md` with focused, single-responsibility rule files
30
-
- Added `python-code-style.mdc` — string quoting, docstrings, line length, type hints, imports, error handling, complexity
74
+
-**Cursor Rules Restructured** - Replaced monolithic `checks.mdc` and `CLAUDE.md` with focused, single-responsibility
75
+
rule files
76
+
- Added `python-code-style.mdc` — string quoting, docstrings, line length, type hints, imports, error handling,
- Added `typing-strict.mdc` — strict type annotation conventions
33
80
- Added `testing-bdd.mdc` — BDD/Behave test conventions
@@ -137,7 +184,8 @@ All notable changes to ArchiPy are documented in this changelog, organized by ve
137
184
- Implemented `_is_prometheus_server_running()` helper to detect existing Prometheus servers
138
185
- Prevents duplicate Prometheus server starts across FastAPI and gRPC applications
139
186
- Checks port availability before starting Prometheus HTTP server
140
-
- Added `prometheus_utils` module with `is_prometheus_server_running()` and `start_prometheus_server_if_needed()` helpers for shared Prometheus server management across adapters
187
+
- Added `prometheus_utils` module with `is_prometheus_server_running()` and `start_prometheus_server_if_needed()`
188
+
helpers for shared Prometheus server management across adapters
0 commit comments