Skip to content

Releases: pdm-project/pdm

v2.8.1

26 Jul 05:35
439eb9b
Compare
Choose a tag to compare

Features & Improvements

  • Add keyring, copier, cookiecutter, template, truststore dependency groups. #2109
  • Ignore wheels for python versions not in range. #2113
  • Read default value from env var PDM_PROJECT for -p/--project option. #2126

Bug Fixes

  • Fix the comparison of the candidate keys in the lockfile. #2120
  • Don't update pyproject.toml if both --unconstrained and --dry-run are passed to pdm update. #2125
  • Overwrite the build-system table when importing from other package manager. #2126
  • Skip sources with empty URL when merging sources. #2130
  • Fix the invalid requirement converted from poetry metadata. #2133

Dependencies

  • Update unearth to 0.10.0 #2113

v2.8.0

15 Jul 10:05
1fcd398
Compare
Choose a tag to compare

Features & Improvements

  • Support target python with other architectures. #2078
  • Display the help information when running pdm directly. #2081
  • Allow to change the python providers from the config. Support finding pythons from Rye installation location with the new findpython. #2099
  • Option to save static URLs in the lockfile. By default only filenames are saved. #2101

Bug Fixes

  • Fix a bug that egg-info directories are not removed completely, leading to incomplete distribution. #2027
  • Skip distributions with wrong package meta information and duplicate path. #2075
  • Avoid mistakenly passing command-line arguments while testing. #2083
  • Fix a bug that lockfile groups are overwritten when running locking in a preceding step of pdm install. #2086
  • Tolerate and actually ignore the local versions in version specifiers. #2102
  • Fix a bug that shared cache cannot support overlapping namespace packages. #2105

Documentation

  • Add notes about using custom venv path. #2096

v2.8.0a2

30 Jun 01:46
09a4e26
Compare
Choose a tag to compare
v2.8.0a2 Pre-release
Pre-release

Bug Fixes

  • Fix a bug that dependencies can't be updated when the table is separated by another table. #2056
  • Fix a bug that *_lock hooks are always emitted with dry_run=True in pdm update. #2060
  • Fix a bug that pdm install --plugins can't install self. #2062
  • Fix a cache collision between named requirements and url requirements. #2064

v2.8.0a1

27 Jun 07:58
839f97c
Compare
Choose a tag to compare
v2.8.0a1 Pre-release
Pre-release

Features & Improvements

  • Add support for cookiecutter and copier as project generator. #2059

v2.8.0a0

27 Jun 02:38
ad5cc15
Compare
Choose a tag to compare
v2.8.0a0 Pre-release
Pre-release

Get the latest version

pipx upgrade --pip-args=--pre pdm

Or

pdm self update --pre

Features & Improvements

  • pdm init now accepts a template argument to initialize project from a built-in or Git template. #2053
  • Replace the DeprecationWarning with FutureWarning for better exposure. #2012
  • Serve install-pdm.py and its checksum file on the docs site. #2026
  • Add new option --edit/-e to pdm config to edit the config file in default editor. #2028
  • Add --project option to pdm venv to support another path as the project root. #2042
  • Add support for using truststore as the SSL backend. This only works on Python 3.10 or newer. #2049

Bug Fixes

  • Fix the breaking change by adding the functions back to the old location with deprecation warnings. #2013
  • Fix the duplicate entries in the output of pdm self list. #2018
  • Disable hashes caching for local files. #2019
  • Populate the url field when converting requirements from a Pipfile-style file requirement. #2032
  • Fix a bug that empty source tables in configuration files causes errors when running pdm commands. #2034
  • Fix a resolution conflict caused by requested yanked version also in other transitive dependencies. #2038
  • Fix a bug that binary executables are corrupted when replacing shebangs. #2045
  • Do not normalize the package name when uploading to PyPI. #2057

v2.7.4

13 Jun 04:51
4b06c6a
Compare
Choose a tag to compare

Bug Fixes

  • Fix the warning of extras not found due to extra names not normalized. #2006
  • Pop up a warning when the deprecated parser argument is passed to BaseCommand.__init__() method. #2007
  • Fix a bug that merging settings with AoTs causing a failure. #2011

v2.7.2

12 Jun 03:11
5c47426
Compare
Choose a tag to compare

Features & Improvements

  • Add option to expand environment variables when exporting requirements. #1997

Bug Fixes

  • Case-insensitive sorting in pdm list. #1973
  • Make a compatible cache reader to read the old cache files. #1981
  • Fix a bug that pdm init -n doesn't respect the --python option. #1984
  • Do not use the deprecated nested argument groups. #1988
  • Fix an error parsing setup.py if it prints something to stdout. #1995
  • Exclude yanked versions when running install-pdm.py. #1996

v2.7.1

06 Jun 03:56
0415b64
Compare
Choose a tag to compare

Features & Improvements

  • Switch HTTP data cache to use a split body setup, where the actual body contents are not written to disk unless changed. Previously, any changed headers would write the whole body to disk again. #1971
  • Show the specific install commands for different installations when checking update. This was removed before. #1972

Bug Fixes

  • PDM ignores env vars PDM_PYPI_USERNAME and PDM_PYPI_PASSWORD when there are no defaults in config. #1961
  • Guess the project name from VCS url if it is missing when importing from requirements.txt. #1970
  • Correctly read the config from environment variables. #1977

v2.7.0

29 May 04:11
168ddcd
Compare
Choose a tag to compare

Features & Improvements

  • When keyring is available, either by importing or by CLI, the credentials of repositories and PyPI indexes will be saved into it. #1908
  • Add support for reading metadata from simple index directly. #1919
  • Add a configuration to specify constant command arguments for every pdm invocation. #1923
  • Add ability to skip SSL verification for publish repositories via repository.custom.verify_ssl config option as well as new command line argument of publish command. #1928
  • Use lazy import to reduce the startup time of the CLI. #1929
  • Add the local plugin scripts to PATH env var. #1944

Bug Fixes

  • Don't use install cache when installing build requirements to avoid race condition. #1869
  • Fix a number of ResourceWarnings when running the test suite with warnings enabled. #1915
  • Fix a bug that dev-dependencies group gets updated with the optional dependencies, causing the hash mismatch. #1916
  • Fix format conversion error from Poetry when tool.poetry.build doesn't exist. #1935
  • Add timeout when fetching .gitignore from GitHub. #1937
  • Keep the variables in the URL credentials when exporting. #1939
  • Convert to boolean when setting verify_ssl for custom indexes. #1945
  • pdm import clobbers build-system.requires value in pyproject.toml. #1948

Documentation

  • Update publish.md to use run instead of runs to match GitHub Actions steps documentation #1936
  • Update advanced.md to use pdm sync instead of pdm install --no-lock. #1947

v2.6.1

10 May 03:28
236254f
Compare
Choose a tag to compare

Bug Fixes

  • Fix the error when publishing using trusted publisher. #1868
  • Fix a bug that PATH env var isn't set correctly when running under non-isolation mode. #1904