Repository navigation
layoutc v0.2.0
layoutc v0.2.0
This major release brings significant improvements for production readiness and ease of use.
π New Features
- Auto-detection for JSON/PNG formats: No need to specify output format explicitly - layoutc automatically detects the format based on file extension
- Atlas limit validation: Added proper error handling with
AtlasLimitExceededErrorwhen trying to create atlas groups exceeding the 255 limit - Enhanced CLI interface: Improved command-line experience with better error messages and help text
π§ Improvements
- Pure Python package: Removed all Rust components for simpler installation and maintenance
- Comprehensive documentation: Updated README with detailed usage examples, installation instructions, and technical details
- Better package metadata: Enhanced PyPI metadata with proper description, license, and project URLs
- Improved test coverage: Added comprehensive tests for validation, error handling, and edge cases
π Bug Fixes
- Fixed circular import issues in entity modules using
TYPE_CHECKING - Resolved auto-detection problems by ensuring entity subclasses are properly registered
- Clean import structure to avoid side-effect loading issues
π¦ Package & Distribution
- Version bumped to 0.2.0
- Published to PyPI with complete README as project description
- Added MIT license file
- Improved build system with modern SPDX license format
π Breaking Changes
- Removed Rust binaries and Cargo.toml
- Cleaned up import structure (internal changes, API remains compatible)
π Installation
pip install layoutcπ― Usage
Command Line
# Auto-detection based on file extension
layoutc input.json output.png
layoutc arena.json atlas.pngPython API
from layoutc.codec import Codec
from layoutc.entity import Entity
# Create codec and work with entities
codec = Codec()
# Load and save using codec methods
with open('input.json', 'rb') as f:
codec.load(f)
with open('output.png', 'wb') as f:
codec.dump(f)This release makes layoutc production-ready with robust error handling, comprehensive documentation, and a clean, intuitive interface.