Skip to content

Releases: SyntaxArc/ArchiPy

3.13.9

15 Oct 14:45

Choose a tag to compare

Improved

Elastic APM Client Initialization

  • Enhanced Client Reuse - Improved Elastic APM client initialization to prevent duplicate client creation
    • Updated tracing decorators to use elasticapm.get_client() before creating new clients
    • Applied same pattern to gRPC server interceptors (both sync and async)
    • Prevents potential memory leaks and improves performance by reusing existing clients
    • Maintains backward compatibility while optimizing resource usage

Full Changelog: 3.13.8...3.13.9

3.13.8

15 Oct 07:09

Choose a tag to compare

Changed

Redis Configuration Refinements

  • Redis Cluster Parameter Standardization - Aligned Redis cluster configuration with redis-py library standards
    • Replaced deprecated skip_full_coverage_check parameter with standard require_full_coverage parameter
    • Updated both synchronous and asynchronous Redis cluster adapters for compatibility with latest redis-py
    • Removed redundant CLUSTER_SKIP_FULL_COVERAGE_CHECK configuration field
    • Enhanced Redis cluster reliability with proper full coverage validation
    • Improved code maintainability by following redis-py best practices

Dependency Updates

  • Pydantic Version Update - Updated Pydantic to version 2.12.2 for enhanced data validation
    • Improved validation performance and bug fixes

Full Changelog: 3.13.7...3.13.8

3.13.7

13 Oct 10:08

Choose a tag to compare

Changed

Dependency Updates

  • Core Dependencies - Updated key dependencies to latest versions for improved security and performance
    • Updated cachetools from 6.2.0 to 6.2.1 for enhanced caching capabilities and performance improvements
    • Updated idna from 3.10 to 3.11 for improved internationalized domain name handling and security fixes

Configuration Improvements

  • Redis Mode Constants - Standardized Redis mode constants to uppercase format for better consistency
    • Updated RedisMode enum values from lowercase to uppercase (standaloneSTANDALONE, sentinelSENTINEL, clusterCLUSTER)
    • Enhanced configuration consistency across Redis deployment modes
    • Improved code readability and standardization

Development Workflow

  • Makefile Enhancement - Updated dependency installation command for better package management
    • Changed uv sync --extra dev --upgrade to uv sync --all-extras --group dev --upgrade
    • Enhanced dependency resolution with comprehensive extra package installation
    • Improved development environment setup with better group-based dependency management

Performance

  • Optimized Dependency Resolution - Improved dependency installation and resolution performance
    • Enhanced UV package manager integration with latest dependency versions
    • Improved lock file generation and dependency resolution speed
    • Better memory usage during dependency installation and updates

Full Changelog: 3.13.6...3.13.7

3.13.6

12 Oct 08:57

Choose a tag to compare

Changed

Dependency Updates

  • Core Framework Updates - Updated key dependencies to latest compatible versions for improved performance and
    security
    • Updated SQLAlchemy from >=2.0.43 to >=2.0.44 for enhanced ORM functionality and performance improvements
    • Updated FastAPI from >=0.118.2 to >=0.119.0 for improved web framework capabilities and bug fixes
    • Updated Confluent Kafka from >=2.12.0 to latest stable version for enhanced messaging capabilities and improved
      reliability

Performance

  • Optimized Dependency Resolution - Improved dependency resolution and installation performance
    • Enhanced UV package manager integration with latest dependency versions
    • Improved lock file generation and dependency resolution speed
    • Better memory usage during dependency installation and updates

Full Changelog: 3.13.5...3.13.6

3.13.5

08 Oct 10:29
4c22e63

Choose a tag to compare

Changed

Dependency Updates

  • Comprehensive Dependency Synchronization - Updated all dependencies to latest compatible versions for improved security and performance
    • Updated Pydantic from 2.11.10 to 2.12.0 for enhanced data validation and performance improvements
    • Updated Pydantic Core from 2.33.2 to 2.41.1 for improved core functionality and performance
    • Updated FastAPI from 0.118.0 to 0.118.1 for enhanced web framework capabilities and bug fixes
    • Updated Fakeredis from 2.31.3 to 2.32.0 for improved Redis mocking capabilities
    • Updated Ruff from 0.13.3 to 0.14.0 for enhanced linting capabilities and Python 3.14 support
    • Updated Testcontainers from 4.13.1 to 4.13.2 for improved container testing support

