Pdm

Latest version: v2.20.1

Safety actively analyzes 681866 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 14 of 36

2.3.0

Not secure
---------------------------

Features & Improvements

- Beautify the error message of build errors. Default to showing the last 10 lines of the build output. [1491](https://github.com/pdm-project/pdm/issues/1491)
- Rename the `tool.pdm.overrides` table to `tool.pdm.resolution.overrides`. The old name is deprecated at the same time. [1503](https://github.com/pdm-project/pdm/issues/1503)
- Add backend selection and `--backend` option to `pdm init` command, users can choose a favorite backend from `setuptools`, `flit`, `hatchling` and `pdm-pep517`(default), since they all support PEP 621 standards. [1504](https://github.com/pdm-project/pdm/issues/1504)
- Allows specifying the insertion position of user provided arguments in scripts with the `{args[:default]}` placeholder. [1507](https://github.com/pdm-project/pdm/issues/1507)

Bug Fixes

- The local package is now treated specially during installation and locking. This means it will no longer be included in the lockfile, and should never be installed twice even when using nested extras. This will ensure the lockdown stays relevant when the version changes. [1481](https://github.com/pdm-project/pdm/issues/1481)
- Fix the version diff algorithm of installed packages to consider local versions as compatible. [1497](https://github.com/pdm-project/pdm/issues/1497)
- Fix the confusing message when detecting a Python interpreter under `python.use_venv=False` [1508](https://github.com/pdm-project/pdm/issues/1508)
- Fix the test failure with the latest `findpython` installed. [1516](https://github.com/pdm-project/pdm/issues/1516)
- Fix the module missing error of pywin32 in a virtualenv with `install.cache` set to `true` and caching method is `pth`. [863](https://github.com/pdm-project/pdm/issues/863)

Dependencies

- Drop the dependency `pdm-pep517`. [1504](https://github.com/pdm-project/pdm/issues/1504)
- Replace `pep517` with `pyproject-hooks` because of the rename. [1528](https://github.com/pdm-project/pdm/issues/1528)

Removals and Deprecations

- Remove the support for exporting the project file to a `setup.py` format, users are encouraged to migrate to the PEP 621 metadata. [1504](https://github.com/pdm-project/pdm/issues/1504)

2.2.1

Not secure
---------------------------

Features & Improvements

- Make `sitecustomize.py` respect the `PDM_PROJECT_MAX_DEPTH` environment variable [1471](https://github.com/pdm-project/pdm/issues/1471)

Bug Fixes

- Fix the comparison of `python_version` in the environment marker. When the version contains only one digit, the result was incorrect. [1484](https://github.com/pdm-project/pdm/issues/1484)

2.2.0

Not secure
---------------------------

Features & Improvements

- Add `venv.prompt` configuration to allow customizing prompt when a virtualenv is activated [1332](https://github.com/pdm-project/pdm/issues/1332)
- Allow the use of custom CA certificates per publish repository using `ca_certs` or from the command line via `pdm publish --ca-certs <path> ...`. [1392](https://github.com/pdm-project/pdm/issues/1392)
- Rename the `plugin` command to `self`, and it can not only manage plugins but also all dependencies. Add a subcommand `self update` to update PDM itself. [1406](https://github.com/pdm-project/pdm/issues/1406)
- Allow `pdm init` to receive a Python path or version via `--python` option. [1412](https://github.com/pdm-project/pdm/issues/1412)
- Add a default value for `requires-python` when importing from other formats. [1426](https://github.com/pdm-project/pdm/issues/1426)
- Use `pdm` instead of `pip` to resolve and install build requirements. So that PDM configurations can control the process. [1429](https://github.com/pdm-project/pdm/issues/1429)
- Customizable color theme via `pdm config` command. [1450](https://github.com/pdm-project/pdm/issues/1450)
- A new `pdm lock --check` flag to validate whether the lock is up to date. [1459](https://github.com/pdm-project/pdm/issues/1459)
- Add both option and config item to ship `pip` when creating a new venv. [1463](https://github.com/pdm-project/pdm/issues/1463)
- Issue warning and skip the requirement if it has the same name as the current project. [1466](https://github.com/pdm-project/pdm/issues/1466)
- Enhance the `pdm list` command with new formats: `--csv,--markdown` and add options `--fields,--sort` to control the output contents. Users can also include `licenses` in the `--fields` option to display the package licenses. [1469](https://github.com/pdm-project/pdm/issues/1469)
- A new pre-commit hook to run `pdm lock --check` in pre-commit. [1471](https://github.com/pdm-project/pdm/issues/1471)

Bug Fixes

- Fix the issue that relative paths don't work well with `--project` argument. [1220](https://github.com/pdm-project/pdm/issues/1220)
- It is now possible to refer to a package from outside the project with relative paths in dependencies. [1381](https://github.com/pdm-project/pdm/issues/1381)
- Ensure `pypi.[ca,client]_cert[s]` config items are passed to distribution builder install steps to allow for custom PyPI index sources with self signed certificates. [1396](https://github.com/pdm-project/pdm/issues/1396)
- Fix a crash issue when depending on editable packages with extras. [1401](https://github.com/pdm-project/pdm/issues/1401)
- Do not save the python path when using non-interactive mode in `pdm init`. [1410](https://github.com/pdm-project/pdm/issues/1410)
- Fix the matching of `python*` command in `pdm run`. [1414](https://github.com/pdm-project/pdm/issues/1414)
- Show the Python path, instead of the real executable, in the Python selection menu. [1418](https://github.com/pdm-project/pdm/issues/1418)
- Fix the HTTP client of package publishment to prompt for password and read PDM configurations correctly. [1430](https://github.com/pdm-project/pdm/issues/1430)
- Ignore the unknown fields when constructing a requirement object. [1445](https://github.com/pdm-project/pdm/issues/1445)
- Fix a bug of unrelated candidates being fetched if the requirement is matching wildcard versions(e.g. `==1.*`). [1465](https://github.com/pdm-project/pdm/issues/1465)
- Use `importlib-metadata` from PyPI for Python < 3.10. [1467](https://github.com/pdm-project/pdm/issues/1467)

Documentation

- Clarify the difference between a library and an application. Update the guide of multi-stage docker build. [1371](https://github.com/pdm-project/pdm/issues/1371)

Removals and Deprecations

- Remove all top-level imports, users should import from the submodules instead. [1404](https://github.com/pdm-project/pdm/issues/1404)
- Remove the usages of old config names deprecated since 2.0. [1422](https://github.com/pdm-project/pdm/issues/1422)
- Remove the deprecated color functions, use [rich's console markup](https://rich.readthedocs.io/en/latest/markup.html) instead. [#1452](https://github.com/pdm-project/pdm/issues/1452)

2.1.5

Not secure
---------------------------

Bug Fixes

- Ensure `pypi.[ca,client]_cert[s]` config items are passed to distribution builder install steps to allow for custom PyPI index sources with self signed certificates. [1396](https://github.com/pdm-project/pdm/issues/1396)
- Fix a crash issue when depending on editable packages with extras. [1401](https://github.com/pdm-project/pdm/issues/1401)
- Do not save the python path when using non-interactive mode in `pdm init`. [1410](https://github.com/pdm-project/pdm/issues/1410)
- Restrict importlib-metadata (<5.0.0) for Python <3.8 [1411](https://github.com/pdm-project/pdm/issues/1411)

2.1.4

Not secure
---------------------------

Bug Fixes

- Fix a lock failure when depending on self with URL requirements. [1347](https://github.com/pdm-project/pdm/issues/1347)
- Ensure list to concatenate args for composite scripts. [1359](https://github.com/pdm-project/pdm/issues/1359)
- Fix an error in `pdm lock --refresh` if some packages has URLs. [1361](https://github.com/pdm-project/pdm/issues/1361)
- Fix unnecessary package downloads and VCS clones for certain commands. [1370](https://github.com/pdm-project/pdm/issues/1370)
- Fix a conversion error when converting a list of conditional dependencies from a Poetry format. [1383](https://github.com/pdm-project/pdm/issues/1383)

Documentation

- Adds a section to the docs on how to correctly work with PDM and version control systems. [1364](https://github.com/pdm-project/pdm/issues/1364)

2.1.3

Not secure
---------------------------

Features & Improvements

- When adding a package to (or removing from) a group, enhance the formatting of the group name in the printed message. [1329](https://github.com/pdm-project/pdm/issues/1329)

Bug Fixes

- Fix a bug of missing hashes for packages with `file://` links the first time they are added. [1325](https://github.com/pdm-project/pdm/issues/1325)
- Ignore invalid values of `data-requires-python` when parsing package links. [1334](https://github.com/pdm-project/pdm/issues/1334)
- Leave an incomplete project metadata if PDM fails to parse the project files, but emit a warning. [1337](https://github.com/pdm-project/pdm/issues/1337)
- Fix the bug that `editables` package isn't installed for self package. [1344](https://github.com/pdm-project/pdm/issues/1344)
- Fix a decoding error for non-ASCII characters in package description when publishing it. [1345](https://github.com/pdm-project/pdm/issues/1345)

Documentation

- Clarify documentation explaining `setup-script`, `run-setuptools`, and `is-purelib`. [1327](https://github.com/pdm-project/pdm/issues/1327)

Page 14 of 36

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.