summaryrefslogtreecommitdiff
path: root/setuptools/command/sdist.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2021-11-14 17:41:08 -0500
committerGitHub <noreply@github.com>2021-11-14 17:41:08 -0500
commit5b75de07169ef13952a5ab48e0b8bc15f31d0c37 (patch)
tree13b02b20c66d6f5fca7905285ee609a5ad72acb6 /setuptools/command/sdist.py
parent6fc5d3099898fc3d06bcf72f1f6607d02124d60f (diff)
parent5141c4210c2a63a3bb54f0f512e4116faedc8d63 (diff)
downloadpython-setuptools-git-debt/remove-legacy-version.tar.gz
Merge branch 'main' into debt/remove-legacy-versiondebt/remove-legacy-version
Diffstat (limited to 'setuptools/command/sdist.py')
-rw-r--r--setuptools/command/sdist.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/setuptools/command/sdist.py b/setuptools/command/sdist.py
index e8062f2e..0285b690 100644
--- a/setuptools/command/sdist.py
+++ b/setuptools/command/sdist.py
@@ -114,12 +114,15 @@ class sdist(sdist_add_defaults, orig.sdist):
def _safe_data_files(self, build_py):
"""
- Extracting data_files from build_py is known to cause
- infinite recursion errors when `include_package_data`
- is enabled, so suppress it in that case.
+ Since the ``sdist`` class is also used to compute the MANIFEST
+ (via :obj:`setuptools.command.egg_info.manifest_maker`),
+ there might be recursion problems when trying to obtain the list of
+ data_files and ``include_package_data=True`` (which in turn depends on
+ the files included in the MANIFEST).
+
+ To avoid that, ``manifest_maker`` should be able to overwrite this
+ method and avoid recursive attempts to build/analyze the MANIFEST.
"""
- if self.distribution.include_package_data:
- return ()
return build_py.data_files
def _add_data_files(self, data_files):