3.14.2 — 2025-11-06¶
← 3.14.3 | 3.14.1 → | ↑ 3.x series
Added¶
Testing Infrastructure¶
- Tag-Based Selective Container Startup - Implemented intelligent container startup based on feature tags for behave
tests
- Added
TAG_CONTAINER_MAPmapping feature tags to container names (e.g.,@needs-postgres,@needs-kafka,@needs-elasticsearch) - Implemented
extract_containers_from_tags()method inContainerManagerto automatically detect required containers from feature/scenario tags - Enhanced
before_all()andbefore_feature()hooks inenvironment.pyto start only required containers based on tags - Added container tags to feature files (
atomic_transactions.feature,elastic_adapter.feature,kafka_adapters.feature,keycloak_adapter.feature,minio_adapter.feature) - Optimizes test execution by starting only necessary containers, reducing resource usage and test startup time
- Improves test isolation and parallel test execution capabilities
- Added
Changed¶
Testing Infrastructure¶
-
Dynamic Port Allocation for Testcontainers - Refactored test container initialization to use dynamic ports instead of fixed ports
- Updated all test container classes (
RedisTestContainer,PostgresTestContainer,KeycloakTestContainer,ElasticsearchTestContainer,KafkaTestContainer,MinioTestContainer) to use dynamic port allocation - Containers now automatically assign available ports using
get_exposed_port()method from testcontainers - Enhanced container startup to update global configuration with actual dynamic host and port values
- Eliminates port conflicts when running multiple test suites in parallel or on shared CI/CD infrastructure
- Improved test reliability and compatibility across different environments
- Updated all test container classes (
-
Simplified Configuration Access - Streamlined configuration access patterns in test step definitions
- Refactored step definitions to use
BaseConfig.global_config()directly instead of complex configuration access patterns - Updated step definitions across multiple modules (
app_utils_steps.py,base_config_steps.py,datetime_utils_steps.py,elastic_adapter_steps.py,jwt_utils_steps.py,keycloak_adapter_steps.py,minio_adapter_steps.py,password_utils_steps.py,totp_utils_steps.py) - Simplified
.env.testconfiguration file structure - Enhanced code maintainability and reduced configuration complexity in test infrastructure
- Improved developer experience with clearer configuration access patterns
- Refactored step definitions to use
Dependency Updates¶
- Comprehensive Dependency Synchronization - Updated multiple core dependencies to latest versions for improved
security, performance, and bug fixes
- Updated pydantic from 2.12.3 to 2.12.4 for enhanced data validation and performance improvements
- Updated fakeredis from 2.32.0 to 2.32.1 for improved Redis mocking capabilities and bug fixes
- Updated grpcio from 1.75.1 to 1.76.0 for enhanced gRPC framework capabilities and performance improvements
- Updated grpcio-health-checking from 1.75.1 to 1.76.0 for improved health checking functionality
- Updated confluent-kafka from 2.12.0 to 2.12.1 for enhanced Kafka messaging capabilities and bug fixes
- Updated apscheduler from 3.11.0 to 3.11.1 for improved task scheduling capabilities and bug fixes
- Updated aiomysql from 0.2.0 to 0.3.2 for enhanced async MySQL connectivity and performance improvements
- Updated add-trailing-comma from 3.2.0 to 4.0.0 for improved code formatting capabilities
- Updated ruff from 0.14.0 to 0.14.3 for enhanced linting capabilities and bug fixes
- Updated types-cachetools from 6.2.0.20250827 to 6.2.0.20251022 for improved type stubs
- Updated types-protobuf from 6.32.1.20250918 to 6.32.1.20251105 for enhanced Protocol Buffers type support
- Updated types-regex from 2025.9.18.20250921 to 2025.11.3.20251106 for improved regex type hints
- Updated mkdocs-material from 9.6.21 to 9.6.23 for enhanced documentation rendering and Material theme features