Universal Decompositional Semantics (v2.0) and Decomp (v0.3.0)
This release brings major modernization to the Decomp toolkit with full integration of PredPatt predicate-argument extraction and comprehensive Python 3.12+ support.
What's Changed
Major Features
- PredPatt Integration: Complete integration of the PredPatt predicate-argument extraction system into
decomp.semantics.predpatt
with full differential testing ensuring compatibility with the standalone implementation - Python 3.12+ Modernization: Updated entire codebase to use modern Python features including union type syntax, built-in generics, and pyproject.toml packaging
- Enhanced CI/CD: Added GitHub Actions workflows for automated testing, linting (ruff), and type checking (mypy)
- Improved Documentation: Modernized Sphinx documentation with Furo theme, enhanced API docs, and comprehensive tutorials
Technical Improvements
- Migrated from
setup.py
topyproject.toml
for modern Python packaging - Added comprehensive test suite with 400+ tests including differential testing
- Consolidated all tool configurations (ruff, mypy, pytest) into pyproject.toml
- Updated Docker image to use Jupyter datascience notebook with Python 3.12
- Fixed all type annotations to use modern Python 3.12+ syntax
Breaking Changes
- Python 3.12+ Required: This version requires Python 3.12 or higher due to use of modern type annotations and language features
- Import Changes: PredPatt functionality now available under
decomp.semantics.predpatt
instead of requiring separate installation
Full Changelog: v0.2.2...v0.3.0