From e07016c735feb263b976584e11b9e2d82a09478ac24d9c3a47271dbd6a91ebb0 Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Thu, 4 Jul 2024 13:18:50 +0000 Subject: [PATCH] Accepting request 1184831 from home:dgarcia:branches:devel:languages:python - Require new packages: - python-hishel https://build.opensuse.org/request/show/1184828 - python-pbs-installer https://build.opensuse.org/request/show/1184829 - python-unearth (update) https://build.opensuse.org/request/show/1184830 - Update to 2.16.1 * Fix new interface from pbs_installer regarding build_dir and best match auto-install strategy for pdm use (same as for pdm python install --list) (#2943) * Fix crash when pdm is used with importlib-metadata version 8.0. (#2974) - 2.16.0 * Add --no-extras to pdm export to strip extras from the requirements. Now the default behavior is to keep extras. (#2519) * Support PEP 723: running scripts with inline metadata in standalone environment with dependencies. (#2924) * pdm use and pdm python install now take requires-python into account (incl. from pyproject.toml) if python version not specified and pdm use provides auto installation by that. (#2943) * --no-isolation no longer installs build-requires nor dynamic build dependencies, to be consistent with pip. (#2944) * Add notifiers in CLI output when global project is being used. (#2952) * Use tool.pdm.resolution table when calculating the content hash of project file, previously only overrides table was used. * This will change the hash already stored in the lockfile, so bump the lockfile version to 4.4.2. (#2956) * Add max retries on read timeout or bad connection. (#2914) * Don't update local files if they don't change. (#2966) * Don't list python versions that don't have any installation link for the current platform. (#2970) * Clarify the purposes of pdm outdated and --unconstrained option. (#2965) * Some clarifications on the interpreter selection and central package cache. (#2967) OBS-URL: https://build.opensuse.org/request/show/1184831 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pdm?expand=0&rev=40 --- .gitattributes | 23 ++ .gitignore | 1 + _multibuild | 3 + pdm-2.16.1.tar.gz | 3 + python-pdm.changes | 716 +++++++++++++++++++++++++++++++++++++++++++++ python-pdm.spec | 169 +++++++++++ 6 files changed, 915 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _multibuild create mode 100644 pdm-2.16.1.tar.gz create mode 100644 python-pdm.changes create mode 100644 python-pdm.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..fcc7b97 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + test + diff --git a/pdm-2.16.1.tar.gz b/pdm-2.16.1.tar.gz new file mode 100644 index 0000000..5ef7147 --- /dev/null +++ b/pdm-2.16.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8680028b3aff3af8e15b483467da36bb9f02fcd402cf939da8ab6375d955131 +size 2618476 diff --git a/python-pdm.changes b/python-pdm.changes new file mode 100644 index 0000000..8d768dc --- /dev/null +++ b/python-pdm.changes @@ -0,0 +1,716 @@ +------------------------------------------------------------------- +Tue Jul 2 08:11:05 UTC 2024 - Daniel Garcia + +- Update to 2.16.1 + * Fix new interface from pbs_installer regarding build_dir and best + match auto-install strategy for pdm use + (same as for pdm python install --list) (#2943) + * Fix crash when pdm is used with importlib-metadata version 8.0. + (#2974) +- 2.16.0 + * Add --no-extras to pdm export to strip extras from the + requirements. Now the default behavior is to keep extras. (#2519) + * Support PEP 723: running scripts with inline metadata in + standalone environment with dependencies. (#2924) + * pdm use and pdm python install now take requires-python into + account (incl. from pyproject.toml) if python version not + specified and pdm use provides auto installation by that. (#2943) + * --no-isolation no longer installs build-requires nor dynamic build + dependencies, to be consistent with pip. (#2944) + * Add notifiers in CLI output when global project is being used. + (#2952) + * Use tool.pdm.resolution table when calculating the content hash of + project file, previously only overrides table was used. + * This will change the hash already stored in the lockfile, so bump + the lockfile version to 4.4.2. (#2956) + * Add max retries on read timeout or bad connection. (#2914) + * Don't update local files if they don't change. (#2966) + * Don't list python versions that don't have any installation link + for the current platform. (#2970) + * Clarify the purposes of pdm outdated and --unconstrained option. + (#2965) + * Some clarifications on the interpreter selection and central + package cache. (#2967) +- 2.15.4 + * Build wheel from sdist if available, to make sure sdist is built + properly. This behavior is consistent with pypa/build. (#2843) + * Fix the issue of self-referencing extra dependencies failing to be + resolved for local packages. (#2898) + * Fix an issue of max recursion depth error when parsing a poetry + project with circular dependencies on local packages. (#2900) + * Fix a bug that VCS dependencies and --self don't work in the + exported requirements.txt with hashes. (#2908) + * Fix a cache miss when there exist built wheels for a given link. + (#2912) + * Don't try to store caches when --no-cache is given. (#2913) +- 2.15.3 + * Fixed pdm venv activate, to also work for windows. And added + documentation on how to authenticate to Azure Artifacts (#2851) + * Don't show unsupported formats in pdm export. (#2877) + * Proxy (HTTP_PROXY env vars) settings are ignored for custom + indexes. (#2880) + * Fix the quoting of venv activate command for powershell. (#2881) + * Raise an error if the package given by pdm update does not exist + in the select dependency group but in other groups. (#2885) +- 2.15.2 + * Use get_runner() method to build the task runner in run command. + runner_cls attribute is deprecated. (#2872) + * Expand ${PROJECT_ROOT} in source URLs. (#2846) + * Fix env and other options being inherited in nested composite + scripts. (#2849) + * Keep the ${PROJECT_ROOT} variable in dependencies after running + pdm lock --update-reuse. (#2852) + * Make direct_minimal_versions work on newly added dependencies. + (#2853) + * Fix a syntax error in the zsh completion script. (#2868) +- 2.15.1 + * Disable check update in zsh completion script. (#2838) + * Fixes cached packages metadata files (.referrers) collisions on + sync when using a venv with symlink cache method. (#2839) + * Build docs with object inventory to support cross references from + Sphinx documentation projects. (#2841) +- 2.15.0 + * Packages format preferences can now be defined in the project + pyproject.toml using the no-binary, only-binary and prefer-binary + keys of the tool.pdm.resolution section. (#2656) + * Don't create project and virtualenv when running pdm python + install. (#2809) + * Clean up the python installation directory if a previous download + was unsuccessful. (#2810) + * Don't cache editable installations. (#2816) + * Fix a bug that installing in-project plugins with editable local + paths doesn't work. (#2820) + * Don't create log directory until it's needed, to fix a + PermissionError in docker environment. (#2825) + * Fix recursive script detection on multiple invocations. (#2829) +- 2.14.0 + * Revert the package cache introduced in 2.13. Don't cache the + decompressed contents of wheels unless being told so. (#2803) + * Fix inconsistent logging when pdm use a different python + interpreter (#2776) + * Fix PDM unable to find Python interpreters when + PDM_IGNORE_ACTIVE_VENV is set (#2779) + * Check verify_ssl when trusting each source. (#2784) + * Fix name check for project itself in pdm outdated (#2785) + * Fix a regression that proxy env vars are not respected. (#2788) + * Fix an issue that venv provider can't be found when providers are + explicitly configured. (#2792) + * Fix a bug that [tool.pdm.options] are ignored if -c/--config + CONFIG is given. (#2793) + * Make --without respect groups in dev-dependencies (#2799) +- 2.13.3 + * Per-source configuration for ca-certs and client-cert. #2754 + * Remove all caches by removing individual cache types one by one. + #2757 + * Use the default HTTP client when downloading the pythons, to use + the certificates settings. #2759 + * Fix a race condition where pth files take effect when multiple + packages are installed in parallel. #2762 + * Refuse to run recursive composite scripts. #2766 +- 2.13.2 + * Fix errors when parsing poetry format that contains special + characters in author name. + * Poetry-specific parse_name_email and NAME_EMAIL_RE moved from + pdm.formats.base to pdm.formats.poetry. #2665 + * Fix a race condition in cached packages. When a cached package is + being created it shouldn't be used for installation. #2739 + * Add back PreparedCandidate.build() for backward-compatibility. + #2747 + * Fixed a small non-code typo in docs and prodivded better wording. + #2740 +- 2.13.1 + * Fix a bug that PDM couldn't find interpreters for global project. + #2726 + * Make the cache package path shorter to solve the Windows path + problem. #2730 + * Extract "Lock file" doc from "Manage Dependencies" doc. #2725 +- 2.13.0 + * Add option to exclude group(s) when running pdm sync/install + -G:all by adding flag --without group1,group2,... #2258 + * Default to log to user home and make logs directory configurable. + #2398 + * Add an option keep_going to continue on errors for composite + scripts and return the last failing exit code. #2582 + * Add an option working_dir for PDM's scripts to set the current + working directory. #2620 + * Allow updating specific sub-dependencies (i.e., transitive + dependencies) in the lock file. #2628 + * Add --config-setting option to + add/install/sync/update/remove/export commands, the config + settings dictionary will be shared by all packages. #2636 + * Cache the decompressed contents of wheels for faster access. #2660 + * Add configuration for timeout for network requests. #2680 + * Reuse the request sesison within the environment. #2697 + * Caches can be disabled by using the --no-cache option or setting + the PDM_NO_CACHE environment variable. #2702 + * Switch to httpx.Client for HTTP requests, drop requests + dependency. #2709 + * We have timemachine now! You can exclude packages published newer + than a certain date via pdm lock --exclude-newer=, allowing + reproduction of resolutions regardless of new package releases. + #2712 + * Add command pdm outdated to check the outdated packages and list + the latest versions. #2718 + * When python.use_venv is on, always try to create a virtualenv when + using pdm use to switch the Python interpreter. #2720 + * Support installing Pythons from python-build-standalone. Add + command group pdm python to manage Python installations. And pdm + use can automatically install the Python interpreter if it's not + found. #2721 + * Supports custom distribution files path via -d/--dest option for + pdm publish. #2723 + * Don't modify TOML tables that are not related to PDM. #2666 + * Made --without imply --with :all. #2670 + * Expand user path for venv.location and other path-like config + values. #2672 + * Give a default version when it's missing in pyproject.toml when + parsing candidate's metadata. #2677 + * Fix the issue that ANSI codes are shown in the output of pdm + --help on Windows. #2678 + * Don't show empty configuration sections in pdm config. #2683 + * Document the difference between [tool.pdm.scripts] and + [project.scripts] #2121 + * Remove the support of pth cache method. And symlink cache method + now behaves the same as symlink_individual cache method. #2660 + * Remove pdm.models.environment module deprecated before. Also + remove the renamed members from pdm.environments. #2710 + * Delete setup.cfg, move tool configurations under it to pyproject.toml #2703 + +------------------------------------------------------------------- +Wed Feb 28 13:23:05 UTC 2024 - Markéta Machová + +- 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. + +------------------------------------------------------------------- +Fri Jan 5 17:45:28 UTC 2024 - Dirk Müller + +- remove unnecessary pdm-pep517 + +------------------------------------------------------------------- +Wed Dec 13 02:58:14 UTC 2023 - Steve Kowalik + +- Update to 2.10.4: + * 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. + * Support target python with other architectures. + * Allow to change the python providers from the config. + * Fix a bug that egg-info directories are not removed completely, leading + to incomplete distribution. + * Skip distributions with wrong package meta information and duplicate path. + * Avoid mistakenly passing command-line arguments while testing. + * Fix a bug that lockfile groups are overwritten when running locking in + preceding step of `pdm install`. + * Tolerate and actually ignore the local versions in version specifiers. + * Fix a bug that shared cache cannot support overlapping namespace packages. + * Fix a bug that `pdm install --plugins` can't install self. + * Fix a cache collision between named requirements and url requirements. + * `pdm init` now accepts a template argument to initialize project from a + built-in or Git template. + * Replace the `DeprecationWarning` with `FutureWarning` for better exposure. + * Serve `install-pdm.py` and its checksum file on the docs site. + * Add support for using `truststore` as the SSL backend. This only works + on Python 3.10 or newer. + * Fix the breaking change by adding the functions back to the old location + with deprecation warnings. + * Fix the duplicate entries in the output of `pdm self list`. + * Disable hashes caching for local files. + * Populate the `url` field when converting requirements from a + Pipfile-style file requirement. + * Fix a bug that empty source tables in configuration files causes errors + when running pdm commands. + * Fix a resolution conflict caused by requested yanked version also in + other transitive dependencies. + +------------------------------------------------------------------- +Thu Jun 22 07:41:39 UTC 2023 - Andreas Schneider + +- Fix building with Python 3.9 + +------------------------------------------------------------------- +Mon Jun 19 14:02:16 UTC 2023 - Dirk Müller + +- Update to version 2.7.4 + * Fix the warning of extras not found due to extra names not normalized. + #2006 + * Pop up a warning when the deprecated parser argument is passed to + BaseCommand.__init__() method. #2007 + * Fix a bug that merging settings with AoTs causing a failure. #2011 + +------------------------------------------------------------------- +Thu Apr 6 06:26:23 UTC 2023 - Steve Kowalik + +- Remove pep517 requirement. + +------------------------------------------------------------------- +Tue Apr 4 06:45:30 UTC 2023 - Daniel Garcia + +- Remove python-installer version limit in requires +- 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 + * Don't crash when trying to update the shebang in a binary script. + #1709 + * Handle the legacy specifiers that is unable to parse with + packaging>22.0. #1719 + * Fix the setup.py parser to ignore the expressions unable to parse + as a string. This is safe for initializing a requirement. #1720 + * Fix a bug converting from flit metadata when the source file can't + be found. #1726 + * Add config example for Emacs using eglot + pyright #1721 + * Use ruff as the linter. #1715 + * Document installation via asdf. #1725 +- Release v2.4.5 (2023-02-10) + * Fix a bug that built wheels are prioritized over source + distributions with higher version number. #1698 +- Release v2.4.4 (2023-02-10) + * Add more intuitive error message when the requires-python doesn't + work for all dependencies. #1690 + * Prefer built distributions when finding packages for metadata + extraction. #1535 +- Release v2.4.3 (2023-02-06) + * Allow creating venv in project forcely if it already exists. #1666 + * Always ignore remembered selection in pdm init. #1672 + * Fix the fallback build backend to pdm-pep517 instead of + setuptools. #1658 + * Eliminate the deprecation warnings from importlib.resources. #1660 + * Don't crash when failed to get the latest version of PDM for + checking update. #1663 + * Fix the priorities of importable formats to make sure the correct + format is used. #1669 + * Import editable requirements into dev dependencies. #1674 +- Release v2.4.2 (2023-01-31) + * Skip some tests on packaging < 22. #1649 + * Fix a bug that sources from the project config are not loaded. #1651 + * Set VIRTUAL_ENV in pdm run. #1652 +- Release v2.4.1 (2023-01-28) + * Add proper display for the extra pypi sources in pdm config. #1622 + * Support running python scripts without prefixing with python. #1626 + * Ignore the python requirement for overriden packages. #1575 + * Fix the wildcards in requirement specifiers to make it pass the + new parser of packaging>=22. #1619 + * Add the missing subdirectory attribute to the lockfile entry. + #1630 + * Fix a bug that VCS locks don't update when the rev part changes. + #1640 + * Redirect the spinner output to stderr. #1646 + * Ensure the destination directory exists before building the + packages. #1647 +- Release v2.4.0 (2023-01-12) + * Support multiple PyPI indexes in the configuration. They will be + tried after the sources in pyproject.toml. #1310 + * Accept yanked versions when the requirement version is pinned. + #1575 + * Expose PDM fixtures as a pytest plugin pdm.pytest for plugin + developers. #1594 + * Show message in the status when fetching package hashes. Fetch + hashes from the JSON API response as well. #1609 + * Mark pdm.lock with an @generated comment. #1611 + * Exclude site-packages for symlinks of the python interpreter as + well. #1598 + * Fix a bug that error output can't be decoded correctly on Windows. + #1602 +- Release v2.3.4 (2022-12-27) + * Detect PDM inside a zipapp and disable some functions. #1578 + * Don't write sitecustomize to the home directory if it exists in + the filesystem(not packed in a zipapp). #1572 + * Fix a bug that a directory is incorrectly marked as to be deleted + when it contains symlinks. #1580 + +------------------------------------------------------------------- +Tue Dec 20 17:57:35 UTC 2022 - Daniel Garcia + +- Add missing dependency python-pyproject-hooks + +------------------------------------------------------------------- +Mon Dec 19 11:43:13 UTC 2022 - Dirk Müller + +- update to 2.3.3: + * 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, + users can choose a favorite backend from `setuptools`, `flit`, + `hatchling` and `pdm-pep517`(default), since they all support PEP 621 + standards. #1504 + * Allows specifying the insertion position of user provided arguments in + scripts with the `{args[:default]}` placeholder. #1507 + * 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 + * Fix the version diff algorithm of installed packages to consider local + versions as compatible. #1497 + * Fix the confusing message when detecting a Python interpreter under + `python.use_venv=False` #1508 + * Fix the test failure with the latest `findpython` installed. #1516 + * Fix the module missing error of pywin32 in a virtualenv with + `install.cache` set to `true` and caching method is `pth`. #863 + * Drop the dependency `pdm-pep517`. #1504 + * Replace `pep517` with `pyproject-hooks` because of the rename. #1528 + * Remove the support for exporting the project file to a `setup.py` + format, users are encouraged to migrate to the PEP 621 metadata. #1504 +- drop findpython-022.patch (upstream) + +------------------------------------------------------------------- +Wed Nov 16 08:58:23 UTC 2022 - Matej Cepl + +- Add findpython-022.patch to make package work with findpython + 0.2.2 (from gh#pdm-project/pdm#1516). + +------------------------------------------------------------------- +Tue Nov 15 19:09:33 UTC 2022 - Matej Cepl + +- Skip failing test (gh#pdm-project/pdm#1516). + +------------------------------------------------------------------- +Wed Nov 9 16:22:05 UTC 2022 - Yogalakshmi Arunachalam + +- 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 .... #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 + * Ignore the unknown fields when constructing a requirement object. #1445 + * Fix a bug of unrelated candidates being fetched if the requirement is matching wildcard versions(e.g. ==1.*). #1465 + * Use importlib-metadata from PyPI for Python < 3.10. #1467 + Documentation# + * Clarify the difference between a library and an application. Update the guide of multi-stage docker build. #1371 + * Removals and Deprecations# + * Remove all top-level imports, users should import from the submodules instead. #1404 + * Remove the usages of old config names deprecated since 2.0. #1422 + * Remove the deprecated color functions, use rich's console markup instead. #1452 + +------------------------------------------------------------------- +Wed Oct 5 09:47:36 UTC 2022 - Daniel Garcia + +- Update to v2.1.5 + * 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 + +------------------------------------------------------------------- +Tue Oct 4 22:54:50 UTC 2022 - Yogalakshmi Arunachalam + +- 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 + +------------------------------------------------------------------- +Sun Aug 14 10:47:53 UTC 2022 - Ben Greiner + +- 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 + * Fix a crash when pdm tries to publish a package with non-ASCII + characters in the metadata. #1270 + * Try to read the lock file even if the lock version is + incompatible. #1273 + * For packages that are only available as source distribution, + the summary field in pdm.lock contains the description from the + package's pyproject.toml. #1274 + * Do not crash when calling pdm show for a package that is only + available as source distribution. #1276 + * Fix a bug that completion scripts are interpreted as rich + markups. #1283 + * Remove the dependency of pip. #1268 + * Deprecate the top-level imports from pdm module, it will be + removed in the future. #1282 +- Release 2.0.3 + * Support Conda environments when detecting the project + environment. #1253 + * Fix the interpreter resolution to first try python executable + in the PATH. #1255 + * Stabilize sorting of URLs in metadata.files in pdm.lock. #1256 + * Don't expand credentials in the file URLs in the [metada.files] + table of the lock file. #1259 +- Release 2.0.2 + * env_file variables no longer override existing environment + variables. #1235 + * Support referencing other optional groups in + optional-dependencies with [group1, group2] + #1241 + * Respect requires-python when creating the default venv. #1237 +- Release 2.0.1 + * Write lockfile before calling 'post_lock' hook #1224 + * Suppress errors when cache dir isn't accessible. #1226 + * Don't save python path for venv commands. #1230 +- Release 2.0.0 + * Fix a bug that the running env overrides the PEP 582 + PYTHONPATH. #1211 + * Add pwsh as an alias of powershell for shell completion. #1216 + * Fixed a bug with zsh completion regarding --pep582 flag. #1218 + * Fix a bug of requirement checking under non-isolated mode. + #1219 + * Fix a bug when removing packages, TOML document might become + invalid. #1221 +- Back to testing all python flavors in one go: CLI tests fail if + only one python interpreter is found. The test suite runs under 3 + minutes per flavor on a normal workstation. + +------------------------------------------------------------------- +Sun Jun 19 22:03:26 UTC 2022 - Ben Greiner + +- Fix runtime requirements, test by removing build requirements and + let it pull in in test flavors. + +------------------------------------------------------------------- +Fri Jun 17 07:42:46 UTC 2022 - Steve Kowalik + +- Update to 1.15.2: + * 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 +- Add patch instrumentation-test-case.patch: + * Instrument a test case for ease of debugging. +- Switch to multibuild per Python version since the testsuite takes + approximately seven eons. + +------------------------------------------------------------------- +Mon Jan 24 09:37:39 UTC 2022 - Matej Cepl + +- My ad-hoc patch failed_test_use_command.patch replaced by the + upstream mark-tests-path.patch (from + gh#pdm-project/pdm#commit/23f1cf62a302 and gh#pdm-project/pdm#865). + +------------------------------------------------------------------- +Sun Jan 23 20:56:10 UTC 2022 - Matej Cepl + +- By downgrading python-installer to 0.3 we have eliminated + number of failed tests. + +------------------------------------------------------------------- +Sun Jan 23 00:55:41 UTC 2022 - Matej Cepl + +- 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 + +- 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 + +- Initial packaging effort for pdm 1.12.6 diff --git a/python-pdm.spec b/python-pdm.spec new file mode 100644 index 0000000..926af68 --- /dev/null +++ b/python-pdm.spec @@ -0,0 +1,169 @@ +# +# spec file for package python-pdm +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +%endif +%if "%{flavor}" == "" +%define psuffix %{nil} +%bcond_with test +%endif +%{?sle15_python_module_pythons} +Name: python-pdm%{psuffix} +Version: 2.16.1 +Release: 0 +Summary: Python Development Master +License: MIT +URL: https://github.com/pdm-project/pdm/ +Source0: https://files.pythonhosted.org/packages/source/p/pdm/pdm-%{version}.tar.gz +BuildRequires: %{python_module base >= 3.7} +BuildRequires: %{python_module importlib-metadata if %python-base <= 3.9} +BuildRequires: %{python_module pdm-backend} +BuildRequires: %{python_module pip} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +Requires: python-blinker +Requires: python-cachecontrol >= 0.12.11 +Requires: python-certifi +Requires: python-dep-logic +Requires: python-findpython >= 0.4 +Requires: python-hishel +Requires: python-installer +Requires: python-packaging >= 20.9 +Requires: python-pbs-installer +Requires: python-pdm-backend +Requires: python-platformdirs +Requires: python-pyproject-hooks +Requires: python-python-dotenv >= 0.15 +Requires: python-requests-toolbelt +Requires: python-resolvelib >= 1.0.1 +Requires: python-rich >= 12.3.0 +Requires: python-shellingham >= 1.3.2 +Requires: python-unearth >= 0.12.1 +Requires: python-virtualenv >= 20 +Requires: (python-tomlkit >= 0.11.1 with python-tomlkit < 1) +# from python-cachecontrol[filecache] +Requires: python-lockfile >= 0.9 +%if 0%{?python_version_nodots} < 311 +Requires: python-tomli >= 1.1.0 +%endif +%if 0%{?python_version_nodots} <= 39 +Requires: python-importlib-metadata +Requires: python-typing-extensions +%endif +%if 0%{?python_version_nodots} >= 310 +Requires: python-truststore +%endif +Requires(post): update-alternatives +Requires(postun): update-alternatives +BuildArch: noarch +# SECTION test requirements +%if %{with test} +BuildRequires: %{python_module hishel} +BuildRequires: %{python_module httpx} +BuildRequires: %{python_module pbs-installer} +BuildRequires: %{python_module pdm = %{version}} +BuildRequires: %{python_module pytest-httpserver} +BuildRequires: %{python_module pytest-mock} +BuildRequires: %{python_module pytest-xdist} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module unearth} +%endif +# /SECTION +%python_subpackages + +%description +PDM is a modern Python package manager with PEP 582 support. It +installs and manages packages in a similar way to npm that +doesn't need to create a virtualenv at all! + +%prep +%autosetup -p1 -n pdm-%{version} +# we don't care about certifi version, the distro package replaces the certificates with system ones anyway +sed -i 's/"certifi>=[0-9.]*"/"certifi"/' pyproject.toml + +%build +%if !%{with test} +%pyproject_wheel +%endif + +%install +%if !%{with test} +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/pdm +%python_expand %fdupes %{buildroot}%{$python_sitelib} +%endif + +%if %{with test} +%check +# no network +donttest="network" +# mock testing finds the wrong python versions in our multiflavor setup +donttest="$donttest or test_project_packages_path or test_conda_backend_create" +donttest="$donttest or test_init_non_interactive" + +# Broken test trying to find a resolution to a git repository +donttest="$donttest or test_add_editable_package or test_non_editable_override_editable" +# Broken test unable to find a resolution for wheel +donttest="$donttest or test_list_dependency_graph_include_exclude or test_list_csv_include_exclude_valid" +# Unable to find a resolution for setuptools +donttest="$donttest or test_list_csv_include_exclude or test_remove_editable_packages_while_keeping_normal or test_project_backend" +# Requires network +donttest="$donttest or test_build_with_no_isolation" +# Requires network +donttest="$donttest or test_find_candidates_from_find_links" +donttest="$donttest or test_build_single_module" +donttest="$donttest or test_build_single_module_with_readme" +donttest="$donttest or test_build_package" +donttest="$donttest or test_build_src_package" +donttest="$donttest or test_build_package_include" +donttest="$donttest or test_build_src_package_by_include" +donttest="$donttest or test_build_with_config_settings" +donttest="$donttest or test_cli_build_with_config_settings" +donttest="$donttest or test_build_ignoring_pip_environment" +donttest="$donttest or test_find_interpreters_with_PDM_IGNORE_ACTIVE_VENV" +donttest="$donttest or test_hooks[build] or test_hooks[publish]" +donttest="$donttest or test_skip_option_from_signal" +donttest="$donttest or test_skip_all_option_from_signal" +donttest="$donttest or test_skip_pre_post_option_from_signal" +donttest="$donttest or test_build_distributions" +donttest="$donttest or test_show_self_package" +donttest="$donttest or test_publish_and_build_in_one_run" +donttest="$donttest or test_expand_project_root_in_url" + +%pytest -v -k "not ($donttest)" +%endif + +%post +%python_install_alternative pdm + +%postun +%python_uninstall_alternative pdm + +%if !%{with test} +%files %{python_files} +%doc README.md +%license LICENSE +%python_alternative %{_bindir}/pdm +%{python_sitelib}/pdm +%{python_sitelib}/pdm-%{version}*-info +%endif + +%changelog