History
2.2.1 - 2025-09-21 #
Fixed #
- Fix an issue where
poetry self showfailed with a message about an invalid output format (#10560).
Docs #
- Remove outdated statements about dependency groups (#10561).
poetry-core (2.2.1) #
- Fix an issue where it was not possible to declare a PEP 735 dependency group as optional (#888).
2.2.0 - 2025-09-14 #
Added #
- Add support for nesting dependency groups (#10166).
- Add support for PEP 735 dependency groups (#10130).
- Add support for PEP 639 license clarity (#10413).
- Add a
--formatoption topoetry showto alternatively output json format (#10487). - Add official support for Python 3.14 (#10514).
Changed #
- Normalize dependency group names (#10387).
- Change
installer.no-binaryandinstaller.only-binaryso that explicit package names will take precedence over:all:(#10278). - Improve log output during
poetry installwhen a wheel is built from source (#10404). - Improve error message in case a file lock could not be acquired while cloning a git repository (#10535).
- Require
dulwich>=0.24.0(#10492). - Allow
virtualenv>=20.33again (#10506). - Allow
findpython>=0.7(#10510). - Allow
importlib-metadata>=8.7(#10511).
Fixed #
- Fix an issue where
poetry newdid not create the project structure in an existing empty directory (#10431). - Fix an issue where a dependency that was required for a specific Python version was not installed into an environment of a pre-release Python version (#10516).
poetry-core (2.2.0) #
- Deprecate table values and values that are not valid SPDX expressions for
[project.license](#870). - Fix an issue where explicitly included files that are in
.gitignorewere not included in the distribution (#874). - Fix an issue where marker operations could result in invalid markers (#875).
2.1.4 - 2025-08-05 #
Changed #
- Require
virtualenv<20.33to work around an issue where Poetry uses the wrong Python version (#10491). - Improve the error messages for the validation of the
pyproject.tomlfile (#10471).
Fixed #
- Fix an issue where project plugins were installed even though
poetry installwas called with--no-plugins(#10405). - Fix an issue where dependency resolution failed for self-referential extras with duplicate dependencies (#10488).
Docs #
- Clarify how to include files that were automatically excluded via VCS ignore settings (#10442).
- Clarify the behavior of
poetry addif no version constraint is explicitly specified (#10445).
2.1.3 - 2025-05-04 #
Changed #
- Require
importlib-metadata<8.7for Python 3.9 because of a breaking change in importlib-metadata 8.7 (#10374).
Fixed #
- Fix an issue where re-locking failed for incomplete multiple-constraints dependencies with explicit sources (#10324).
- Fix an issue where the
--directoryoption did not work if a plugin, which accesses the poetry instance during its activation, was installed (#10352). - Fix an issue where
poetry env activate -vprinted additional information to stdout instead of stderr so that the output could not be used as designed (#10353). - Fix an issue where the original error was not printed if building a git dependency failed (#10366).
- Fix an issue where wheels for the wrong platform were installed in rare cases. (#10361).
poetry-core (2.1.3) #
- Fix an issue where the union of specific inverse or partially inverse markers was not simplified (#858).
- Fix an issue where optional dependencies defined in the
projectsection were treated as non-optional when a source was defined for them in thetool.poetrysection (#857). - Fix an issue where markers with
===were not parsed correctly (#860). - Fix an issue where local versions with upper case letters caused an error (#859).
- Fix an issue where
extramarkers with a value starting with “in” were not validated correctly (#862).
2.1.2 - 2025-03-29 #
Changed #
- Improve performance of locking dependencies (#10275).
Fixed #
- Fix an issue where markers were not locked correctly (#10240).
- Fix an issue where the result of
poetry lockwas not deterministic (#10276). - Fix an issue where
poetry env activatereturned the wrong command fortcsh(#10243). - Fix an issue where
poetry env activatereturned the wrong command forpwshon Linux (#10256).
Docs #
- Update basic usage section to reflect new default layout (#10203).
poetry-core (2.1.2) #
- Improve performance of marker operations (#851).
- Fix an issue where incorrect markers were calculated when removing parts covered by the project’s Python constraint (#841, #846).
- Fix an issue where
extramarkers were not simplified (#842, #845, #847). - Fix an issue where the intersection and union of markers was not deterministic (#843).
- Fix an issue where the intersection of
python_versionmarkers was not recognized as empty (#849). - Fix an issue where
python_versionmarkers were not simplified (#848, #851). - Fix an issue where Python constraints on a package were converted into invalid markers (#853).
2.1.1 - 2025-02-16 #
Fixed #
- Fix an issue where
poetry env use pythondoes not choose the Python from the PATH (#10187).
poetry-core (2.1.1) #
- Fix an issue where simplifying a
python_versionmarker resulted in an invalid marker (#838).
2.1.0 - 2025-02-15 #
Added #
- Make
buildcommand build-system agnostic (#10059, #10092). - Add a
--config-settingsoption topoetry build(#10059). - Add support for defining
config-settingswhen building dependencies (#10129). - Add (experimental) commands to manage Python installations (#10112).
- Use
findpythonto find the Python interpreters (#10097). - Add a
--no-truncateoption topoetry show(#9580). - Re-add support for passwords with empty usernames (#10088).
- Add better error messages (#10053, #10065, #10126, #10127, #10132).
Changed #
poetry newdefaults to “src” layout by default (#10135).- Improve performance of locking dependencies (#10111, #10114, #10138, #10146).
- Deprecate adding sources without specifying
--priority(#10134).
Fixed #
- Fix an issue where global options were not handled correctly when positioned after command options (#10021, #10067, #10128).
- Fix an issue where building a dependency from source failed because of a conflict between build-system dependencies that were not required for the target environment (#10048).
- Fix an issue where
poetry initwas not able to find a package on PyPI while adding dependencies interactively (#10055). - Fix an issue where the
@latestdescriptor was incorrectly passed to the core requirement parser (#10069). - Fix an issue where Boolean environment variables set to
True(in contrast totrue) were interpreted asfalse(#10080). - Fix an issue where
poetry env activatereported a misleading error message (#10087). - Fix an issue where adding an optional dependency with
poetry add --optionalwould not correctly update the lock file (#10076). - Fix an issue where
pipwas not installed/updated before other dependencies resulting in a race condition (#10102). - Fix an issue where Poetry freezes when multiple threads attempt to unlock the
keyringsimultaneously (#10062). - Fix an issue where markers with extras were not locked correctly (#10119).
- Fix an issue where self-referential extras were not resolved correctly (#10106).
- Fix an issue where Poetry could not be run from a
zipapp(#10074). - Fix an issue where installation failed with a permission error when using the system environment as a user without write access to system site packages (#9014).
- Fix an issue where a version of a dependency that is not compatible with the project’s python constraint was locked. (#10141).
- Fix an issue where Poetry wrongly reported that the current project’s supported Python range is not compatible with some of the required packages Python requirement (#10157).
- Fix an issue where the requested extras of a dependency were ignored if the same dependency (with same extras) was specified in multiple groups (#10158).
Docs #
- Sort commands by name in the CLI reference (#10035).
- Add missing documentation for
envcommands (#10027). - Clarify that the
nameandversionfields are always required if theprojectsection is specified (#10033). - Add a note about restarting the shell for tab completion changes to take effect (#10070).
- Fix the example for
project.gui-scripts#10121. - Explain how to include files as scripts in the project configuration (#9572, #10133).
- Add additional information on specifying required python versions (#10104).
poetry-core (2.1.0) #
- Fix an issue where inclusive ordering with post releases was inconsistent with PEP 440 (#379).
- Fix an issue where invalid URI tokens in PEP 508 requirement strings were silently discarded (#817).
- Fix an issue where wrong markers were calculated when removing parts covered by the project’s python constraint (#824).
- Fix an issue where optional dependencies that are not part of an extra were included in the wheel metadata (#830).
- Fix an issue where the
__pycache__directory and*.pycfiles were included in sdists and wheels (#835).
2.0.1 - 2025-01-11 #
Added #
- Add support for
poetry searchin legacy sources (#9949). - Add a message in the
poetry source showoutput when PyPI is implicitly enabled (#9974).
Changed #
- Improve performance for merging markers from overrides at the end of dependency resolution (#10018).
Fixed #
- Fix an issue where
poetry syncdid not remove packages that were not requested (#9946). - Fix an issue where
poetry checkfailed even though there were just warnings and add a--strictoption to fail on warnings (#9983). - Fix an issue where
poetry update,poetry addandpoetry removewith--onlyuninstalled packages from other groups (#10014). - Fix an issue where
poetry update,poetry addandpoetry removeuninstalled all extra packages (#10016). - Fix an issue where
poetry self updatedid not recognize Poetry’s own environment (#9995). - Fix an issue where read-only system site-packages were not considered when loading an environment with system site-packages (#9942).
- Fix an issue where an error message in
poetry installstarted withWarning:instead ofError:(#9945). - Fix an issue where
Command.set_poetry, which is used by plugins, was removed (#9981). - Fix an issue where the help text of
poetry build --cleanshowed a malformed short option instead of the description (#9994).
Docs #
- Add a FAQ entry for the migration from Poetry-specific fields to the
projectsection (#9996). - Fix examples for
project.readmeandproject.urls(#9948). - Add a warning that package sources are a Poetry-specific feature that is not included in core metadata (#9935).
- Replace
poetry install --syncwithpoetry syncin the section about synchronizing dependencies (#9944). - Replace
poetry shellwithpoetry env activatein the basic usage section (#9963). - Mention that
project.nameis always required when theprojectsection is used (#9989). - Fix the constraint of
poetry-plugin-exportin the section aboutpoetry export(#9954).
poetry-core (2.0.1) #
- Replace the deprecated core metadata field
Home-pagewithProject-URL: Homepage(#807). - Fix an issue where includes from
tool.poetry.packageswithout a specifiedformatwere not initialized with the default value resulting in aKeyError(#805). - Fix an issue where some
project.urlsentries were not processed correctly resulting in aKeyError(#807). - Fix an issue where dynamic
project.dependenciesviatool.poetry.dependencieswere ignored ifproject.optional-dependencieswere defined (#811).
2.0.0 - 2025-01-05 #
Added #
- Add support for the
projectsection in thepyproject.tomlfile according to PEP 621 (#9135, #9917). - Add support for defining Poetry plugins that are required by the project and automatically installed if not present (#9547).
- Lock resulting markers and groups and add a
installer.re-resolveoption (default:true) to allow installation without re-resolving (#9427). - Add a
--local-versionoption topoetry build(#9064). - Add a
--cleanoption topoetry build(#9067). - Add FIPS support for
poetry publish(#9101). - Add the option to use
poetry newinteractively and configure more fields (#9101). - Add a config option
installer.only-binaryto enforce the use of binary distribution formats (#9150). - Add backend support for legacy repository search (#9132).
- Add support to resume downloads from connection resets (#9422).
- Add the option to define a constraint for the required Poetry version to manage the project (#9547).
- Add an
--all-groupsoption topoetry install(#9744). - Add an
poetry env activatecommand as replacement ofpoetry shell(#9763). - Add a
--markersoption topoetry addto add a dependency with markers (#9814). - Add a
--migrateoption topoetry configto migrate outdated configs (#9830). - Add a
--projectoption to search thepyproject.tomlfile in another directory without switching the directory (#9831). - Add support for shortened hashes to define git dependencies (#9748).
- Add partial support for conflicting extras (#9553).
- Add a
poetry synccommand as replacement ofpoetry install --sync(#9801).
Changed #
- Change the default behavior of
poetry lockto--no-updateand introduce a--regenerateoption for the old default behavior (#9327). - Remove the dependency on
poetry-plugin-exportso thatpoetry exportis not included per default (#5980). - Outsource
poetry shellintopoetry-plugin-shell(#9763). - Change the interface of
poetry add --optionalto require an extra the optional dependency is added to (#9135). - Actually switch the directory when using
--directory/-C(#9831). - Drop support for Python 3.8 (#9692).
- Rename
experimental.system-git-clienttoexperimental.system-git(#9787, #9795). - Replace
virtualenvs.prefer-active-pythonby the inverse settingvirtualenvs.use-poetry-pythonand prefer the active Python by default (#9786). - Deprecate several fields in the
tool.poetrysection in favor of the respective fields in theprojectsection in thepyproject.tomlfile (#9135). - Deprecate
poetry install --syncin favor ofpoetry sync(#9801). - Upgrade the warning if the current project cannot be installed to an error (#9333).
- Remove special handling for
platformdirs 2.0macOS config directory (#8916). - Tweak PEP 517 builds (#9094).
- Use Poetry instead of pip to manage dependencies in isolated build environments (#9168, #9227).
- Trust empty
Requires-Distwith modern metadata (#9078). - Do PEP 517 builds instead of parsing
setup.pyto determine dependencies (#9099). - Drop support for reading lock files prior version 1.0 (created with Poetry prior 1.1) (#9345).
- Default to
>=instead of^for the Python requirement when initializing a new project (#9558). - Limit
build-systemto the current major version ofpoetry-corewhen initializing a new project (#9812). - Remove pip-based installation, i.e.
installer.modern-installation = false(#9392). - Remove
virtualenvs.options.no-setuptoolsconfig option and never includesetuptoolsper default (#9331). - Rename exceptions to have an
Errorsuffix (#9705). - Remove deprecated CLI options and methods and revoke the deprecation of
--dev(#9732). - Ignore installed packages during dependency resolution (#9851).
- Improve the error message on upload failure (#9701).
- Improve the error message if the current project cannot be installed to include another root cause (#9651).
- Improve the output of
poetry show <package>(#9750). - Improve the error message for build errors (#9870).
- Improve the error message when trying to remove a package from a project without any dependencies (#9918).
- Drop the direct dependency on
crashtest(#9108). - Require
keyring>=23.3.1(#9167). - Require
build>=1.2.1(#9283). - Require
dulwich>=0.22.6(#9748).
Fixed #
- Fix an issue where git dependencies with extras could only be cloned if a branch was specified explicitly (#7028).
- Fix an issue where
poetry env removefailed ifvirtualenvs.in-projectwas set totrue(#9118). - Fix an issue where locking packages with a digit at the end of the name and non-standard sdist names failed (#9189).
- Fix an issue where credentials where not passed when trying to download an URL dependency (#9202).
- Fix an issue where using uncommon group names with
poetry addresulted in a brokenpyproject.toml(#9277). - Fix an issue where an inconsistent entry regarding the patch version of Python was kept in
envs.toml(#9286). - Fix an issue where relative paths were not resolved properly when using
poetry build --directory(#9433). - Fix an issue where unrequested extras were not uninstalled when running
poetry installwithout an existing lock file (#9345). - Fix an issue where the
poetry-checkpre-commit hook did not trigger if onlypoetry.lockhas changed (#9504). - Fix an issue where files (rather than directories) could not be added as single page source (#9166).
- Fix an issue where invalid constraints were generated when adding a package with a local version specifier (#9603).
- Fix several encoding warnings (#8893).
- Fix an issue where
virtualenvs.prefer-active-pythonwas not respected (#9278). - Fix an issue where the line endings of the lock file were changed (#9468).
- Fix an issue where installing multiple dependencies from the same git repository failed sporadically due to a race condition (#9658).
- Fix an issue where installing multiple dependencies from forked monorepos failed sporadically due to a race condition (#9723).
- Fix an issue where an extra package was not installed if it is required by multiple extras (#9700).
- Fix an issue where a
direct_url.jsonwith vcs URLs not compliant with PEP 610 was written (#9007). - Fix an issue where other files than wheels were recognized as wheels (#9770).
- Fix an issue where
installer.max-workerswas ignored for the implicit PyPI source (#9815). - Fix an issue where local settings (from
poetry.toml) were ignored for the implicit PyPI source (#9816). - Fix an issue where different
dulwichversions resulted in different hashes for a git dependency from a tag (#9849). - Fix an issue where installing a yanked package with no dependencies failed with an
IndexError(#9505). - Fix an issue where a package could not be added from a source that required an empty password (#9850).
- Fix an issue where setting
allow-prereleases = falsestill allowed pre-releases if no other solution was found (#9798). - Fix an issue where the wrong environment was used for checking if an installed package is from system site packages (#9861).
- Fix an issue where build errors from builds to retrieve metadata information were hidden (#9870).
- Fix an issue where
poetry checkfalsely reported that an invalid source “pypi” is referenced in dependencies (#9475). - Fix an issue where
poetry install --synctried to uninstall system site packages if the virtual environment was created withvirtualenvs.options.system-site-packages = true(#9863). - Fix an issue where HTTP streaming requests were not closed properly when not completely consumed (#9899).
Docs #
- Add information about getting test coverage in the contribution guide (#9726).
- Mention
pre-commit-updateas an alternative topre-commit autoupdate(#9716). - Improve the explanation of
excludeandinclude(#9734). - Add information about compatible release requirements, i.e.
~=(#9783). - Add documentation for using a build script to build extension modules (#9864).
poetry-core (2.0.0) #
- Add support for non PEP440 compliant version in the
platform_releasemarker (#722). - Add support for string comparisons with
in/not inin generic constraints (#722). - Add support for script files that are generated by a build script (#710).
- Add support for
SOURCE_DATE_EPOCHwhen building packages (#766, #781). - Create
METADATAfiles with version 2.3 instead of 2.2 (#707). - Remove support for
xin version constraints (#770). - Remove support for scripts with extras (#708).
- Remove deprecated features and interfaces (#702, #769).
- Deprecate
tool.poetry.dev-dependenciesin favor oftool.poetry.group.dev.dependencies(#754). - Fix an issue where the
platlibdirectory of the wrong Python was used (#726). - Fix an issue where building a wheel in a nested output directory results in an error (#762).
- Fix an issue where
+was not allowed in git URL paths (#765). - Fix an issue where the temporary directory was not cleaned up on error (#775).
- Fix an issue where the regular expression for author names was too restrictive (#517).
- Fix an issue where basic auth http(s) credentials could not be parsed (#791).
1.8.5 - 2024-12-06 #
Changed #
- Require
pkginfo>=1.12to fix an issue with an unknown metadata version 2.4 (#9888). - Do not fail if the unknown metadata version is only a minor version update (#9888).
1.8.4 - 2024-10-14 #
Added #
- Add official support for Python 3.13 (#9523).
Changed #
- Require
virtualenv>=20.26.6to mitigate potential command injection when runningpoetry shellin untrusted projects (#9757).
poetry-core (1.9.1) #
- Add
3.13to the list of available Python versions (#747).
1.8.3 - 2024-05-08 #
Added #
- Add support for untagged CPython builds with versions ending with a
+(#9207).
Changed #
- Require
pkginfo>=1.10to ensure support for packages with metadata version 2.3 (#9130). - Improve locking on FIPS systems (#9152).
Fixed #
- Fix an issue where unrecognized package metadata versions silently resulted in empty dependencies (#9203, #9226).
- Fix an issue where trailing slashes in git URLs where not handled correctly (#9205).
- Fix an issue where
poetry selfcommands printed a warning that the current project cannot be installed (#9302). - Fix an issue where
poetry installsporadically failed with aKeyErrordue to a race condition (#9335).
Docs #
- Fix incorrect information about
poetry shell(#9060). - Add a git subdirectory example to
poetry add(#9080). - Mention interactive credential configuration (#9074).
- Add notes for optional advanced installation steps (#9098).
- Add reference to configuration credentials in documentation of poetry
publish(#9110). - Improve documentation for configuring credentials via environment variables (#9121).
- Remove misleading wording around virtual environments (#9213).
- Remove outdated advice regarding seeding keyring backends (#9164).
- Add a
pyproject.tomlexample for a dependency with multiple extras (#9138). - Clarify help of
poetry add(#9230). - Add a note how to configure credentials for TestPyPI for
poetry publish(#9255). - Fix information about the
--readmeoption inpoetry new(#9260). - Clarify what is special about the Python constraint in
dependencies(#9256). - Update how to uninstall plugins via
pipx(#9320).
1.8.2 - 2024-03-02 #
Fixed #
- Harden
lazy-wheelerror handling if the index server is behaving badly in an unexpected way (#9051). - Improve
lazy-wheelerror handling if the index server does not handle HTTP range requests correctly (#9082). - Improve
lazy-wheelerror handling if the index server pretends to support HTTP range requests but does not respect them (#9084). - Improve
lazy-wheelto allow redirects for HEAD requests (#9087). - Improve debug logging for
lazy-wheelerrors (#9059). - Fix an issue where the hash of a metadata file could not be calculated correctly due to an encoding issue (#9049).
- Fix an issue where
poetry addfailed in non-package mode if no project name was set (#9046). - Fix an issue where a hint to non-package mode was not compliant with the final name of the setting (#9073).
1.8.1 - 2024-02-26 #
Fixed #
- Update the minimum required version of
packaging(#9031). - Handle unexpected responses from servers that do not support HTTP range requests with negative offsets more robust (#9030).
Docs #
- Rename
masterbranch tomain(#9022).
1.8.0 - 2024-02-25 #
Added #
- Add a
non-packagemode for use cases where Poetry is only used for dependency management (#8650). - Add support for PEP 658 to fetch metadata without having to download wheels (#5509).
- Add a
lazy-wheelconfig option (default:true) to reduce wheel downloads during dependency resolution (#8815, #8941). - Improve performance of dependency resolution by using shallow copies instead of deep copies (#8671).
poetry checkvalidates that no unknown sources are referenced in dependencies (#8709).- Add archive validation during installation for further hash algorithms (#8851).
- Add a
tokey intool.poetry.packagesto allow custom subpackage names (#8791). - Add a config option to disable
keyring(#8910). - Add a
--syncoption topoetry update(#8931). - Add an
--outputoption topoetry build(#8828). - Add a
--dist-diroption topoetry publish(#8828).
Changed #
- The implicit PyPI source is disabled if at least one primary source is configured (#8771).
- Deprecate source priority
default(#8771). - Upgrade the warning about an inconsistent lockfile to an error (#8737).
- Deprecate setting
installer.modern-installationtofalse(#8988). - Drop support for
pip<19(#8894). - Require
requests-toolbelt>=1(#8680). - Allow
platformdirs4.x (#8668). - Allow and require
xattr1.x on macOS (#8801). - Improve venv shell activation in
fish(#8804). - Rename
systemtobasein output ofpoetry env info(#8832). - Use pretty name in output of
poetry version(#8849). - Improve error handling for invalid entries in
tool.poetry.scripts(#8898). - Improve verbose output for dependencies with extras during dependency resolution (#8834).
- Improve message about an outdated lockfile (#8962).
Fixed #
- Fix an issue where
poetry shellfailed when Python has been installed with MSYS2 (#8644). - Fix an issue where Poetry commands failed in a terminal with a non-UTF-8 encoding (#8608).
- Fix an issue where a missing project name caused an incomprehensible error message (#8691).
- Fix an issue where Poetry failed to install an
sdistpath dependency (#8682). - Fix an issue where
poetry installfailed because an unused extra was not available (#8548). - Fix an issue where
poetry install --syncdid not remove an unrequested extra (#8621). - Fix an issue where
poetry initdid not allow specific characters in the author field (#8779). - Fix an issue where Poetry could not download
sdistsfrom misconfigured servers (#8701). - Fix an issue where metadata of sdists that call CLI tools of their build requirements could not be determined (#8827).
- Fix an issue where Poetry failed to use the currently activated environment (#8831).
- Fix an issue where
poetry shellfailed inzshif a space was in the venv path (#7245). - Fix an issue where scripts with extras could not be installed (#8900).
- Fix an issue where explicit sources where not propagated correctly (#8835).
- Fix an issue where debug prints where swallowed when using a build script (#8760).
- Fix an issue where explicit sources of locked dependencies where not propagated correctly (#8948).
- Fix an issue where Poetry’s own environment was falsely identified as system environment (#8970).
- Fix an issue where dependencies from a
setup.pywere ignored silently (#9000). - Fix an issue where environment variables for
virtualenv.optionswere ignored (#9015). - Fix an issue where
virtualenvs.options.no-pipandvirtualenvs.options.no-setuptoolswere not normalized (#9015).
Docs #
- Replace deprecated
--no-devwith--without devin the FAQ (#8659). - Recommend
poetry-checkinstead of the deprecatedpoetry-lockpre-commit hook (#8675). - Clarify the names of the environment variables to provide credentials for repositories (#8782).
- Add note how to install several version of Poetry in parallel (#8814).
- Improve description of
poetry show --why(#8817). - Improve documentation of
poetry update(#8706). - Add a warning about passing variables that may start with a hyphen via command line (#8850).
- Mention that the virtual environment in which Poetry itself is installed should not be activated (#8833).
- Add note about
poetry runand externally managed environments (#8748). - Update FAQ entry about
toxfortox4.x (#8658). - Fix documentation for default
formatoption forincludeandexcludevalue (#8852). - Add note about
toxand configured credentials (#8888). - Add note and link how to install
pipx(#8878). - Fix examples for
poetry addwith git dependencies over ssh (#8911). - Remove reference to deprecated scripts extras feature (#8903).
- Change examples to prefer
--only maininstead of--without dev(#8921). - Mention that the
developattribute is a Poetry-specific feature and not propagated to other tools (#8971). - Fix examples for adding supplemental and secondary sources (#8953).
- Add PyTorch example for explicit sources (#9006).
poetry-core (1.9.0) #
- Deprecate scripts that depend on extras (#690).
- Add support for path dependencies that do not define a build system (#675).
- Update list of supported licenses (#659, #669, #678, #694).
- Rework list of files included in build artifacts (#666).
- Fix an issue where insignificant errors were printed if the working directory is not inside a git repository (#684).
- Fix an issue where the project’s directory was not recognized as git repository on Windows due to an encoding issue (#685).
1.7.1 - 2023-11-16 #
Fixed #
- Fix an issue where sdists that call CLI tools of their build requirements could not be installed (#8630).
- Fix an issue where sdists with symlinks could not be installed due to a broken tarfile datafilter (#8649).
- Fix an issue where
poetry initfailed when trying to add dependencies (#8655). - Fix an issue where
poetry installfailed ifvirtualenvs.createwas set tofalse(#8672).
1.7.0 - 2023-11-03 #
Added #
- Add official support for Python 3.12 (#7803, #8544).
- Print a future warning that
poetry-plugin-exportwill not be installed by default anymore (#8562). - Add
poetry-installpre-commit hook (#8327). - Add
--next-phaseoption topoetry version(#8089). - Print a warning when overwriting files from another package at installation (#8386).
- Print a warning if the current project cannot be installed (#8369).
- Report more details on build backend exceptions (#8464).
Changed #
- Set Poetry as
user-agentfor all HTTP requests (#8394). - Do not install
setuptoolsper default in Python 3.12 (#7803). - Do not install
wheelper default (#7803). - Remove
setuptoolsandwheelwhen runningpoetry install --syncif they are not required by the project (#8600). - Improve error message about PEP-517 support (#8463).
- Improve
keyringhandling (#8227). - Read the
descriptionfield when extracting metadata fromsetup.pyfiles (#8545).
Fixed #
- Fix an issue where dependencies of inactive extras were locked and installed (#8399).
- Fix an issue where build requirements were not installed due to a race condition in the artifact cache (#8517).
- Fix an issue where packages included in the system site packages were installed even though
virtualenvs.options.system-site-packageswas set (#8359). - Fix an issue where git dependencies’ submodules with relative URLs were handled incorrectly (#8020).
- Fix an issue where a failed installation of build dependencies was not noticed directly (#8479).
- Fix an issue where
poetry shelldid not work completely withnushell(#8478). - Fix an issue where a confusing error messages was displayed when running
poetry config pypi-token.pypiwithout a value (#8502). - Fix an issue where a cryptic error message is printed if there is no metadata entry in the lockfile (#8523).
- Fix an issue with the encoding with special characters in the virtualenv’s path (#8565).
- Fix an issue where the connection pool size was not adjusted to the number of workers (#8559).
Docs #
- Improve the wording regarding a project’s supported Python range (#8423).
- Make
pipxthe preferred (first mentioned) installation method (#8090). - Add a warning about
poetry selfon Windows (#8090). - Fix example for
poetry addwith a git dependency (#8438). - Add information about auto-included files in wheels and sdist (#8555).
- Fix documentation of the
POETRY_REPOSITORIES_variables docs (#8492). - Add
CITATION.cfffile (#8510).
poetry-core (1.8.1) #
- Add support for creating packages dynamically in the build script (#629).
- Improve marker logic for
extramarkers (#636). - Update list of supported licenses (#635, #646).
- Fix an issue where projects with extension modules were not installed in editable mode (#633).
- Fix an issue where the wrong or no
libfolder was added to the wheel (#634).
poetry-plugin-export (^1.6.0) #
- Add an
--all-extrasoption (#241). - Fix an issue where git dependencies are exported with the branch name instead of the resolved commit hash (#213).
1.6.1 - 2023-08-21 #
Fixed #
- Update the minimum required version of
requests(#8336).
1.6.0 - 2023-08-20 #
Added #
- Add support for repositories that do not provide a supported hash algorithm (#8118).
- Add full support for duplicate dependencies with overlapping markers (#7257).
- Improve performance of
poetry lockfor certain edge cases (#8256). - Improve performance of
poetry install(#8031). poetry checkvalidates that specifiedreadmefiles do exist (#7444).- Add a downgrading note when updating to an older version (#8176).
- Add support for
voxin thexonshshell (#8203). - Add support for
pre-commithooks for projects where the pyproject.toml file is located in a subfolder (#8204). - Add support for the
git+http://scheme (#6619).
Changed #
- Drop support for Python 3.7 (#7674).
- Move
poetry lock --checktopoetry check --lockand deprecate the former (#8015). - Change future warning that PyPI will only be disabled automatically if there are no primary sources (#8151).
Fixed #
- Fix an issue where
build-system.requireswere not respected for projects with build scripts (#7975). - Fix an issue where the encoding was not handled correctly when calling a subprocess (#8060).
- Fix an issue where
poetry show --top-leveldid not show top level dependencies with extras (#8076). - Fix an issue where
poetry inithandled projects withsrclayout incorrectly (#8218). - Fix an issue where Poetry wrote
.pthfiles with the wrong encoding (#8041). - Fix an issue where
poetry installdid not respect the source if the same version of a package has been locked from different sources (#8304).
Docs #
- Document official Poetry badge (#8066).
- Update configuration folder path for macOS (#8062).
- Add a warning about pip ignoring lock files (#8117).
- Clarify the use of the
virtualenvs.in-projectsetting. (#8126). - Change
pre-commitYAML style to be consistent with pre-commit’s own examples (#8146). - Fix command for listing installed plugins (#8200).
- Mention the
nox-poetrypackage (#8173). - Add an example with a PyPI source in the pyproject.toml file (#8171).
- Use
referenceinstead of deprecatedcallablein the scripts example (#8211).
poetry-core (1.7.0) #
- Improve performance of marker handling (#609).
- Allow
|as a value separator in markers with the operatorsinandnot in(#608). - Put pretty name (instead of normalized name) in metadata (#620).
- Update list of supported licenses (#623).
- Fix an issue where PEP 508 dependency specifications with names starting with a digit could not be parsed (#607).
- Fix an issue where Poetry considered an unrelated
.gitignorefile resulting in an empty wheel (#611).
poetry-plugin-export (^1.5.0) #
- Fix an issue where markers for dependencies required by an extra were not generated correctly (#209).
1.5.1 - 2023-05-29 #
Added #
- Improve dependency resolution performance in cases with a lot of backtracking (#7950).
Changed #
- Disable wheel content validation during installation (#7987).
Fixed #
- Fix an issue where partially downloaded wheels were cached (#7968).
- Fix an issue where
poetry rundid no longer execute relative-path scripts (#7963). - Fix an issue where dependencies were not installed in
in-projectenvironments (#7977). - Fix an issue where no solution was found for a transitive dependency on a pre-release of a package (#7978).
- Fix an issue where cached repository packages were incorrectly parsed, leading to its dependencies being ignored (#7995).
- Fix an issue where an explicit source was ignored so that a direct origin dependency was used instead (#7973).
- Fix an issue where the installation of big wheels consumed a lot of memory (#7987).
Docs #
- Add information about multiple constraints dependencies with direct origin and version dependencies (#7973).
poetry-core (1.6.1) #
- Fix an endless recursion in marker handling (#593).
- Fix an issue where the wheel tag was not built correctly under certain circumstances (#591).
poetry-plugin-export (^1.4.0) #
- Fix an issue where
--extra-index-urland--trusted-hostwas not generated for sources with priorityexplicit(#205).
1.5.0 - 2023-05-19 #
Added #
- Introduce the new source priorities
explicitandsupplemental(#7658, #6879). - Introduce the option to configure the priority of the implicit PyPI source (#7801).
- Add handling for corrupt cache files (#7453).
- Improve caching of URL and git dependencies (#7693, #7473).
- Add option to skip installing directory dependencies (#6845, #7923).
- Add
--executableoption topoetry env info(#7547). - Add
--top-leveloption topoetry show(#7415). - Add
--lockoption topoetry remove(#7917). - Add experimental
POETRY_REQUESTS_TIMEOUToption (#7081). - Improve performance of wheel inspection by avoiding unnecessary file copy operations (#7916).
Changed #
- Remove the old deprecated installer and the corresponding setting
experimental.new-installer(#7356). - Introduce
prioritykey for sources and deprecate flagsdefaultandsecondary(#7658). - Deprecate
poetry run <entry point>if the entry point was not previously installed viapoetry install(#7606). - Only write the lock file if the installation succeeds (#7498).
- Do not write the unused package category into the lock file (#7637).
Fixed #
- Fix an issue where Poetry’s internal pyproject.toml continually grows larger with empty lines (#7705).
- Fix an issue where Poetry crashes due to corrupt cache files (#7453).
- Fix an issue where the
Retry-Afterin HTTP responses was not respected and retries were handled inconsistently (#7072). - Fix an issue where Poetry silently ignored invalid groups (#7529).
- Fix an issue where Poetry does not find a compatible Python version if not given explicitly (#7771).
- Fix an issue where the
direct_url.jsonof an editable install from a git dependency was invalid (#7473). - Fix an issue where error messages from build backends were not decoded correctly (#7781).
- Fix an infinite loop when adding certain dependencies (#7405).
- Fix an issue where pre-commit hooks skip pyproject.toml files in subdirectories (#7239).
- Fix an issue where pre-commit hooks do not use the expected Python version (#6989).
- Fix an issue where an unclear error message is printed if the project name is the same as one of its dependencies (#7757).
- Fix an issue where
poetry installreturns a zero exit status even though the build script failed (#7812). - Fix an issue where an existing
.venvwas not used ifin-projectwas not set (#7792). - Fix an issue where multiple extras passed to
poetry addwere not parsed correctly (#7836). - Fix an issue where
poetry shelldid not send a newline tofish(#7884). - Fix an issue where
poetry update --lockprinted operations that were not executed (#7915). - Fix an issue where
poetry add --lockdid perform a full update of all dependencies (#7920). - Fix an issue where
poetry shelldid not work withnushell(#7919). - Fix an issue where subprocess calls failed on Python 3.7 (#7932).
- Fix an issue where keyring was called even though the password was stored in an environment variable (#7928).
Docs #
- Add information about what to use instead of
--dev(#7647). - Promote semantic versioning less aggressively (#7517).
- Explain Poetry’s own versioning scheme in the FAQ (#7517).
- Update documentation for configuration with environment variables (#6711).
- Add details how to disable the virtualenv prompt (#7874).
- Improve documentation on whether to commit
poetry.lock(#7506). - Improve documentation of
virtualenv.create(#7608).
poetry-core (1.6.0) #
- Improve error message for invalid markers (#569).
- Increase robustness when deleting temporary directories on Windows (#460).
- Replace
tomlkitwithtomli, which changes the interface of some internal classes (#483). - Deprecate
Package.category(#561). - Fix a performance regression in marker handling (#568).
- Fix an issue where wildcard version constraints were not handled correctly (#402).
- Fix an issue where
poetry buildcreated duplicate Python classifiers if they were specified manually (#578). - Fix an issue where local versions where not handled correctly (#579).
1.4.2 - 2023-04-02 #
Changed #
- When trying to install wheels with invalid
RECORDfiles, Poetry does not fail anymore but only prints a warning. This mitigates an unintended change introduced in Poetry 1.4.1 (#7694).
Fixed #
- Fix an issue where relative git submodule urls were not parsed correctly (#7017).
- Fix an issue where Poetry could freeze when building a project with a build script if it generated enough output to fill the OS pipe buffer (#7699).
1.4.1 - 2023-03-19 #
Fixed #
- Fix an issue where
poetry installdid not respect the requirements for building editable dependencies (#7579). - Fix an issue where
poetry initcrashed due to bad input when adding packages interactively (#7569). - Fix an issue where
poetry installignored thesubdirectoryargument of git dependencies (#7580). - Fix an issue where installing packages with
no-binarycould result in a false hash mismatch (#7594). - Fix an issue where the hash of sdists was neither validated nor written to the
direct_url.jsonduring installation (#7594). - Fix an issue where
poetry install --syncattempted to remove itself (#7626). - Fix an issue where wheels with non-normalized
dist-infodirectory names could not be installed (#7671). - Fix an issue where
poetry install --compilecompiled with optimization level 1 (#7666).
Docs #
- Clarify the behavior of the
--extrasoption (#7563). - Expand the FAQ on reasons for slow dependency resolution (#7620).
poetry-core (1.5.2) #
- Fix an issue where wheels built on Windows could contain duplicate entries in the RECORD file (#555).
1.4.0 - 2023-02-27 #
Added #
- Add a modern installer (
installer.modern-installation) for faster installation of packages and independence from pip (#6205). - Add support for
Private ::trove classifiers (#7271). - Add the version of poetry in the
@generatedcomment at the beginning of the lock file (#7339). - Add support for
virtualenvs.prefer-active-pythonwhen runningpoetry newandpoetry init(#7100).
Changed #
- Deprecate the old installer, i.e. setting
experimental.new-installertofalse(#7358). - Remove unused
platformfield from cached package info and bump the cache version (#7304). - Extra dependencies of the root project are now sorted in the lock file (#7375).
- Remove upper boundary for
importlib-metadatadependency (#7434). - Validate path dependencies during use instead of during construction (#6844).
- Remove the deprecated
repositorymodules (#7468).
Fixed #
- Fix an issue where an unconditional dependency of an extra was not installed in specific environments (#7175).
- Fix an issue where a pre-release of a dependency was chosen even if a stable release fulfilled the constraint (#7225, #7236).
- Fix an issue where HTTP redirects were not handled correctly during publishing (#7160).
- Fix an issue where
poetry checkdid not handle the-C, --directoryoption correctly (#7241). - Fix an issue where the subdirectory information of a git dependency was not written to the lock file (#7367).
- Fix an issue where the wrong Python version was selected when creating an virtual environment (#7221).
- Fix an issue where packages that should be kept were uninstalled when calling
poetry install --sync(#7389). - Fix an issue where an incorrect value was set for
sys.argv[0]when running installed scripts (#6737). - Fix an issue where hashes in
direct_url.jsonfiles were not written according to the specification (#7475). - Fix an issue where poetry commands failed due to special characters in the path of the project or virtual environment (#7471).
- Fix an issue where poetry crashed with a
JSONDecodeErrorwhen running a Python script that produced certain warnings (#6665).
Docs #
- Add advice on how to maintain a poetry plugin (#6977).
- Update tox examples to comply with the latest tox release (#7341).
- Mention that the
poetry exportcan exportconstraints.txtfiles (#7383). - Add clarifications for moving configuration files (#6864).
- Mention the different types of exact version specifications (#7503).
poetry-core (1.5.1) #
- Improve marker handling (#528, #534, #530, #546, #547).
- Validate whether dependencies referenced in
extrasare defined in the main dependency group (#542). - Poetry no longer generates a
setup.pyfile in sdists by default (#318). - Fix an issue where trailing newlines were allowed in
tool.poetry.description(#505). - Fix an issue where the name of the data folder in wheels was not normalized (#532).
- Fix an issue where the order of entries in the RECORD file was not deterministic (#545).
- Fix an issue where zero padding was not correctly handled in version comparisons (#540).
- Fix an issue where sdist builds did not support multiple READMEs (#486).
poetry-plugin-export (^1.3.0) #
- Fix an issue where the export failed if there was a circular dependency on the root package (#118).
1.3.2 - 2023-01-10 #
Fixed #
- Fix a performance regression when locking dependencies from PyPI (#7232).
- Fix an issue where passing a relative path via
-C, --directoryfails (#7266).
Docs #
- Update docs to reflect the removal of the deprecated
get-poetry.pyinstaller from the repository (#7288). - Add clarifications for
virtualenvs.pathsettings (#7286).
1.3.1 - 2022-12-12 #
Fixed #
- Fix an issue where an explicit dependency on
lockfilewas missing, resulting in a broken Poetry in rare circumstances (7169).
1.3.0 - 2022-12-09 #
Added #
- Mark the lock file with an
@generatedcomment as used by common tooling (#2773). poetry checkvalidates trove classifiers and warns for deprecations (#2881).- Introduce a top level
-C, --directoryoption to set the working path (#6810).
Changed #
- New lock file format (version 2.0) (#6393).
- Path dependency metadata is unconditionally re-locked (#6843).
- URL dependency hashes are locked (#7121).
poetry updateandpoetry lockshould now resolve dependencies more similarly (#6477).poetry publishwill report more useful errors when a file does not exist (#4417).poetry addwill check for duplicate entries using canonical names (#6832).- Wheels are preferred to source distributions when gathering metadata (#6547).
- Git dependencies of extras are only fetched if the extra is requested (#6615).
- Invoke
pipwith--no-inputto prevent hanging without feedback (#6724, #6966). - Invoke
pipwith--isolatedto prevent the influence of user configuration (#6531). - Interrogate environments with Python in isolated (
-I) mode (#6628). - Raise an informative error when multiple version constraints overlap and are incompatible (#7098).
Fixed #
- Fix an issue where concurrent instances of Poetry would corrupt the artifact cache (#6186).
- Fix an issue where Poetry can hang after being interrupted due to stale locking in cache (#6471).
- Fix an issue where the output of commands executed with
--dry-runcontained duplicate entries (#4660). - Fix an issue where
requests’s pool size did not match the number of installer workers (#6805). - Fix an issue where
poetry show --outdatedfailed with a runtime error related to direct origin dependencies (#6016). - Fix an issue where only the last command of an
ApplicationPluginis registered (#6304). - Fix an issue where git dependencies were fetched unnecessarily when running
poetry lock --no-update(#6131). - Fix an issue where stdout was polluted with messages that should go to stderr (#6429).
- Fix an issue with
poetry shellactivation and zsh (#5795). - Fix an issue where a url dependencies were shown as outdated (#6396).
- Fix an issue where the
sourcefield of a dependency with extras was ignored (#6472). - Fix an issue where a package from the wrong source was installed for a multiple-constraints dependency with different sources (#6747).
- Fix an issue where dependencies from different sources where merged during dependency resolution (#6679).
- Fix an issue where
experimental.system-git-clientcould not be used via environment variable (#6783). - Fix an issue where Poetry fails with an
AssertionErrordue todistribution.filesbeingNone(#6788). - Fix an issue where
poetry env infodid not respectvirtualenvs.prefer-active-python(#6986). - Fix an issue where
poetry env listdoes not list the in-project environment (#6979). - Fix an issue where
poetry env removeremoved the wrong environment (#6195). - Fix an issue where the return code of a script was not relayed as exit code (#6824).
- Fix an issue where the solver could silently swallow
ValueError(#6790).
Docs #
- Improve documentation of package sources (#5605).
- Correct the default cache path on Windows (#7012).
poetry-core (1.4.0) #
- The PEP 517
metadata_directoryis now respected as an input to thebuild_wheelhook (#487). ParseConstraintErroris now raised on version and constraint parsing errors, and includes information on the package that caused the error (#514).- Fix an issue where invalid PEP 508 requirements were generated due to a missing space before semicolons (#510).
- Fix an issue where relative paths were encoded into package requirements, instead of a file:// URL as required by PEP 508 (#512).
poetry-plugin-export (^1.2.0) #
- Ensure compatibility with Poetry 1.3.0. No functional changes.
cleo (^2.0.0) #
- Fix an issue where shell completions had syntax errors (#247).
- Fix an issue where not reading all the output of a command resulted in a “Broken pipe” error (#165).
- Fix an issue where errors were not shown in non-verbose mode (#166).
1.2.2 - 2022-10-10 #
Added #
- Add forward compatibility for lock file format 2.0, which will be used by Poetry 1.3 (#6608).
Changed #
- Allow
poetry lockto re-generate the lock file when invalid or incompatible (#6753).
Fixed #
- Fix an issue where the deprecated JSON API was used to query PyPI for available versions of a package (#6081).
- Fix an issue where versions were escaped wrongly when building the wheel name (#6476).
- Fix an issue where the installation of dependencies failed if pip is a dependency and is updated in parallel to other dependencies (#6582).
- Fix an issue where the names of extras were not normalized according to PEP 685 (#6541).
- Fix an issue where sdist names were not normalized (#6621).
- Fix an issue where invalid constraints, which are ignored, were only reported in a debug message instead of a warning (#6730).
- Fix an issue where
poetry shellwas broken in git bash on Windows (#6560).
Docs #
- Rework the README and contribution docs (#6552).
- Fix for inconsistent docs for multiple-constraint dependencies (#6604).
- Rephrase plugin configuration (#6557).
- Add a note about publishable repositories to
publish(#6641). - Fix the path for lazy-loaded bash completion (#6656).
- Fix a reference to the invalid option
--require(#6672). - Add a PowerShell one-liner to the basic usage section (#6683).
- Fix the minimum poetry version in the example for plugins (#6739).
poetry-core (1.3.2) #
- Add
3.11to the list of available Python versions (#477). - Fix an issue where caret constraints of pre-releases with a major version of 0 resulted in an empty version range (#475).
poetry-plugin-export (^1.1.2) #
- Add support for exporting
constraints.txtfiles (#128). - Fix an issue where a relative path passed via
-owas not interpreted relative to the current working directory (#130).
1.2.1 - 2022-09-16 #
Changed #
Fixed #
- Fix an issue where
poetry cache cleardid not respect the-n/--no-interactionflag (#6338). - Fix an issue where
poetry lock --no-updateupdated dependencies from non-PyPI package sources (#6335). - Fix a
poetry installperformance regression by falling back to internal pip (#6062). - Fix an issue where a virtual environment was created unnecessarily when running
poetry export(#6282). - Fix an issue where
poetry lock --no-updateadded duplicate hashes to the lock file (#6389). - Fix an issue where
poetry installfails because of missing hashes forurldependencies (#6389). - Fix an issue where Poetry was not able to update pip in Windows virtual environments (#6430).
- Fix an issue where Poetry was not able to install releases that contained less common link types (#5767).
- Fix a
poetry lockperformance regression when checking non-PyPI sources for yanked versions (#6442). - Fix an issue where
--no-cachewas not respected when runningpoetry install(#6479). - Fix an issue where deprecation warnings for
--devwere missing (#6475). - Fix an issue where Git dependencies failed to clone when
insteadOfwas used in.gitconfigusing the Dulwich Git client (#6506). - Fix an issue where no cache entry is found when calling
poetry cache clearwith a non-normalized package name (#6537). - Fix an invalid virtualenv constraint on Poetry (#6402).
- Fix outdated build system requirements for Poetry (#6509).
Docs #
- Add missing path segment to paths used by install.python-poetry.org (#6311).
- Add recommendations about how to install Poetry in a CI environment (#6345).
- Fix examples for
--withand--without(#6318). - Update configuration folder path for macOS (#6395).
- Improve the description of the
virtualenv.createoption (#6460). - Clarify that
poetry installremoves dependencies of non-installed extras (#6229). - Add a note about
pre-commit autoupdateand Poetry’s hooks (#6497).
1.2.0 - 2022-08-31 #
For a detailed breakdown of user-facing changes, refer to the 1.2.0 release announcement.
Docs #
- Added note about how to add a git dependency with a subdirectory (#6218)
- Fixed several style issues in the docs (#6254)
- Fixed outdated info about
--onlyparameter (#6263)
1.2.0rc2 - 2022-08-26 #
Fixed #
- Fixed an issue where virtual environments were created unnecessarily when running
poetry selfcommands (#6225) - Ensure that packages’
pretty_nameare written to the lock file (#6237)
Improvements #
- Improved the consistency of
Pool().remove_repository()to make it easier to write poetry plugins (#6214)
Docs #
- Removed mentions of Python 2.7 from docs (#6234)
- Added note about the difference between groups and extras (#6230)
1.2.0rc1 - 2022-08-22 #
Added #
- Added support for subdirectories in git dependencies (#5172)
- Added support for yanked releases and files (PEP-592) (#5841)
- Virtual environments can now be created even with empty project names (#5856)
- Added support for
nushellinpoetry shell(#6063)
Changed #
- Poetry now falls back to gather metadata for dependencies via pep517 if parsing
pyproject.tomlfails (#5834) - Replaced Poetry’s helper method
canonicalize_name()withpackaging.utils.canonicalize_name()(#6022) - Removed code for the
exportcommand, which is now provided via plugin (#6128) - Extras and extras dependencies are now sorted in the lock file (#6169)
- Removed deprecated (1.2-only) CLI options (#6210)
Fixed #
- Fixed an issue where symlinks in the lock file were not resolved (#5850)
- Fixed a
tomlkitregression resulting in inconsistent line endings (#5870) - Fixed an issue where the
POETRY_PYPI_TOKEN_PYPIenvironment variable wasn’t respected (#5911) - Fixed an issue where neither Python nor a managed venv can be found, when using Python from MS Store (#5931)
- Improved error message of
poetry publishin the event of an upload error (#6043) - Fixed an issue where
poetry lockfails without output (#6058) - Fixed an issue where Windows drive mappings break virtual environment names (#6110)
tomlkitversions with memory leak are now avoided (#6160)- Fixed an infinite loop in the solver (#6178)
- Fixed an issue where latest version was used instead of locked one for vcs dependencies with extras (#6185)
Docs #
- Document use of the
subdirectoryparameter (#5949) - Document suggested
toxconfig for different use cases (#6026)
1.1.15 - 2022-08-22 #
Changed #
- Poetry now fallback to gather metadata for dependencies via pep517 if parsing pyproject.toml fail (#6206)
- Extras and extras dependencies are now sorted in lock file (#6207)
1.2.0b3 - 2022-07-13 #
Important: This release fixes a critical issue that prevented hashes from being retrieved when locking dependencies, due to a breaking change on PyPI JSON API (see #5972 and the upstream change for more details).
After upgrading, you have to clear Poetry cache manually to get that feature working correctly again:
$ poetry cache clear pypi --all
Added #
- Added
--only-roottopoetry installto install a project without its dependencies (#5783)
Changed #
- Improved user experience of
poetry init(#5838) - Added default timeout for all HTTP requests, to avoid hanging requests (#5881)
- Updated
poetry initto better specify how to skip adding dependencies (#5946) - Updated Poetry repository names to avoid clashes with user-defined repositories (#5910)
Fixed #
- Fixed an issue where extras where not handled if they did not match the case-sensitive name of the packages (#4122)
- Fixed configuration of
experimental.system-git-clientoption throughpoetry config(#5818) - Fixed uninstallation of git dependencies on Windows (#5836)
- Fixed an issue where
~was not correctly expanded invirtualenvs.path(#5848) - Fixed an issue where installing/locking dependencies would hang when setting an incorrect git repository (#5880)
- Fixed an issue in
poetry publishwhen keyring was not properly configured (#5889) - Fixed duplicated line output in console (#5890)
- Fixed an issue where the same wheels where downloaded multiple times during installation (#5871)
- Fixed an issue where dependencies hashes could not be retrieved when locking due to a breaking change on PyPI JSON API (#5973)
- Fixed an issue where a dependency with non-requested extras could not be installed if it is requested with extras by another dependency (#5770)
- Updated git backend to correctly read local/global git config when using dulwich as a git backend (#5935)
- Fixed an issue where optional dependencies where not correctly exported when defining groups (#5819)
Docs #
- Fixed configuration instructions for repositories specification (#5809)
- Added a link to dependency specification
from
pyproject.toml(#5815) - Improved
zshautocompletion instructions (#5859) - Improved installation and update documentations (#5857)
- Improved exact requirements documentation (#5874)
- Added documentation for
@operator (#5822) - Improved autocompletion documentation (#5879)
- Improved
scriptsdefinition documentation (#5884)
1.1.14 - 2022-07-08 #
Fixed #
- Fixed an issue where dependencies hashes could not be retrieved when locking due to a breaking change on PyPI JSON API (#5973)
1.2.0b2 - 2022-06-07 #
Added #
- Added support for multiple-constraint direct origin dependencies with the same version (#5715)
- Added support disabling TLS verification for custom package sources via
poetry config certificates.<repository>.cert false(#5719 - Added new configuration (
virtualenvs.prompt) to customize the prompt of the Poetry-managed virtual environment (#5606) - Added progress indicator to
download_file(used when downloading dists) (#5451) - Added
--dry-runtopoetry versioncommand (#5603) - Added
--whytopoetry show(#5444) - Added support for single page (html) repositories (#5517)
- Added support for PEP 508 strings when adding
dependencies via
poetry addcommand (#5554) - Added
--no-cacheas a global option (#5519) - Added cert retrieval for HTTP requests made by Poetry (#5320)
- Added
--skip-existingtopoetry publish(#2812) - Added
--all-extrastopoetry install(#5452) - Added new
poetry selfsub-commands to manage plugins and/or system environment packages, eg: keyring backends (#5450) - Added new configuration (
installer.no-binary) to allow selection of non-binary distributions when installing a dependency (#5609)
Changed #
poetry plugincommands are now deprecated in favor of the more genericpoetry selfcommands (#5450)- When creating new projects, Poetry no longer restricts README extensions to
mdandrst(#5357) - Changed the provider to allow fallback to installed packages (#5704)
- Solver now correctly handles and prefers direct reference constraints (vcs, file etc.) over public version identifiers (#5654)
- Changed the build script behavior to create an ephemeral build environment when a build script is specified (#5401)
- Improved performance when determining PEP 517 metadata from sources (#5601)
- Project package sources no longer need to be redefined as global repositories when configuring credentials (#5563)
- Replaced external git command use with dulwich, in order to force the legacy behaviour set
experimental.system-git-clientconfiguration totrue(#5428) - Improved http request handling for sources and multiple paths on same netloc (#5518)
- Made
no-pipandno-setuptoolsconfiguration explicit (#5455) - Improved application logging, use of
-vvnow provides more debug information (#5503) - Renamed implicit group
defaulttomain(#5465) - Replaced in-tree implementation of
poetry exportwithpoetry-plugin-export(#5413) - Changed the password manager behavior to use a
"null"keyring when disabled (#5251) - Incremental improvement of Solver performance (#5335)
- Newly created virtual environments on macOS now are excluded from Time Machine backups (#4599)
- Poetry no longer raises an exception when a package is not found on PyPI (#5698)
- Update
packagingdependency to use major version 21, this change forces Poetry to drop support for managing Python 2.7 environments (#4749)
Fixed #
- Fixed
poetry update --dry-runto not modifypoetry.lock(#5718, #3666, #3766) - Fixed #5537 where export fails to resolve dependencies with more than one path (#5688)
- Fixed an issue where the environment variables
POETRY_CONFIG_DIRandPOETRY_CACHE_DIRwere not being respected (#5672) - Fixed #3628 and #4702 by handling invalid distributions gracefully (#5645)
- Fixed an issue where the provider ignored subdirectory when merging and improve subdirectory support for vcs deps (#5648)
- Fixed an issue where users could not select an empty choice when selecting dependencies (#4606)
- Fixed an issue where
poetry init -ncrashes in a root directory (#5612) - Fixed an issue where Solver errors arise due to wheels having different Python constraints (#5616)
- Fixed an issue where editable path dependencies using
setuptoolscould not be correctly installed (#5590) - Fixed flicker when displaying executor operations (#5556)
- Fixed an issue where the
poetry lock --no-updateonly sorted by name and not by name and version (#5446) - Fixed an issue where the Solver fails when a dependency has multiple constrained dependency definitions for the same package (#5403)
- Fixed an issue where dependency resolution takes a while because Poetry checks all possible combinations even markers are mutually exclusive (#4695)
- Fixed incorrect version selector constraint (#5500)
- Fixed an issue where
poetry lock --no-updatedropped packages (#5435) - Fixed an issue where packages were incorrectly grouped when exporting (#5156)
- Fixed an issue where lockfile always updates when using private sources (#5362)
- Fixed an issue where the solver did not account for selected package features (#5305)
- Fixed an issue with console script execution of editable dependencies on Windows (#3339)
- Fixed an issue where editable builder did not write PEP-610 metadata (#5703)
- Fixed an issue where Poetry 1.1 lock files were incorrectly identified as not fresh (#5458)
Docs #
- Updated plugin management commands (#5450)
- Added the
--readmeflag to documentation (#5357) - Added example for multiple maintainers (#5661)
- Updated documentation for issues #4800, #3709, #3573, #2211 and #2414 (#5656)
- Added
poetry.tomlnote in configuration (#5492) - Add documentation for
poetry about,poetry help,poetrylist, and the--full-pathand--alloptions documentation (#5664) - Added more clarification to the
--whyflag (#5653) - Updated documentation to refer to PowerShell for Windows, including instructions (#3978, #5618)
- Added PEP 508 name requirement (#5642)
- Added example for each section of pyproject.toml (#5585)
- Added documentation for
--localto fix issue #5623 (#5629) - Added troubleshooting documentation for using proper quotation with ZSH (#4847)
- Added information on git and basic http auth (#5578)
- Removed ambiguity about PEP 440 and semver (#5576)
- Removed Pipenv comparison (#5561)
- Improved dependency group related documentation (#5338)
- Added documentation for default directories used by Poetry (#5391)
- Added warning about credentials preserved in shell history (#5726)
- Improved documentation of the
readmeoption, including multiple files and additional formats (#5158) - Improved contributing documentation (#5708)
- Remove all references to
--dev-onlyoption (#5771)
1.2.0b1 - 2022-03-17 #
Fixed #
- Fixed an issue where the system environment couldn’t be detected (#4406).
- Fixed another issue where the system environment couldn’t be detected (#4433).
- Replace deprecated requests parameter in uploader (#4580).
- Fix an issue where venv are detected as broken when using MSys2 on windows (#4482).
- Fixed an issue where the cache breaks on windows (#4531).
- Fixed an issue where a whitespace before a semicolon was missing on
poetry export(#4575). - Fixed an issue where markers were not correctly assigned to nested dependencies (#3511).
- Recognize one digit version in wheel filenames (#3338).
- Fixed an issue when
localeis unset (#4038). - Fixed an issue where the fallback to another interpreter didn’t work (#3475).
- Merge any marker constraints into constraints with specific markers (#4590).
- Normalize path before hashing so that the generated venv name is independent of case on Windows (#4813).
- Fixed an issue where a dependency wasn’t upgrade by using
@latestonpoetry update(#4945). - Fixed an issue where conda envs in windows are always reported as broken(#5007).
- Fixed an issue where Poetry doesn’t find its own venv on
poetry self update(#5049). - Fix misuse of pretty_constraint (#4932).
- Fixed an issue where the reported python version used for venv creation wasn’t correct (#5086).
- Fixed an issue where the searched package wasn’t display in the interactive dialog of
poetry init(#5076). - Fixed an issue where Poetry raises an exception on
poetry showwhen no lock files exists (#5242). - Fixed an issue where Poetry crashes when optional
vcs_info.requested_versionindirect_url.jsonwasn’t included (#5274). - Fixed an issue where dependencies with extras were updated despite using
--no-update(#4618). - Fixed various places where poetry writes messages to stdout instead of stderr (#4110, #5179).
- Ensured that when complete packages are created dependency inherits source and resolved refs from package (#4604).
- Ensured that when complete packages are created dependency inherits subdirectory from package if supported (#4604).
- Fixed an issue where
POETRY_EXPERIMENTAL_NEW_INSTALLERneeds to be set to an empty string to disable it (#3811).
Added #
poetry show <package>now also shows which packages depend on it (#2351).- The info dialog by
poetry aboutnow contains version information about installed poetry and poetry-core (#5288). - Print error message when
poetry publishfails (#3549). - Added in info output to
poetry lock --check(#5081). - Added new argument
--allforpoetry env removeto delete all venv of a project at once (#3212). - Added new argument
--without-urlsforpoetry exportto exclude source repository urls from the exported file (#4763). - Added a new
installer.max-workersproperty to the configuration (#3516). - Added experimental option
virtualenvs.prefer-active-pythonto detect current activated python (#4852). - Added better windows shell support (#5053).
Changed #
- Drop python3.6 support (#5055).
- Exit with callable return code in generated script (#4456).
- Internal use of the
pep517high level interfaces for package metadata inspections have been replaced with thebuildpackage. (#5155). - Poetry now raises an error if the python version in the project environment is no longer compatible with the project (#4520).
1.1.13 - 2022-02-10 #
Fixed #
- Fixed an issue where envs in MSYS2 always reported as broken (#4942)
- Fixed an issue where conda envs in windows are always reported as broken(#5008)
- Fixed an issue where Poetry doesn’t find its own venv on
poetry self update(#5048)
1.1.12 - 2021-11-27 #
Fixed #
- Fixed broken caches on Windows due to
Pathstarting with a slash (#4549) - Fixed
JSONDecodeErrorwhen installing packages by updatingcachecontrolversion (#4831) - Fixed dropped markers in dependency walk (#4686)
1.1.11 - 2021-10-04 #
Fixed #
- Fixed errors when installing packages on Python 3.10. (#4592)
- Fixed an issue where the wrong
gitexecutable could be used on Windows. (python-poetry/poetry-core#213) - Fixed an issue where the Python 3.10 classifier was not automatically added. (python-poetry/poetry-core#215)
1.1.10 - 2021-09-21 #
Fixed #
- Fixed an issue where non-sha256 hashes were not checked. (#4529)
1.1.9 - 2021-09-18 #
Fixed #
- Fixed a security issue where file hashes were not checked prior to installation. (#4420, #4444, python-poetry/poetry-core#193)
- Fixed the detection of the system environment when the setting
virtualenvs.createis deactivated. (#4507) - Fixed an issue where unsafe parameters could be passed to
gitcommands. (python-poetry/poetry-core#203) - Fixed an issue where the wrong
gitexecutable could be used on Windows. (python-poetry/poetry-core#205)
1.1.8 - 2021-08-19 #
Fixed #
- Fixed an error with repository prioritization when specifying secondary repositories. (#4241)
- Fixed the detection of the system environment when the setting
virtualenvs.createis deactivated. (#4330, #4407) - Fixed the evaluation of relative path dependencies. (#4246)
- Fixed environment detection for Python 3.10 environments. (#4387)
- Fixed an error in the evaluation of
in/not inmarkers (python-poetry/poetry-core#189)
1.2.0a2 - 2021-08-01 #
Added #
- Poetry now supports dependency groups. (#4260)
- The
installcommand now supports a--syncoption to synchronize the environment with the lock file. (#4336)
Changed #
- Improved the way credentials are retrieved to better support keyring backends. (#4086)
- The
--remove-untrackedoption of theinstallcommand is now deprecated in favor of the new--syncoption. (#4336) - The user experience when installing dependency groups has been improved. (#4336)
Fixed #
- Fixed performance issues when resolving dependencies. (#3839)
- Fixed an issue where transitive dependencies of directory or VCS dependencies were not installed or otherwise removed. (#4202)
- Fixed the behavior of the
initcommand in non-interactive mode. (#2899) - Fixed the detection of the system environment when the setting
virtualenvs.createis deactivated. (#4329) - Fixed the display of possible solutions for some common errors. (#4332)
1.1.7 - 2021-06-25 #
Note: Lock files might need to be regenerated for the first fix below to take effect.
You can use poetry lock to do so without the --no-update option.
Changed #
- This release is compatible with the
install-poetry.pyinstallation script to ease the migration path from1.1releases to1.2releases. (#4192)
Fixed #
- Fixed an issue where transitive dependencies of directory or VCS dependencies were not installed or otherwise removed. (#4203)
- Fixed an issue where the combination of the
--treeand--no-devoptions for the show command was still displaying development dependencies. (#3992)
1.2.0a1 - 2021-05-21 #
This release is the first testing release of the upcoming 1.2.0 version.
It drops support for Python 2.7 and 3.5.
Added #
- Poetry now supports a plugin system to alter or expand Poetry’s functionality. (#3733)
- Poetry now supports PEP 610. (#3876)
- Several configuration options to better control the way virtual environments are created are now available. (#3157, #3711).
- The
newcommand now supports namespace packages. (#2768) - The
addcommand now supports the--editableoption to add packages in editable mode. (#3940)
Changed #
- Python 2.7 and 3.5 are no longer supported. (#3405)
- The usage of the
get-poetry.pyscript is now deprecated and is replaced by theinstall-poetry.pyscript. (#3706) - Directory dependencies are now in non-develop mode by default. (poetry-core#98)
- Improved support for PEP 440 specific versions that do not abide by semantic versioning. (poetry-core#140)
- Improved the CLI experience and performance by migrating to the latest version of Cleo. (#3618)
- Packages previously considered as unsafe (
pip,setuptools,wheelsanddistribute) can now be managed as any other package. (#2826) - The
newcommand now defaults to the Markdown format for README files. (#2768)
Fixed #
- Fixed an error where command line options were not taken into account when using the
runcommand. (#3618) - Fixed an error in the way custom repositories were resolved. (#3406)
1.1.6 - 2021-04-14 #
Fixed #
- Fixed export format for path dependencies. (#3121)
- Fixed errors caused by environment modification when executing some commands. (#3253)
- Fixed handling of wheel files with single-digit versions. (#3338)
- Fixed an error when handling single-digit Python markers. (poetry-core#156)
- Fixed dependency markers not being properly copied when changing the constraint leading to resolution errors. (poetry-core#163)
- Fixed an error where VCS dependencies were always updated. (#3947)
- Fixed an error where the incorrect version of a package was locked when using environment markers. (#3945)
1.1.5 - 2021-03-04 #
Fixed #
- Fixed an error in the
exportcommand when no lock file existed and a verbose flag was passed to the command. (#3310) - Fixed an error where the
pyproject.tomlwas not reverted when using theaddcommand. (#3622) - Fixed errors when using non-HTTPS indices. (#3622)
- Fixed errors when handling simple indices redirection. (#3622)
- Fixed errors when trying to handle newer wheels by using the latest version of
poetry-coreandpackaging. (#3677) - Fixed an error when using some versions of
poetry-coredue to an incorrect import . (#3696)
1.1.4 - 2020-10-23 #
Added #
- Added
installer.parallelboolean flag (defaults totrue) configuration to enable/disable parallel execution of operations when using the new installer. (#3088)
Changed #
- When using system environments as an unprivileged user, user site and bin directories are created if they do not already exist. (#3107)
Fixed #
- Fixed editable installation of poetry projects when using system environments. (#3107)
- Fixed locking of nested extra activations. If you were affected by this issue, you will need to regenerate the lock file using
poetry lock --no-update. (#3229) - Fixed prioritisation of non-default custom package sources. (#3251)
- Fixed detection of installed editable packages when non-poetry managed
.pthfile exists. (#3210) - Fixed scripts generated by editable builder to use valid import statements. (#3214)
- Fixed recursion error when locked dependencies contain cyclic dependencies. (#3237)
- Fixed propagation of editable flag for VCS dependencies. (#3264)
1.1.3 - 2020-10-14 #
Changed #
- Python version support deprecation warning is now written to
stderr. (#3131)
Fixed #
- Fixed
KeyErrorwhenPATHis not defined in environment variables. (#3159) - Fixed error when using
configcommand in a directory with an existingpyproject.tomlwithout any Poetry configuration. (#3172) - Fixed incorrect inspection of package requirements when same dependency is specified multiple times with unique markers. (#3147)
- Fixed
showcommand to use already resolved package metadata. (#3117) - Fixed multiple issues with
exportcommand output when usingrequirements.txtformat. (#3119)
1.1.2 - 2020-10-06 #
Changed #
- Dependency installation of editable packages and all uninstall operations are now performed serially within their corresponding priority groups. (#3099)
- Improved package metadata inspection of nested poetry projects within project path dependencies. (#3105)
Fixed #
- Fixed export of
requirements.txtwhen project dependency contains git dependencies. (#3100)
1.1.1 - 2020-10-05 #
Added #
- Added
--no-updateoption tolockcommand. (#3034)
Fixed #
- Fixed resolution of packages with missing required extras. (#3035)
- Fixed export of
requirements.txtdependencies to include development dependencies. (#3024) - Fixed incorrect selection of unsupported binary distribution formats when selecting a package artifact to install. (#3058)
- Fixed incorrect use of system executable when building package distributions via
buildcommand. (#3056) - Fixed errors in
initcommand when specifying--dependencyin non-interactive mode when apyproject.tomlfile already exists. (#3076) - Fixed incorrect selection of configured source url when a publish repository url configuration with the same name already exists. (#3047)
- Fixed dependency resolution issues when the same package is specified in multiple dependency extras. (#3046)
1.1.0 - 2020-10-01 #
Changed #
- The
initcommand will now use existingpyproject.tomlif possible (#2448). - Error messages when metadata information retrieval fails have been improved (#2997).
Fixed #
- Fixed parsing of version constraint for
rcprereleases (#2978). - Fixed how some metadata information are extracted from
setup.cfgfiles (#2957). - Fixed return codes returned by the executor (#2981).
- Fixed whitespaces not being accepted for the list of extras when adding packages (#2985).
- Fixed repositories specified in the
pyproject.tomlfile not being taken into account for authentication when downloading packages (#2990). - Fixed permission errors when installing the root project if the
site-packagesdirectory is not writeable (#3002). - Fixed environment marker propagation when exporting to the
requirements.txtformat (#3002). - Fixed errors when paths in run command contained spaces (#3015).
1.1.0rc1 - 2020-09-25 #
Changed #
- The
virtualenvs.in-projectsetting will now always be honored, if set explicitly, regardless of the presence of a.venvdirectory (#2771). - Adding packages already present in the
pyproject.tomlfile will no longer raise an error (#2886). - Errors when authenticating against custom repositories will now be logged (#2577).
Fixed #
- Fixed an error on Python 3.5 when resolving URL dependencies (#2954).
- Fixed the
dependencyoption of theinitcommand being ignored (#2587). - Fixed the
showcommand displaying erroneous information following the changes in the lock file format (#2967). - Fixed dependency resolution errors due to invalid python constraints propagation (#2968).
1.1.0b4 - 2020-09-23 #
Changed #
- When running under Python 2.7 on Windows, install command will be limited to one worker to mitigate threading issue (#2941).
1.1.0b3 - 2020-09-18 #
Changed #
- Improved the error reporting when HTTP error are encountered for legacy repositories (#2459).
- When displaying the name of packages retrieved from remote repositories, the original name will now be used (#2305).
- Failed package downloads will now be retried on connection errors (#2813).
- Path dependencies will now be installed as editable only when
developoption is set totrue(#2887).
Fixed #
- Fixed the detection of the type of installed packages (#2722).
- Fixed deadlocks when installing packages on systems not supporting non-ascii characters (#2721).
- Fixed handling of wildcard constraints for packages with prereleases only (#2821).
- Fixed dependencies of some packages not being discovered by ensuring we use the PEP-516 backend if specified (#2810).
- Fixed recursion errors when retrieving extras (#2787).
- Fixed
PyPIalways being displayed when publishing even for custom repositories (#2905). - Fixed handling of packages extras when resolving dependencies (#2887).
1.1.0b2 - 2020-07-24 #
Changed #
- Added support for build scripts without the
setup.pyfile generation in the editable builder (#2718).
Fixed #
- Fixed an error occurring when using older lock files (#2717).
1.1.0b1 - 2020-07-24 #
Changed #
- Virtual environments will now exclusively be built with
virtualenv(#2666). - Support for Python 2.7 and 3.5 is now officially deprecated and a warning message will be displayed (#2683).
- Improved metadata inspection of packages by using the PEP-517 build system (#2632).
Fixed #
- Fixed parallel tasks not being cancelled when the installation is interrupted or has failed (#2656).
- Fixed an error where the editable builder would not expose all packages (#2664).
- Fixed an error for Python 2.7 when a file could not be downloaded in the installer (#2709).
- Fixed the lock file
content-hashvalue not being updated when using theaddandremovecommands (#2710). - Fixed incorrect resolution errors being raised for packages with python requirements (#2712).
- Fixed an error causing the build log messages to no longer be displayed (#2715).
1.0.10 - 2020-07-21 #
Changed #
- The lock files are now versioned to ease transitions for lock file format changes, with warnings being displayed on incompatibility detection (#2695).
- The
initandnewcommands will now provide hints on invalid given licenses (#1634).
Fixed #
- Fixed error messages when the authors specified in the
pyproject.tomlfile are invalid (#2525). - Fixed empty
.venvdirectories being deleted (#2064). - Fixed the
shellcommand fortcshshells (#2583). - Fixed errors when installing directory or file dependencies in some cases (#2582).
1.1.0a3 - 2020-07-10 #
Added #
- New installer which provides a faster and better experience (#2595).
Fixed #
- Fixed resolution error when handling duplicate dependencies with environment markers (#2622).
- Fixed erroneous resolution errors when resolving packages to install (#2625).
- Fixed errors when detecting installed editable packages (#2602).
1.1.0a2 - 2020-06-26 #
Note that lock files generated with this release are not compatible with previous releases of Poetry.
Added #
- The
installcommand now supports a--remove-untrackedoption to ensure only packages from the lock file are present in the environment (#2172). - Some errors will now be provided with possible solutions and links to the documentation (#2396).
Changed #
- Editable installations of Poetry projects have been improved and are now faster (#2360).
- Improved the accuracy of the dependency resolver in case of dependencies with environment markers (#2361)
- Environment markers of dependencies are no longer stored in the lock file (#2361).
- Improved the way connection errors are handled when publishing (#2285).
Fixed #
- Fixed errors when handling duplicate dependencies with environment markers (#2342).
- Fixed the detection of installed packages (#2360).
1.1.0a1 - 2020-03-27 #
This release must be downloaded via the get-poetry.py script and not via the self update command.
Added #
- Added a new
--dry-runoption to thepublishcommand (#2199).
Changed #
- The core features of Poetry have been extracted in to a separate library:
poetry-core(#2212). - The build backend is no longer
poetry.masonry.apibutpoetry.core.masonry.apiwhich requirespoetry-core>=1.0.0a5(#2212). - The exceptions are now beautifully displayed in the terminal with various level of details depending on the verbosity (2230).
1.0.9 - 2020-06-09 #
Fixed #
- Fixed an issue where packages from custom indices where continuously updated (#2525).
- Fixed errors in the way Python environment markers were parsed and generated (#2526).
1.0.8 - 2020-06-05 #
Fixed #
- Fixed a possible error when installing the root package (#2505).
- Fixed an error where directory and VCS dependencies were not installed (#2505).
1.0.7 - 2020-06-05 #
Fixed #
- Fixed an error when trying to execute some packages
setup.pyfile (#2349).
1.0.6 - 2020-06-05 #
Changed #
- The
self updatecommand has been updated in order to handle future releases of Poetry (#2429).
Fixed #
- Fixed an error were a new line was not written when displaying the virtual environment’s path with
env info(#2196). - Fixed a misleading error message when the
packagesproperty was empty (#2265). - Fixed shell detection by using environment variables (#2147).
- Fixed the removal of VCS dependencies (#2239).
- Fixed generated wheel ABI tags for Python 3.8 (#2121).
- Fixed a regression when building stub-only packages (#2000).
- Fixed errors when parsing PEP-440 constraints with whitespace (#2347).
- Fixed PEP 508 representation of VCS dependencies (#2349).
- Fixed errors when source distributions were read-only (#1140).
- Fixed dependency resolution errors and inconsistencies with directory, file and VCS dependencies (#2398).
- Fixed custom repositories information not being properly locked (#2484).
1.0.5 - 2020-02-29 #
Fixed #
- Fixed an error when building distributions if the
gitexecutable was not found (#2105). - Fixed various errors when reading Poetry’s TOML files by upgrading tomlkit.
1.0.4 - 2020-02-28 #
Fixed #
- Fixed the PyPI URL used when installing packages (#2099).
- Fixed errors when the author’s name contains special characters (#2006).
- Fixed VCS excluded files detection when building wheels (#1947).
- Fixed packages detection when building sdists (#1626).
- Fixed the local
.venvvirtual environment not being displayed inenv list(#1762). - Fixed incompatibilities with the most recent versions of
virtualenv(#2096). - Fixed Poetry’s own vendor dependencies being retrieved when updating dependencies (#1981).
- Fixed encoding of credentials in URLs (#1911).
- Fixed url constraints not being accepted in multi-constraints dependencies (#2035).
- Fixed an error where credentials specified via environment variables were not retrieved (#2061).
- Fixed an error where git dependencies referencing tags were not locked to the corresponding commit (#1948).
- Fixed an error when parsing packages
setup.pyfiles (#2041). - Fixed an error when parsing some git URLs (#2018).
1.0.3 - 2020-01-31 #
Fixed #
- Fixed an error which caused the configuration environment variables (like
POETRY_HTTP_BASIC_XXX_PASSWORD) to not be used (#1909). - Fixed an error where the
--helpoption was not working (#1910). - Fixed an error where packages from private indices were not decompressed properly (#1851).
- Fixed an error where the version of some PEP-508-formatted wheel dependencies was not properly retrieved (#1932).
- Fixed internal regexps to avoid potential catastrophic backtracking errors (#1913).
- Fixed performance issues when custom indices were defined in the
pyproject.tomlfile (#1892). - Fixed the
get_requires_for_build_wheel()function ofmasonry.apiwhich wasn’t returning the proper result (#1875).
1.0.2 - 2020-01-10 #
Fixed #
- Reverted a previous fix (#1796) which was causing errors for projects with file and/or directory dependencies (#1865).
1.0.1 - 2020-01-10 #
Fixed #
- Fixed an error in
env usewhere the wrong Python executable was being used to check compatibility (#1736). - Fixed an error where VCS dependencies were not properly categorized as development dependencies (#1725).
- Fixed an error where some shells would no longer be usable after using the
shellcommand (#1673). - Fixed an error where explicitly included files where not included in wheel distributions (#1750).
- Fixed an error where some Git dependencies url were not properly parsed (#1756).
- Fixed an error in the
envcommands on Windows if the path to the executable contained a space (#1774). - Fixed several errors and UX issues caused by
keyringon some systems (#1788). - Fixed errors when trying to detect installed packages (#1786).
- Fixed an error when packaging projects where Python packages were not properly detected (#1592).
- Fixed an error where local file dependencies were exported as editable when using the
exportcommand (#1840). - Fixed the way environment markers are propagated and evaluated when resolving dependencies (#1829, #1789).
- Fixed an error in the PEP-508 compliant representation of directory and file dependencies (#1796).
- Fixed an error where invalid virtual environments would be silently used. They will not be recreated and a warning will be displayed (#1797).
- Fixed an error where dependencies were not properly detected when reading the
setup.pyfile in some cases (#1764).
1.0.0 - 2019-12-12 #
Added #
- Added an
exportcommand to export the lock file to other formats (onlyrequirements.txtis currently supported). - Added a
env infocommand to get basic information about the current environment. - Added a
env usecommand to control the Python version used by the project. - Added a
env listcommand to list the virtualenvs associated with the current project. - Added a
env removecommand to delete virtualenvs associated with the current project. - Added support for
POETRY_HOMEdeclaration withinget-poetry.py. - Added support for declaring a specific source for dependencies.
- Added support for disabling PyPI and making another repository the default one.
- Added support for declaring private repositories as secondary.
- Added the ability to specify packages on a per-format basis.
- Added support for custom urls in metadata.
- Full environment markers are now supported for dependencies via the
markersproperty. - Added the ability to specify git dependencies directly in
add, it no longer requires the--gitoption. - Added the ability to specify path dependencies directly in
add, it no longer requires the--pathoption. - Added support for url dependencies (#1260).
- Publishing to PyPI using API tokens is now supported (#1275).
- Licenses can now be identified by their full name.
- Added support for custom certificate authority and client certificates for private repositories.
- Poetry can now detect and use Conda environments.
Changed #
- Slightly changed the lock file, making it potentially incompatible with previous Poetry versions.
- The
cache:clearcommand has been renamed tocache clear. - The
debug:infocommand has been renamed todebug info. - The
debug:resolvecommand has been renamed todebug resolve. - The
self:updatecommand has been renamed toself update. - Changed the way virtualenvs are stored (names now depend on the project’s path).
- The
--gitoption of theaddcommand has been removed. - The
--pathoption of theaddcommand has been removed. - The
addcommand will now automatically select the latest prerelease if only prereleases are available. - The
addcommand can now update a dependencies if an explicit constraint is given (#1221). - Removed the
--developoption from theinstallcommand. - Improved UX when searching for packages in the
initcommand. - The
shellcommand has been improved. - The
poetry runcommand now usesos.execvp()rather than spawning a new subprocess. - Specifying dependencies with
allows-prereleasesin thepyproject.tomlfile is deprecated for consistency with theaddcommand. Useallow-prereleasesinstead. - Improved the error message when the lock file is invalid.
- Whenever Poetry needs to use the “system” Python, it will now call
sys.executableinstead of thepythoncommand. - Improved the error message displayed on conflicting Python requirements (#1681).
- Improved the
site-packagesdirectory detection (#1683).
Fixed #
- Fixed transitive extra dependencies being removed when updating a specific dependency.
- The
pyproject.tomlconfiguration is now properly validated. - Fixed installing Poetry-based packages breaking with
pip. - Fixed packages with empty markers being added to the lock file.
- Fixed invalid lock file generation in some cases.
- Fixed local version identifier handling in wheel file names.
- Fixed packages with invalid metadata triggering an error instead of being skipped.
- Fixed the generation of invalid lock files in some cases.
- Git dependencies are now properly locked to a specific revision when specifying a branch or a tag.
- Fixed the behavior of the
~=operator. - Fixed dependency resolution for conditional development dependencies.
- Fixed generated dependency constraints when they contain inequality operators.
- The
runcommand now properly handles the--separator. - Fixed some issues with
pathdependencies being seen asgitdependencies. - Fixed various issues with the way
extramarkers in dependencies were handled. - Fixed the option conflicts in the
runcommand. - Fixed wrong latest version being displayed when executing
show -l. - Fixed
TooManyRedirectserrors being raised when resolving dependencies. - Fixed custom indices dependencies being constantly updated.
- Fixed the behavior of the
--installoption of the debug resolve command. - Fixed an error in
showwhen using the-o/--outdatedoption. - Fixed PEP 508 url dependency handling.
- Fixed excluded files via the
excludebeing included in distributions. - Fixed an error in
env useif thevirtualenvs.in-projectsetting is activated (#1682) - Fixed handling of
emptyandanymarkers in unions of markers (#1650).
0.12.17 - 2019-07-03 #
Fixed #
- Fixed dependency resolution with circular dependencies.
- Fixed encoding errors when reading files on Windows. (Thanks to @vlcinsky)
- Fixed unclear errors when executing commands in virtual environments. (Thanks to @Imaclean74)
- Fixed handling of
.venvwhen it’s not a directory. (Thanks to @mpanarin)
0.12.16 - 2019-05-17 #
Fixed #
- Fixed packages with no hashes retrieval for legacy repositories.
- Fixed multiple constraints for dev dependencies.
- Fixed dependency resolution failing on badly formed package versions instead of skipping.
- Fixed permissions of built wheels.
0.12.15 - 2019-05-03 #
Fixed #
- Fixed an
AttributeErrorin the editable builder. - Fixed resolution of packages with only Python 3 wheels and sdist when resolving for legacy repositories.
- Fixed non-sha256 hashes retrieval for legacy repositories.
0.12.14 - 2019-04-26 #
Fixed #
- Fixed root package installation for pure Python packages.
0.12.13 - 2019-04-26 #
Fixed #
- Fixed root package installation with
pip>=19.0. - Fixed packages not being removed after using the
removecommand.
0.12.12 - 2019-04-11 #
Fixed #
- Fix lock idempotency.
- Fix markers evaluation for
python_versionwith precision < 3. - Fix permissions of the
dist-infofiles. - Fix
prepare_metadata_for_build_wheel()missing in the build backend. - Fix metadata inconsistency between wheels and sdists.
- Fix parsing of
platform_releasemarkers. - Fix metadata information when the project has git dependencies.
- Fix error reporting when publishing fails.
- Fix retrieval of
extras_requirein somesetup.pyfiles. (Thanks to @asodeur) - Fix wheel compression when building. (Thanks to @ccosby)
- Improve retrieval of information for packages with two python specific wheels.
- Fix request authentication when credentials are included in URLs. (Thanks to @connorbrinton)
0.12.11 - 2019-01-13 #
Fixed #
- Fixed the way packages information are retrieved for legacy repositories.
- Fixed an error when adding packages with invalid versions.
- Fixed an error when resolving directory dependencies with no sub dependencies.
- Fixed an error when locking packages with no description.
- Fixed path resolution for transitive file dependencies.
- Fixed multiple constraints handling for the root package.
- Fixed exclude functionality on case sensitive systems.
0.12.10 - 2018-11-22 #
Fixed #
- Fixed
runnot executing scripts. - Fixed environment detection.
- Fixed handling of authentication for legacy repositories.
0.12.9 - 2018-11-19 #
Fixed #
- Fixed executables from outside the virtualenv not being accessible.
- Fixed a possible error when building distributions with the
excludeoption. - Fixed the
runcommand for namespaced packages. - Fixed errors for virtualenvs with spaces in their path.
- Fixed prerelease versions being selected with the
addcommand.
0.12.8 - 2018-11-13 #
Fixed #
- Fixed permission errors when adding/removing git dependencies on Windows.
- Fixed
Poolnot raising an exception when no package could be found. - Fixed reading
bz2source distribution. - Fixed handling of arbitrary equals in
InstalledRepository.
0.12.7 - 2018-11-08 #
Fixed #
- Fixed reading of some
setup.pyfiles. - Fixed a
KeyErrorwhen getting information for packages which require reading setup files. - Fixed the building of wheels with C extensions and an
srclayout. - Fixed extras being selected when resolving dependencies even when not required.
- Fixed performance issues when packaging projects if a lot of files were excluded.
- Fixed installation of files.
- Fixed extras not being retrieved for legacy repositories.
- Fixed invalid transitive constraints raising an error for legacy repositories.
0.12.6 - 2018-11-05 #
Changed #
- Poetry will now try to read, without executing, setup files (
setup.pyand/orsetup.cfg) if theegg_infocommand fails when resolving dependencies.
Fixed #
- Fixed installation of directory dependencies.
- Fixed handling of dependencies with a
not inmarker operator. - Fixed support for VCS dependencies.
- Fixed the
excludeproperty not being respected if no VCS was available.
0.12.5 - 2018-10-26 #
Fixed #
- Fixed installation of Poetry git dependencies with a build system.
- Fixed possible errors when resolving dependencies for specific packages.
- Fixed handling of Python versions compatibility.
- Fixed the dependency resolver picking up unnecessary dependencies due to not using the
python_full_versionmarker. - Fixed the
Python-Requiresmetadata being invalid for single Python versions.
0.12.4 - 2018-10-21 #
Fixed #
- Fixed possible error on some combinations of markers.
- Fixed venv detection so that it only uses
VIRTUAL_ENVto detect activated virtualenvs.
0.12.3 - 2018-10-18 #
Fixed #
- Fixed the
--no-devoption ininstallnot working properly. - Fixed prereleases being selected even if another constraint conflicted with them.
- Fixed an error when installing current package in development mode if the generated
setup.pyhad special characters. - Fixed an error in
installfor applications not following a known structure. - Fixed an error when trying to retrieve the current environment.
- Fixed
debug:infonot showing the current project’s virtualenv.
0.12.2 - 2018-10-17 #
Fixed #
- Fixed an error when installing from private repositories.
- Fixed an error when trying to move the lock file on Python 2.7.
0.12.1 - 2018-10-17 #
Fixed #
- Fixed an error when license is unspecified.
0.12.0 - 2018-10-17 #
Added #
- Added a brand new installer.
- Added support for multi-constraints dependencies.
- Added a cache version system.
- Added a
--lockoption toupdateto only update the lock file without executing operations. (Thanks to @greysteil) - Added support for the
Project-URLmetadata. - Added support for optional scripts.
- Added a
--no-devoption toshow. (Thanks to @rodcloutier)
Changed #
- Improved virtualenv detection and management.
- Wildcard
pythondependencies are now equivalent to~2.7 || ^3.4. - Changed behavior of the resolver for conditional dependencies.
- The
installcommand will now install the current project in editable mode. - The
developcommand is now deprecated in favor ofinstall. - Improved the
checkcommand. - Empty passwords are now supported when publishing.
Fixed #
- Fixed a memory leak in the resolver.
- Fixed a recursion error on duplicate dependencies with only different extras.
- Fixed handling of extras.
- Fixed duplicate entries in both sdist and wheel.
- Fixed excluded files appearing in the
package_dataof the generatedsetup.py. - Fixed transitive directory dependencies installation.
- Fixed file permissions for configuration and authentication files.
- Fixed an error in
cache:clearfor Python 2.7. - Fixed publishing for the first time with a prerelease.
0.11.5 - 2018-09-04 #
Fixed #
- Fixed a recursion error with circular dependencies.
- Fixed the
configcommand setting incorrect values for paths. - Fixed an
OSErroron Python >= 3.5 forgitdependencies with recursive symlinks. - Fixed the possible deletion of system paths by
cache:clear. - Fixed a performance issue when parsing the lock file by upgrading
tomlkit.
0.11.4 - 2018-07-30 #
Fixed #
- Fixed wrong wheel being selected when resolving dependencies.
- Fixed an error when publishing.
- Fixed an error when building wheels with the
packagesproperty set. - Fixed single value display in
configcommand.
0.11.3 - 2018-07-26 #
Changed #
- Poetry now only uses TOML Kit for TOML files manipulation.
- Improved dependency resolution debug information.
Fixed #
- Fixed missing dependency information for some packages.
- Fixed handling of single versions when packaging.
- Fixed dependency information retrieval from
.zipand.bz2archives. - Fixed searching for and installing packages from private repositories with authentication. (Thanks to @MarcDufresne)
- Fixed a potential error when checking the
pyproject.tomlvalidity. (Thanks to @ojii) - Fixed the lock file not tracking the
extrasinformation frompyproject.toml. (Thanks to @cauebs) - Fixed missing trailing slash in the Simple API urls for private repositories. (Thanks to @bradsbrown)
0.11.2 - 2018-07-03 #
Fixed #
- Fixed missing dependencies when resolving in some cases.
- Fixed path dependencies not working in
dev-dependencies. - Fixed license validation in
init. (Thanks to @cauebs)
0.11.1 - 2018-06-29 #
Fixed #
- Fixed an error when locking dependencies on Python 2.7.
0.11.0 - 2018-06-28 #
Added #
- Added support for
packages,includeandexcludeproperties. - Added a new
shellcommand. (Thanks to @cauebs) - Added license validation in
initcommand.
Changed #
- Changed the dependency installation order, deepest dependencies are now installed first.
- Improved solver error messages.
poetrynow always reads/writes thepyproject.tomlfile with theutf-8encoding.config --listnow lists all available settings.initno longer addspytestto development dependencies.
Fixed #
- Fixed handling of duplicate dependencies with different constraints.
- Fixed system requirements in lock file for sub dependencies.
- Fixed detection of new prereleases.
- Fixed unsafe packages being locked.
- Fixed versions detection in custom repositories.
- Fixed package finding with multiple custom repositories.
- Fixed handling of root incompatibilities.
- Fixed an error where packages from custom repositories would not be found.
- Fixed wildcard Python requirement being wrongly set in distributions metadata.
- Fixed installation of packages from a custom repository.
- Fixed
removecommand’s case sensitivity. (Thanks to @cauebs) - Fixed detection of
.egg-infodirectory for non-poetry projects. (Thanks to @gtors) - Fixed only-wheel builds. (Thanks to @gtors)
- Fixed key and array order in lock file to avoid having differences when relocking.
- Fixed errors when
gitcould not be found.
0.10.3 - 2018-06-04 #
Fixed #
- Fixed
self:updatecommand on Windows. - Fixed
self:updatenot picking up new versions. - Fixed a
RuntimeErroron Python 3.7. - Fixed bad version number being picked with private repositories.
- Fixed handling of duplicate dependencies with same constraint.
- Fixed installation from custom repositories.
- Fixed setting an explicit version in
versioncommand. - Fixed parsing of wildcards version constraints.
0.10.2 - 2018-05-31 #
Fixed #
- Fixed handling of
inenvironment markers with commas. - Fixed a
UnicodeDecodeErrorwhen an error occurs in venv. - Fixed Python requirements not properly set when resolving dependencies.
- Fixed terminal coloring being activated even if not supported.
- Fixed wrong executable being picked up on Windows in
poetry run. - Fixed error when listing distribution links for private repositories.
- Fixed handling of PEP 440
~=version constraint.
0.10.1 - 2018-05-28 #
Fixed #
- Fixed packages not found for prerelease version constraints when resolving dependencies.
- Fixed
initandaddcommands.
0.10.0 - 2018-05-28 #
Added #
- Added a new, more efficient dependency resolver.
- Added a new
initcommand to generate apyproject.tomlfile in existing projects. - Added a new setting
settings.virtualenvs.in-projectto makepoetrycreate the project’s virtualenv inside the project’s directory. - Added the
--extrasand--pythonoptions todebug:resolveto help debug dependency resolution. - Added a
--srcoption tonewcommand to create ansrclayout. - Added support for specifying the
platformfor dependencies. - Added the
--pythonoption to theaddcommand. - Added the
--platformoption to theaddcommand. - Added a
--developoption to the install command to install path dependencies in development/editable mode. - Added a
developcommand to install the current project in development mode.
Changed #
- Improved the
showcommand to make it easier to check if packages are properly installed. - The
scriptcommand has been deprecated, useruninstead. - The
publishcommand no longer build packages by default. Use--buildto retrieve the previous behavior. - Improved support for private repositories.
- Expanded version constraints now keep the original version’s precision.
- The lock file hash no longer uses the project’s name and version.
- The
LICENSEfile, or similar, is now automatically added to the built packages.
Fixed #
- Fixed the dependency resolver selecting incompatible packages.
- Fixed override of dependency with dependency with extras in
dev-dependencies.
0.9.1 - 2018-05-18 #
Fixed #
- Fixed handling of package names with dots. (Thanks to bertjwregeer)
- Fixed path dependencies being resolved from the current path instead of the
pyproject.tomlfile. (Thanks to radix)
0.9.0 - 2018-05-07 #
Added #
- Added the
cache:clearcommand. - Added support for
gitdependencies in theaddcommand. - Added support for
pathdependencies in theaddcommand. - Added support for extras in the
addcommand. - Added support for directory dependencies.
- Added support for
src/layout for packages. - Added automatic detection of
.venvvirtualenvs.
Changed #
- Drastically improved dependency resolution speed.
- Dependency resolution caches now use sha256 hashes.
- Changed CLI error style.
- Improved debugging of dependency resolution.
- Poetry now attempts to find
pyproject.tomlnot only in the directory it was invoked in, but in all its parents up to the root. This allows to run Poetry commands in project subdirectories. - Made the email address for authors optional.
Fixed #
- Fixed handling of extras when resolving dependencies.
- Fixed
self:updatecommand for some installation. - Fixed handling of extras when building projects.
- Fixed handling of wildcard dependencies wen packaging/publishing.
- Fixed an error when adding a new packages with prereleases in lock file.
- Fixed packages name normalization.
0.8.6 - 2018-04-30 #
Fixed #
- Fixed config files not being created.
0.8.5 - 2018-04-19 #
Fixed #
- Fixed a bug in dependency resolution which led to installation errors.
- Fixed a bug where malformed sdists would lead to dependency resolution failing.
0.8.4 - 2018-04-18 #
Fixed #
- Fixed a bug where dependencies constraints in lock were too strict.
- Fixed unicode error in
searchcommand for Python 2.7. - Fixed error with git dependencies.
0.8.3 - 2018-04-16 #
Fixed #
- Fixed platform verification which led to missing packages.
- Fixed duplicates in
pyproject.lock.
0.8.2 - 2018-04-14 #
Fixed #
- Fixed
addcommand picking up prereleases by default. - Fixed dependency resolution on Windows when unpacking distributions.
- Fixed dependency resolution with post releases.
- Fixed dependencies being installed even if not necessary for current system.
0.8.1 - 2018-04-13 #
Fixed #
- Fixed resolution with bad (empty) releases.
- Fixed
versionfor prereleases. - Fixed
searchnot working outside of a project. - Fixed
self:updatenot working outside of a project.
0.8.0 - 2018-04-13 #
Added #
- Added support for Python 2.7.
- Added a fallback mechanism for missing dependencies.
- Added the
searchcommand. - Added support for local files as dependencies.
- Added the
self:updatecommand.
Changes #
- Improved dependency resolution time by using cache control.
Fixed #
- Fixed
install_requiresandextrasin generated sdist. - Fixed dependency resolution crash with malformed dependencies.
- Fixed errors when
licensemetadata is not set. - Fixed missing information in lock file.
0.7.1 - 2018-04-05 #
Fixed #
- Fixed dependency resolution for custom repositories.
0.7.0 - 2018-04-04 #
Added #
- Added compatibility with Python 3.4 and 3.5.
- Added the
versioncommand to automatically bump the package’s version. - Added a standalone installer to install
poetryisolated. - Added support for classifiers in
pyproject.toml. - Added the
scriptcommand.
Changed #
- Improved dependency resolution to avoid unnecessary operations.
- Improved dependency resolution speed.
- Improved CLI reactivity by deferring imports.
- License classifier is not automatically added to classifiers.
Fixed #
- Fixed handling of markers with the
inoperator. - Fixed
updatenot properly adding new packages to the lock file. - Fixed solver adding uninstall operations for non-installed packages.
- Fixed
newcommand creating invalidpyproject.tomlfiles.
0.6.5 - 2018-03-22 #
Fixed #
- Fixed handling of extras in wheels metadata.
0.6.4 - 2018-03-21 #
Added #
- Added a
debug:infocommand to get information about current environment.
Fixed #
- Fixed Python version retrieval inside virtualenvs.
- Fixed optional dependencies being set as required in sdist.
- Fixed
--optionaloption in theaddcommand not being used.
0.6.3 - 2018-03-20 #
Fixed #
- Fixed built wheels not getting information from the virtualenv.
- Fixed building wheel with conditional extensions.
- Fixed missing files in built wheel with extensions.
- Fixed call to venv binaries on windows.
- Fixed subdependencies representation in lock file.
0.6.2 - 2018-03-19 #
Changed #
- Changed how wildcard constraints are handled.
Fixed #
- Fixed errors with pip 9.0.2.
0.6.1 - 2018-02-18 #
Fixed #
- Fixed wheel entry points being written on a single line.
- Fixed wheel metadata (Tag and Root-Is-Purelib).
0.6.0 - 2018-03-16 #
Added #
- Added support for virtualenv autogeneration (Python 3.6+ only).
- Added the
runcommand to execute commands inside the created virtualenvs. - Added the
debug:resolvecommand to debug dependency resolution. - Added
pyproject.tomlfile validation. - Added support for Markdown readme files.
Fixed #
- Fixed color displayed in
showcommand for semver-compatible updates. - Fixed Python requirements in publishing metadata.
- Fixed
updatecommand reinstalling every dependency.
0.5.0 - 2018-03-14 #
Added #
- Added experimental support for package with C extensions.
Changed #
- Added hashes check when installing packages.
Fixed #
- Fixed handling of post releases.
- Fixed python restricted dependencies not being checked against virtualenv version.
- Fixed python/platform constraint not being picked up for subdependencies.
- Fixed skipped packages appearing as installing.
- Fixed platform specification not being used when resolving dependencies.
0.4.2 - 2018-03-10 #
Fixed #
- Fixed TypeError when
requires_distis null on PyPI.
0.4.1 - 2018-03-08 #
Fixed #
- Fixed missing entry point
0.4.0 - 2018-03-08 #
Added #
- Added packaging support (sdist and pure-python wheel).
- Added the
buildcommand. - Added support for extras definition.
- Added support for dependencies extras specification.
- Added the
configcommand. - Added the
publishcommand.
Changed #
- Dependencies system constraints are now respected when installing packages.
- Complied with PEP 440
Fixed #
- Fixed
showcommand for VCS dependencies. - Fixed handling of releases with bad markers in PyPiRepository.
0.3.0 - 2018-03-05 #
Added #
- Added
showcommand. - Added the
--dry-runoption to theaddcommand.
Changed #
- Changed the
poetry.tomlfile for the new, standardizedpyproject.toml. - Dependencies of each package is now stored in the lock file.
- Improved TOML file management.
- Dependency resolver now respects the root package python version requirements.
Fixed #
- Fixed the
addcommand for packages with dots in their names.
0.2.0 - 2018-03-01 #
Added #
- Added
removecommand. - Added basic support for VCS (git) dependencies.
- Added support for private repositories.
Changed #
- Changed
poetry.lockformat.
Fixed #
- Fixed dependencies solving that would lead to dependencies not being written to lock.
0.1.0 - 2018-02-28 #
Initial release