Opened 8 weeks ago
Closed 4 weeks ago
#36740 closed Cleanup/optimization (wontfix)
Replace MANIFEST.in with setuptools configuration via pyproject.toml
| Reported by: | Pravin | Owned by: | Pravin |
|---|---|---|---|
| Component: | Packaging | Version: | dev |
| Severity: | Normal | Keywords: | |
| Cc: | Triage Stage: | Accepted | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Since now django uses pyproject.toml we can safely remove the MANIFEST.in file.
pyproject.toml will do that for us.
Change History (16)
comment:1 by , 8 weeks ago
| Owner: | set to |
|---|---|
| Status: | new → assigned |
follow-up: 4 comment:2 by , 8 weeks ago
| Summary: | No need of MANIFEST.in since pyproject.toml can handle it. → Replace MANIFEST.in with setuptools configuration via pyproject.toml |
|---|---|
| Triage Stage: | Unreviewed → Accepted |
| Version: | 5.2 → dev |
comment:4 by , 8 weeks ago
Replying to Jacob Walls:
Tentatively accepting.
Please focus first on producing a build that differs in no way from our existing manifest. Please include a before and after manifest of the packaged files with the PR. Then in subsequent commits we can make tweaks, e.g. to remove the scripts directory, see forum.
Before raising PR I want to notify you something:
- Currently what i have noticed that we can't remove the non-package folders (like tests, js_tests, extras, scripts) from MANIFEST.in . They are removable if we include them under data-files table in pyproject.toml. but they don't recursively add subfolders inside them. for example. in case of tests , even if i mentioned tests/**/* , the subfolder like _ext, _theme were not able to get copied. so instead of simplifying it was getting complex since i had to include subfolders explicitly.
- I cleanup the manifest file which reduced the redundant things.
- i have tested the original and modified build and there is no differs.
- final MANIFEST.in looks like this
-
graft tests graft docs graft js_tests graft extras graft scripts global-exclude *.py[co]
So what's your take on this ? Should I proceed further in submitting the request ?
comment:5 by , 8 weeks ago
the subfolder like _ext, _theme were not able to get copied.
We could try to debug this if you put up a PR, as at first impression I'm surprised by that.
comment:8 by , 8 weeks ago
[tool.setuptools.data-files] "." = [ "*.rst", "Gruntfile.js", "INSTALL", "package.json", "tox.ini", "tests/**/*", "docs/**/*", "js_tests/**/*", "extras/**/*", "scripts/**/*", ]
in this scenario this it won't copy recursively. I got error: can't copy 'tests/absolute_url_overrides': doesn't exist or not a regular file. My assumption here is it search for specific files only not folders and their content. https://setuptools.pypa.io/en/latest/userguide/datafiles.html
the build is not produced.
comment:9 by , 8 weeks ago
| Patch needs improvement: | set |
|---|
comment:10 by , 5 weeks ago
| Patch needs improvement: | unset |
|---|
comment:11 by , 5 weeks ago
| Patch needs improvement: | set |
|---|
comment:12 by , 5 weeks ago
| Patch needs improvement: | unset |
|---|
comment:13 by , 4 weeks ago
| Patch needs improvement: | set |
|---|
comment:14 by , 4 weeks ago
| Patch needs improvement: | unset |
|---|
comment:15 by , 4 weeks ago
| Patch needs improvement: | set |
|---|
comment:16 by , 4 weeks ago
| Has patch: | unset |
|---|---|
| Patch needs improvement: | unset |
| Resolution: | → wontfix |
| Status: | assigned → closed |
Investigation showed that this isn't feasible without changing build tools, which is outside the scope of what was accepted here. Thanks for the investigation.
Tentatively accepting.
Please focus first on producing a build that differs in no way from our existing manifest. Please include a before and after manifest of the packaged files with the PR. Then in subsequent commits we can make tweaks, e.g. to remove the scripts directory, see forum.