https://setuptools.pypa.io/en/latest/history.html
v84.0.0
=======
Features
Newline-separated keywords and platforms, which are invalid and corrupt the
generated metadata
(pypa/setuptools#4887), are now handled forgivingly: each line is treated
as a separate item and
a deprecation warning is emitted. Newlines were never a valid separator for
these fields – the
old specification separated items with spaces and the current one uses
commas. (#4887)
Extension is now a dataclass, exposing type annotations for its constructor
arguments so subclasses
(e.g. in Setuptools) can inherit them without redeclaring each parameter.
Passing unknown keyword
arguments is now deprecated. (pypa/distutils#373) (#5022)
The C compiler modules now emit log messages through their own
compilers.C.* loggers instead of the
distutils root logger, part of decoupling the compilers package from
distutils. The logger names are
normalized to a stable compilers.C.* prefix so they remain constant as the
package migrates toward a
standalone compilers.C distribution. (#5266)
The C compilers gained a Compiler.call method – a thin wrapper over
subprocess.check_call (with macOS
deployment-target env injection) that is the modern replacement for
Compiler.spawn. The compilers no
longer depend on distutils.spawn, distutils.dir_util, distutils.file_util,
distutils._modified, or
distutils.util.execute/split_quoted: the generic newer/newer_group and
split_quoted helpers are
vendored into the compilers package, and Compiler.mkpath/move_file/execute
are implemented directly
on the standard library (os.makedirs/shutil.move). The methods are retained
for backward
compatibility. (#5267)
The compilers no longer depend on distutils.util, distutils.version,
distutils.compat, or
distutils._macos_compat. The platform-identification helpers
(get_platform/get_host_platform/is_mingw)
now live in distutils.compilers.platform.detect and the macOS
deployment-target logic and compiler_fixup
in distutils.compilers.platform.macos; CygwinCCompiler.gcc_version returns
a packaging.version.Version.
distutils.util re-exports the platform/macOS helpers from their new homes
for backward compatibility
rather than keeping duplicate copies. (sysconfig lookups still route
through distutils pending its
own decoupling.) (#5268)
The compilers now read their build configuration from the standard
library’s sysconfig instead of
distutils.sysconfig. Per-compiler customization – previously
distutils.sysconfig.customize_compiler
– has moved into Compiler.configure_system(): a no-op on the base class,
with UnixCCompiler
applying the compiler/flag/archiver settings CPython recorded in sysconfig
(and the usual
CC/CFLAGS/LDSHARED/… environment overrides).
distutils.sysconfig.customize_compiler is retained
as a thin wrapper that calls compiler.configure_system(). (#5269)
Bugfixes
The MSVC linker now passes its arguments through a response file when the
command line would exceed
the Windows maximum length, fixing failures when linking a large number of
objects. (#4177)
The Cygwin and MinGW compilers now pass -O1 instead of a bare -O. The two
are equivalent to GCC,
but cc1 rejected the bare form when building 32-bit extensions with -m32. –
by @dchaudhari7177 (#4873)
copy_file now preserves the full precision of the source’s modification
time, so a copy is no longer
considered older than its source on filesystems with sub-second timestamp
resolution.
(pypa/distutils#379) (#5079)
Setuptools wheels no longer bundled the project’s own test modules. – by
@itscloud0 (#5212)
build_ext no longer fails when cross-compiling with a compiler other than
MSVC (such as MinGW). Compiler now
provides a no-op initialize() that non-MSVC compilers inherit.
(pypa/distutils#399)
Improved Documentation
Clarified what “correspond exactly to the directory structure” means in the
packages section of the
Package Discovery user guide. (#4109)
Documented how bdist_wheel’s py_limited_api option controls abi3 wheel
tagging for extension modules –
by @Himanshuagrawal4 (#4741)
Deprecations and Removals
Compiler.spawn is deprecated in favor of the new Compiler.call. call raises
native subprocess exceptions;
spawn remains as a shim that emits a DeprecationWarning and translates them
to DistutilsExecError. The
MSVC spawn compatibility shim for third-party monkeypatches predating the
env argument (numpy.distutils
before 1.19, per pypa/distutils#15) has been removed. distutils.spawn.spawn
is likewise reduced to a thin
wrapper around subprocess.check_call: it no longer resolves cmd[0] via
shutil.which (subprocess searches
PATH itself) nor injects MACOSX_DEPLOYMENT_TARGET (that now lives with the
compilers, the only callers
to which it applied). (#5267)
Building an extension with a MACOSX_DEPLOYMENT_TARGET lower than the
interpreter’s configured value now
raises compilers.errors.PlatformError instead of
distutils.errors.DistutilsPlatformError (the macOS
dep loyment-target check moved into the compilers package).
CygwinCCompiler.gcc_version returns a
packaging.version.Version rather than the removed
distutils.version.LooseVersion. Completing the
transition begun in pypa/distutils#246,
UnixCCompiler.runtime_library_dir_option now returns the
["-Wl,--enable-new-dtags", "-Wl,-rpath,<dir>"] list directly for GNU ld
rather than collapsing it
into a single string, and the temporary
distutils.compat.consolidate_linker_args shim has been removed. (#5268)
The compilers now define their own exception vocabulary instead of
borrowing distutils’ framework errors.
Language-agnostic exceptions (Error, UnknownFileType, and a new
PlatformError) live at
distutils.compilers.errors, leaving room for future compilers.<language>
siblings; the
C/C++-specific CompileError/LinkError/LibError/PreprocessError remain in
distutils.compilers.C.errors.
The compilers now raise compilers.errors.PlatformError where they
previously raised
distutils.errors.DistutilsPlatformError/DistutilsModuleError, and
compilers._modified.newer raises the stdlib
FileNotFoundError. distutils.errors keeps its own framework exceptions and
re-exports the compiler ones
(CCompilerError, CompileError, etc.) for backward compatibility; because
CCompilerError is compilers.errors.Error,
code catching it (as distutils’ top-level handlers do) still catches the
new PlatformError. (#5270)
customize_compiler now asserts that the compiler-related config variables
(CC, CXX, CFLAGS, etc.) resolve
to strings, raising AssertionError if any are unexpectedly None rather than
failing later with a less
clear error. (pypa/distutils#363)
Signed-off-by: Richard Purdie <[email protected]>
---
...1-_distutils-sysconfig.py-make-it-possible-to-substite.patch | 2 +-
...ython3-setuptools_83.0.0.bb => python3-setuptools_84.0.0.bb} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
rename meta/recipes-devtools/python/{python3-setuptools_83.0.0.bb =>
python3-setuptools_84.0.0.bb} (94%)
diff --git
a/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
b/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
index 6e240c47d20..f6313fb1a98 100644
---
a/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
+++
b/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
@@ -1,4 +1,4 @@
-From 015ff68e79298c5148350cf3bf0b72d1d409ba4b Mon Sep 17 00:00:00 2001
+From fe651521b9d970a84432b37d2731932a4862deb2 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <[email protected]>
Date: Wed, 11 May 2022 21:41:14 +0200
Subject: [PATCH] _distutils/sysconfig.py: make it possible to substite the
diff --git a/meta/recipes-devtools/python/python3-setuptools_83.0.0.bb
b/meta/recipes-devtools/python/python3-setuptools_84.0.0.bb
similarity index 94%
rename from meta/recipes-devtools/python/python3-setuptools_83.0.0.bb
rename to meta/recipes-devtools/python/python3-setuptools_84.0.0.bb
index e5593c9f73d..648b084a27c 100644
--- a/meta/recipes-devtools/python/python3-setuptools_83.0.0.bb
+++ b/meta/recipes-devtools/python/python3-setuptools_84.0.0.bb
@@ -11,7 +11,7 @@ CVE_PRODUCT = "python3-setuptools python:setuptools"
SRC_URI += " \
file://0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch"
-SRC_URI[sha256sum] =
"025bccbbf0fa05b6192bc64ae1e7b16e001fd6d6d4d5de03c97b1c1ade523bef"
+SRC_URI[sha256sum] =
"f4695c21257f0d9b537ec2692c941d02ee143b7cc1276941349a546573b2ef73"
do_install:append() {
# setuptools ships Windows launcher executables (cli*.exe, gui*.exe).
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#243077):
https://lists.openembedded.org/g/openembedded-core/message/243077
Mute This Topic: https://lists.openembedded.org/mt/120675299/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-