New Features
- **Custom Resolver via Annotation**: Labtasker now automatically parses the required fields from annotation or default kwarg value and inject them dynamically. (Like `def main(arg1: int = Required(), arg2: int = Required()):`). See more in the documentation.
- **Version Checker**: Added automatic version checking against PyPI that runs once per day
- Added `"*"` option for required_fields to allow arbitrary task arguments
- Added plugin install via `pip install labtasker[plugins]`
- Enhanced validation on args, metadata, and summary keys
Bug Fixes
- **Fixed Labtasker fetch_task required_fields bug (Breaking change: now only accepts list of str)**
Documentation
- Updated demo scripts
- Updated usage about custom resolver
Other Changes
- Restructured tests and added new tests for complex fetching behavior
- Moved plugins to a separate repository
**Full Changelog**: https://github.com/fkcptlst/labtasker/compare/v0.1.2...v0.1.3