Skip to content

Releases: SyntaxArc/ArchiPy

3.13.1

30 Sep 08:21

Choose a tag to compare

Changed

Dependency Updates

  • Core Dependencies - Updated multiple core dependencies for improved security and performance

    • Updated Pydantic from 2.11.7 to 2.11.9 for enhanced data validation and performance improvements
    • Updated Pydantic Settings from 2.10.1 to 2.11.0 for better configuration management capabilities
    • Updated PyYAML from 6.0.2 to 6.0.3 for enhanced YAML processing and security fixes
    • Updated Sentry SDK from 2.36.0 to 2.39.0 for improved error tracking and monitoring
    • Updated Ruff from 0.13.1 to 0.13.2 for enhanced code linting and formatting capabilities
  • Parser and Processing Libraries - Enhanced parsing and processing capabilities

    • Updated pycparser from 2.22 to 2.23 for improved C code parsing
    • Updated ruamel.yaml.clib from 0.2.12 to 0.2.14 for better YAML processing performance
    • Added pytokens 0.1.10 for enhanced token processing capabilities
  • Build and Development Tools - Updated development and build infrastructure

    • Updated Starlette from 0.47.3 to 0.48.0 for improved ASGI framework support
    • Updated StarRocks driver from 1.2.2 to 1.2.3 for enhanced database connectivity
    • Updated Temporalio from 1.12.0 to 1.18.0 for improved workflow orchestration capabilities
    • Updated Testcontainers from 4.12.0 to 4.13.1 for better container testing support
    • Updated Typer from 0.17.3 to 0.19.2 for enhanced CLI development features
    • Updated Uvicorn from 0.35.0 to 0.37.0 for improved ASGI server performance
    • Updated Zeep from 4.3.1 to 4.3.2 for better SOAP/WSDL client functionality
  • Type Checking and Development - Enhanced type checking and development experience

    • Updated types-grpcio from 1.0.0.20250703 to 1.0.0.20250914 for better gRPC type support
    • Updated types-protobuf from 6.30.2.20250822 to 6.32.1.20250918 for improved Protocol Buffers typing
    • Updated types-pymysql from 1.1.0.20250822 to 1.1.0.20250916 for enhanced MySQL type hints
    • Updated types-regex from 2025.9.1.20250903 to 2025.9.18.20250921 for better regex type support
    • Updated types-requests from 2.32.4.20250809 to 2.32.4.20250913 for improved HTTP client typing
  • Infrastructure and Utility Libraries - Updated supporting infrastructure

    • Updated rich-toolkit from 0.15.0 to 0.15.1 for enhanced terminal output formatting
    • Updated numerous additional dependencies for security patches and performance improvements

Security

  • Enhanced Security Posture - Multiple security updates across dependencies
    • Updated dependencies include security patches and vulnerability fixes
    • Improved overall application security through latest package versions
    • Enhanced cryptographic libraries and security-related packages

Performance

  • Optimized Dependencies - Performance improvements through dependency updates
    • Enhanced parsing and processing performance with updated libraries
    • Improved build and development tool performance
    • Better memory usage and execution speed through optimized package versions

Full Changelog: 3.13.0...3.13.1

3.13.0

21 Sep 09:18

Choose a tag to compare

Added

Redis Cluster and Sentinel Support

  • Redis Cluster Integration - Added comprehensive Redis Cluster support for distributed caching and high availability

    • Added CLUSTER mode to RedisMode enum for cluster deployment configuration
    • Implemented cluster-specific methods: cluster_info(), cluster_nodes(), cluster_slots(), and cluster_keyslot()
    • Added cluster configuration options: CLUSTER_NODES, CLUSTER_REQUIRE_FULL_COVERAGE, CLUSTER_READ_FROM_REPLICAS
    • Enhanced connection pooling with MAX_CONNECTIONS and retry mechanisms for cluster nodes
    • Improved error handling for cluster-specific operations and node failover scenarios
  • Redis Sentinel Integration - Added Redis Sentinel support for automatic failover and high availability

    • Added SENTINEL mode to RedisMode enum for sentinel deployment configuration
    • Implemented sentinel-specific configuration: SENTINEL_NODES, SENTINEL_SERVICE_NAME, SENTINEL_SOCKET_TIMEOUT
    • Enhanced master/slave discovery and automatic failover through Sentinel coordination
    • Added robust connection management for Sentinel-monitored Redis deployments

