Skip to content

chore(deps): update dependency setuptools to v67 - autoclosed

Botaniker (Bot) requested to merge renovate/setuptools-67.x into master

This MR contains the following updates:

Package Update Change
setuptools (changelog) major ==63.4.3 -> ==67.8.0

Release Notes

pypa/setuptools

v67.8.0

Compare Source

Changes ^^^^^^^

  • #​3128: In deprecated easy_install, reload and merge the pth file before saving.

Misc ^^^^

  • #​3915: Adequate tests to the latest changes in virtualenv for Python 3.12.

v67.7.2

Compare Source

Misc ^^^^

  • #​3902: Fixed wrong URLs used in warnings and logs.

v67.7.1

Compare Source

Misc ^^^^

  • #​3898: Fixes setuptools.dist:invalid_unless_false when value is false don't raise error -- by :user:jammarher

v67.7.0

Compare Source

Changes ^^^^^^^

  • #​3849: Overhaul warning system for better visibility.

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

  • #​3859: Added a note about historical presence of wheel in build-system.requires, in pyproject.toml.
  • #​3893: Improved the documentation example regarding making a thin :pep:517 in-tree backend wrapper of setuptools.build_meta that is future-proof and supports :pep:660 hook too -- by :user:webknjaz.

Misc ^^^^

  • #​3884: Add a stacklevel parameter to warnings.warn() to provide more information to the user. -- by :user:cclauss

v67.6.1

Compare Source

Misc ^^^^

  • #​3865: Fixed _WouldIgnoreField warnings for scripts and gui_scripts, when entry-points is not listed in dynamic.
  • #​3875: Update code generated by validate-pyproject to use v0.12.2. This should fix default license patterns when pyproject.toml is used.

v67.6.0

Compare Source

Changes ^^^^^^^

  • #​3804: Added caching for supported wheel tags.
  • #​3846: Added pruning heuristics to PackageFinder based on exclude.

v67.5.1

Compare Source

Misc ^^^^

  • #​3836: Fixed interaction between setuptools' package auto-discovery and auto-generated htmlcov files.

    Previously, the htmlcov name was ignored when searching for single-file modules, however the correct behaviour is to ignore it when searching for packages (since it is supposed to be a directory, see coverage config_) -- by :user:yukihiko-shinoda.

    .. _coverage config: https://coverage.readthedocs.io/en/stable/config.html#html-directory

  • #​3838: Improved error messages for pyproject.toml validations.

  • #​3839: Fixed pkg_resources errors caused when parsing metadata of packages that are already installed but do not conform with PEP 440.

v67.5.0

Compare Source

Changes ^^^^^^^

  • #​3843: Although pkg_resources has been discouraged for use, some projects still consider pkg_resources viable for usage. This change makes it clear that pkg_resources should not be used, emitting a DeprecationWarning when imported.

v67.4.0

Compare Source

Changes ^^^^^^^

  • #​3832: Update vendored importlib-metadata (to 6.0.0) and importlib-resources (to 5.10.2)

v67.3.3

Compare Source

Misc ^^^^

  • #​3820: Restore quoted #include argument to has_function.

v67.3.2

Compare Source

Misc ^^^^

  • #​3827: Improve deprecation warning message on pkg_resources.declare_namespace to display package name.

v67.3.1

Compare Source

Misc ^^^^

  • #​3823: Fixes egg_info code path triggered during integration with pip.

v67.2.0

Compare Source

Changes ^^^^^^^

v67.1.0

Compare Source

Changes ^^^^^^^

  • #​3795: Ensured that __file__ is an absolute path when executing setup.py as part of setuptools.build_meta.

Misc ^^^^

  • #​3798: Updated validations for pyproject.toml using validate-pyproject==0.12.1 to allow stub packages (:pep:561) to be listed in tool.setuptools.packages and tool.setuptools.package-dir.

v67.0.0

Compare Source

