Features & Improvements
- Allow excluding packages from the lockfile via
tool.pdm.resolution.excludes
setting, the dependencies will also be skipped. #1316 - Rename
--no-lock
option to--frozen-lockfile
. #2496 - Add
--no-hashes
as the recommended option name in favor of--without-hashes
forpdm export
command. #2497 - Add
--no-markers
toexport
command to exclude markers from the output. #2497 - Allow initializing a project without extra project files, with a new builtin template "minimal". Run it with
pdm init minimal
. #2543 - Change the warning category emitted by
deprecated_warning()
toPDMDeprecationWarning
. #2547 - Prereleases will be allowed if a prerelease version is pinned in the lockfile. This can be disabled by passing
--stable
option. #2552 - Change
tracked_names
argument to keyword-only. Moveallow_prereleases
setting totool.pdm.resolution
table. #2552 - Rename the
preferred_pins
argument of provider classes tolocked_candidates
, and deprecate the old name. #2552 - Rename the
package-type
field undertool.pdm
settings table todistribution
to make it more clear. #2564
Bug Fixes
tool.pdm.resolution
settings won't be honored when installing dependencies into the build environment. #1316- Fixed pdm list output containing full license text in some cases #2538
- Fix the environment variable substitution for
cmd
scripts. #2542 - Allow normal extension modules in wheel tags when the python is debug build. #2548
- Don't use pypi.org when pypi.url is set. #2560
Removals and Deprecations
- Remove deprecated methods from
Project
. Remove deprecated helper functions fromactions.py
. #2547