Test Environment Updates

  • Docker Image Updates - Updated test container images for improved test reliability and compatibility
    • Updated Redis test image from 8.2.1-alpine to 8.2.2-alpine for enhanced stability
    • Updated Elasticsearch test image from 9.1.4 to 9.1.5 for improved search functionality

Type Safety Improvements

  • SQLAlchemy Adapter Typing - Enhanced type safety in SQLAlchemy adapter base model
    • Improved generic type handling in SQLAlchemy adapter base classes
    • Enhanced type inference and IDE support for database operations
    • Better type safety for entity operations and query results

Temporal Workflow Enhancements

  • Custom Workflow ID Support - Added support for custom workflow IDs in Temporal scheduled workflows
    • Enhanced Temporal workflow scheduling with configurable workflow IDs
    • Improved workflow identification and management capabilities
    • Better integration with existing workflow orchestration patterns

CI/CD Infrastructure

  • GitHub Actions Updates - Updated UV setup action for improved CI/CD reliability
    • Updated astral-sh/setup-uv from version 6 to 7 across all workflows
    • Enhanced dependency management and build performance
    • Improved compatibility with latest UV features

Performance

  • Optimized Dependency Resolution - Improved dependency resolution and installation performance
    • Enhanced UV package manager integration with latest features
    • Improved lock file generation and dependency resolution speed
    • Better memory usage during dependency installation and updates

Security

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

Full Changelog: 3.13.4...3.13.5

3.13.4

07 Oct 07:53

Choose a tag to compare

Changed

Dependency Updates

  • Comprehensive Dependency Synchronization - Updated all dependencies to latest compatible versions for improved security and performance

    • Updated Pydantic from 2.11.9 to 2.11.10 for enhanced data validation and performance improvements
    • Updated Requests from 2.32.4 to 2.32.5 for improved HTTP client capabilities and security fixes
    • Updated Elastic APM from 6.23.0 to 6.24.0 for enhanced application performance monitoring
    • Updated Redis client from 6.2.0 to 6.4.0 with hiredis extension for improved performance
    • Updated Sentry SDK from 2.39.0 to 2.40.0 for better error tracking and monitoring capabilities
    • Updated SQLAlchemy from 2.0.41 to 2.0.43 for enhanced ORM functionality and performance
    • Updated StarRocks driver from 1.2.2 to 1.2.3 for improved database connectivity
    • Updated Temporalio from 1.18.0 to 1.18.1 for enhanced workflow orchestration capabilities
  • Development Tools Enhancement - Updated development and build infrastructure for improved developer experience

    • Updated Bandit from 1.7.8 to 1.8.6 for enhanced security vulnerability scanning
    • Updated Pre-commit hooks from 4.6.0 to 6.0.0 for improved code quality enforcement
    • Updated Pre-commit from 3.8.0 to 4.3.0 for better hook management and performance
    • Updated Ruff from 0.13.2 to 0.13.3 for enhanced linting capabilities and Python 3.13 support
    • Updated Validate-pyproject from 0.18 to 0.24.1 for improved project configuration validation
    • Updated PyMdown Extensions from 10.14.3 to 10.16.1 for enhanced Markdown processing

Testing Infrastructure

  • Kafka Test Environment Update - Updated Kafka test container image for improved test reliability
    • Updated Kafka test image from confluentinc/cp-kafka:7.4.10 to 7.9.3
    • Enhanced test environment compatibility with latest Kafka features
    • Improved test stability and performance in CI/CD environments

Development Workflow Improvements

  • Enhanced Dependency Management - Improved Makefile targets for better dependency management
    • Added --upgrade flag to install and install-dev targets for automatic dependency updates
    • Added new update-all target for aggressive dependency updates with comprehensive upgrade process
    • Enhanced dependency synchronization between pyproject.toml and uv.lock files
    • Improved developer experience with streamlined dependency update workflows

Development Environment

  • Cursor IDE Rules Enhancement - Updated Cursor IDE rules for improved development experience
    • Enhanced code generation guidelines and architectural patterns
    • Improved development workflow documentation and best practices
    • Updated coding standards and quality enforcement rules