Breaking Changes ^^^^^^^^^^^^^^^^

  • #​3741: Removed patching of distutils._msvccompiler.gen_lib_options for compatibility with Numpy < 1.11.2 -- by :user:mgorny
  • #​3790: Bump vendored version of :pypi:packaging to 23.0 (:pypi:pyparsing is no longer required and was removed). As a consequence, users will experience a more strict parsing of requirements. Specifications that don't comply with :pep:440 and :pep:508 will result in build errors.

v66.1.1

Compare Source

Misc ^^^^

  • #​3782: Fixed problem with file directive in tool.setuptools.dynamic (pyproject.toml) when value is a simple string instead of list.

v66.1.0

Compare Source

Changes ^^^^^^^

  • #​3685: Fix improper usage of deprecated/removed pkgutil APIs in Python 3.12+.
  • #​3779: Files referenced by file: in setup.cfg and by project.readme.file, project.license.file or tool.setuptools.dynamic.*.file in pyproject.toml are now automatically included in the generated sdists.

Misc ^^^^

  • #​3776: Added note about using the --pep-517 flag with pip to workaround InvalidVersion errors for packages that are already installed in the system.

v66.0.0

Compare Source

Breaking Changes ^^^^^^^^^^^^^^^^

  • #​2497: Support for PEP 440 non-conforming versions has been removed. Environments containing packages with non-conforming versions may fail or the packages may not be recognized.

Changes ^^^^^^^

  • #​3769: Replace 'appdirs' with 'platformdirs'.

v65.7.0

Compare Source

Changes ^^^^^^^

  • #​3594: Added htmlcov to FlatLayoutModuleFinder.DEFAULT_EXCLUDE -- by :user:demianbrecht
  • #​3667: Added a human-readable error description when .egg-info directory is not writeable -- by :user:droodev

Misc ^^^^

  • #​3713: Fixed incomplete getattr statement that caused problems when accessing undefined attribute.

v65.6.3

Compare Source

Misc ^^^^

  • #​3709: Fix condition to patch distutils.dist.log to only apply when using distutils from the stdlib.

v65.6.2

Compare Source

No significant changes.

v65.6.1

Compare Source

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

  • #​3689: Documented that distutils.cfg might be ignored unless SETUPTOOLS_USE_DISTUTILS=stdlib.

Misc ^^^^

  • #​3678: Improve clib builds reproducibility by sorting sources -- by :user:danigm
  • #​3684: Improved exception/traceback when invalid entry-points are specified.
  • #​3690: Fixed logging errors: 'underlying buffer has been detached' (issue #​1631).
  • #​3693: Merge pypa/distutils@3e9d47e with compatibility fix for distutils.log.Log.
  • #​3695, #​3697, #​3698, #​3699: Changed minor text details (spelling, spaces ...)
  • #​3696: Removed unnecessary coding: utf-8 annotations
  • #​3704: Fixed temporary build directories interference with auto-discovery.

v65.6.0

Compare Source

Changes ^^^^^^^

v65.5.1

Compare Source

Misc ^^^^

  • #​3638: Drop a test dependency on the mock package, always use :external+python:py:mod:unittest.mock -- by :user:hroncok
  • #​3659: Fixed REDoS vector in package_index.

v65.5.0

Compare Source

Changes ^^^^^^^

  • #​3624: Fixed editable install for multi-module/no-package src-layout projects.
  • #​3626: Minor refactorings to support distutils using stdlib logging module.

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

  • #​3419: Updated the example version numbers to be compliant with PEP-440 on the "Specifying Your Project’s Version" page of the user guide.

Misc ^^^^

  • #​3569: Improved information about conflicting entries in the current working directory and editable install (in documentation and as an informational warning).
  • #​3576: Updated version of validate_pyproject.

v65.4.1

Compare Source

Misc ^^^^

v65.4.0

Compare Source

Changes ^^^^^^^

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 :doc:Dependency management section of the Quickstart guide <userguide/quickstart> -- 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.

Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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, check this box

This MR has been generated by Renovate Bot. The local configuration can be found in the SI Renovate Bot repository.

Edited by Botaniker (Bot)

Merge request reports