Enhanced Redis Configuration

  • Flexible Deployment Modes - Unified configuration system supporting standalone, sentinel, and cluster modes
    • Added RedisMode enum with STANDALONE, SENTINEL, and CLUSTER options
    • Enhanced configuration validation with mode-specific parameter validation
    • Improved connection timeout settings: SOCKET_CONNECT_TIMEOUT and SOCKET_TIMEOUT
    • Added comprehensive error handling for mismatched configuration parameters

Testing and Mocking Improvements

  • Enhanced Mock Support - Extended Redis mocking capabilities for all deployment modes
    • Updated mock implementations to support cluster and sentinel operation simulation
    • Enhanced test coverage for cluster-specific methods and sentinel failover scenarios
    • Improved test configuration with mode-specific environment variables

Changed

Error Handling Enhancements

  • Improved Error Utilities - Enhanced error handling for Redis connection and operation failures
    • Updated error utilities to handle cluster and sentinel specific errors
    • Improved error messaging for connection failures across different Redis modes

Dependencies

  • Redis Client Updates - Updated Redis client dependencies to support cluster and sentinel operations
    • Enhanced Redis protocol support for cluster and sentinel deployments
    • Improved connection handling for distributed Redis architectures

Full Changelog: 3.12.0...3.13.0

3.12.0

21 Sep 07:05

Choose a tag to compare

Added

Temporal Workflow Scheduling Enhancement

  • Schedule Management Methods - Added comprehensive schedule management capabilities to Temporal adapter
    • Added create_schedule() method for creating workflow schedules with configurable specifications
    • Added stop_schedule() method for deleting and stopping existing schedules
    • Enhanced Temporal integration with ScheduleActionStartWorkflow support
    • Improved workflow scheduling capabilities with ScheduleSpec configuration
    • Enhanced temporal workflow orchestration with automated scheduling support

Performance Optimization

  • Redis Hiredis Extension - Enhanced Redis performance with native C extension support
    • Updated Redis dependency to include hiredis extension for improved performance
    • Added high-performance Redis protocol parsing with native C implementation
    • Enhanced Redis connection speed and throughput for better scalability
    • Improved Redis adapter performance with reduced memory usage and faster operations

Changed

CI/CD Infrastructure

  • GitHub Actions Updates - Updated workflow dependencies for improved reliability
    • Updated tj-actions/changed-files from version 46 to 47 for enhanced file change detection
    • Improved CI/CD pipeline reliability with latest action features
    • Enhanced workflow performance with optimized file change tracking

Full Changelog: 3.11.1...3.12.0

3.11.1

06 Sep 12:54

Choose a tag to compare

Added

Temporal Worker Management Enhancement

  • Wait Until Stopped Method - Added wait_until_stopped() method to Temporal WorkerHandle class
    • Enhanced worker lifecycle management with ability to wait for worker completion
    • Improved synchronization capabilities for worker shutdown scenarios
    • Better control over worker background task lifecycle in long-running applications
    • Enhanced debugging and monitoring capabilities for Temporal worker operations

Changed

CI/CD Infrastructure

  • GitHub Actions Updates - Updated Python setup action across all workflows for improved CI/CD reliability
    • Updated actions/setup-python from version 5 to 6 in all GitHub Actions workflows
    • Enhanced Python environment setup with latest action features and security improvements
    • Improved workflow performance and compatibility with latest GitHub Actions infrastructure
    • Updated workflows: deploy-docs.yml, lint.yml, publish.yml, and tests.yml

