Changes
- Refactored the monolith
mediafile.py(2400 lines) into a modular structure with multiple files under themediafile/directory. This should make it easier to maintain and extend the codebase. - Dropped support for Python 3.7, 3.8 and 3.9. MediaFile now requires Python 3.10 or later. This aligns with the current long-term support (LTS) versions of Python.
- Added minimal contribution guidelines to CONTRIBUTING.md
- Changed project linter and formatter from
flake8toruff. Reformatted the codebase withruff. - Moved changelog into its own file,
changelog.rst. Also added github workflow for automatic changelog reminders. - Modernized package and tests setup to use
poetry. - Run pyupgrade to align code with Python 3.10+ syntax.
- Added TSO2 tag to
albumartist_sort, matching how Picard >= 1.2, iTunes and Swinsian interpret tags. - Added
TXXX:LABELandTXXX:MEDIAtags tolabelandmediafields, respectively, for MP3 files.
Full Changelog: v0.13.0...v0.14.0