UNCLASSIFIED - NO CUI

Skip to content

Update dependency setuptools to v65

renovate requested to merge renovate/setuptools-65.x into development

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

Compare Source

Changes ^^^^^^^

  • #​3547: Stop ConfigDiscovery.analyse_name from splatting the Distribution.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

Compare Source

Changes ^^^^^^^

v65.1.1

Compare Source

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

Compare Source

Changes ^^^^^^^

  • #​3536: Remove monkeypatching of msvc9compiler.

Documentation changes ^^^^^^^^^^^^^^^^^^^^^

  • #​3538: Corrected documentation on how to use the legacy-editable mode.

v65.0.2

Compare Source

Misc ^^^^

v65.0.1

Compare Source

Documentation changes ^^^^^^^^^^^^^^^^^^^^^

  • #​3529: Added clarification to :doc:/userguide/quickstart about support to setup.py.

Misc ^^^^

  • #​3526: Fixed backward compatibility of editable installs and custom build_ext commands inheriting directly from distutils.
  • #​3528: Fixed buid_meta.prepare_metadata_for_build_wheel when given metadata_directory is ".".

v65.0.0

Compare Source

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 which setuptools version require a minimal setup.py file or not.

v64.0.3

Compare Source

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 or data_files.

v64.0.2

Compare Source

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 of setuptools.
  • #​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

Compare Source

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

Compare Source

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 allowed config_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() from build_py and build_ext subcommands. This interface is reserved for the use of setuptools Extensions and third part packages are explicitly disallowed to calling it. However, any implementation overwriting build_py or build_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 the develop command (in terms of what is added to sys.path). This mode is provided "as is", with limited support, and will be removed in future versions of setuptools.

Documentation changes ^^^^^^^^^^^^^^^^^^^^^

  • #​3414: Updated :doc:Development Mode </userguide/development_mode> to reflect on the implementation of :pep:660.

v63.4.3

Compare Source

Misc ^^^^

v63.4.2

Compare Source

Misc ^^^^

  • #​3453: Bump vendored version of :pypi:pyparsing to 3.0.9.
  • #​3481: Add warning for potential install_requires and extras_require misconfiguration in setup.cfg
  • #​3487: Modified pyproject.toml validation exception handling to make relevant debugging information easier to spot.

v63.4.1

Compare Source

Misc ^^^^

v63.4.0

Compare Source

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 ^^^^

v63.3.0

Compare Source

Changes ^^^^^^^

v63.2.0

Compare Source

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 ^^^^

v63.1.0

Compare Source

Changes ^^^^^^^

v63.0.0

Compare Source

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 use distutils 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

Compare Source

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

Compare Source

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 running python setup.py directly is considered a deprecated practice.

  • #​3372: Consolidated sections about sdist contents and MANIFEST.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 eventually egg_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

Compare Source

Changes ^^^^^^^

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 to deprecated/resource_extraction and deprecated/zip_safe.

    Extracted text about additional metadata files from userguide/miscellaneous into the existing userguide/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

Compare Source

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

Compare Source

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 custom PYTHONPATH –- by :user:hroncok

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, click this checkbox.

This MR has been generated by Renovate Bot.

Merge request reports

Loading