pypa/setuptools
### [`v64.0.2`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6402)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v64.0.1...v64.0.2)
Misc
^^^^
- [#3506](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6401)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v64.0.0...v64.0.1)
Misc
^^^^
- [#3497](https://togithub.com/pypa/setuptools/issues/3497): Fixed `editable_wheel` for legacy namespaces.
- [#3502](https://togithub.com/pypa/setuptools/issues/3502): Fixed issue with editable install and single module distributions.
- [#3503](https://togithub.com/pypa/setuptools/issues/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`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6400)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v63.4.3...v64.0.0)
Deprecations
^^^^^^^^^^^^
- [#3380](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/3414): Users can *temporarily* specify an environment variable
`SETUPTOOLS_ENABLE_FEATURE=legacy-editable` as a escape hatch for the
:pep:`660` behavior. This setting is **transitional** and may be removed in the
future.
- [#3484](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/3414): Updated :doc:`Development Mode ` to reflect on the
implementation of :pep:`660`.
### [`v63.4.3`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6343)
[Compare Source](https://togithub.com/pypa/setuptools/compare/v63.4.2...v63.4.3)
Misc
^^^^
- [#3496](https://togithub.com/pypa/setuptools/issues/3496): Update to [pypa/distutils@`b65aa40`](https://togithub.com/pypa/distutils/commit/b65aa40) including more robust support for library/include dir handling in msvccompiler ([pypa/distutils#153](https://togithub.com/pypa/distutils/issues/153)) and test suite improvements.
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 PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
[x] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
==63.4.2
->==64.0.2
Release Notes
pypa/setuptools
### [`v64.0.2`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6402) [Compare Source](https://togithub.com/pypa/setuptools/compare/v64.0.1...v64.0.2) Misc ^^^^ - [#3506](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6401) [Compare Source](https://togithub.com/pypa/setuptools/compare/v64.0.0...v64.0.1) Misc ^^^^ - [#3497](https://togithub.com/pypa/setuptools/issues/3497): Fixed `editable_wheel` for legacy namespaces. - [#3502](https://togithub.com/pypa/setuptools/issues/3502): Fixed issue with editable install and single module distributions. - [#3503](https://togithub.com/pypa/setuptools/issues/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`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6400) [Compare Source](https://togithub.com/pypa/setuptools/compare/v63.4.3...v64.0.0) Deprecations ^^^^^^^^^^^^ - [#3380](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/3414): Users can *temporarily* specify an environment variable `SETUPTOOLS_ENABLE_FEATURE=legacy-editable` as a escape hatch for the :pep:`660` behavior. This setting is **transitional** and may be removed in the future. - [#3484](https://togithub.com/pypa/setuptools/issues/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](https://togithub.com/pypa/setuptools/issues/3414): Updated :doc:`Development Mode ` to reflect on the implementation of :pep:`660`. ### [`v63.4.3`](https://togithub.com/pypa/setuptools/blob/HEAD/CHANGES.rst#v6343) [Compare Source](https://togithub.com/pypa/setuptools/compare/v63.4.2...v63.4.3) Misc ^^^^ - [#3496](https://togithub.com/pypa/setuptools/issues/3496): Update to [pypa/distutils@`b65aa40`](https://togithub.com/pypa/distutils/commit/b65aa40) including more robust support for library/include dir handling in msvccompiler ([pypa/distutils#153](https://togithub.com/pypa/distutils/issues/153)) and test suite improvements.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 PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.