Announcing Poetry 2.3.0

Published on January 18, 2026 in Releases with tags 2.x 2.3

The Poetry team is pleased to announce the immediate availability of Poetry 2.3.0.

If you have a previous version of Poetry installed via pipx, getting Poetry 2.3.0 is as easy as:

$ pipx upgrade poetry

If you used the official installer, you can run:

$ poetry self update

Highlights #

Changing the default of installer.re-resolve from true to false #

With Poetry 2.0.0, the new installer.re-resolve config setting was introduced. The default of this setting is changed from true to false in Poetry 2.3.0.

By default, Poetry will now evaluate the locked groups and markers to decide if a package should be installed. This makes it clearer and easier to understand why a package is (or is not) installed in certain environments. It also fixes some shortcomings of the previous default behavior.

If you encounter any issues, you can still restore the old default behavior by setting installer.re-resolve to true. Then, Poetry will ignore the locked markers and groups and re-resolve the dependencies with the packages from the lock file being the only source for packages.

Adding support for exporting pylock.toml files with poetry-plugin-export #

PEP 751 defines a standard format for lock files named pylock.toml. Poetry is not yet able to replace poetry.lock with pylock.toml, but it now provides all necessary information for poetry-plugin-export to export pylock.toml files. Exporting pylock.toml requires at least Poetry 2.3.0 and poetry-plugin-export 1.10.0.

Other important Changes #

Considering PEP 735 dependency groups in the lock file hash #

Poetry 2.2.0 introduced support for PEP 735 dependency groups. Unfortunately, it was forgotten to consider such groups in the lock file hash so that Poetry is not able to determine that a change to such groups is not yet reflected in the lock file. This has been fixed in Poetry 2.3.0. While Poetry 2.3.0 is fine with lock files created by Poetry 2.2.x, Poetry 2.2.x will recognize lock files created by Poetry 2.3.0 as outdated. Therefore, it is recommended to require Poetry 2.3.0 or later when using PEP 735 dependency groups.

Upcoming Changes #

Defaulting to setuptools instead of poetry-core if no build system is defined #

Per PEP 517, a build tool should fall back to setuptools if no build system is defined in the [build-system] section of pyproject.toml. However, to avoid immediate disruption, Poetry will currently issue a warning in such cases and continue using the built-in poetry-core backend by default. This behavior will change in a future minor release so that Poetry will default to setuptools if no [build-system] section is defined.

Changelog #

TODO #