Configuration Management

  • Comprehensive .env.example Update - Synchronized environment configuration template with all available config options
    • Added Language configuration support with Persian (FA) language setting
    • Enhanced Elasticsearch configuration with complete API key, SSL, and sniffing options
    • Expanded Kafka configuration with SSL settings, compression, batch processing, and transaction support
    • Added Redis cluster and sentinel mode configurations with connection pooling settings
    • Included Temporal workflow orchestration configuration (completely new section)
    • Added Parsian Shaparak payment gateway configuration (completely new section)
    • Enhanced authentication configuration with comprehensive TOTP, password policies, and token security features
    • Added separate SQLite and StarRocks SQLAlchemy configurations for different database types
    • Improved existing configurations with missing fields and proper default values
    • Organized configuration sections with clear headers and proper data type formatting
    • Provided comprehensive reference for all available ArchiPy configuration options

Performance

  • Optimized Dependency Resolution - Improved dependency resolution and installation performance
    • Enhanced UV package manager integration with latest features
    • Improved lock file generation and dependency resolution speed
    • Better memory usage during dependency installation and updates

Security

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

Full Changelog: 3.13.3...3.13.4

3.13.3

30 Sep 13:18

Choose a tag to compare

Changed

Documentation Examples - Complete Python 3.13 & Best Practices Update

  • Comprehensive Example Documentation Refactor - Updated all 17 example files to follow modern Python 3.13 standards and ArchiPy best practices

    • Updated all type hints to Python 3.13 syntax (| for unions, lowercase built-ins, type instead of Type)
    • Replaced Union[X, Y] with X | Y throughout all examples
    • Replaced Optional[X] with X | None throughout all examples
    • Changed List, Dict to lowercase list, dict consistently
    • Removed from typing import Union, Optional in favor of native syntax
  • Exception Handling Standardization - Implemented proper exception handling patterns across all examples

    • Added try-except-else pattern with explicit return statements in else blocks
    • Ensured all exceptions use raise ... from e for proper error chaining
    • Removed operation/query messages from exception constructors (per workspace rules)
    • Replaced generic Exception, ValueError with specific ArchiPy error types
    • Added comprehensive error handling examples in all adapter documentation
  • Logging Standardization - Replaced all print statements with proper logging

    • Added logger = logging.getLogger(__name__) to all example files
    • Replaced all print() statements with appropriate logger.info(), logger.error(), etc.
    • Implemented consistent logging levels and informative messages
    • Added logging configuration examples in code snippets
  • Documentation Structure Improvements - Enhanced navigation and cross-referencing

    • Added "See Also" sections to all adapter examples
    • Linked adapter examples to corresponding BDD test .feature files
    • Added cross-references to error handling, configuration, and API documentation
    • Improved code explanations with detailed docstrings
    • Added warnings for common pitfalls and best practices
  • New Complete Examples Added

    • Email adapter with FastAPI integration and comprehensive error handling
    • SQLite adapter with async operations and context managers
    • StarRocks adapter with analytical query patterns and batch operations
    • Metaclasses with singleton pattern, thread safety, and best practices
    • Parsian payment gateway with complete payment flow and error recovery
    • Temporal workflow orchestration with atomic activities and worker management
  • Code Quality Improvements

    • All examples now syntactically correct with proper indentation
    • Fixed indentation errors in error_handling.md
    • Added security warnings for sensitive data (passwords in .env files)
    • Improved FastAPI integration examples with proper dependency injection
    • Enhanced async/await patterns with proper error handling

Full Changelog: 3.13.2...3.13.3

3.13.2

30 Sep 11:23

Choose a tag to compare

Changed

Documentation Infrastructure

  • MkDocs Configuration Reorganization - Restructured MkDocs configuration for improved build performance and flexibility
    • Moved mkdocs.yml from project root to docs/ directory for better organization
    • Added docs_dir: . and site_dir: ../site configuration for proper directory mapping
    • Created docs/mkdocs-fast.yml for fast local development builds (10-20s)
    • Created docs/mkdocs-full.yml for complete production builds (2-5min)
    • Implemented configuration inheritance using INHERIT directive to reduce duplication
    • Enhanced main mkdocs.yml with performance optimizations and balanced settings

