distutils.command.sdist
index
/usr/local/lib/python2.4/distutils/command/sdist.py
Module Docs

distutils.command.sdist
 
Implements the Distutils 'sdist' command (create a source distribution).

 
Modules
       
distutils.archive_util
distutils.dep_util
distutils.dir_util
distutils.file_util
distutils.log
os
string
sys

 
Classes
       
distutils.cmd.Command
sdist

 
class sdist(distutils.cmd.Command)
     Methods defined here:
add_defaults(self)
Add all the default files to self.filelist:
  - README or README.txt
  - setup.py
  - test/test*.py
  - all pure Python modules mentioned in setup script
  - all C sources listed as part of extensions or C libraries
    in the setup script (doesn't catch C headers!)
Warns if (README or README.txt) or setup.py are missing; everything
else is optional.
check_metadata(self)
Ensure that all required elements of meta-data (name, version,
URL, (author and author_email) or (maintainer and
maintainer_email)) are supplied by the Distribution object; warn if
any are missing.
finalize_options(self)
get_archive_files(self)
Return the list of archive files created when the command
was run, or None if the command hasn't run yet.
get_file_list(self)
Figure out the list of files to include in the source
distribution, and put it in 'self.filelist'.  This might involve
reading the manifest template (and writing the manifest), or just
reading the manifest, or just using the default file set -- it all
depends on the user's options and the state of the filesystem.
initialize_options(self)
make_distribution(self)
Create the source distribution(s).  First, we create the release
tree with 'make_release_tree()'; then, we create all required
archive files (according to 'self.formats') from the release tree.
Finally, we clean up by blowing away the release tree (unless
'self.keep_temp' is true).  The list of archive files created is
stored so it can be retrieved later by 'get_archive_files()'.
make_release_tree(self, base_dir, files)
Create the directory tree that will become the source
distribution archive.  All directories implied by the filenames in
'files' are created under 'base_dir', and then we hard link or copy
(if hard linking is unavailable) those files into place.
Essentially, this duplicates the developer's source tree, but in a
directory named after the distribution, containing only the files
to be distributed.
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:
  * 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
read_manifest(self)
Read the manifest file (named by 'self.manifest') and use it to
fill in 'self.filelist', the list of files to include in the source
distribution.
read_template(self)
Read and parse manifest template file named by self.template.
 
(usually "MANIFEST.in") The parsing and processing is done by
'self.filelist', which updates itself accordingly.
run(self)
write_manifest(self)
Write the file list in 'self.filelist' (presumably as filled in
by 'add_defaults()' and 'read_template()') to the manifest file
named by 'self.manifest'.

Data and other attributes defined here:
boolean_options = ['use-defaults', 'prune', 'manifest-only', 'force-manifest', 'keep-temp']
default_format = {'nt': 'zip', 'posix': 'gztar'}
description = 'create a source distribution (tarball, zip file, etc.)'
help_options = [('help-formats', None, 'list available distribution formats', <function show_formats>)]
negative_opt = {'no-defaults': 'use-defaults', 'no-prune': 'prune'}
user_options = [('template=', 't', 'name of manifest template file [default: MANIFEST.in]'), ('manifest=', 'm', 'name of manifest file [default: MANIFEST]'), ('use-defaults', None, 'include the default file set in the manifest [default; disable with --no-defaults]'), ('no-defaults', None, "don't include the default file set"), ('prune', None, 'specifically exclude files/directories that shou...VS dirs, etc.) [default; disable with --no-prune]'), ('no-prune', None, "don't automatically exclude anything"), ('manifest-only', 'o', 'just regenerate the manifest and then stop (implies --force-manifest)'), ('force-manifest', 'f', 'forcibly regenerate the manifest and carry on as usual'), ('formats=', None, 'formats for source distribution (comma-separated list)'), ('keep-temp', 'k', 'keep the distribution tree around after creating archive file(s)'), ('dist-dir=', 'd', 'directory to put the source distribution archive(s) in [default: dist]')]

Methods inherited from distutils.cmd.Command:
__getattr__(self, attr)
__init__(self, dist)
Create and initialize a new Command object.  Most importantly,
invokes the 'initialize_options()' method, which is the real
initializer and depends on the actual command being
instantiated.
announce(self, msg, level=1)
If the current verbosity level is of greater than or equal to
'level' print 'msg' to stdout.
copy_file(self, infile, outfile, preserve_mode=1, preserve_times=1, link=None, level=1)
Copy a file respecting verbose, dry-run and force flags.  (The
former two default to whatever is in the Distribution object, and
the latter defaults to false for commands that don't define it.)
copy_tree(self, infile, outfile, preserve_mode=1, preserve_times=1, preserve_symlinks=0, level=1)
Copy an entire directory tree respecting verbose, dry-run,
and force flags.
debug_print(self, msg)
Print 'msg' to stdout if the global DEBUG (taken from the
DISTUTILS_DEBUG environment variable) flag is true.
dump_options(self, header=None, indent='')
ensure_dirname(self, option)
ensure_filename(self, option)
Ensure that 'option' is the name of an existing file.
ensure_finalized(self)
ensure_string(self, option, default=None)
Ensure that 'option' is a string; if not defined, set it to
'default'.
ensure_string_list(self, option)
Ensure that 'option' is a list of strings.  If 'option' is
currently a string, we split it either on /,\s*/ or /\s+/, so
"foo bar baz", "foo,bar,baz", and "foo,   bar baz" all become
["foo", "bar", "baz"].
execute(self, func, args, msg=None, level=1)
get_command_name(self)
get_finalized_command(self, command, create=1)
Wrapper around Distribution's 'get_command_obj()' method: find
(create if necessary and 'create' is true) the command object for
'command', call its 'ensure_finalized()' method, and return the
finalized command object.
get_sub_commands(self)
Determine the sub-commands that are relevant in the current
distribution (ie., that need to be run).  This is based on the
'sub_commands' class attribute: each tuple in that list may include
a method that we call to determine if the subcommand needs to be
run for the current distribution.  Return a list of command names.
make_archive(self, base_name, format, root_dir=None, base_dir=None)
make_file(self, infiles, outfile, func, args, exec_msg=None, skip_msg=None, level=1)
Special case of 'execute()' for operations that process one or
more input files and generate one output file.  Works just like
'execute()', except the operation is skipped and a different
message printed if 'outfile' already exists and is newer than all
files listed in 'infiles'.  If the command defined 'self.force',
and it is true, then the command is unconditionally run -- does no
timestamp checks.
mkpath(self, name, mode=511)
move_file(self, src, dst, level=1)
Move a file respectin dry-run flag.
reinitialize_command(self, command, reinit_subcommands=0)
# XXX rename to 'get_reinitialized_command()'? (should do the
# same in dist.py, if so)
run_command(self, command)
Run some other command: uses the 'run_command()' method of
Distribution, which creates and finalizes the command object if
necessary and then invokes its 'run()' method.
set_undefined_options(self, src_cmd, *option_pairs)
Set the values of any "undefined" options from corresponding
option values in some other command object.  "Undefined" here means
"is None", which is the convention used to indicate that an option
has not been changed between 'initialize_options()' and
'finalize_options()'.  Usually called from 'finalize_options()' for
options that depend on some other command rather than another
option of the same command.  'src_cmd' is the other command from
which option values will be taken (a command object will be created
for it if necessary); the remaining arguments are
'(src_option,dst_option)' tuples which mean "take the value of
'src_option' in the 'src_cmd' command object, and copy it to
'dst_option' in the current command object".
spawn(self, cmd, search_path=1, level=1)
Spawn an external command respecting dry-run flag.
warn(self, msg)

Data and other attributes inherited from distutils.cmd.Command:
sub_commands = []

 
Functions
       
show_formats()
Print all possible values for the 'formats' option (used by
the "--help-formats" command-line option).

 
Data
        StringTypes = (<type 'str'>, <type 'unicode'>)
__revision__ = '$Id: sdist.py,v 1.59 2004/11/10 22:23:15 loewis Exp $'