=============================================================================== Changelog =============================================================================== All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_, and this project adheres to `Semantic Versioning `_. Version 2.0.0 (2025-10-18) =============================================================================== Added --------------------------------------- * **Comprehensive Documentation**: Complete rewrite of README in reStructuredText format for Sphinx. * **Lambda Packaging Testing**: Added documentation and examples for testing Lambda ZIP packages locally. * **Functional Tests**: Real AWS integration tests that deploy and verify infrastructure: * ``test_lambda_creation.py``: Tests Lambda function deployment with inline code and ZIP assets. * ``test_sns_sqs_lambda_s3_integration.py``: Complete SNS → SQS → Lambda → S3 pipeline integration test. * ``test_zip_asset_code.py``: Comprehensive tests for Lambda packaging with dependencies. * **Parallel Test Execution**: Added pytest-xdist support for faster test runs. * **Type Annotations**: Added proper type hints for ``package_path`` attribute. * **Module Documentation**: Added docstrings to all modules for better code documentation. * **py.typed**: Added PEP 561 marker for type checking support. Changed --------------------------------------- * **Breaking**: Restructured Lambda stack to modular design: * Moved Lambda functionality to ``core_aws_cdk.stacks.lambdas`` package. * Split ``lambdas.py`` into ``lambdas/base.py`` and ``lambdas/assets.py``. * **Security**: Fixed 4 HIGH severity shell injection vulnerabilities in ``assets.py``: * Replaced ``os.system()`` calls with safe ``subprocess.run()`` and ``shutil`` operations. * Eliminated shell command injection risks (Bandit B605, B607). * **Code Quality**: Improved pylint score from 7.18/10 to 10/10: * Fixed all linting issues across the codebase. * Improved code structure and readability. * Added proper docstrings and type annotations. * **Testing Infrastructure**: Enhanced test configuration: * Added test markers (unit, functional, integration, slow). * Configured logging for better test debugging. * Added CI/CD examples (GitHub Actions, GitLab CI). * **Documentation Structure**: Reorganized and expanded documentation: * Installation and setup instructions. * Quick start guide with examples. * Comprehensive testing guide. * Architecture examples and best practices. * Troubleshooting section. * Performance optimization tips. * Updated all stack classes with improved docstrings and type hints: * ``base.py``: Enhanced base stack functionality. * ``network.py``: Improved VPC stack documentation. * ``s3.py``: Enhanced S3 bucket stack. * ``sns.py``: Improved SNS topic stack. * ``sqs.py``: Enhanced SQS queue stack with better error handling. Removed --------------------------------------- * **Breaking**: Removed old ``core_aws_cdk/stacks/assets.py`` (replaced by ``lambdas/assets.py``). * **Breaking**: Removed ``README.md`` (replaced by ``README.rst``). Security --------------------------------------- * Eliminated all shell injection vulnerabilities (4 HIGH severity issues). * Implemented secure subprocess execution without shell=True. * Added safe file operations using shutil instead of shell commands. Testing --------------------------------------- * Added 20+ comprehensive test files with 2,607+ lines of test code. * Functional tests deploy real AWS resources for verification. * Tests include automatic cleanup and proper error handling. * Added support for parallel test execution with ``-n auto``. * All tests include DEBUG level logging for troubleshooting. Developer Experience --------------------------------------- * Complete Sphinx-compatible documentation in reStructuredText. * Lambda packaging testing guide with examples. * Troubleshooting section for common issues. * CI/CD integration examples. * Performance optimization tips. Version 1.1.2 (2025-05-10) =============================================================================== Added --------------------------------------- * Added Sphinx documentation. Version 1.1.1 (2024-12-29) =============================================================================== Added --------------------------------------- * Added network stack to contain VPC creation. * Added changelog.md. Changed --------------------------------------- * Updated structure. * Improved Lambda package generation. * Updated dependencies. Version 1.1.0 (2024-04-26) =============================================================================== Added --------------------------------------- * Migrated mechanism to create the Lambda Function. * Improved structure. Changed --------------------------------------- * Updated dependencies. Removed --------------------------------------- * Removed useless files. Version 1.0.0 (2023-12-25) =============================================================================== First release - Repository was migrated from GitHub.