SOURCES.txt should be regenerated on every use
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.9k
- Forks
- 1.4k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 1
Description
Originally reported by: jurko (Bitbucket: jurko, GitHub: jurko)
I think the SOURCES.txt project manifest file should be regenerated on every use.
Older distutils versions, e.g. those from early 2.7.x or 3.1 Python releases, have bugs with how they generate the project's manifest file from its MANIFEST.in template (see CPython issue http://bugs.python.org/issue6884) which may cause the manifest to contain some extra entries.
This can cause problems because if you use an older Python versions to generate the SOURCES.txt, and later run a setup.py sdist operation using a later Python version (e.g. 3.4), your generated sdist will end up containing those extra entries. On the other hand, if you delete the old SOURCES.txt manifest and just let the new Python version regenerate it - the project's sdist will again contain the correct files.
Setuptools documentation already states:
#!text
The file is automatically generated by setuptools whenever the
egg_info or sdist commands are run, and it is not user-editable.
Hope this helps.
Best regards,
Jurko Gospodnetić
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how setup.py sdist and egg_info use SOURCES.txt and MANIFEST.in, with the setuptools documentation linked in the issue as context. Confirm the behavior with older and newer Python versions; done means each use regenerates SOURCES.txt without retaining stale extra entries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100