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.