Documentation

  • Documentation Build Fixes - Resolved documentation generation and deployment issues
    • Fixed documentation builds for improved reliability and consistency
    • Enhanced documentation index organization and navigation
    • Improved documentation deployment pipeline stability

Full Changelog: 3.11.0...3.11.1

3.11.0

04 Sep 13:40

Choose a tag to compare

Added

Temporal Workflow Orchestration

  • Comprehensive Temporal Integration - Added complete Temporal workflow orchestration support
    • Full Temporal integration with atomic transaction support for activities
    • Comprehensive configuration management for Temporal workflow execution
    • Clean architecture separation between workflow orchestration and activity execution
    • Support for distributed workflow patterns with reliable activity execution
    • Enhanced error handling and transaction management for Temporal workflows

Changed

Documentation Assets

  • Logo Path Update - Updated logo path reference for improved asset management
    • Enhanced documentation asset organization
    • Improved logo accessibility and display consistency

Full Changelog: 3.10.0...3.11.0

3.10.0

04 Sep 10:09

Choose a tag to compare

Added

gRPC Interceptor Enhancements

  • Sentry Support in gRPC Trace Interceptors - Enhanced gRPC trace interceptors with dual APM support
    • Added Sentry span creation for both sync and async gRPC client interceptors
    • Added Sentry transaction creation for both sync and async gRPC server interceptors
    • Maintained backward compatibility with existing Elastic APM functionality
    • Support for simultaneous Elastic APM and Sentry tracing in gRPC services
    • Proper error handling and span status management for both APM systems
    • Configuration-driven tracing with graceful degradation when APM systems are unavailable

Full Changelog: 3.9.0...3.10.0

3.9.0

04 Sep 09:46

Choose a tag to compare

Added

Tracing Decorators

  • Pure Python APM Tracing - Added @capture_transaction and @capture_span decorators for pure Python applications
    • @capture_transaction decorator for top-level transaction tracing without FastAPI/gRPC dependencies
    • @capture_span decorator for nested span tracking within existing transactions
    • Seamless integration with existing Sentry and Elastic APM configuration system
    • Conditional tracing based on config.SENTRY.IS_ENABLED and config.ELASTIC_APM.IS_ENABLED settings
    • Proper error handling and graceful fallbacks when APM libraries are unavailable
    • Automatic initialization of Sentry with full config parameters for transactions
    • Uses existing APM clients for spans to work within transaction context

Developer Experience

  • Comprehensive Decorator Exports - Enhanced archipy.helpers.decorators module accessibility
    • Exported all 17 decorators in __init__.py for easy discovery and import
    • Includes tracing, caching, retry, database atomic operations, deprecation, and utility decorators
    • Simplified import syntax for all decorator functionality

Full Changelog: 3.8.1...3.9.0

3.8.1

04 Sep 08:52

Choose a tag to compare

Changed

Dependency Updates

  • Elasticsearch Version Bump - Updated Elasticsearch Docker image from 9.1.2 to 9.1.3 in test configuration
    • Enhanced test reliability with latest Elasticsearch stable version
    • Improved test container compatibility and performance

Code Quality Improvements

  • Enhanced Keycloak Utils Type Safety - Improved type handling in Keycloak utilities for gRPC metadata
    • Fixed handling of both bytes and string metadata values in gRPC authentication
    • Enhanced type conversion safety with proper string/bytes compatibility
    • Improved authentication reliability across different gRPC implementations
  • MyPy Configuration Enhancements - Expanded MyPy overrides for better type checking coverage
    • Added comprehensive overrides for Keycloak utilities, MinIO, Kafka, and payment gateway adapters
    • Enhanced type checking for optional imports with proper type placeholders
    • Improved development experience with more accurate type checking