Documentation Performance

  • MkDocs Build Optimization - Significantly improved documentation build performance
    • Disabled source code display by default for faster rendering (show_source: false)
    • Simplified object paths for reduced processing time (show_object_full_path: false)
    • Disabled submodule auto-expansion for improved performance (show_submodules: false)
    • Disabled base class display to reduce content size (show_bases: false)
    • Enabled summary mode for faster documentation generation (summary: true)
    • Excluded undocumented items from generation (show_if_no_docstring: false)
    • Disabled inherited member display for major performance gain (inherited_members: false)
    • Added environment variable control for mkdocstrings (ENABLE_MKDOCSTRINGS)

Documentation Features

  • Enhanced Navigation - Improved user experience with modern Material theme features
    • Added instant prefetch for faster page navigation (navigation.instant.prefetch)
    • Added loading progress indicator (navigation.instant.progress)
    • Maintained existing features: instant loading, tracking, tabs, sections, ToC, code copy

CI/CD Pipeline

  • GitHub Actions Workflow Update - Enhanced documentation deployment workflow
    • Updated deploy workflow to use docs/mkdocs-full.yml for production builds
    • Maintained full feature set for GitHub Pages deployment
    • Improved build reliability with explicit configuration file reference

ReadTheDocs Configuration

  • Configuration Update - Updated ReadTheDocs configuration for new structure
    • Updated mkdocs.configuration path to docs/mkdocs.yml
    • Maintained compatibility with ReadTheDocs build system
    • Ensured proper documentation generation on ReadTheDocs platform

Makefile Enhancements

  • Documentation Build Commands - Added comprehensive make targets for all build modes
    • Added docs-serve for balanced mode development (default)
    • Added docs-serve-fast for quick iterations with fast builds
    • Added docs-serve-no-api for fastest builds without API generation
    • Added docs-build for balanced builds
    • Added docs-build-fast for fast configuration builds
    • Added docs-build-full for production builds with all features
    • Updated docs-deploy to use full configuration for production deployment

Documentation Content

  • Usage Guide Restructuring - Completely rewrote usage documentation for better onboarding

    • Restructured as quick-start guide focusing on 5-minute setup
    • Added minimal working FastAPI example for rapid prototyping
    • Added clear next steps directing users to Architecture Guide for production patterns
    • Reorganized content into Quick Start, Next Steps, Key Concepts, and Production-Ready Structure sections
    • Enhanced best practices section with clear, actionable guidelines
    • Improved navigation with links to detailed guides and examples
    • Emphasized domain-driven organization and API versioning
    • Added Command/Query/Response DTO pattern references
    • Streamlined content to focus on getting started quickly while pointing to comprehensive resources
  • Architecture Guide Expansion - Enhanced architecture documentation with comprehensive real-world example

    • Added complete end-to-end user management system example
    • Demonstrated domain-driven design with clear layer separation
    • Included API versioning patterns (/api/v1/, /api/v2/)
    • Showcased CQRS-inspired DTO naming conventions (InputDTO, CommandDTO, QueryDTO, ResponseDTO, OutputDTO)
    • Illustrated service, logic, and repository layer interactions
    • Provided complete working code for models, DTOs, errors, repositories, logic, and services
    • Demonstrated domain-specific adapters (UserDBAdapter, UserCacheAdapter)
    • Highlighted scalability, testability, and maintainability benefits
    • Emphasized framework-agnostic business logic design
    • Showed clear separation of concerns at each architectural layer

Performance

  • Optimized Documentation Build Times - Achieved significant performance improvements across all build modes
    • Fast mode: 10-20s builds for rapid local development iteration
    • Balanced mode: 30-60s builds for regular development work
    • Full mode: 2-5min builds with all features for production deployment
    • Reduced memory usage through content filtering and summary modes
    • Improved developer experience with faster feedback loops

Developer Experience

  • Improved Documentation Workflow - Enhanced documentation development and deployment experience
    • Clear separation of development and production configurations
    • Multiple build modes for different use cases and performance requirements
    • Better local development experience with fast rebuild times
    • Streamlined deployment process with optimized production builds
    • Consistent configuration management through inheritance

Full Changelog: 3.13.1...3.13.2

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