Skip to content

Commit

Permalink
Merge pull request pypa#4369 from agronholm/vendored-wheel
Browse files Browse the repository at this point in the history
Adopted the bdist_wheel command from "wheel"
  • Loading branch information
agronholm authored May 22, 2024
2 parents c298fb8 + b832968 commit 52d7324
Show file tree
Hide file tree
Showing 66 changed files with 2,344 additions and 16 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ include
lib
distribute.egg-info
setuptools.egg-info
setuptools/tests/bdist_wheel_testdata/*/*.egg-info/
.coverage
.eggs
.tox
Expand Down
1 change: 1 addition & 0 deletions conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ def pytest_configure(config):
'pkg_resources/_vendor',
'setuptools/config/_validate_pyproject',
'setuptools/modified.py',
'setuptools/tests/bdist_wheel_testdata',
]


Expand Down
6 changes: 2 additions & 4 deletions docs/build_meta.rst
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,8 @@ being used to package your scripts and install from source). To use it with
build-backend = "setuptools.build_meta"

``build_meta`` implements ``setuptools``' build system support.
The ``setuptools`` package implements the ``build_sdist``
command and the ``wheel`` package implements the ``build_wheel``
command; the latter is a dependency of the former
exposed via :pep:`517` hooks.
The ``setuptools`` package implements the ``build_sdist`` and
``build_wheel`` commands.

Use ``setuptools``' :ref:`declarative config <declarative config>` to
specify the package information in ``setup.cfg``::
Expand Down
6 changes: 3 additions & 3 deletions docs/userguide/quickstart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -60,9 +60,9 @@ library will be used to actually do the packaging.

Historically this documentation has unnecessarily listed ``wheel``
in the ``requires`` list, and many projects still do that. This is
not recommended. The backend automatically adds ``wheel`` dependency
when it is required, and listing it explicitly causes it to be
unnecessarily required for source distribution builds.
not recommended, as the backend no longer requires the ``wheel``
package, and listing it explicitly causes it to be unnecessarily
required for source distribution builds.
You should only include ``wheel`` in ``requires`` if you need to explicitly
access it during build time (e.g. if your project needs a ``setup.py``
script that imports ``wheel``).
Expand Down
1 change: 1 addition & 0 deletions mypy.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ exclude = (?x)(
| ^.+?/(_vendor|extern)/ # Vendored
| ^setuptools/_distutils/ # Vendored
| ^setuptools/config/_validate_pyproject/ # Auto-generated
| ^setuptools/tests/bdist_wheel_testdata/ # Duplicate module name
)

# Ignoring attr-defined because setuptools wraps a lot of distutils classes, adding new attributes,
Expand Down
1 change: 1 addition & 0 deletions newsfragments/1386.feature.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Adopted the ``bdist_wheel`` command from the ``wheel`` project -- by :user:`agronholm`
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ certs = []
alias = "setuptools.command.alias:alias"
bdist_egg = "setuptools.command.bdist_egg:bdist_egg"
bdist_rpm = "setuptools.command.bdist_rpm:bdist_rpm"
bdist_wheel = "setuptools.command.bdist_wheel:bdist_wheel"
build = "setuptools.command.build:build"
build_clib = "setuptools.command.build_clib:build_clib"
build_ext = "setuptools.command.build_ext:build_ext"
Expand Down
1 change: 1 addition & 0 deletions setuptools/_vendor/vendored.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ zipp==3.7.0
tomli==2.0.1
# required for jaraco.context on older Pythons
backports.tarfile
wheel==0.43.0
1 change: 1 addition & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/INSTALLER
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pip
21 changes: 21 additions & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2012 Daniel Holth <[email protected]> and contributors

Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
61 changes: 61 additions & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/METADATA
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
Metadata-Version: 2.1
Name: wheel
Version: 0.43.0
Summary: A built-package format for Python
Keywords: wheel,packaging
Author-email: Daniel Holth <[email protected]>
Maintainer-email: Alex Grönholm <[email protected]>
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: System :: Archiving :: Packaging
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: pytest >= 6.0.0 ; extra == "test"
Requires-Dist: setuptools >= 65 ; extra == "test"
Project-URL: Changelog, https://wheel.readthedocs.io/en/stable/news.html
Project-URL: Documentation, https://wheel.readthedocs.io/
Project-URL: Issue Tracker, https://github.com/pypa/wheel/issues
Project-URL: Source, https://github.com/pypa/wheel
Provides-Extra: test

wheel
=====

This library is the reference implementation of the Python wheel packaging
standard, as defined in `PEP 427`_.

It has two different roles:

#. A setuptools_ extension for building wheels that provides the
``bdist_wheel`` setuptools command
#. A command line tool for working with wheel files

It should be noted that wheel is **not** intended to be used as a library, and
as such there is no stable, public API.

.. _PEP 427: https://www.python.org/dev/peps/pep-0427/
.. _setuptools: https://pypi.org/project/setuptools/

Documentation
-------------

The documentation_ can be found on Read The Docs.

.. _documentation: https://wheel.readthedocs.io/

Code of Conduct
---------------

Everyone interacting in the wheel project's codebases, issue trackers, chat
rooms, and mailing lists is expected to follow the `PSF Code of Conduct`_.

.. _PSF Code of Conduct: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md

63 changes: 63 additions & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/RECORD
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
../../bin/wheel,sha256=Y73OywJ5gxOkyLS7G4Z9CS6Pb63oCt-LMViLs-ygeGE,245
wheel-0.43.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
wheel-0.43.0.dist-info/LICENSE.txt,sha256=MMI2GGeRCPPo6h0qZYx8pBe9_IkcmO8aifpP8MmChlQ,1107
wheel-0.43.0.dist-info/METADATA,sha256=WbrCKwClnT5WCKVrjPjvxDgxo2tyeS7kOJyc1GaceEE,2153
wheel-0.43.0.dist-info/RECORD,,
wheel-0.43.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
wheel-0.43.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
wheel-0.43.0.dist-info/entry_points.txt,sha256=rTY1BbkPHhkGMm4Q3F0pIzJBzW2kMxoG1oriffvGdA0,104
wheel/__init__.py,sha256=D6jhH00eMzbgrXGAeOwVfD5i-lCAMMycuG1L0useDlo,59
wheel/__main__.py,sha256=NkMUnuTCGcOkgY0IBLgBCVC_BGGcWORx2K8jYGS12UE,455
wheel/__pycache__/__init__.cpython-312.pyc,,
wheel/__pycache__/__main__.cpython-312.pyc,,
wheel/__pycache__/_setuptools_logging.cpython-312.pyc,,
wheel/__pycache__/bdist_wheel.cpython-312.pyc,,
wheel/__pycache__/macosx_libfile.cpython-312.pyc,,
wheel/__pycache__/metadata.cpython-312.pyc,,
wheel/__pycache__/util.cpython-312.pyc,,
wheel/__pycache__/wheelfile.cpython-312.pyc,,
wheel/_setuptools_logging.py,sha256=NoCnjJ4DFEZ45Eo-2BdXLsWJCwGkait1tp_17paleVw,746
wheel/bdist_wheel.py,sha256=OKJyp9E831zJrxoRfmM9AgOjByG1CB-pzF5kXQFmaKk,20938
wheel/cli/__init__.py,sha256=eBNhnPwWTtdKAJHy77lvz7gOQ5Eu3GavGugXxhSsn-U,4264
wheel/cli/__pycache__/__init__.cpython-312.pyc,,
wheel/cli/__pycache__/convert.cpython-312.pyc,,
wheel/cli/__pycache__/pack.cpython-312.pyc,,
wheel/cli/__pycache__/tags.cpython-312.pyc,,
wheel/cli/__pycache__/unpack.cpython-312.pyc,,
wheel/cli/convert.py,sha256=qJcpYGKqdfw1P6BelgN1Hn_suNgM6bvyEWFlZeuSWx0,9439
wheel/cli/pack.py,sha256=CAFcHdBVulvsHYJlndKVO7KMI9JqBTZz5ii0PKxxCOs,3103
wheel/cli/tags.py,sha256=lHw-LaWrkS5Jy_qWcw-6pSjeNM6yAjDnqKI3E5JTTCU,4760
wheel/cli/unpack.py,sha256=Y_J7ynxPSoFFTT7H0fMgbBlVErwyDGcObgme5MBuz58,1021
wheel/macosx_libfile.py,sha256=HnW6OPdN993psStvwl49xtx2kw7hoVbe6nvwmf8WsKI,16103
wheel/metadata.py,sha256=q-xCCqSAK7HzyZxK9A6_HAWmhqS1oB4BFw1-rHQxBiQ,5884
wheel/util.py,sha256=e0jpnsbbM9QhaaMSyap-_ZgUxcxwpyLDk6RHcrduPLg,621
wheel/vendored/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
wheel/vendored/__pycache__/__init__.cpython-312.pyc,,
wheel/vendored/packaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
wheel/vendored/packaging/__pycache__/__init__.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_elffile.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_manylinux.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_musllinux.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_parser.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_structures.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/_tokenizer.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/markers.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/requirements.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/specifiers.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/tags.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/utils.cpython-312.pyc,,
wheel/vendored/packaging/__pycache__/version.cpython-312.pyc,,
wheel/vendored/packaging/_elffile.py,sha256=hbmK8OD6Z7fY6hwinHEUcD1by7czkGiNYu7ShnFEk2k,3266
wheel/vendored/packaging/_manylinux.py,sha256=P7sdR5_7XBY09LVYYPhHmydMJIIwPXWsh4olk74Uuj4,9588
wheel/vendored/packaging/_musllinux.py,sha256=z1s8To2hQ0vpn_d-O2i5qxGwEK8WmGlLt3d_26V7NeY,2674
wheel/vendored/packaging/_parser.py,sha256=4tT4emSl2qTaU7VTQE1Xa9o1jMPCsBezsYBxyNMUN-s,10347
wheel/vendored/packaging/_structures.py,sha256=q3eVNmbWJGG_S0Dit_S3Ao8qQqz_5PYTXFAKBZe5yr4,1431
wheel/vendored/packaging/_tokenizer.py,sha256=alCtbwXhOFAmFGZ6BQ-wCTSFoRAJ2z-ysIf7__MTJ_k,5292
wheel/vendored/packaging/markers.py,sha256=_TSPI1BhJYO7Bp9AzTmHQxIqHEVXaTjmDh9G-w8qzPA,8232
wheel/vendored/packaging/requirements.py,sha256=dgoBeVprPu2YE6Q8nGfwOPTjATHbRa_ZGLyXhFEln6Q,2933
wheel/vendored/packaging/specifiers.py,sha256=IWSt0SrLSP72heWhAC8UL0eGvas7XIQHjqiViVfmPKE,39778
wheel/vendored/packaging/tags.py,sha256=fedHXiOHkBxNZTXotXv8uXPmMFU9ae-TKBujgYHigcA,18950
wheel/vendored/packaging/utils.py,sha256=XgdmP3yx9-wQEFjO7OvMj9RjEf5JlR5HFFR69v7SQ9E,5268
wheel/vendored/packaging/version.py,sha256=PFJaYZDxBgyxkfYhH3SQw4qfE9ICCWrTmitvq14y3bs,16234
wheel/vendored/vendor.txt,sha256=Z2ENjB1i5prfez8CdM1Sdr3c6Zxv2rRRolMpLmBncAE,16
wheel/wheelfile.py,sha256=DtJDWoZMvnBh4leNMDPGOprQU9d_dp6q-MmV0U--4xc,7694
4 changes: 4 additions & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/WHEEL
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Wheel-Version: 1.0
Generator: flit 3.9.0
Root-Is-Purelib: true
Tag: py3-none-any
6 changes: 6 additions & 0 deletions setuptools/_vendor/wheel-0.43.0.dist-info/entry_points.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[console_scripts]
wheel=wheel.cli:main

[distutils.commands]
bdist_wheel=wheel.bdist_wheel:bdist_wheel

3 changes: 3 additions & 0 deletions setuptools/_vendor/wheel/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from __future__ import annotations

__version__ = "0.43.0"
Loading

0 comments on commit 52d7324

Please sign in to comment.