- Update to 2.12.4
* Officially drop the support for Python 3.7.
* Allow exporting current project as editable dependency with pdm export.
* Use ==major.minor.* as default requires python for application projects.
* We now use the package-type field in the tool.pdm table to differentiate
between library and application projects.
* pdm lock now supports --update-reuse option to keep the pinned versions
in the lockfile if possible.
* Introduce a new lock strategy inherit_metadata to inherit and merge
markers from parent requirements. This is enabled by default when
creating a new lockfile.
* Allow excluding packages from the lockfile via tool.pdm.resolution.excludes
setting, the dependencies will also be skipped.
* Rename --no-lock option to --frozen-lockfile.
* Add --no-markers to export command to exclude markers from the output.
* Change the warning category emitted by deprecated_warning() to PDMDeprecationWarning.
* Rename the preferred_pins argument of provider classes to locked_candidates,
and deprecate the old name.
* Use env PDM_NO_EDITABLE as the default value for --no-editable option.
OBS-URL: https://build.opensuse.org/request/show/1152936
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=38
* Do not detect as requirements.txt if the file is a python script.
* Provide information of the original line when parsing requirement fails.
* Resolve `-r` requirements paths relative to the requirement file they
are specified in.
* Updating package now overwrites the old files instead of removing
before installing.
* Improve the error message when a specific package can't be found in the
lockfile.
* Add lock option to resolve direct dependencies to the minimal versions
available.
* Fix a bug that build requirements are installed into wrong location
when using `--venv` option.
* Officially supports python3.12 now.
* Fix an issue that `--no-lock` option doesn't work as expected. Also
support `--no-lock` option for `add`, `remove` and `update` commands.
* Use `findpython` to find pythons with the spec given by the user.
* Support passing filter patterns as positional arguments to `pdm list`
command. Add `--tree` as an alias and preferred name of `--graph` option.
* Switch to truststore by default.
* Allow `pdm run` to run a script with the relative or absolute path.
* Fix the compatibility issue with copier 8.0+.
* Makes `comarable_version("1.2.3+local1") == Version("1.2.3")`.
* Default behavior for pdm venv activate when shell detection fails.
* Handle parsing errors when converting from poetry-style metadata.
* Remove the legacy build backend `pdm-pep517`.
* Fix the comparison of the candidate keys in the lockfile.
* Don't update `pyproject.toml` if both `--unconstrained` and `--dry-run`
are passed to `pdm update`.
* Skip sources with empty URL when merging sources.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=34
- Disable broken tests
- Update to 2.4.9:
* Fix a bug of synchronization of not considering the revision of
VCS requirement in comparison. #1762
* Improve the error message when parsing an invalid requirement
string. #1765
* Fix a bug that pdm export output doesn't include the extras of the
dependencies. #1767
- Release v2.4.8 (2023-03-09)
* Fix the resolution order to prefer the packages causing the
conflict. This can make the resolution reach a solution faster.
#1752
* Fix a bug that embedded credentials in URL are not respected for
the default source. #1757
- Release v2.4.7 (2023-03-02)
* Abort if lockfile isn't generated when executing pdm export. #1730
* Ignore venv.prompt configuration when using conda as the backend.
#1734
* Fix a bug of finding local packages in the parent folder when it
exists in the current folder. #1736
* Ensure UTF-8 encoding when generating README.md. #1739
* Fix a bug of show command not showing metadata of the current
project. #1740
* Replace . with - when normalizing package name. #1745
* Support using pdm venv activate without specifying env_name to
activate in project venv created by conda #1735
- Release v2.4.6 (2023-02-20)
* Fix a resolution failure when the project has cascading relative
path dependencies. #1702
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=27
* Allow relative paths in `build-system.requires`, since `build` and
`hatch` both support it. Be aware it is not allowed in the standard.
* Strip the local part when building a specifier for comparison with the
package version. This is not permitted by PEP 508 as implemented by
`packaging 22.0`.
* Update the version for check_update after self update
* Fix the matching problem of packages in the lockfile.
* Exclude `package==22.0` from the dependencies to avoid some breakages to
the end users. #1568
* Fix an installation failure when the RECORD file contains commas in the
file path. #1010
* Fallback to `pdm.pep517` as the metadata transformer for unknown custom
build backends. #1546
* Fix a bug that Ctrl + C kills the python interactive session instead of
clearing the current line. #1547
* Fix a bug with egg segment for local dependency #1552
* Update `installer` to `0.6.0`. #1550
* Update minimum version of `unearth` to `0.6.3` and test against
`packaging==22.0`. #1555
* Fix a resolution loop issue when the current project depends on itself
and it uses the dynamic version from SCM. #1541
* Don't give duplicate results when specifying a relative path for `pdm
use`. #1542
* Beautify the error message of build errors. Default to showing the last
10 lines of the build output. #1491
* Rename the `tool.pdm.overrides` table to
`tool.pdm.resolution.overrides`. The old name is deprecated at the same
time. #1503
* Add backend selection and `--backend` option to `pdm init` command,
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=24
- Update to v2.2.1
Features & Improvements#
* Make sitecustomize.py respect the PDM_PROJECT_MAX_DEPTH environment variable #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
- Update to v2.2.0
Features & Improvements#
* Add venv.prompt configuration to allow customizing prompt when a virtualenv is activated #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
* 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
* Allow pdm init to receive a Python path or version via --python option. #1412
* Add a default value for requires-python when importing from other formats. #1426
* Use pdm instead of pip to resolve and install build requirements. So that PDM configurations can control the process. #1429
* Customizable color theme via pdm config command. #1450
* A new pdm lock --check flag to validate whether the lock is up to date. #1459
* Add both option and config item to ship pip when creating a new venv. #1463
* Issue warning and skip the requirement if it has the same name as the current project. #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
* A new pre-commit hook to run pdm lock --check in pre-commit. #1471
Bug Fixes#
* Fix the issue that relative paths don't work well with --project argument. #1220
* It is now possible to refer to a package from outside the project with relative paths in dependencies. #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
* Fix a crash issue when depending on editable packages with extras. #1401
* Do not save the python path when using non-interactive mode in pdm init. #1410
* Fix the matching of python* command in pdm run. #1414
* Show the Python path, instead of the real executable, in the Python selection menu. #1418
* Fix the HTTP client of package publishment to prompt for password and read PDM configurations correctly. #1430
OBS-URL: https://build.opensuse.org/request/show/1034886
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=20
* 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
* Fix a crash issue when depending on editable packages with extras. #1401
* Do not save the python path when using non-interactive mode in pdm init.
#1410
* Restrict importlib-metadata (<5.0.0) for Python <3.8 #1411
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=18
- Update to v2.1.4 (2022-09-17)
Bug Fixes
Fix a lock failure when depending on self with URL requirements. #1347
Ensure list to concatenate args for composite scripts. #1359
Fix an error in pdm lock --refresh if some packages has URLs. #1361
Fix unnecessary package downloads and VCS clones for certain commands. #1370
Fix a conversion error when converting a list of conditional dependencies from a Poetry format. #1383
Documentation
Adds a section to the docs on how to correctly work with PDM and version control systems. #1364
- Update to v2.1.3 (2022-08-30)
Features & Improvements
When adding a package to (or removing from) a group, enhance the formatting of the group name in the printed message. #1329
Bug Fixes
Fix a bug of missing hashes for packages with file:// links the first time they are added. #1325
Ignore invalid values of data-requires-python when parsing package links. #1334
Leave an incomplete project metadata if PDM fails to parse the project files, but emit a warning. #1337
Fix the bug that editables package isn't installed for self package. #1344
Fix a decoding error for non-ASCII characters in package description when publishing it. #1345
Documentation
Clarify documentation explaining setup-script, run-setuptools, and is-purelib. #1327
OBS-URL: https://build.opensuse.org/request/show/1008034
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=17
- Update to v2.1.2
* Fix a bug that dependencies from different versions of the same
package override each other. #1307
* Forward SIGTERM to child processes in pdm run. #1312
* Fix errors when running on FIPS 140-2 enabled systems using
Python 3.9 and newer. #1313
* Fix the build failure when the subprocess outputs with non-UTF8
characters. #1319
* Delay the trigger of post_lock for add and update operations,
to ensure the pyproject.toml is updated before the hook is run.
#1320
- Release 2.1.1
* Add a env_file.override option that allows the user to specify
that the env_file should override any existing environment
variables. This is not the default as the environment the code
runs it should take precedence. #1299
* Fix a bug that unnamed requirements can't override the old ones
in either add or update command. #1287
* Support mutual TLS to private repositories via pypi.client_cert
and pypi.client_key config options. #1290
* Set a minimum version for the packaging dependency to ensure
that packaging.utils.parse_wheel_filename is available. #1293
* Fix a bug that checking for PDM update creates a venv. #1301
* Prefer compatible packages when fetching metadata. #1302
- Release 2.1.0
* Allow the use of custom CA certificates using the pypi.ca_certs
config entry. #1240
* Add pdm export to available pre-commit hooks. #1279
* Skip incompatible requirements when installing build
dependencies. #1264
OBS-URL: https://build.opensuse.org/request/show/995206
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=15
* Fix a defect in the resolution preferences that causes an infinite
resolution loop. #1119
* Update the poetry importer to support the new [tool.poetry.build] config
table. #1131
* Fix a bug where dependencies with requires-python pre-release versions
caused pdm update to fail with InvalidPyVersion. #1111
* Fix a bug that dependencies are missing from the dep graph when they are
depended by a requirement with extras. #1097
* Allow specifying lockfile other than pdm.lock by --lockfile option or
PDM_LOCKFILE env var. #1038
* Ensure the pip module inside venv in installation script. #1053
* Fix a bug that file paths in URLs are not correctly unquoted. #1073
* Fix a bug on Python 3.11 that overriding an existing command from plugins
raises an error. #1075
* Fix a bug of missing subdirectory fragment when importing from a
requirements.txt. #1036
* Fix use_cache.json with corrupted python causes pdm use error. #1039
* Fix a bug that requirement with extras isn't resolved to the version as
specified by the range. #1001
* Support installer 0.5.x. #1002
* Don't create project files in pdm search command. #993
* Fix a bug that the env vars in source urls in exported result are not
expanded. #997
* Don't follow symlinks for the paths in the requirement strings. #976
* Fix a bug that _.site_packages is overridden by default option value. #985
* Filter out the unmatched python versions when listing the available
versions. #941
* Fix a bug displaying the available python versions. #943
* Fix a bug under non-UTF8 console encoding. #960
* Fix a bug that data files are not copied to the destination when using
installation cache. #961
* Switch from pythonfinder to findpython as the Python version finder. #930
* Fix a regression issue that prereleases can't be installed if the version
specifier of the requirement doesn't imply that. #920
* Fix a race condition in parallel installation by changing metadata to a
lazy property. This fixes a bug that incompatible wheels are installed
unexpectedly. #924
* Fix a bug that incompatible platform-specific wheels are installed. #921
* Fix the compatibility issue with pip>=22.0. #875
* Fix the hash calculation when generating direct_url.json for a local
pre-built wheel. #861
* Reduce the number of tests that require network, and mark the rest with
network marker. #858
- Remove artifacts.tar.gz, it is now included in the source tarball.
- Drop patches because they are included upstream:
* mark-network-tests.patch
* mark-tests-path.patch
* sys-exec-failures.patch
- Switch to multibuild per Python version since the testsuite takes
approximately seven eons.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=6
Required for python-flufl.* updates.
-------------------------------------------------------------------
Sun Jan 23 20:56:10 UTC 2022 - Matej Cepl <mcepl@suse.com>
- By downgrading python-installer to 0.3 we have eliminated
number of failed tests.
-------------------------------------------------------------------
Sun Jan 23 00:55:41 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Replacing mark-network-tests.patch with the upstream PR
(gh#pdm-project/pdm#864), which unfortunately leaves a lot of
tests still failing.
-------------------------------------------------------------------
Fri Jan 21 01:35:33 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Add mark-network-tests.patch for skipping network-requiring
tests (gh#pdm-project/pdm#858). This is a very shotgun
approach, just mark everything which fails.
- Add sys-exec-failures.patch to fix problems with the version
number of Python 3.10 (gh#pdm-project/pdm#865).
-------------------------------------------------------------------
Thu Jan 20 18:51:14 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Initial packaging effort for pdm 1.12.6
OBS-URL: https://build.opensuse.org/request/show/948281
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=1