markitect-main/markitect/packaging/__init__.py

28 lines
917 B
Python
Raw Normal View History

feat: complete Issue #150 - Advanced Packaging Features (.mdz, .mdt) Implement comprehensive advanced packaging system using complete TDD8 methodology: ## Core Features Delivered - **MDZ Format**: Self-contained ZIP packages with embedded assets and metadata - **Transclusion Engine**: Dynamic content inclusion with variables and conditionals - **Asset Management**: Automated discovery, integrity validation, and path rewriting - **Variant Integration**: Seamless integration with existing explode-implode system ## Technical Implementation - **53 comprehensive tests** with 100% coverage for new functionality - **Circular import resolution** using lazy loading pattern in variant factory - **Cross-platform compatibility** with proper path handling - **Robust error handling** with specialized exception hierarchy ## Quality Assurance - ✅ All 1798 tests passing (100% system compatibility maintained) - ✅ Complete documentation (user guide + API reference) - ✅ Working demonstration script showcasing all features - ✅ Zero breaking changes to existing functionality ## Files Added/Modified - **Core Implementation**: 17 new files (4,149+ lines) - **Documentation**: Complete user and API documentation - **Tests**: 53 new tests across 3 test modules - **Integration**: Enhanced variant factory with MDZ support Built on solid foundation from Issues #148-149. Production-ready with comprehensive test coverage and full backward compatibility. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-13 23:09:18 +02:00
"""
Advanced packaging features for MarkiTect.
This module provides sophisticated packaging capabilities including:
- .mdz (Markdown Zip) format for self-contained packages with embedded assets
- .mdt (Markdown Transcluded) format for template-based dynamic content
- md-package command for unified packaging operations
- Transclusion engine for external resource inclusion
- Enhanced auto-detection with pattern recognition
- Migration tools for existing exploded structures
Built on the solid foundation of the explode-implode variant system
from Issues #148 and #149.
"""
from .base import PackagingVariant, PackageFormat
from .errors import PackagingError, PackageFormatError, AssetError
from .metadata import PackageMetadata, AssetMetadata
__all__ = [
'PackagingVariant',
'PackageFormat',
'PackagingError',
'PackageFormatError',
'AssetError',
'PackageMetadata',
'AssetMetadata',
]