forked from pool/python-pip-api
Compare commits
6 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 60f6ac1ab5 | |||
| f504247037 | |||
| 4e9ae6458b | |||
| b1217e3300 | |||
| db94598fe7 | |||
| ef6a403744 |
BIN
pip-api-0.0.30.tar.gz
LFS
BIN
pip-api-0.0.30.tar.gz
LFS
Binary file not shown.
3
pip_api-0.0.34.tar.gz
Normal file
3
pip_api-0.0.34.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9b75e958f14c5a2614bae415f2adf7eeb54d50a2cfbe7e24fd4826471bac3625
|
||||||
|
size 123017
|
||||||
@@ -1,3 +1,26 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 11 02:04:37 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Add patch support-python314.patch:
|
||||||
|
* Support Python 3.14 URI parsing and ast changes.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 14 19:39:36 UTC 2025 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 0.0.34:
|
||||||
|
* meta: drop support for Python 3.7
|
||||||
|
- update to 0.0.33:
|
||||||
|
* fix release workflow, corrective release
|
||||||
|
- update to 0.0.32:
|
||||||
|
* Bump the actions group with 5 updates
|
||||||
|
- update to 0.0.31:
|
||||||
|
* Handle editable projects with `pyproject.toml`
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 3 11:33:20 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Convert to pip-based build
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Nov 24 08:08:45 UTC 2023 - Antonio Larrosa <alarrosa@suse.com>
|
Fri Nov 24 08:08:45 UTC 2023 - Antonio Larrosa <alarrosa@suse.com>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-pip-api
|
# spec file for package python-pip-api
|
||||||
#
|
#
|
||||||
# Copyright (c) 2023 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC and contributors
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -18,28 +18,32 @@
|
|||||||
|
|
||||||
%{?sle15_python_module_pythons}
|
%{?sle15_python_module_pythons}
|
||||||
Name: python-pip-api
|
Name: python-pip-api
|
||||||
Version: 0.0.30
|
Version: 0.0.34
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: The official unofficial pip API
|
Summary: The official unofficial pip API
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
URL: https://github.com/di/pip-api
|
URL: https://github.com/di/pip-api
|
||||||
Source0: https://github.com/di/pip-api/releases/download/%{version}/pip-api-%{version}.tar.gz
|
Source0: https://github.com/di/pip-api/releases/download/%{version}/pip_api-%{version}.tar.gz
|
||||||
Source1: test-data.tar.gz
|
Source1: test-data.tar.gz
|
||||||
# PATCH-FIX-OPENSUSE We do not want a vendored packaging.
|
# PATCH-FIX-OPENSUSE We do not want a vendored packaging.
|
||||||
Patch0: unvendor.patch
|
Patch0: unvendor.patch
|
||||||
# PATCH-FIX-OPENSUSE Remove a test parameter that is broken with our shipped
|
# PATCH-FIX-OPENSUSE Remove a test parameter that is broken with our shipped
|
||||||
# packaging.
|
# packaging.
|
||||||
Patch1: support-packaging-changes.patch
|
Patch1: support-packaging-changes.patch
|
||||||
|
# PATCH-FIX-OPENSUSE Support Python 3.14 URI parsing and ast changes.
|
||||||
|
Patch2: support-python314.patch
|
||||||
BuildRequires: %{python_module packaging >= 21.0}
|
BuildRequires: %{python_module packaging >= 21.0}
|
||||||
BuildRequires: %{python_module pip >= 22.1}
|
BuildRequires: %{python_module pip >= 22.1}
|
||||||
BuildRequires: %{python_module pretend}
|
BuildRequires: %{python_module pretend}
|
||||||
BuildRequires: %{python_module pyparsing >= 2.4.7}
|
BuildRequires: %{python_module pyparsing >= 2.4.7}
|
||||||
BuildRequires: %{python_module pytest}
|
BuildRequires: %{python_module pytest}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module tomli}
|
||||||
BuildRequires: %{python_module virtualenv}
|
BuildRequires: %{python_module virtualenv}
|
||||||
|
BuildRequires: %{python_module wheel}
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python-rpm-macros
|
BuildRequires: python-rpm-macros
|
||||||
Requires: python-pip
|
Requires: python-pip
|
||||||
|
Requires: python-tomli
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
%python_subpackages
|
%python_subpackages
|
||||||
|
|
||||||
@@ -47,14 +51,14 @@ BuildArch: noarch
|
|||||||
The official unofficial pip API.
|
The official unofficial pip API.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1 -a 1 -n pip-api-%{version}
|
%autosetup -p1 -a 1 -n pip_api-%{version}
|
||||||
rm -Rf ./pip_api/_vendor
|
rm -Rf ./pip_api/_vendor
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%python_build
|
%pyproject_wheel
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%python_install
|
%pyproject_install
|
||||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||||
|
|
||||||
%check
|
%check
|
||||||
@@ -65,6 +69,6 @@ rm -Rf ./pip_api/_vendor
|
|||||||
%doc README.md
|
%doc README.md
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%{python_sitelib}/pip_api
|
%{python_sitelib}/pip_api
|
||||||
%{python_sitelib}/pip_api*info
|
%{python_sitelib}/pip_api-%{version}.dist-info
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
Index: pip-api-0.0.30/tests/test_parse_requirements.py
|
Index: pip_api-0.0.34/tests/test_parse_requirements.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/tests/test_parse_requirements.py
|
--- pip_api-0.0.34.orig/tests/test_parse_requirements.py
|
||||||
+++ pip-api-0.0.30/tests/test_parse_requirements.py
|
+++ pip_api-0.0.34/tests/test_parse_requirements.py
|
||||||
@@ -75,14 +75,6 @@ PEP508_PIP_EXAMPLE_WHEEL_FILE = "file://
|
@@ -73,14 +73,6 @@ PEP508_PIP_EXAMPLE_WHEEL_FILE = "file://
|
||||||
"",
|
"",
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
|
|||||||
44
support-python314.patch
Normal file
44
support-python314.patch
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
Index: pip_api-0.0.34/pip_api/_parse_requirements.py
|
||||||
|
===================================================================
|
||||||
|
--- pip_api-0.0.34.orig/pip_api/_parse_requirements.py
|
||||||
|
+++ pip_api-0.0.34/pip_api/_parse_requirements.py
|
||||||
|
@@ -276,7 +276,7 @@ def _parse_local_package_name(path):
|
||||||
|
and expr.value.func.id == "setup"
|
||||||
|
][0]
|
||||||
|
value = [kw.value for kw in setup_kwargs if kw.arg == "name"][0]
|
||||||
|
- return value.s
|
||||||
|
+ return getattr(value, 's', None) if hasattr(value, 's') else value.value
|
||||||
|
except (IndexError, AttributeError, IOError, OSError):
|
||||||
|
raise PipError(
|
||||||
|
"Directory %r is not installable. "
|
||||||
|
Index: pip_api-0.0.34/tests/test_parse_requirements.py
|
||||||
|
===================================================================
|
||||||
|
--- pip_api-0.0.34.orig/tests/test_parse_requirements.py
|
||||||
|
+++ pip_api-0.0.34/tests/test_parse_requirements.py
|
||||||
|
@@ -193,7 +193,7 @@ def test_parse_requirements_editable_fil
|
||||||
|
|
||||||
|
assert set(result) == {"django", "pip-api"}
|
||||||
|
assert str(result["django"]) == "Django==1.11"
|
||||||
|
- assert str(result["pip-api"]).startswith("pip-api@ file:///")
|
||||||
|
+ assert str(result["pip-api"]).startswith("pip-api@ file:/")
|
||||||
|
|
||||||
|
|
||||||
|
def test_parse_requirements_editable_pyprojecttoml(monkeypatch, data):
|
||||||
|
@@ -206,7 +206,7 @@ def test_parse_requirements_editable_pyp
|
||||||
|
|
||||||
|
assert set(result) == {"dummyproject_pyproject"}
|
||||||
|
assert str(result["dummyproject_pyproject"]).startswith(
|
||||||
|
- "dummyproject_pyproject@ file:///"
|
||||||
|
+ "dummyproject_pyproject@ file:/"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@@ -220,7 +220,7 @@ def test_parse_requirements_editable_esc
|
||||||
|
|
||||||
|
assert set(result) == {"dummyproject_pyproject"}
|
||||||
|
assert str(result["dummyproject_pyproject"]).startswith(
|
||||||
|
- "dummyproject_pyproject@ file:///"
|
||||||
|
+ "dummyproject_pyproject@ file:/"
|
||||||
|
)
|
||||||
|
# The @ in `escapable@path` should be URL-encoded
|
||||||
|
assert "escapable%40path" in str(result["dummyproject_pyproject"])
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
Index: pip-api-0.0.30/pip_api/__init__.py
|
Index: pip_api-0.0.34/pip_api/__init__.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/pip_api/__init__.py
|
--- pip_api-0.0.34.orig/pip_api/__init__.py
|
||||||
+++ pip-api-0.0.30/pip_api/__init__.py
|
+++ pip_api-0.0.34/pip_api/__init__.py
|
||||||
@@ -1,7 +1,7 @@
|
@@ -1,7 +1,7 @@
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
@@ -12,10 +12,10 @@ Index: pip-api-0.0.30/pip_api/__init__.py
|
|||||||
|
|
||||||
# Import this now because we need it below
|
# Import this now because we need it below
|
||||||
from pip_api._version import version
|
from pip_api._version import version
|
||||||
Index: pip-api-0.0.30/pip_api/_hash.py
|
Index: pip_api-0.0.34/pip_api/_hash.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/pip_api/_hash.py
|
--- pip_api-0.0.34.orig/pip_api/_hash.py
|
||||||
+++ pip-api-0.0.30/pip_api/_hash.py
|
+++ pip_api-0.0.34/pip_api/_hash.py
|
||||||
@@ -1,6 +1,6 @@
|
@@ -1,6 +1,6 @@
|
||||||
import os
|
import os
|
||||||
|
|
||||||
@@ -24,10 +24,10 @@ Index: pip-api-0.0.30/pip_api/_hash.py
|
|||||||
|
|
||||||
import pip_api
|
import pip_api
|
||||||
from pip_api._call import call
|
from pip_api._call import call
|
||||||
Index: pip-api-0.0.30/pip_api/_installed_distributions.py
|
Index: pip_api-0.0.34/pip_api/_installed_distributions.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/pip_api/_installed_distributions.py
|
--- pip_api-0.0.34.orig/pip_api/_installed_distributions.py
|
||||||
+++ pip-api-0.0.30/pip_api/_installed_distributions.py
|
+++ pip_api-0.0.34/pip_api/_installed_distributions.py
|
||||||
@@ -7,7 +7,7 @@ import pip_api
|
@@ -7,7 +7,7 @@ import pip_api
|
||||||
from pip_api._call import call
|
from pip_api._call import call
|
||||||
from pip_api.exceptions import PipError
|
from pip_api.exceptions import PipError
|
||||||
@@ -37,23 +37,25 @@ Index: pip-api-0.0.30/pip_api/_installed_distributions.py
|
|||||||
|
|
||||||
|
|
||||||
class Distribution:
|
class Distribution:
|
||||||
Index: pip-api-0.0.30/pip_api/_parse_requirements.py
|
Index: pip_api-0.0.34/pip_api/_parse_requirements.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/pip_api/_parse_requirements.py
|
--- pip_api-0.0.34.orig/pip_api/_parse_requirements.py
|
||||||
+++ pip-api-0.0.30/pip_api/_parse_requirements.py
|
+++ pip_api-0.0.34/pip_api/_parse_requirements.py
|
||||||
@@ -14,7 +14,7 @@ from typing import Any, Dict, Optional,
|
@@ -11,8 +11,8 @@ from typing import Any, Dict, Optional,
|
||||||
from urllib.parse import urljoin, unquote, urlsplit
|
from urllib.parse import unquote, urljoin, urlsplit
|
||||||
from urllib.request import pathname2url, url2pathname
|
from urllib.request import pathname2url, url2pathname
|
||||||
|
|
||||||
|
-from pip_api._vendor import tomli
|
||||||
-from pip_api._vendor.packaging import requirements, specifiers # type: ignore
|
-from pip_api._vendor.packaging import requirements, specifiers # type: ignore
|
||||||
|
+import tomli
|
||||||
+from packaging import requirements, specifiers # type: ignore
|
+from packaging import requirements, specifiers # type: ignore
|
||||||
|
|
||||||
from pip_api.exceptions import PipError
|
from pip_api.exceptions import PipError
|
||||||
|
|
||||||
Index: pip-api-0.0.30/tests/conftest.py
|
parser = argparse.ArgumentParser()
|
||||||
|
Index: pip_api-0.0.34/tests/conftest.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/tests/conftest.py
|
--- pip_api-0.0.34.orig/tests/conftest.py
|
||||||
+++ pip-api-0.0.30/tests/conftest.py
|
+++ pip_api-0.0.34/tests/conftest.py
|
||||||
@@ -6,7 +6,7 @@ import pytest
|
@@ -6,7 +6,7 @@ import pytest
|
||||||
import pretend
|
import pretend
|
||||||
import virtualenv
|
import virtualenv
|
||||||
@@ -63,10 +65,10 @@ Index: pip-api-0.0.30/tests/conftest.py
|
|||||||
|
|
||||||
import pip_api
|
import pip_api
|
||||||
|
|
||||||
Index: pip-api-0.0.30/tests/test_installed_distributions.py
|
Index: pip_api-0.0.34/tests/test_installed_distributions.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- pip-api-0.0.30.orig/tests/test_installed_distributions.py
|
--- pip_api-0.0.34.orig/tests/test_installed_distributions.py
|
||||||
+++ pip-api-0.0.30/tests/test_installed_distributions.py
|
+++ pip_api-0.0.34/tests/test_installed_distributions.py
|
||||||
@@ -2,7 +2,7 @@ import os
|
@@ -2,7 +2,7 @@ import os
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user