Library Updates

  • Development Tools - Updated multiple development dependencies for improved tooling
    • Updated Ruff from 0.7.4 to 0.12.11 for enhanced linting capabilities
    • Updated various type stubs packages for better IDE support and type checking
    • Enhanced MkDocs Material theme from 9.6.7 to 9.6.18 for improved documentation
  • Core Dependencies - Updated runtime dependencies for better performance and security
    • Updated fakeredis from 2.30.1 to 2.31.1 for improved Redis mocking
    • Updated sentry-sdk from 2.33.0 to 2.36.0 for better error tracking
    • Updated pymysql from 1.1.1 to 1.1.2 for enhanced MySQL compatibility
    • Updated behave from 1.3.1 to 1.3.2 for improved BDD testing

Documentation and Code Structure

  • Enhanced CLAUDE.md - Comprehensive documentation improvements for Claude Code integration
    • Added detailed architecture overview with module descriptions
    • Enhanced code style guidelines with Python 3.13+ requirements
    • Improved command reference with complete development workflow
    • Added comprehensive MyPy configuration documentation

Bug Fixes

Type Safety

  • Optional Import Handling - Fixed type assignments for optional gRPC imports
    • Resolved type compatibility issues when gRPC dependencies are not available
    • Enhanced graceful degradation with proper type placeholders
    • Improved development experience with better error messages

Configuration

  • Workflow Permissions - Fixed potential security issues in GitHub Actions workflows
    • Added proper permissions configuration to prevent unauthorized access
    • Enhanced CI/CD security with explicit permission declarations
    • Resolved code scanning alerts for workflow security best practices

Full Changelog: 3.8.0...3.8.1

3.8.0

21 Aug 11:00

Choose a tag to compare

Changed

Build System Migration

  • Poetry to UV Migration - Migrated from Poetry to UV for improved performance and modern toolchain
    • Replaced Poetry with UV for dependency management and virtual environment handling
    • Updated all GitHub Actions workflows to use astral-sh/setup-uv@v4
    • Converted pyproject.toml to use standard [project] format with UV-compatible optional dependencies
    • Updated Makefile commands to use UV equivalents (uv sync, uv run, uv build)
    • Updated pre-commit hooks to use UV for tool execution
    • Migrated from Poetry build backend to Hatchling for better flexibility
    • Updated all documentation to reflect UV usage instead of Poetry
    • Significant performance improvements in dependency resolution and installation

Python 3.13 Compatibility

  • Modern Type Hints - Updated codebase to use Python 3.13 generic syntax and modern type annotations
    • Migrated from Union[T, None] to T | None syntax throughout the codebase
    • Updated Generic syntax to use modern Python 3.13 patterns (UP046, UP047)
    • Enhanced type safety with improved generic type operations and Comparable protocol
    • Fixed type assignment issues in error classes and DTO implementations
    • Added comprehensive mypy overrides for flexible data dictionary assignments

Code Quality Improvements

  • Linting and Type Checking - Resolved all ruff and mypy issues across the codebase
    • Fixed type annotations and imports across configs, models, and decorators
    • Added missing error classes (DeadlineExceededError, DeprecationError)
    • Enhanced SQLAlchemy column type compatibility with mapped_column
    • Resolved import conflicts and improved code organization
    • Added missing docstrings and type hints for better code documentation
  • Test Infrastructure Cleanup - Streamlined test helper functions for better maintainability
    • Removed unused imports and dependencies from test_helpers.py
    • Cleaned up test infrastructure to reduce code duplication
    • Improved test execution efficiency and maintainability

CI/CD Enhancements

  • GitHub Actions Updates - Updated all GitHub Actions workflows to latest versions
    • Bumped actions/setup-python from 4 to 5 for improved Python support
    • Bumped actions/cache from 3 to 4 for enhanced caching capabilities
    • Bumped actions/checkout from 4 to 5 for better repository access
    • Improved workflow reliability and performance across all CI/CD pipelines

