Update dependency setuptools to v65
This MR contains the following updates:
Package | Update | Change |
---|---|---|
setuptools (changelog) | major |
==62.3.2 -> ==65.3.0
|
Release Notes
pypa/setuptools
v65.3.0
Changes ^^^^^^^
-
#3547: Stop
ConfigDiscovery.analyse_name
from splatting theDistribution.name
attribute -- by :user:jeamland
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3554: Changed requires to requests in the pyproject.toml example in the :ref:
Dependency management section of the Quickstart guide <userguide/quickstart:dependency-management>
-- by :user:mfbutner
Misc ^^^^
- #3561: Fixed accidental name matching in editable hooks.
v65.2.0
Changes ^^^^^^^
-
#3553: Sync with pypa/distutils@
22b9bcf
, including fixed cross-compiling support and removing deprecation warning per pypa/distutils#169.
v65.1.1
Misc ^^^^
- #3551: Avoided circular imports in meta path finder for editable installs when a missing module has the same name as its parent.
v65.1.0
Changes ^^^^^^^
- #3536: Remove monkeypatching of msvc9compiler.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3538: Corrected documentation on how to use the
legacy-editable
mode.
v65.0.2
Misc ^^^^
-
#3505: Restored distutils msvccompiler and msvc9compiler modules and marked as deprecated (pypa/distutils@
c802880
).
v65.0.1
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3529: Added clarification to :doc:
/userguide/quickstart
about support tosetup.py
.
Misc ^^^^
-
#3526: Fixed backward compatibility of editable installs and custom
build_ext
commands inheriting directly fromdistutils
. -
#3528: Fixed
buid_meta.prepare_metadata_for_build_wheel
when givenmetadata_directory
is"."
.
v65.0.0
Breaking Changes ^^^^^^^^^^^^^^^^
- #3505: Removed 'msvccompiler' and 'msvc9compiler' modules from distutils.
- #3521: Remove bdist_msi and bdist_wininst commands, which have been deprecated since Python 3.9. Use older Setuptools for these behaviors if needed.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3519: Changed the note in
keywords
documentation regarding editable installations to specify whichsetuptools
version require a minimalsetup.py
file or not.
v64.0.3
Misc ^^^^
- #3515: Fixed "inline" file copying for editable installations and optional extensions.
-
#3517: Fixed
editable_wheel
to ensure other commands are finalized before using them. This should prevent errors with plugins trying to use different commands or reinitializing them. -
#3517: Augmented filter to prevent transient/temporary source files from being
considered
package_data
ordata_files
.
v64.0.2
Misc ^^^^
-
#3506: Suppress errors in custom
build_py
implementations when running editable installs in favor of a warning indicating what is the most appropriate migration path. This is a transitional measure. Errors might be raised in future versions ofsetuptools
. - #3512: Added capability of handling namespace packages created accidentally/purposefully via discovery configuration during editable installs. This should emulate the behaviour of a non-editable installation.
v64.0.1
Misc ^^^^
-
#3497: Fixed
editable_wheel
for legacy namespaces. -
#3502: Fixed issue with editable install and single module distributions.
-
#3503: Added filter to ignore external
.egg-info
files in manifest.Some plugins might rely on the fact that the
.egg-info
directory is produced inside the project dir, which may not be the case in editable installs (the.egg-info
directory is produced inside the metadata directory given by the build frontend via PEP 660 hooks).
v64.0.0
Deprecations ^^^^^^^^^^^^
-
#3380: Passing some types of parameters via
--global-option
to setuptools PEP 517/PEP 660 backend is now considered deprecated. The user can pass the same arbitrary parameter via--build-option
(--global-option
is now reserved for flags like--verbose
or--quiet
).Both
--build-option
and--global-option
are supported as a transitional effort (a.k.a. "escape hatch"). In the future a proper list of allowedconfig_settings
may be created.
Breaking Changes ^^^^^^^^^^^^^^^^
-
#3265: Added implementation for editable install hooks (PEP 660).
By default the users will experience a lenient behavior which prioritises the ability of the users of changing the distributed packages (e.g. adding new files or removing old ones). But they can also opt into a strict mode, which will try to replicate as much as possible the behavior of the package as if it would be normally installed by end users. The strict editable installation is not able to detect if files are added or removed from the project (a new installation is required).
This implementation might also affect plugins and customizations that assume certain
build
subcommands don't run during editable installs or that they always copy files to the temporary build directory... important:: The editable aspect of the editable install supported this implementation is restricted to the Python modules contained in the distributed package. Changes in binary extensions (e.g. C/C++), entry-point definitions, dependencies, metadata, datafiles, etc may require a new installation.
Changes ^^^^^^^
-
#3380: Improved the handling of the
config_settings
parameter in both PEP 517 and PEP 660 interfaces:-
It is possible now to pass both
--global-option
and--build-option
. As discussed in #1928, arbitrary arguments passed via--global-option
should be placed before the name of the setuptools' internal command, while--build-option
should come after. -
Users can pass
editable-mode=strict
to select a strict behaviour for the editable installation.
-
-
#3392: Exposed
get_output_mapping()
frombuild_py
andbuild_ext
subcommands. This interface is reserved for the use ofsetuptools
Extensions and third part packages are explicitly disallowed to calling it. However, any implementation overwritingbuild_py
orbuild_ext
are required to honour this interface. -
#3412: Added ability of collecting source files from custom build sub-commands to
sdist
. This allows plugins and customization scripts to automatically add required source files in the source distribution. -
#3414: Users can temporarily specify an environment variable
SETUPTOOLS_ENABLE_FEATURES=legacy-editable
as a escape hatch for the :pep:660
behavior. This setting is transitional and may be removed in the future. -
#3484: Added transient
compat
mode to editable installs. This more will be temporarily available (to facilitate the transition period) for those that want to emulate the behavior of thedevelop
command (in terms of what is added tosys.path
). This mode is provided "as is", with limited support, and will be removed in future versions ofsetuptools
.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3414: Updated :doc:
Development Mode </userguide/development_mode>
to reflect on the implementation of :pep:660
.
v63.4.3
Misc ^^^^
-
#3496: Update to pypa/distutils@
b65aa40
including more robust support for library/include dir handling in msvccompiler (pypa/distutils#153) and test suite improvements.
v63.4.2
Misc ^^^^
-
#3453: Bump vendored version of :pypi:
pyparsing
to 3.0.9. -
#3481: Add warning for potential
install_requires
andextras_require
misconfiguration insetup.cfg
-
#3487: Modified
pyproject.toml
validation exception handling to make relevant debugging information easier to spot.
v63.4.1
Misc ^^^^
-
#3482: Sync with pypa/distutils@
274758f
, restoring compatibility shim in bdist.format_commands.
v63.4.0
Changes ^^^^^^^
-
#2971:
upload_docs
command is deprecated once again.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3443: Installed
sphinx-hoverxref
extension to show tooltips on internal an external references. -- by :user:humitos
-
#3444: Installed
sphinx-notfound-page
extension to generate nice 404 pages. -- by :user:humitos
Misc ^^^^
-
#3480: Merge with pypa/distutils@
c397f4c
v63.3.0
Changes ^^^^^^^
-
#3475: Merge with pypa/distutils@
129480b
, including substantial delinting and cleanup, some refactoring around compiler logic, better messaging in cygwincompiler (pypa/distutils#161).
v63.2.0
Changes ^^^^^^^
-
#3395: Included a performance optimization:
setuptools.build_meta
no longer tries to :func:compile
the setup script code before :func:exec
-ing it.
Misc ^^^^
- #3435: Corrected issue in macOS framework builds on Python 3.9 not installed by homebrew (pypa/distutils#158).
v63.1.0
Changes ^^^^^^^
-
#3430: Merge with pypa/distutils@
152c13d
including pypa/distutils#155 (improved compatibility for editable installs on homebrew Python 3.9), pypa/distutils#150 (better handling of runtime_library_dirs on cygwin), and pypa/distutils#151 (remove warnings for namespace packages).
v63.0.0
Breaking Changes ^^^^^^^^^^^^^^^^
-
#3421: Drop setuptools' support for installing an entrypoint extra requirements at load time:
- the functionality has been broken since v60.8.0.
- the mechanism to do so is deprecated (
fetch_build_eggs
). - that use case (e.g. a custom command class entrypoint) is covered by making sure the necessary build requirements are declared.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3305: Updated the example pyproject.toml -- by :user:
jacalata
-
#3394: This updates the documentation for the
file_finders
hook so that the logging recommendation aligns with the suggestion to not usedistutils
directly. -
#3397: Fix reference for
keywords
to point to the Core Metadata Specification instead of PEP 314 (the live standard is kept always up-to-date and consolidates several PEPs together in a single document). -
#3402: Reordered the User Guide's Table of Contents -- by :user:
codeandfire
v62.6.0
Changes ^^^^^^^
-
#3253: Enabled using
file:
for requirements in setup.cfg -- by :user:akx
(this feature is currently considered to be in beta stage). -
#3255: Enabled using
file:
for dependencies and optional-dependencies in pyproject.toml -- by :user:akx
(this feature is currently considered to be in beta stage). -
#3391: Updated
attr:
to also extract simple constants with type annotations -- by :user:karlotness
v62.5.0
Changes ^^^^^^^
-
#3347: Changed warnings and documentation notes about experimental aspect of
pyproject.toml
configuration: now[project]
is a fully supported configuration interface, but the[tool.setuptools]
table and sub-tables are still considered to be in beta stage. - #3383: In _distutils_hack, suppress/undo the use of local distutils when select tests are imported in CPython.
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3368: Added documentation page about extension modules -- by :user:
mkoeppe
-
#3371: Moved documentation from
/userguide/commands
to/depracted/commands
. This change was motived by the fact that runningpython setup.py
directly is considered a deprecated practice. -
#3372: Consolidated sections about
sdist
contents andMANIFEST.in
into a single page.Added a simple
MANIFEST.in
example. -
#3373: Moved remarks about using :pypi:
Cython
to the newly created page for extension modules. -
#3374: Added clarification that using
python setup.py egg_info
commands to manage project versions is only supported in a transitional basis, and that eventuallyegg_info
will be deprecated.Reorganized sections with tips for managing versions.
-
#3378: Updated
Quickstart
docs to make it easier to follow for beginners.
Misc ^^^^
-
#3385: Modules used to parse and evaluate configuration from
pyproject.toml
files are intended for internal use only and that not part of the public API.
v62.4.0
Changes ^^^^^^^
-
#3256: Added setuptools.command.build command to match distutils.command.build -- by :user:
isuruf
-
#3366: Merge with pypa/distutils@
75ed79d
including reformat using black, fix for Cygwin support (pypa/distutils#139), and improved support for cross compiling (pypa/distutils#144 and pypa/distutils#145).
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3355: Changes to the User Guide's Entry Points page -- by :user:
codeandfire
-
#3361: Further minor corrections to the Entry Points page -- by :user:
codeandfire
-
#3363: Rework some documentation pages to de-emphasize
distutils
and the history of packaging in the Python ecosystem. The focus of these changes is to make the documentation easier to read for new users. -
#3364: Update documentation about dependency management, removing mention to the deprecated
dependency_links
and adding some small improvements. -
#3367: Extracted text about automatic resource extraction and the zip-safe flag from
userguide/miscellaneous
todeprecated/resource_extraction
anddeprecated/zip_safe
.Extracted text about additional metadata files from
userguide/miscellaneous
into the existinguserguide/extension
document.Updated
userguide/extension
to better reflect the status of the setuptools project.Removed
userguide/functionalities_rewrite
(a virtually empty part of the docs).
v62.3.4
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3349: Fixed two small issues preventing docs from building locally -- by :user:
codeandfire
-
#3350: Added note explaining
package_data
glob pattern matching for dotfiles -- by :user:comabrewer
-
#3358: Clarify the role of the
package_dir
configuration.
Misc ^^^^
- #3354: Improve clarity in warning about unlisted namespace packages.
v62.3.3
Documentation changes ^^^^^^^^^^^^^^^^^^^^^
-
#3331: Replaced single backticks with double ones in
CHANGES.rst
-- by :user:codeandfire
-
#3332: Fixed grammar/typos, modified example directory trees for src-layout and flat-layout -- by :user:
codeandfire
-
#3335: Changes to code snippets and other examples in the Data Files page of the User Guide -- by :user:
codeandfire
Misc ^^^^
-
#3336: Modified
test_setup_install_includes_dependencies
to work with customPYTHONPATH
–- by :user:hroncok
Configuration
-
If you want to rebase/retry this MR, click this checkbox.
This MR has been generated by Renovate Bot.