Skip to content

Releases: pdm-project/pdm

v1.7.2

30 Jul 04:55
16de812
Compare
Choose a tag to compare

Bug Fixes

  • Remove the existing files before installing. #565
  • Deduplicate the plugins list. #566

v1.7.1

29 Jul 05:24
4188f1a
Compare
Choose a tag to compare

Bug Fixes

  • Accept non-canonical distribution name in the wheel's dist-info directory name. #529
  • Prefer requirments with narrower version constraints or allowing prereleases to find matches. #551
  • Use the underlying real executable path for writing shebangs. #553
  • Fix a bug that extra markers cannot be extracted when combined with other markers with "and". #559
  • Fix a bug that redacted credentials in source urls get overwritten with the plain text after locking. #561

Refactor

  • Use installer as the wheel installer, replacing distlib. #519

v1.7.0

20 Jul 02:25
c0db581
Compare
Choose a tag to compare

Features & Improvements

  • Support showing individual fields by --<field-name> options in pdm show. When no package is given, show this project. #527
  • Add --freeze option to pdm list command which shows the dependencies list as pip's requirements.txt format. #531

Bug Fixes

  • Fix the path manipulation on Windows, now the PEP 582 path is prepended to the PYTHONPATH. #522
  • Fix the handling of auth prompting: will try keyring in non-verbose mode. #523
  • Recognize old entry point name "pdm.plugin" for backward-compatibility. #530
  • Match the VCS scheme in case-insensitive manner. #537
  • Use the default permission bits when writing project files. #542
  • Fix the VCS url to be consistent between lock and install. #547

Improved Documentation

  • Add installation instructions for Scoop. #522

Dependencies

  • Update pdm-pep517 to 0.8.0. #524
  • Switch from toml to tomli. #541

Refactor

  • Seperate the build env into two different levels for better caching. #541
  • Refactor the build part into smaller functions. #543

v1.6.4

23 Jun 05:17
c5f6042
Compare
Choose a tag to compare

Features & Improvements

  • Extract package name from egg-info in filename when eligible. Remove the patching code of resolvelib's inner class. #441
  • Support installing packages from subdiretories of VCS repository. #507
  • Add an install script to bootstrap PDM quickly without help of other tools. Modify docs to recommend this installation method. #508
  • Add a new subcommand plugin to manage pdm plugins, including add, remove and list commands. #510

Bug Fixes

  • Don't monkeypatch the internal class of resolvelib any more. This makes PDM more stable across updates of sub-dependencies. #515

Miscellany

  • Clear the type errors from mypy. #261

v1.6.3

17 Jun 05:46
b1fc3e6
Compare
Choose a tag to compare

Features & Improvements

  • Add an option -u/--unconstrained to support unconstraining version specifiers when adding packages. #501

Bug Fixes

  • Fix the format of dependency arrays when a new value is appended. #487
  • Allow missing email attribute for authors and maintainers. #492
  • Fix a bug that editable install shouldn't require pyproject.toml to be valid. #497
  • Fix a bug on MacOS that purelib and platlib paths of isolated build envs cannot be substituted correctly if the Python is a framework build. #502
  • Fix the version sort of candidates. #506

v1.6.2

31 May 01:54
3df3812
Compare
Choose a tag to compare

No significant changes.

v1.6.1

31 May 01:42
0ef1922
Compare
Choose a tag to compare

No significant changes.

v1.6.0

31 May 01:03
554bef0
Compare
Choose a tag to compare

Features & Improvements

  • Add structural typing for requirements module. Refactor the requirments module for that purpose. #433
  • Introduce --no-editable option to install non-editable versions of all packages. #443
  • Introduce --no-self option to prevent the project itself from being installed. #444
  • Add a default .gitignore file in the __pypackages__ directory. #446
  • Check if the lock file version is compatible with PDM program before installation. #463
  • Expose the project root path via PDM_PROJECT_ROOT env var. Change to the project root when executing scripts. #470
  • Fix a bug that installation resolution doesn't respect the requirement markers from pyproject config. #480

Bug Fixes

  • Changing to multiline breaks the parsing of TOML document. #462
  • Fix a bug that transient dependencies of conditional requirements can't be resolved. #472
  • Fix a bug that invalid wheels are rejected while they are acceptable for resolution. #473
  • Fix a bug that build environment is not fully isolated with the hosted environment. #477
  • Ensure the lock file is compatible before looking for the locked candidates. #484

Improved Documentation

  • Fix 404 links in documentation. #472

Dependencies

  • Migrate from tomlkit to atoml as the style-preserving TOML parser and writer. #465

Removals and Deprecations

  • Remove the warning of --dev flag for older versions of PDM. #444

Miscellany

  • Add Python 3.10 beta CI job. #457

v1.5.3

10 May 06:58
2c2d163
Compare
Choose a tag to compare

Features & Improvements

  • Support passing options to the build backends via --config-setting. #452

Bug Fixes

  • Seek for other sitecustomize.py to import. #422
  • Fix an unescaped single quote in fish completion script. #423
  • The hashes of a remote file candidate should be calculated from the link itself. #450

Dependencies

  • Remove keyring as a dependency and guide users to install it when it is not available. #442
  • Specify the minimum version of distlib. #447

Miscellany

  • Add log output about found candidates and their origin. #421
  • Add mypy pre-commit hook #427
  • Improve type safety of pdm.cli.actions #428
  • Fix wrong mypy configuration. #451

v1.5.2

27 Apr 14:12
e1c4508
Compare
Choose a tag to compare

Features & Improvements

  • Allow pdm use with no argument given, which will list all available pythons for pick. #409

Bug Fixes

  • Inform user to enable PEP 582 for development script to work. #404
  • Check the existence of pyenv shim Python interpreter before using it. #406
  • Fix a bug that executing setup.py failed for NameError. #407
  • Check before setting the PYTHONPATH environment variable for PEP582 #410
  • Fix development setup error. #415

Dependencies

  • Update pip to 21.1 and fix compatibility issues. #412