-
Notifications
You must be signed in to change notification settings - Fork 85
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
build: Revise MANIFEST.in strategy to properly use prune #1449
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1449 +/- ##
=======================================
Coverage 97.65% 97.65%
=======================================
Files 64 64
Lines 4008 4008
Branches 565 565
=======================================
Hits 3914 3914
Misses 55 55
Partials 39 39
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
@lukasheinrich @kratsg I'm putting this back into Draft mode given that if I look inside the
and even when the
Sooooooo seems that I have more to learn about how |
https://packaging.python.org/guides/using-manifest-in/#how-files-are-included-in-an-sdist The following files are included in a source distribution by default: * all Python source files implied by the py_modules and packages setup() arguments * all C source files mentioned in the ext_modules or libraries setup() arguments * scripts specified by the scripts setup() argument * all files specified by the package_data and data_files setup() arguments * the file specified by the license_file option in setup.cfg (setuptools 40.8.0+) * all files specified by the license_files option in setup.cfg (setuptools 42.0.0+) * all files matching the pattern test/test*.py * setup.py (or whatever you called your setup script) * setup.cfg * README * README.txt * README.rst (Python 3.7+ or setuptools 0.6.27+) * README.md (setuptools 36.4.0+) * pyproject.toml (setuptools 43.0.0+) * MANIFEST.in
Okay. If I follow the advice of the PyPA's "Including files in source distributions with MANIFEST.in" guide it notes that
Which means that using It also notes that
So in some situations one could maybe view our use of If I add in
to match these default files (with the exception of the tests) then we get
For comparison, this is what we get if I we look at the
|
Description
Based on notes from scikit-build/scikit-build#537, the
.*
inpyhf/MANIFEST.in
Line 6 in 2c681a6
added in an attempt to exclude dotfiles (c.f. PR #791) is not actually needed (I think given the
prune *
) and appears to be causing trouble (?) in some other cases (c.f. scikit-build/scikit-build#537). In an effort to avoid problems, this PR removes the.*
from the global exclude and adds theAUTHORS
file (as I noticed it wasn't there and doesn't hurt).Edit:
As it seems that
prune *
wasn't doing what we thought it was, additionally also useprune **
pattern and then manually include the files that the PyPA notes are automatically added to ansdist
(but which we remove withprune **
which clobbers everything). Also ads a step to the CI that lists out the contents of thesdist
tar.gz
, so it should be a lot easier to spot check in the future.Checklist Before Requesting Reviewer
Before Merging
For the PR Assignees: