14
0
forked from pool/python-pdm

- 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
- 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
This commit is contained in:
2022-06-15 01:55:32 +00:00
committed by Git OBS Bridge
parent 9b142b41b1
commit 5000b9980b
9 changed files with 104 additions and 767 deletions

View File

@@ -1,5 +1,5 @@
#
# spec file for package python-pdm
# spec file
#
# Copyright (c) 2022 SUSE LLC
#
@@ -18,29 +18,38 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-pdm
Version: 1.12.6
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test-py38"
%define psuffix -test-py38
%define skip_python39 1
%define skip_python310 1
%bcond_without test
%endif
%if "%{flavor}" == "test-py39"
%define psuffix -test-py39
%define skip_python38 1
%define skip_python310 1
%bcond_without test
%endif
%if "%{flavor}" == "test-py310"
%define psuffix -test-py310
%define skip_python38 1
%define skip_python39 1
%bcond_without test
%endif
%if "%{flavor}" == ""
%define psuffix %{nil}
%bcond_with test
%endif
Name: python-pdm%{psuffix}
Version: 1.15.3
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
# Artifacts for tests from gh#pdm-project/pdm#864
Source1: artifacts.tar.gz
# PATCH-FIX-UPSTREAM mark-network-tests.patch gh#pdm-project/pdm#858 mcepl@suse.com
# mark tests which require network connection (gh#pdm-project/pdm#864)
Patch0: mark-network-tests.patch
# PATCH-FIX-OPENSUSE sys-exec-failures.patch mcepl@suse.com
# sys.executable is too long with python3.10
Patch1: sys-exec-failures.patch
# PATCH-FIX-UPSTREAM mark-tests-path.patch gh#pdm-project/pdm#865 mcepl@suse.com
# mark tests which depend on exact paths of executables
# https://github.com/pdm-project/pdm/commit/23f1cf62a302
Patch2: mark-tests-path.patch
BuildRequires: %{python_module blinker}
BuildRequires: %{python_module click >= 7}
BuildRequires: %{python_module importlib-metadata if %python-base < 3.8}
BuildRequires: %{python_module installer}
BuildRequires: %{python_module packaging}
BuildRequires: %{python_module pdm-pep517}
BuildRequires: %{python_module pep517}
@@ -54,7 +63,6 @@ BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module shellingham >= 1.3.2}
BuildRequires: %{python_module tomli >= 1.1.0}
BuildRequires: %{python_module tomlkit}
BuildRequires: %{python_module typing-extensions if %python-base < 3.8}
BuildRequires: %{python_module wheel >= 0.36.2}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -79,12 +87,17 @@ Requires(post): update-alternatives
Requires(postun):update-alternatives
BuildArch: noarch
# SECTION test requirements
%if %{with test}
BuildRequires: %{python_module findpython}
BuildRequires: %{python_module installer}
BuildRequires: %{python_module pdm}
BuildRequires: %{python_module pytest-cov}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: git
BuildRequires: git-lfs
%endif
# /SECTION
%python_subpackages
@@ -94,15 +107,19 @@ 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} -a1
%autosetup -p1 -n pdm-%{version}
%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
%post
%python_install_alternative pdm
@@ -110,14 +127,17 @@ doesn't need to create a virtualenv at all!
%postun
%python_uninstall_alternative pdm
%if %{with test}
%check
# the test_show_self_package is gh#pdm-project/pdm#865
%pytest -s -k 'not (network or path or test_show_self_package or test_use_python_by_version)'
%pytest -x -k 'not (network or path)'
%endif
%if !%{with test}
%files %{python_files}
%doc README.md
%license LICENSE
%python_alternative %{_bindir}/pdm
%{python_sitelib}/pdm*
%endif
%changelog