Testing Framework Updates

  • Behave Version Upgrade - Updated Behave testing framework to version 1.3.1
    • Enhanced test execution capabilities with latest Behave features
    • Improved test reliability and performance across all test suites
    • Better compatibility with modern Python development practices
  • MyPy Version Upgrade - Updated MyPy type checker to version 1.17.1
    • Enhanced type checking capabilities with latest MyPy features
    • Improved type safety and error detection across the codebase
    • Better support for Python 3.13 type annotations and modern type patterns

Bug Fixes

Type System

  • Generic Type Operations - Fixed generic type operations with Comparable protocol in DTO classes
  • SQLAlchemy Compatibility - Resolved SQLAlchemy column type compatibility issues with mapped_column
  • Error Class Initialization - Fixed type assignment issues in error classes for better type safety

Configuration

  • Type Annotations - Resolved type annotation and inheritance issues in configuration classes
  • Validator Documentation - Added missing docstrings to validators for better code documentation

Known Issues

  • Remaining Linting Issues - Some minor linting issues remain that are planned for future releases
    • 13 ANN401 (any-type) violations for flexible data handling
    • 11 ANN201 (missing return type annotations) for public functions
    • 8 D415 (missing terminal punctuation) for docstrings
    • These issues are intentionally allowed for specific use cases and will be addressed incrementally

Full Changelog: 3.7.0...3.8.0

3.7.0

16 Aug 10:19

Choose a tag to compare

New Features

Elasticsearch Index Management

  • Index Existence Check - Added index_exists method to Elasticsearch adapters for improved index management
    • New index_exists() method in both synchronous and asynchronous Elasticsearch ports
    • Enhanced index lifecycle management with proper existence validation
    • Improved error handling and index operation safety
    • Better support for index-dependent operations and workflows

CI/CD Pipeline Enhancement

  • Dedicated Test Workflow - Implemented comprehensive CI/CD pipeline for automated testing
    • Added dedicated GitHub Actions workflow for Behave BDD tests
    • Automated test execution on push to main branch and pull requests
    • Python 3.13 matrix testing with Poetry dependency management
    • Enhanced test reliability and continuous integration capabilities

Improvements

Testing Framework

  • Kafka Test Reliability - Enhanced Kafka adapter tests with retry mechanism for improved stability
    • Implemented retry logic for Kafka connection tests to handle transient network issues
    • Improved test reliability in CI/CD environments with better error handling
    • Enhanced test coverage for Kafka adapter functionality

Configuration Management

  • PostgreSQL DSN Type Safety - Fixed PostgresDsn type instantiation for improved configuration validation
    • Corrected PostgresDsn type handling in configuration templates
    • Enhanced type safety for database connection string validation
    • Improved configuration error handling and validation

Development Tools

  • Dependency Updates - Updated development dependencies for improved tooling and security
    • Enhanced Poetry dependency management with latest package versions
    • Improved development environment setup and tooling
    • Better compatibility with Python 3.13 and modern development practices

Bug Fixes

Test Infrastructure

  • Image Version Compatibility - Fixed test container image versions for improved test reliability
    • Updated Elasticsearch, Keycloak, and Kafka test container images
    • Resolved test environment compatibility issues
    • Enhanced test stability across different environments

Error Handling

  • Exception Utility Assertions - Fixed error assertion logic in exception utilities
    • Corrected error handling in test scenarios for better validation
    • Improved error message consistency and debugging capabilities

Dependencies

  • Development Tools - Updated development dependencies for improved tooling and security
  • Test Containers - Enhanced test container configurations for better test reliability
  • CI/CD Tools - Improved GitHub Actions workflow for automated testing

Community Contributions

  • @heysaeid - Fixed PostgresDsn type instantiation for improved configuration validation
  • @negatic - Enhanced Kafka adapter tests with retry mechanism and improved test infrastructure
  • @s.kazemi - Added index_exists method to Elasticsearch adapters and implemented CI/CD test workflow

Full Changelog: 3.6.1...3.7.0