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.
0.0.7 - 2025-10-28
Added
- Multiple Library Support (#1314) for git and local libraries
- Multi-Schema Module Support and Backward Compatibility (Schema-1.0)
- Schema-1.1
network_mode with options: bridge, host, macvlan
- Schema-1.1
swarm module support
- Variable-level and Section-level depenendencies
needs with multiple values support
- Optional Variables
optional: true to allow empty/None values
- PEP 8 formatting alignment
- CLI variable dependency validation - raises error when CLI-provided variables have unsatisfied dependencies
- Support for required variables independent of section state (#1355)
- Variables can now be marked with
required: true in template specs
- Required variables are always prompted, validated, and included in rendering
- Display shows yellow
(required) indicator for required variables
- Required variables from disabled sections are still collected and available
Changed
- Schema-1.1 Unified Docker Swarm Placement (#1359) - Simplified swarm placement constraints into a single variable
- Refactored compose module from single file to package structure
- Dependency validation moved to
validate_all() for better error reporting
- Schema-1.1 removed
network_enabled, ports_enabled and database_enabled toggles (no longer optional)
- Improved error handling and display output consistency
- Updated dependency PyYAML to v6.0.3 (Python 3.14 compatibility)
- Updated dependency rich to v14.2.0 (Python 3.14 compatibility)
- Pinned all dependencies to specific tested versions for consistent installations
Fixed
- Required sections now ignore toggle and are always enabled
- Module spec loading based on correct template schema version
- Interactive prompts now skip all variables (including required) when parent section is disabled
- Absolute paths without leading slash treated as relative paths in generate command (#1357)
- Paths like
Users/xcad/Projects/test are now correctly normalized to /Users/xcad/Projects/test
- Supports common Unix/Linux root directories: Users/, home/, usr/, opt/, var/, tmp/
- Repository fetch fails when library directory already exists (#1279)
- Critical: Python 3.9 compatibility - removed Context type annotations causing RuntimeError
- Context access now uses click.get_current_context() for better compatibility
0.0.6 - 2025-10-14
Changed
- Pinned all dependencies to specific tested versions for consistent installations
- typer==0.19.2
- rich==14.1.0
- PyYAML==6.0.2
- python-frontmatter==1.1.0
- Jinja2==3.1.6
Fixed
- Critical: Python 3.9 compatibility - removed Context type annotations causing RuntimeError
- Context access now uses click.get_current_context() for better compatibility
- Added tests directory to .gitignore
0.0.4 - 2025-01-XX
Initial public release with core CLI functionality.