| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The inconsistency for the `package_data` configuration in sdists
when `include_package_data=True` in #1461 have been causing some
problems for the community for a while, as also shown in #2835.
As pointed out by
[@jaraco](https://github.com/pypa/setuptools/issues/1461#issuecomment-749092366),
this was being caused by a mechanism to break the recursion between the
`egg_info` and `sdist` commands.
In summary the loop is caused by the following behaviour:
- the `egg_info` command uses a subclass of `sdist` (`manifest_maker`)
to calculate the MANIFEST,
- the `sdist` class needs to know the MANIFEST to calculate the data files when
`include_package_data=True`
Previously, the mechanism to break this loop was to simply ignore
the data files in `sdist` when `include_package_data=True`.
The approach implemented in this change was to replace this mechanism,
by allowing `manifest_maker` to override the `_safe_data_files` method
from `sdist`.
---
Please notice [an extensive experiment]
(https://github.com/abravalheri/experiment-setuptools-package-data)
was carried out to investigate the previous confusing behaviour.
There is also [a simplified theoretical analysis]
(https://github.com/pyscaffold/pyscaffold/pull/535#issuecomment-956296407)
comparing the observed behavior in the experiment and the expected
one. This analysis point out to the same offender indicated by
[@jaraco](https://github.com/pypa/setuptools/issues/1461#issuecomment-749092366)
(which is being replaced in this change).
|
|
|
|
|
|
|
|
|
| |
Controlling the file ownership recorded in tar archives is useful for
those striving towards reproducible builds. These options are already
understood by distutils.command.sdist.sdist, so just need to be accepted
by setuptools.command.sdist.sdist to be propagated.
Fixes #1893.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Addressing #357
`python setup.py sdist` now includes the license file if `license_file`
is included in `setup.cfg` unless it is explicitly excluded in `MANIFEST.in`.
Co-Authored-By: Poyzan Nur Taneli <31743851+ptaneli@users.noreply.github.com>
|
|/ |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Markdown is a widely used format to write README files and
documentation. This patch aims to simplify adding new formats and at
the same time adds that one to the list.
|
| |
| |
| |
| |
| | |
This reverts commit 089cdeb489a0fa94d11b7307b54210ef9aa40511, reversing
changes made to aaec654d804cb78dbb6391afff721a63f26a71cd.
|
| | |
|
|/
|
|
| |
leaner, cleaner codebase. Fixes #878.
|
|
|
|
| |
Python 2 where old style classes are used. Ref #843.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Note that better would be if sdist provided some sort of hooks to better control the file copying, but since it does not, this technique will suffice for now.
|
| |
|
|
|
|
|
|
|
|
| |
The universal newlines mode ('U' flag) is deprecated since Python
3.4. It only replaces "\r\n" with "\n", but it doesn't split lines at
"\r" (Mac newline). In practice, the flag was useless, the
sdist.read_manifest() method already uses line.strip() and so removes
newline characters.
|
|
|
|
|
|
|
| |
now much cleaner. Thanks @embray. Ref #229.
--HG--
branch : feature/issue-229
|
|
|
|
|
| |
--HG--
branch : feature/issue-229
|
|\
| |
| |
| |
| | |
--HG--
branch : feature/issue-229
|
| | |
|
| | |
|
|\ \
| |/
| |
| |
| | |
--HG--
branch : feature/issue-229
|
| | |
|
| | |
|
| | |
|
|\ \
| |/
| |
| |
| | |
--HG--
branch : feature/issue-229
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This should fix the problem in Bitbucket issue #100. It gives the same behavior
for inclusion of default files (README*, etc.) on Windows as Linux.
BACKWARDS INCOMPATABILITY:
This may result in a backwards incompatible change for users on a
case insensitive file system. If they were relying on some files getting
included in their distribution due to setuptools defaults, and their files do not
have the same case as the files being looked for in setuptools, those files
will no longer be included in the package.
For example, if a package had a file:
readme.rst
Previous to this commit, that file would have been included in the distribution
as:
README.rst
But it will now no longer be included at all. To get the file included in
the package, it can be added to the package's MANIFEST.in file:
include readme.rst
Files affected by this change will have a case variant of the files or
patterns listed below:
README
README.txt
README.rst
setup.py (or whatever your setuptools script is named)
setup.cfg
test/test*.py
|