2.2.0
Breaking Changes📦 poetryView on GitHub →
⚠ 2 breaking✨ 5 features🐛 4 fixes⚡ 1 deprecations🔧 7 symbols
Summary
This release introduces support for PEP 735 dependency groups and PEP 639 license clarity, adds JSON output to 'poetry show', and officially supports Python 3.14.
⚠️ Breaking Changes
- Dependency group names are now normalized, which may affect how groups are referenced if they contained non-standard characters.
- installer.no-binary and installer.only-binary logic changed: explicit package names now take precedence over the :all: keyword.
Migration Steps
- Update project licenses to use valid SPDX expressions instead of table values to avoid deprecation warnings.
- Review dependency group names for normalization changes if using non-standard naming conventions.
- Ensure dulwich is updated to >=0.24.0.
✨ New Features
- Add support for nesting dependency groups.
- Add support for PEP 735 dependency groups.
- Add support for PEP 639 license clarity.
- Add a --format option to poetry show to output JSON format.
- Add official support for Python 3.14.
🐛 Bug Fixes
- Fix an issue where poetry new did not create the project structure in an existing empty directory.
- Fix an issue where dependencies for specific Python versions were not installed into pre-release Python environments.
- Fix an issue where explicitly included files in .gitignore were not included in the distribution.
- Fix an issue where marker operations could result in invalid markers.
🔧 Affected Symbols
poetry showpoetry newpoetry installinstaller.no-binaryinstaller.only-binary[project.license]poetry-core⚡ Deprecations
- Deprecate table values and values that are not valid SPDX expressions for [project.license] in poetry-core.