Moved the code that prunes the file list after reading the manifest
template into a new method 'prune_file_list()', called from 'get_file_list()' rather than 'read_manifest()' -- this keeps 'read_manifest()' more general. Deleted the redundant call to 'exclude_pattern()' in 'make_distribution()' -- this had the same intention as 'prune_file_list()', but was incomplete (only pruned the release tree, not the build tree) and in the wrong place (the prune wouldn't be reflected in the manifest file).
This commit is contained in:
parent
4a7319ca28
commit
ce15c6ce8d
|
@ -195,6 +195,9 @@ class sdist (Command):
|
|||
if template_exists:
|
||||
self.read_template ()
|
||||
|
||||
# Prune away the build and source distribution directories
|
||||
self.prune_file_list()
|
||||
|
||||
# File list now complete -- sort it so that higher-level files
|
||||
# come first
|
||||
sortable_files = map (os.path.split, self.files)
|
||||
|
@ -475,16 +478,22 @@ class sdist (Command):
|
|||
|
||||
# while loop over lines of template file
|
||||
|
||||
# Prune away the build and source distribution directories
|
||||
build = self.get_finalized_command ('build')
|
||||
self.exclude_pattern (self.files, None, prefix=build.build_base)
|
||||
|
||||
base_dir = self.distribution.get_fullname()
|
||||
self.exclude_pattern (self.files, None, prefix=base_dir)
|
||||
|
||||
# read_template ()
|
||||
|
||||
|
||||
def prune_file_list (self):
|
||||
"""Prune off branches that might slip into the file list as created
|
||||
by 'read_template()', but really don't belong there: specifically,
|
||||
the build tree (typically "build") and the release tree itself
|
||||
(only an issue if we ran "sdist" previously with --keep-tree, or it
|
||||
aborted).
|
||||
"""
|
||||
build = self.get_finalized_command('build')
|
||||
base_dir = self.distribution.get_fullname()
|
||||
self.exclude_pattern (self.files, None, prefix=build.build_base)
|
||||
self.exclude_pattern (self.files, None, prefix=base_dir)
|
||||
|
||||
|
||||
def select_pattern (self, files, pattern, anchor=1, prefix=None):
|
||||
"""Select strings (presumably filenames) from 'files' that match
|
||||
'pattern', a Unix-style wildcard (glob) pattern. Patterns are not
|
||||
|
@ -612,10 +621,6 @@ class sdist (Command):
|
|||
# done elsewhere.
|
||||
base_dir = self.distribution.get_fullname()
|
||||
|
||||
# Remove any files that match "base_dir" from the fileset -- we
|
||||
# don't want to go distributing the distribution inside itself!
|
||||
self.exclude_pattern (self.files, base_dir + "*")
|
||||
|
||||
self.make_release_tree (base_dir, self.files)
|
||||
archive_files = [] # remember names of files we create
|
||||
for fmt in self.formats:
|
||||
|
|
Loading…
Reference in New Issue