]> granicus.if.org Git - python/commitdiff
Backport of r61263:
authorMartin v. Löwis <martin@v.loewis.de>
Thu, 6 Mar 2008 07:14:26 +0000 (07:14 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Thu, 6 Mar 2008 07:14:26 +0000 (07:14 +0000)
#1725737: ignore other VC directories other than CVS and SVN's too.

Doc/dist/dist.tex
Lib/distutils/command/sdist.py
Misc/NEWS

index 0877bd2e4c7fcbb9c53270b7973d01793def751f..aa063f93d4f991d42e2e665fecbca27e5e904f4c 100644 (file)
@@ -1213,7 +1213,8 @@ fully processed the manifest template, we remove files that should not
 be included in the source distribution:
 \begin{itemize}
 \item all files in the Distutils ``build'' tree (default \file{build/})
-\item all files in directories named \file{RCS}, \file{CVS} or \file{.svn}
+\item all files in directories named \file{RCS}, \file{CVS}, \file{.svn},
+      \file{.hg}, \file{.git}, \file{.bzr}, or \file{\_darcs}
 \end{itemize}
 Now we have our complete list of files, which is written to the manifest
 for future reference, and then used to build the source distribution
@@ -1246,7 +1247,8 @@ Distutils source distribution:
   \code{prune} command in the manifest template comes after the
   \code{recursive-include} command
 \item exclude the entire \file{build} tree, and any \file{RCS},
-  \file{CVS} and \file{.svn} directories
+  \file{CVS}, \file{.svn}, \file{.hg}, \file{.git}, \file{.bzr}, or
+  \file{\_darcs} directories
 \end{enumerate}
 Just like in the setup script, file and directory names in the manifest
 template should always be slash-separated; the Distutils will take care
index 3dfe6f21a7bb8a38d32790f4fbda8565fd52891a..b724a3b7d4b41966b947876bc4ed9492d21b9625 100644 (file)
@@ -347,14 +347,14 @@ class sdist (Command):
           * the build tree (typically "build")
           * the release tree itself (only an issue if we ran "sdist"
             previously with --keep-temp, or it aborted)
-          * any RCS, CVS and .svn directories
+          * any RCS, CVS, .svn, .hg, .git, .bzr, _darcs directories
         """
         build = self.get_finalized_command('build')
         base_dir = self.distribution.get_fullname()
 
         self.filelist.exclude_pattern(None, prefix=build.build_base)
         self.filelist.exclude_pattern(None, prefix=base_dir)
-        self.filelist.exclude_pattern(r'/(RCS|CVS|\.svn)/.*', is_regex=1)
+        self.filelist.exclude_pattern(r'(^|/)(RCS|CVS|\.svn|\.hg|\.git|\.bzr|_darcs)/.*', is_regex=1)
 
 
     def write_manifest (self):
index 733775f6d9cebe3111f75e59d47ec153cce38a23..6af11b1475a79c1aec9cc9bc522f5b1e4bce1846 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -15,6 +15,9 @@ Core and builtins
 Library
 -------
 
+- Bug #1725737: In distutil's sdist, exclude RCS, CVS etc. also in the
+  root directory, and also exclude .hg, .git, .bzr, and _darcs.
+
 - Bug #1389051: imaplib causes excessive memory fragmentation when reading
   large messages.