Skip to content

Commit 94d5959

Browse files
committed
alvistack/v74.1.2
git clean -xdf tar zcvf ../python-setuptools_74.1.2.orig.tar.gz --exclude=.git . debuild -uc -us cp python-setuptools.spec ../python-setuptools_74.1.2-1.spec cp ../python-setuptools*74.1.2*.{gz,xz,spec,dsc} /osc/home\:alvistack/pypa-setuptools-74.1.2/ rm -rf ../python*-setuptools*74.1.2*.* ../python*-pkg-resources_74.1.2*.* See pypa#3234 (comment) See https://salsa.debian.org/cpython-team/python3/-/blob/python3.10/debian/patches/distutils-install-layout.diff See https://salsa.debian.org/cpython-team/python3/-/blob/python3.10/debian/patches/sysconfig-debian-schemes.diff Signed-off-by: Wong Hoi Sing Edison <[email protected]>
1 parent c484f9e commit 94d5959

26 files changed

+1563
-2
lines changed

.gitignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# syntax: glob
2+
# See https://blog.jaraco.com/skeleton/#ignoring-artifacts before modifying.
3+
bin
4+
build
5+
dist
6+
docs/build
7+
include
8+
lib
9+
distribute.egg-info
10+
setuptools.egg-info
11+
setuptools/tests/bdist_wheel_testdata/*/*.egg-info/
12+
.coverage
13+
.eggs
14+
.tox
15+
.venv
16+
*.egg
17+
*.py[cod]
18+
*.swp
19+
*~
20+
.hg*
21+
.cache
22+
.pytest_cache/
23+
.mypy_cache/
24+
.pybuild

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ recursive-include tests *.py
33
recursive-include setuptools/tests *.html
44
recursive-include docs *.py *.txt *.rst *.conf *.css *.css_t Makefile indexsidebar.html
55
recursive-include setuptools/_vendor *
6+
recursive-include setuptools/_distutils/_vendor *
67
recursive-include pkg_resources *.py *.txt
78
recursive-include pkg_resources/tests/data *
89
recursive-include tools *

NEWS.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Bugfixes
55
--------
66

77
- Fixed TypeError in sdist filelist processing by adding support for pathlib Paths for the build_base. (#4615)
8+
- Removed degraded and deprecated ``test_integration`` (easy_install) from the test suite. (#4632)
89

910

1011
v74.1.1

PKG-INFO

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
Metadata-Version: 2.1
2+
Name: setuptools
3+
Version: 74.1.2
4+
Summary: Easily download, build, install, upgrade, and uninstall Python packages
5+
Author-email: Python Packaging Authority <[email protected]>
6+
Project-URL: Source, https://github.com/pypa/setuptools
7+
Project-URL: Documentation, https://setuptools.pypa.io/
8+
Project-URL: Changelog, https://setuptools.pypa.io/en/stable/history.html
9+
Keywords: CPAN PyPI distutils eggs package management
10+
Classifier: Development Status :: 5 - Production/Stable
11+
Classifier: Intended Audience :: Developers
12+
Classifier: License :: OSI Approved :: MIT License
13+
Classifier: Programming Language :: Python :: 3
14+
Classifier: Programming Language :: Python :: 3 :: Only
15+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
16+
Classifier: Topic :: System :: Archiving :: Packaging
17+
Classifier: Topic :: System :: Systems Administration
18+
Classifier: Topic :: Utilities
19+
Requires-Python: >=3.8
20+
Description-Content-Type: text/x-rst
21+
License-File: LICENSE
22+
Provides-Extra: test
23+
Requires-Dist: pytest!=8.1.*,>=6; extra == "test"
24+
Requires-Dist: virtualenv>=13.0.0; extra == "test"
25+
Requires-Dist: wheel>=0.44.0; extra == "test"
26+
Requires-Dist: pip>=19.1; extra == "test"
27+
Requires-Dist: packaging>=23.2; extra == "test"
28+
Requires-Dist: jaraco.envs>=2.2; extra == "test"
29+
Requires-Dist: pytest-xdist>=3; extra == "test"
30+
Requires-Dist: jaraco.path>=3.2.0; extra == "test"
31+
Requires-Dist: build[virtualenv]>=1.0.3; extra == "test"
32+
Requires-Dist: filelock>=3.4.0; extra == "test"
33+
Requires-Dist: ini2toml[lite]>=0.14; extra == "test"
34+
Requires-Dist: tomli-w>=1.0.0; extra == "test"
35+
Requires-Dist: pytest-timeout; extra == "test"
36+
Requires-Dist: pytest-perf; sys_platform != "cygwin" and extra == "test"
37+
Requires-Dist: jaraco.develop>=7.21; (python_version >= "3.9" and sys_platform != "cygwin") and extra == "test"
38+
Requires-Dist: pytest-home>=0.5; extra == "test"
39+
Requires-Dist: pytest-subprocess; extra == "test"
40+
Requires-Dist: pyproject-hooks!=1.1; extra == "test"
41+
Requires-Dist: jaraco.test; extra == "test"
42+
Provides-Extra: doc
43+
Requires-Dist: sphinx>=3.5; extra == "doc"
44+
Requires-Dist: jaraco.packaging>=9.3; extra == "doc"
45+
Requires-Dist: rst.linker>=1.9; extra == "doc"
46+
Requires-Dist: furo; extra == "doc"
47+
Requires-Dist: sphinx-lint; extra == "doc"
48+
Requires-Dist: jaraco.tidelift>=1.4; extra == "doc"
49+
Requires-Dist: pygments-github-lexers==0.0.5; extra == "doc"
50+
Requires-Dist: sphinx-favicon; extra == "doc"
51+
Requires-Dist: sphinx-inline-tabs; extra == "doc"
52+
Requires-Dist: sphinx-reredirects; extra == "doc"
53+
Requires-Dist: sphinxcontrib-towncrier; extra == "doc"
54+
Requires-Dist: sphinx-notfound-page<2,>=1; extra == "doc"
55+
Requires-Dist: pyproject-hooks!=1.1; extra == "doc"
56+
Requires-Dist: towncrier<24.7; extra == "doc"
57+
Provides-Extra: ssl
58+
Provides-Extra: certs
59+
Provides-Extra: core
60+
Requires-Dist: packaging>=24; extra == "core"
61+
Requires-Dist: more_itertools>=8.8; extra == "core"
62+
Requires-Dist: jaraco.text>=3.7; extra == "core"
63+
Requires-Dist: importlib_resources>=5.10.2; python_version < "3.9" and extra == "core"
64+
Requires-Dist: importlib_metadata>=6; python_version < "3.10" and extra == "core"
65+
Requires-Dist: tomli>=2.0.1; python_version < "3.11" and extra == "core"
66+
Requires-Dist: wheel>=0.43.0; extra == "core"
67+
Requires-Dist: platformdirs>=2.6.2; extra == "core"
68+
Provides-Extra: check
69+
Requires-Dist: pytest-checkdocs>=2.4; extra == "check"
70+
Requires-Dist: pytest-ruff>=0.2.1; sys_platform != "cygwin" and extra == "check"
71+
Requires-Dist: ruff>=0.5.2; sys_platform != "cygwin" and extra == "check"
72+
Provides-Extra: cover
73+
Requires-Dist: pytest-cov; extra == "cover"
74+
Provides-Extra: enabler
75+
Requires-Dist: pytest-enabler>=2.2; extra == "enabler"
76+
Provides-Extra: type
77+
Requires-Dist: pytest-mypy; extra == "type"
78+
Requires-Dist: mypy==1.11.*; extra == "type"
79+
Requires-Dist: importlib_metadata>=7.0.2; python_version < "3.10" and extra == "type"
80+
Requires-Dist: jaraco.develop>=7.21; sys_platform != "cygwin" and extra == "type"
81+
82+
.. |pypi-version| image:: https://img.shields.io/pypi/v/setuptools.svg
83+
:target: https://pypi.org/project/setuptools
84+
85+
.. |py-version| image:: https://img.shields.io/pypi/pyversions/setuptools.svg
86+
87+
.. |test-badge| image:: https://github.com/pypa/setuptools/actions/workflows/main.yml/badge.svg
88+
:target: https://github.com/pypa/setuptools/actions?query=workflow%3A%22tests%22
89+
:alt: tests
90+
91+
.. |ruff-badge| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
92+
:target: https://github.com/astral-sh/ruff
93+
:alt: Ruff
94+
95+
.. |docs-badge| image:: https://img.shields.io/readthedocs/setuptools/latest.svg
96+
:target: https://setuptools.pypa.io
97+
98+
.. |skeleton-badge| image:: https://img.shields.io/badge/skeleton-2024-informational
99+
:target: https://blog.jaraco.com/skeleton
100+
101+
.. |codecov-badge| image:: https://img.shields.io/codecov/c/github/pypa/setuptools/master.svg?logo=codecov&logoColor=white
102+
:target: https://codecov.io/gh/pypa/setuptools
103+
104+
.. |tidelift-badge| image:: https://tidelift.com/badges/github/pypa/setuptools?style=flat
105+
:target: https://tidelift.com/subscription/pkg/pypi-setuptools?utm_source=pypi-setuptools&utm_medium=readme
106+
107+
.. |discord-badge| image:: https://img.shields.io/discord/803025117553754132
108+
:target: https://discord.com/channels/803025117553754132/815945031150993468
109+
:alt: Discord
110+
111+
|pypi-version| |py-version| |test-badge| |ruff-badge| |docs-badge| |skeleton-badge| |codecov-badge| |discord-badge|
112+
113+
See the `Quickstart <https://setuptools.pypa.io/en/latest/userguide/quickstart.html>`_
114+
and the `User's Guide <https://setuptools.pypa.io/en/latest/userguide/>`_ for
115+
instructions on how to use Setuptools.
116+
117+
Questions and comments should be directed to `GitHub Discussions
118+
<https://github.com/pypa/setuptools/discussions>`_.
119+
Bug reports and especially tested patches may be
120+
submitted directly to the `bug tracker
121+
<https://github.com/pypa/setuptools/issues>`_.
122+
123+
124+
Code of Conduct
125+
===============
126+
127+
Everyone interacting in the setuptools project's codebases, issue trackers,
128+
chat rooms, and fora is expected to follow the
129+
`PSF Code of Conduct <https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md>`_.
130+
131+
132+
For Enterprise
133+
==============
134+
135+
Available as part of the Tidelift Subscription.
136+
137+
Setuptools and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.
138+
139+
`Learn more <https://tidelift.com/subscription/pkg/pypi-setuptools?utm_source=pypi-setuptools&utm_medium=referral&utm_campaign=github>`_.

_distutils_system_mod.py

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
"""
2+
Apply Debian-specific patches to distutils commands and sysconfig.
3+
4+
Extracts the customized behavior from patches as reported
5+
in pypa/distutils#2 and applies those customizations (except
6+
for scheme definitions) to those commands.
7+
8+
Place this module somewhere in sys.path to take effect.
9+
"""
10+
11+
import os
12+
import sys
13+
import sysconfig
14+
15+
import distutils.sysconfig
16+
import distutils.command.install as orig_install
17+
import distutils.command.install_egg_info as orig_install_egg_info
18+
from distutils.command.install_egg_info import (
19+
to_filename,
20+
safe_name,
21+
safe_version,
22+
)
23+
from distutils.errors import DistutilsOptionError
24+
25+
26+
class install(orig_install.install):
27+
user_options = list(orig_install.install.user_options) + [
28+
('install-layout=', None,
29+
"installation layout to choose (known values: deb, unix)"),
30+
]
31+
32+
def initialize_options(self):
33+
super().initialize_options()
34+
self.prefix_option = None
35+
self.install_layout = None
36+
37+
def finalize_unix(self):
38+
self.prefix_option = self.prefix
39+
super().finalize_unix()
40+
if self.install_layout:
41+
if self.install_layout.lower() in ['deb']:
42+
self.select_scheme("deb_system")
43+
elif self.install_layout.lower() in ['unix']:
44+
self.select_scheme("posix_prefix")
45+
else:
46+
raise DistutilsOptionError(
47+
"unknown value for --install-layout")
48+
elif ((self.prefix_option and
49+
os.path.normpath(self.prefix) != '/usr/local')
50+
or sys.base_prefix != sys.prefix
51+
or 'PYTHONUSERBASE' in os.environ
52+
or 'VIRTUAL_ENV' in os.environ
53+
or 'real_prefix' in sys.__dict__):
54+
self.select_scheme("posix_prefix")
55+
else:
56+
if os.path.normpath(self.prefix) == '/usr/local':
57+
self.prefix = self.exec_prefix = '/usr'
58+
self.install_base = self.install_platbase = '/usr'
59+
self.select_scheme("posix_local")
60+
61+
62+
class install_egg_info(orig_install_egg_info.install_egg_info):
63+
user_options = list(orig_install_egg_info.install_egg_info.user_options) + [
64+
('install-layout', None, "custom installation layout"),
65+
]
66+
67+
def initialize_options(self):
68+
super().initialize_options()
69+
self.prefix_option = None
70+
self.install_layout = None
71+
72+
def finalize_options(self):
73+
self.set_undefined_options('install',('install_layout','install_layout'))
74+
self.set_undefined_options('install',('prefix_option','prefix_option'))
75+
super().finalize_options()
76+
77+
@property
78+
def basename(self):
79+
if self.install_layout:
80+
if not self.install_layout.lower() in ['deb', 'unix']:
81+
raise DistutilsOptionError(
82+
"unknown value for --install-layout")
83+
no_pyver = (self.install_layout.lower() == 'deb')
84+
elif self.prefix_option:
85+
no_pyver = False
86+
else:
87+
no_pyver = True
88+
if no_pyver:
89+
basename = "%s-%s.egg-info" % (
90+
to_filename(safe_name(self.distribution.get_name())),
91+
to_filename(safe_version(self.distribution.get_version()))
92+
)
93+
else:
94+
basename = "%s-%s-py%d.%d.egg-info" % (
95+
to_filename(safe_name(self.distribution.get_name())),
96+
to_filename(safe_version(self.distribution.get_version())),
97+
*sys.version_info[:2]
98+
)
99+
return basename
100+
101+
102+
def _posix_lib(standard_lib, libpython, early_prefix, prefix):
103+
is_default_prefix = not early_prefix or os.path.normpath(early_prefix) in ('/usr', '/usr/local')
104+
if standard_lib:
105+
return libpython
106+
elif (is_default_prefix and
107+
'PYTHONUSERBASE' not in os.environ and
108+
'VIRTUAL_ENV' not in os.environ and
109+
'real_prefix' not in sys.__dict__ and
110+
sys.prefix == sys.base_prefix):
111+
return os.path.join(prefix, "lib", "python3", "dist-packages")
112+
else:
113+
return os.path.join(libpython, "site-packages")
114+
115+
116+
def extend_schemes():
117+
sysconfig._INSTALL_SCHEMES.setdefault(
118+
'deb_system',
119+
dict(
120+
purelib='{base}/lib/python3/dist-packages',
121+
platlib='{platbase}/lib/python3/dist-packages',
122+
headers='{base}/include/python{py_version_short}/{dist_name}',
123+
scripts='{base}/bin',
124+
data='{base}',
125+
),
126+
)
127+
128+
129+
def apply_customizations():
130+
orig_install.install = install
131+
orig_install_egg_info.install_egg_info = install_egg_info
132+
distutils.sysconfig._posix_lib = _posix_lib
133+
extend_schemes()
134+
135+
136+
apply_customizations()

debian/.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
*.substvars
2+
*debhelper*
3+
.debhelper
4+
files
5+
python3-pkg-resources
6+
python3-setuptools
7+
python3-setuptools-whl
8+
tmp

debian/changelog

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
python-setuptools (100:74.1.2-1) UNRELEASED; urgency=medium
2+
3+
* https://github.com/pypa/setuptools/releases/tag/v74.1.2
4+
5+
-- Wong Hoi Sing Edison <[email protected]> Wed, 04 Sep 2024 17:39:12 +0800

debian/control

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
Source: python-setuptools
2+
Section: python
3+
Priority: optional
4+
Standards-Version: 4.5.0
5+
Maintainer: Wong Hoi Sing Edison <[email protected]>
6+
Homepage: https://github.com/pypa/setuptools/tags
7+
Vcs-Browser: https://github.com/alvistack/pypa-setuptools
8+
Vcs-Git: https://github.com/alvistack/pypa-setuptools.git
9+
Build-Depends:
10+
debhelper,
11+
debhelper-compat (= 10),
12+
dh-python,
13+
fdupes,
14+
python3-dev,
15+
python3-wheel,
16+
17+
Package: python3-pkg-resources
18+
Architecture: all
19+
Description: Package Discovery and Resource Access using pkg_resources
20+
The pkg_resources module provides an API for Python libraries to
21+
access their resource files, and for extensible applications and
22+
frameworks to automatically discover plugins. It also provides
23+
runtime support for using C extensions that are inside zipfile-format
24+
eggs, support for merging packages that have separately-distributed
25+
modules or subpackages, and APIs for managing Python's current
26+
"working set" of active packages.
27+
Depends:
28+
${misc:Depends},
29+
${shlibs:Depends},
30+
${python3:Depends},
31+
32+
Package: python3-setuptools
33+
Architecture: all
34+
Description: Download, build, install, upgrade, and uninstall Python packages
35+
setuptools is a collection of enhancements to the Python distutils that
36+
allow you to build and distribute Python packages, especially ones that
37+
have dependencies on other packages.
38+
Depends:
39+
${misc:Depends},
40+
${shlibs:Depends},
41+
${python3:Depends},
42+
python3,
43+
python3-pkg-resources (= ${source:Version}),
44+
45+
Package: python3-setuptools-whl
46+
Architecture: all
47+
Description: Python Distutils Enhancements (wheel package)
48+
This is the support package for the PEP 427 wheel version of the package,
49+
required for using setuptools inside a virtual environment.
50+
Depends:
51+
${misc:Depends},
52+
${shlibs:Depends},
53+
${python3:Depends},
54+
Breaks:
55+
python-pip-whl (<< 21.3.1+dfsg-2~),
56+
Replaces:
57+
python-pip-whl (<< 21.3.1+dfsg-2~),

0 commit comments

Comments
 (0)