Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge latest skeleton #4211

Merged
merged 11 commits into from
Feb 8, 2024
Merged

Merge latest skeleton #4211

merged 11 commits into from
Feb 8, 2024

Conversation

jaraco
Copy link
Member

@jaraco jaraco commented Feb 7, 2024

  • Bump year on badge
  • Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref Tests failing on Python 3.12 distutils#224.
  • Exclude docs and tests directories properly per Setuptools behavior.
  • Rely on default discovery for good heuristics for finding packages.
  • Enable preview to enable preserving quotes.
  • Tweak coverage configuration for type checking (Tweak coverage configuration for type checking jaraco/skeleton#97)
  • Use latest versions in RTD boilerplate.

Summary of changes

Closes

Pull Request Checklist

@jaraco jaraco merged commit 7315375 into main Feb 8, 2024
35 of 36 checks passed
@jaraco jaraco deleted the debt/sync-skeleton branch February 8, 2024 17:40
eli-schwartz added a commit to eli-schwartz/gentoo that referenced this pull request Mar 13, 2024
In the latest version of setuptools, setuptools stopped explicitly
excluding the build/ directory:
pypa/setuptools#4211

It is the default build_base until we specially set it via
$DIST_EXTRA_CONFIG -- and before then, by rm -rf'ing the build/
directory.

Both approaches were guarded by checking if DISTUTILS_USE_PEP517 is set
to setuptools. This doesn't work for the setuptools package itself,
since setuptools builds "standalone" so that it can depend on its own
in-tree backend.

Result: setuptools has always been ignoring BUILD_DIR and leaving
persistent files around. Somehow that led to the new version of
setuptools without `options.packages.find -> exclude = build`,
installing a bunch of new files when building for multiple PYTHON_COMPAT
targets. From iwdevtools:

 *  FILES:+usr/lib/python3.12/site-packages/build/lib/setuptools/wheel.py

[...]

 *   SIZE: 13.88MiB -> 20.44MiB, 1083 -> 1631 files
 * ------> FILES(+556,-8) SIZE(+47.22%)

(It should be noted that as part of the upgrade itself, python3_11 did
get +12,-4 files, which is vastly out of proportion to the combined
total of 556. This should actually be +24,-8.)

Fix by running setuptools based code for standalone build-backends (and
pbr, a setuptools wrapper) as well. It is either unneeded or necessary,
but shouldn't hurt.

Signed-off-by: Eli Schwartz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants