Poetry 0.7.0 is out
This version brings some improvements and a bunch of bugfixes.
New Features #
Support for Python 3.4+ #
Previously, Poetry supported Python 3.6+ but after some consideration it was decided that it would support all Python 3 versions currently by the Python core team (see https://devguide.python.org/#status-of-python-branches).
So now, Poetry supports Python 3.4+.
New standalone installer #
Poetry now provides a custom installer that will install poetry
isolated
from the rest of your system by vendorizing its dependencies. This is the
recommended way of installing poetry
.
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python
Alternatively, you can download the get-poetry.py
file and execute it separately.
If you want to install prerelease versions, you can do so by passing --preview
to get-poetry.py
:
python get-poetry.py --preview
Similarly, if you want to install a specific version, you can use --version
:
python get-poetry.py --version 0.7.0
New version
command #
The version
has been added which allows you to bump automatically
the version of the project and write the new version back to pyproject.toml
The new version should ideally be a valid semver string or a valid bump rule:
patch
, minor
, major
, prepatch
, preminor
, premajor
, prerelease
.
New script
command #
The script
command executes one of the scripts defined in pyproject.toml
.
So, if you have a script defined like this:
[tool.poetry.scripts]
my-script = "my_module:main"
You can execute it like so:
poetry script my-script
Support for trove classifiers #
The tool.poetry
section of the pyproject.toml
file now accepts
a classifiers
property which allows you to specify trove classifiers.
classifiers = [
"Topic :: Software Development :: Build Tools",
"Topic :: Software Development :: Libraries :: Python Modules"
]
Note that Python classifiers are still automatically added for you and are
determined by your python
requirement.
The license
property will also set the License classifer automatically.
Changes #
- Improved dependency resolution to avoid unnecessary operations.
- Improved dependency resolution speed.
- Improved CLI reactivity by deferring imports.
Fixes #
- Fixed handling of markers with the
in
operator. - Fixed
update
not properly adding new packages to the lock file. - Fixed solver adding uninstall operations for non-installed packages.
- Fixed
new
command creating invalidpyproject.toml
files.