pypa/setuptools
### [`v60.10.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v60100)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.9.3...v60.10.0)
Changes
^^^^^^^
- [#2971](https://togithub.com/pypa/setuptools/issues/2971): Deprecated upload_docs command, to be removed in the future.
- [#3137](https://togithub.com/pypa/setuptools/issues/3137): Use samefile from stdlib, supported on Windows since Python 3.2.
- [#3170](https://togithub.com/pypa/setuptools/issues/3170): Adopt nspektr (vendored) to implement Distribution.\_install_dependencies.
Documentation changes
^^^^^^^^^^^^^^^^^^^^^
- [#3144](https://togithub.com/pypa/setuptools/issues/3144): Added documentation on using console_scripts from setup.py, which was previously only shown in setup.cfg -- by :user:`xhlulu`
- [#3148](https://togithub.com/pypa/setuptools/issues/3148): Added clarifications about `MANIFEST.in`, that include links to PyPUG docs
and more prominent mentions to using a revision control system plugin as an
alternative.
- [#3148](https://togithub.com/pypa/setuptools/issues/3148): Removed mention to `pkg_resources` as the recommended way of accessing data
files, in favour of importlib.resources.
Additionally more emphasis was put on the fact that *package data files* reside
**inside** the *package directory* (and therefore should be *read-only*).
Misc
^^^^
- [#3120](https://togithub.com/pypa/setuptools/issues/3120): Added workaround for intermittent failures of backend tests on PyPy.
These tests now are marked with `XFAIL `\_, instead of erroring
out directly.
- [#3124](https://togithub.com/pypa/setuptools/issues/3124): Improved configuration for :pypi:`rst-linker` (extension used to build the
changelog).
- [#3133](https://togithub.com/pypa/setuptools/issues/3133): Enhanced isolation of tests using virtual environments - PYTHONPATH is not leaking to spawned subprocesses -- by :user:`befeleme`
- [#3147](https://togithub.com/pypa/setuptools/issues/3147): Added options to provide a pre-built `setuptools` wheel or sdist for being
used during tests with virtual environments.
Paths for these pre-built distribution files can now be set via the environment
variables: `PRE_BUILT_SETUPTOOLS_SDIST` and `PRE_BUILT_SETUPTOOLS_WHEEL`.
### [`v60.9.3`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6093)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.9.2...v60.9.3)
Misc
^^^^
- [#3093](https://togithub.com/pypa/setuptools/issues/3093): Repaired automated release process.
### [`v60.9.2`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6092)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.9.1...v60.9.2)
Misc
^^^^
- [#3035](https://togithub.com/pypa/setuptools/issues/3035): When loading distutils from the vendored copy, rewrite `__name__` to ensure consistent importing from inside and out.
### [`v60.9.1`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6091)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.9.0...v60.9.1)
Misc
^^^^
- [#3102](https://togithub.com/pypa/setuptools/issues/3102): Prevent vendored importlib_metadata from loading distributions from older importlib_metadata.
- [#3103](https://togithub.com/pypa/setuptools/issues/3103): Fixed issue where string-based entry points would be omitted.
- [#3107](https://togithub.com/pypa/setuptools/issues/3107): Bump importlib_metadata to 4.11.1 addressing issue with parsing requirements in egg-info as found in PyPy.
### [`v60.9.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6090)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.8.2...v60.9.0)
Changes
^^^^^^^
- [#2876](https://togithub.com/pypa/setuptools/issues/2876): In the build backend, allow single config settings to be supplied.
- [#2993](https://togithub.com/pypa/setuptools/issues/2993): Removed workaround in distutils hack for get-pip now that [pypa/get-pip#137](https://togithub.com/pypa/get-pip/issues/137) is closed.
- [#3085](https://togithub.com/pypa/setuptools/issues/3085): Setuptools no longer relies on `pkg_resources` for entry point handling.
- [#3098](https://togithub.com/pypa/setuptools/issues/3098): Bump vendored packaging to 21.3.
- Removed bootstrap script.
.. warning:: Users trying to install the unmaintained :pypi:`pathlib` backport
from PyPI/`sdist`/source code may find problems when using `setuptools >= 60.9.0`.
This happens because during the installation, the unmaintained
implementation of `pathlib` is loaded and may cause compatibility problems
(it does not expose the same public API defined in the Python standard library).
Whenever possible users should avoid declaring `pathlib` as a dependency.
An alternative is to pre-build a wheel for `pathlib` using a separated
virtual environment with an older version of setuptools and install the
library directly from the pre-built wheel.
### [`v60.8.2`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6082)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.8.1...v60.8.2)
Misc
^^^^
- [#3091](https://togithub.com/pypa/setuptools/issues/3091): Make `concurrent.futures` import lazy in vendored `more_itertools`
package to a avoid importing threading as a side effect (which caused
`gevent/gevent#1865 `\__).
\-- by :user:`maciejp-ro`
### [`v60.8.1`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6081)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.8.0...v60.8.1)
Misc
^^^^
- [#3084](https://togithub.com/pypa/setuptools/issues/3084): When vendoring jaraco packages, ensure the namespace package is converted to a simple package to support zip importer.
### [`v60.8.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6080)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.7.1...v60.8.0)
Changes
^^^^^^^
- [#3085](https://togithub.com/pypa/setuptools/issues/3085): Setuptools now vendors importlib_resources and importlib_metadata and jaraco.text. Setuptools no longer relies on pkg_resources for ensure_directory nor parse_requirements.
### [`v60.7.1`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6071)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.7.0...v60.7.1)
Misc
^^^^
- [#3072](https://togithub.com/pypa/setuptools/issues/3072): Remove lorem_ipsum from jaraco.text when vendored.
### [`v60.7.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6070)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.6.0...v60.7.0)
Changes
^^^^^^^
- [#3061](https://togithub.com/pypa/setuptools/issues/3061): Vendored jaraco.text and use line processing from that library in pkg_resources.
Misc
^^^^
- [#3070](https://togithub.com/pypa/setuptools/issues/3070): Avoid AttributeError in easy_install.create_home_path when sysconfig.get_config_vars values are not strings.
### [`v60.6.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6060)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.5.0...v60.6.0)
Changes
^^^^^^^
- [#3043](https://togithub.com/pypa/setuptools/issues/3043): Merge with [pypa/distutils@`bb018f1`](https://togithub.com/pypa/distutils/commit/bb018f1ac3) including consolidated behavior in sysconfig.get_platform ([pypa/distutils#104](https://togithub.com/pypa/distutils/issues/104)).
- [#3057](https://togithub.com/pypa/setuptools/issues/3057): Don't include optional `Home-page` in metadata if no `url` is specified. -- by :user:`cdce8p`
- [#3062](https://togithub.com/pypa/setuptools/issues/3062): Merge with [pypa/distutils@`b53a824`](https://togithub.com/pypa/distutils/commit/b53a824ec3) including improved support for lib directories on non-x64 Windows builds.
Documentation changes
^^^^^^^^^^^^^^^^^^^^^
- [#2897](https://togithub.com/pypa/setuptools/issues/2897): Added documentation about wrapping `setuptools.build_meta` in a in-tree
custom backend. This is a :pep:`517`-compliant way of dynamically specifying
build dependencies (e.g. when platform, OS and other markers are not enough).
\-- by :user:`abravalheri`
- [#3034](https://togithub.com/pypa/setuptools/issues/3034): Replaced occurrences of the defunct distutils-sig mailing list with pointers
to GitHub Discussions.
\-- by :user:`ashemedai`
- [#3056](https://togithub.com/pypa/setuptools/issues/3056): The documentation has stopped suggesting to add `wheel` to
:pep:`517` requirements -- by :user:`webknjaz`
Misc
^^^^
- [#3054](https://togithub.com/pypa/setuptools/issues/3054): Used Py3 syntax `super().__init__()` -- by :user:`imba-tjd`
### [`v60.5.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6050)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.4.0...v60.5.0)
Changes
^^^^^^^
- [#2990](https://togithub.com/pypa/setuptools/issues/2990): Set the `.origin` attribute of the `distutils` module to the module's `__file__`.
### [`v60.4.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6040)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.3.1...v60.4.0)
Changes
^^^^^^^
- [#2839](https://togithub.com/pypa/setuptools/issues/2839): Removed `requires` sorting when installing wheels as an egg dir.
- [#2953](https://togithub.com/pypa/setuptools/issues/2953): Fixed a bug that easy install incorrectly parsed Python 3.10 version string.
- [#3006](https://togithub.com/pypa/setuptools/issues/3006): Fixed startup performance issue of Python interpreter due to imports of
costly modules in `_distutils_hack` -- by :user:`tiran`
Documentation changes
^^^^^^^^^^^^^^^^^^^^^
- [#2674](https://togithub.com/pypa/setuptools/issues/2674): Added link to additional resources on packaging in Quickstart guide
- [#3008](https://togithub.com/pypa/setuptools/issues/3008): "In-tree" Sphinx extension for "favicons" replaced with `sphinx-favicon`.
- [#3008](https://togithub.com/pypa/setuptools/issues/3008): SVG images (logo, banners, ...) optimised with the help of the `scour`
package.
Misc
^^^^
- [#2862](https://togithub.com/pypa/setuptools/issues/2862): Added integration tests that focus on building and installing some packages in
the Python ecosystem via `pip` -- by :user:`abravalheri`
- [#2952](https://togithub.com/pypa/setuptools/issues/2952): Modified "vendoring" logic to keep license files.
- [#2968](https://togithub.com/pypa/setuptools/issues/2968): Improved isolation for some tests that where inadvertently using the project
root for builds, and therefore creating directories (e.g. `build`, `dist`,
`*.egg-info`) that could interfere with the outcome of other tests
\-- by :user:`abravalheri`.
- [#2968](https://togithub.com/pypa/setuptools/issues/2968): Introduced new test fixtures `venv`, `venv_without_setuptools`,
`bare_venv` that rely on the `jaraco.envs` package.
These new test fixtures were also used to remove the (currently problematic)
dependency on the `pytest_virtualenv` plugin.
- [#2968](https://togithub.com/pypa/setuptools/issues/2968): Removed `tmp_src` test fixture. Previously this fixture was copying all the
files and folders under the project root, including the `.git` directory,
which is error prone and increases testing time.
Since `tmp_src` was used to populate virtual environments (installing the
version of `setuptools` under test via the source tree), it was replaced by
the new `setuptools_sdist` and `setuptools_wheel` fixtures (that are build
only once per session testing and can be shared between all the workers for
read-only usage).
### [`v60.3.1`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6031)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.3.0...v60.3.1)
Misc
^^^^
- [#3002](https://togithub.com/pypa/setuptools/issues/3002): Suppress AttributeError when detecting get-pip.
### [`v60.3.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6030)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v60.2.0...v60.3.0)
Changes
^^^^^^^
- [#2993](https://togithub.com/pypa/setuptools/issues/2993): In \_distutils_hack, bypass the distutils exception for pip when get-pip is being invoked, because it imports setuptools.
Misc
^^^^
- [#2989](https://togithub.com/pypa/setuptools/issues/2989): Merge with [pypa/distutils@`788cc15`](https://togithub.com/pypa/distutils/commit/788cc159). Includes fix for config vars missing from sysconfig.
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
~=60.2.0
->~=60.10.0
Release Notes
pypa/setuptools
### [`v60.10.0`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v60100) [Compare Source](https://togithub.com/pypa/setuptools/compare/v60.9.3...v60.10.0) Changes ^^^^^^^ - [#2971](https://togithub.com/pypa/setuptools/issues/2971): Deprecated upload_docs command, to be removed in the future. - [#3137](https://togithub.com/pypa/setuptools/issues/3137): Use samefile from stdlib, supported on Windows since Python 3.2. - [#3170](https://togithub.com/pypa/setuptools/issues/3170): Adopt nspektr (vendored) to implement Distribution.\_install_dependencies. Documentation changes ^^^^^^^^^^^^^^^^^^^^^ - [#3144](https://togithub.com/pypa/setuptools/issues/3144): Added documentation on using console_scripts from setup.py, which was previously only shown in setup.cfg -- by :user:`xhlulu` - [#3148](https://togithub.com/pypa/setuptools/issues/3148): Added clarifications about `MANIFEST.in`, that include links to PyPUG docs and more prominent mentions to using a revision control system plugin as an alternative. - [#3148](https://togithub.com/pypa/setuptools/issues/3148): Removed mention to `pkg_resources` as the recommended way of accessing data files, in favour of importlib.resources. Additionally more emphasis was put on the fact that *package data files* reside **inside** the *package directory* (and therefore should be *read-only*). Misc ^^^^ - [#3120](https://togithub.com/pypa/setuptools/issues/3120): Added workaround for intermittent failures of backend tests on PyPy. These tests now are marked with `XFAILConfiguration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.