PDM v1.6.0 Release Notes

Release Date: 2021-05-31 // about 3 years ago
  • ๐Ÿ”‹ Features & Improvements

    • ๐Ÿ“ฆ Use a new approach to determine the packages to be installed. This requires a quick resolution step before installation. #456
    • pdm export no longer produces requirements file applicable for all platforms due to the new approach. #456
    • โž• Add structural typing for requirements module. Refactor the requirements 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