summaryrefslogtreecommitdiffstats
path: root/Lib/distutils/core.py
Commit message (Collapse)AuthorAgeFilesLines
* [Patch #683939] Add download_url field to metadataAndrew M. Kuchling2003-02-191-1/+1
|
* Remove the recently-added get_distutil_options(), and justAndrew M. Kuchling2003-01-271-8/+13
| | | | have two tuples listing the legal keywords for setup() and Extension()
* Add comment to Distutil files about requiring 1.5.2 compatibility, asAndrew M. Kuchling2002-11-191-0/+2
| | | | suggested by PEP 291.
* Remove 'created by' lines; people can use CVS for this, and the information ↵Andrew M. Kuchling2002-11-141-2/+0
| | | | is often out of date
* [Bug #233259] Ugly traceback for DistutilsPlatformErrorAndrew M. Kuchling2002-11-081-3/+1
| | | | | | Fixed by catching all exceptions that are subclasses of DistutilsError, so only the error message will be printed. You can still get the whole traceback by enabling the Distutils debugging mode.
* Fix a small bug when sys.argv[0] has an absolute path.Thomas Heller2002-11-071-1/+1
| | | | See http://mail.python.org/pipermail/distutils-sig/2002-November/003039.html
* Add get_distutil_options(); future setup.py files can use this to checkAndrew M. Kuchling2002-11-041-0/+9
| | | | | | | | whether the Distutils being used supports a particularly capability. (This idea was originally suggested by Juergen Hermann as a method on the Distribution class. I think it makes more sense as a function in core.py, and that's what this patch implements.)
* Use distutils.debug.DEBUG instead of distutils.core.DEBUG.Jeremy Hylton2002-09-111-5/+1
| | | | | Note that distutils.core.DEBUG still works if client code uses it, but the core code avoids circular references by using distutils.debug.
* Define DEBUG as early as possible to avoid import problems.Jeremy Hylton2002-06-041-5/+5
|
* Fix unused local variables caught by pychecker.Jeremy Hylton2002-06-041-3/+1
| | | | | Fixes a bug for Solaris pkgtool (bdist_pkgtool) that would have prevented it from building subpackages.
* Make setup.py less chatty by default.Jeremy Hylton2002-06-041-1/+5
| | | | | | | | | | | | | | | This is a conservative version of SF patch 504889. It uses the log module instead of calling print in various places, and it ignores the verbose argument passed to many functions and set as an attribute on some objects. Instead, it uses the verbosity set on the logger via the command line. The log module is now preferred over announce() and warn() methods that exist only for backwards compatibility. XXX This checkin changes a lot of modules that have no test suite and aren't exercised by the Python build process. It will need substantial testing.
* Whitespace normalization.Fred Drake2001-12-061-2/+2
|
* Standardize whitespace in function calls.Greg Ward2000-09-261-3/+3
|
* Added 'run_setup()' to allow outsiders to run a setup script underGreg Ward2000-09-011-1/+89
| | | | | | | | | | | fairly tight control, and the '_setup_stop_after' and '_setup_distribution' globals to provide the tight control. This isn't entirely reliable yet: it dies horribly with a NameError on the example PIL setup script in examples/pil_setup.py (at least with Python 1.5.2; untested with current Python). There's some strangeness going on with execfile(), but I don't understand it and don't have time to track it down right now.
* Added 'script_name' and 'script_args' instance attributes to Distribution.Greg Ward2000-08-291-12/+22
| | | | | | | | Changed 'core.setup()' so it sets them to reasonable defaults. Tweaked how the "usage" string is generated: 'core' now provides 'gen_usage()', which is used instead of 'USAGE'. Modified "build_py" and "sdist" commands to refer to 'self.distribution.script_name' rather than 'sys.argv[0]'.
* Oops, import 'grok_environment_error()'.Greg Ward2000-06-211-0/+1
|
* Changed to use the new 'grok_environment_error()' function instead ofGreg Ward2000-06-171-10/+1
| | | | muddling through IOError and OSError exception objects right here.
* Catch DistutilSetupError from the Distribution constructor.Greg Ward2000-06-031-1/+4
|
* Use Distribution method 'dump_option_dicts()' for debugging output, and onlyGreg Ward2000-06-021-6/+6
| | | | do so if DEBUG is true.
* Reformatted and updated many docstrings.Greg Ward2000-06-021-31/+33
|
* Import the new Extension class, so setup scripts canGreg Ward2000-05-311-0/+4
| | | | "from distutils.core import" it.
* Catch CCompiler exceptions in 'setup()'.Greg Ward2000-05-301-1/+2
|
* Added the DEBUG global (set from the DISTUTILS_DEBUG environment variable).Greg Ward2000-05-261-6/+19
| | | | | Changed the exception-handling code in 'setup()' to re-raise exceptions if DEBUG is true.
* Added some debuging output (actually moved here from dist.py) --Greg Ward2000-05-231-0/+8
| | | | | dump the Distribution's 'command_options' dict after parsing config files, and then after parsing the command line.
* Tweaked usage message.Greg Ward2000-05-231-2/+2
|
* Call 'parse_config_files()' at the appropriate point.Gregory P. Smith2000-05-121-7/+7
| | | | Tweaked error-generating code.
* Merged in code from the 0.1.5 release to handle IOError and OSErrorGreg Ward2000-04-221-6/+12
| | | | exceptions better.
* Catch DistutilsOptionError in 'setup()' -- it's thrown either because ofGreg Ward2000-04-221-1/+3
| | | | | errors in the setup script or on the command line, so shouldn't result in a traceback.
* Catch DistutilsFileError in addition to DistutilsExecError in 'setup()'.Greg Ward2000-04-091-1/+1
|
* Reorganization: moved the Distribution class from core.py to dist.py, andGreg Ward2000-04-041-933/+6
| | | | | | the Command class from core.py to cmd.py. No other code needs changing though; distutils.core still provides the Command and Distribution classes, although indirectly now.
* Added 'get_name()' and 'get_full_name()' methods to Distribution.Greg Ward2000-03-311-2/+16
| | | | | | | | Simplified 'Command.get_peer_option()' a tad -- just call 'find_peer()' to get the peer command object. Updated 'Command.copy_file()' to take a 'link' parameter, just like 'util.copy_file()' does now. Added 'Command.make_archive()' to wrap 'util.make_archive()'.
* Added the "distribution query" methods: 'has_pure_modules()',Greg Ward2000-03-291-2/+22
| | | | 'has_ext_modules()', 'has_c_libraries()', 'has_modules()', and 'is_pure()'.
* Beefed up error-handling in 'setup()' a smidge:Greg Ward2000-03-261-1/+3
| | | | handle OSError and DistutilsExecError now.
* Dropped the evil and misguided 'set_peer_option()' method -- it's noGreg Ward2000-03-221-20/+0
| | | | longer needed, and can't possibly work anyways.
* Renamed 'install_path' to 'extra_path'.Greg Ward2000-03-221-2/+6
| | | | | | | | Fix 'Command.set_undefined_option()' to call 'ensure_ready()' rather than 'finalize_options()' (which is only supposed to be called once, which is the whole point of 'ensure_ready()'). Added comment to 'set_peer_option()' to remind myself that this method cannot work and is fundamentally wrong-headed.
* Oops! Don't call 'ensure_ready()' in 'Distribution.find_command_obj()' --Greg Ward2000-03-181-2/+3
| | | | | | that broke parsing command-line options. Instead call it in 'Command.find_peer()', which is why I added it to 'find_command_obj()' in the first place.
* Changed '__rcsid__' to '__revision__'.Greg Ward2000-03-021-1/+1
|
* Added call to 'ensure_ready()' on the command object inGreg Ward2000-03-011-0/+1
| | | | 'Distribution.find_command_obj()'.
* Try to deal with pre-1.5.2 IOError exception objects.Greg Ward2000-02-261-2/+6
|
* Changed all references to command methods 'set_default_options()' andGreg Ward2000-02-181-23/+23
| | | | 'set_final_options()' to 'initialize_options()' and 'finalize_options()'.
* Changed references to the command class 'options' attribute to 'user_options'.Greg Ward2000-02-181-26/+27
| | | | | Related docstring changes. Unrelated comment changes.
* Command classes are now named identically to their commands, so reflect thisGreg Ward2000-02-181-2/+1
| | | | in 'find_command_class()' method.
* Added 'libraries' option for use by the 'build_lib' command.Greg Ward2000-02-051-1/+2
| | | | Typo fix.
* Improvements to the help system:Greg Ward2000-01-301-5/+89
| | | | | | | | * "--help" can now come either before or after particular commands to get help on and can give help on multiple commands, eg. "--help install dist" gives help on those two commands * added "--help-commands" option, implemented by the 'print_commands()' and 'print_command_list()' methods
* When emitting a command-line error message, *say* it's an error.Greg Ward1999-12-161-1/+1
|
* Made "verbose" mode the default; now you have to supply --quiet if youGreg Ward1999-12-121-18/+75
| | | | | | | | | | | | | | | | | | | | | | | want no output. Still no option for a happy medium though. Added "--help" global option. Changed 'parse_command_line()' to recognize help options (both for the whole distribution and per-command), and to distinguish "regular run" and "user asked for help" by returning false in the latter case. Also in 'parse_command_line()', detect invalid command name on command line by catching DistutilsModuleError. a 'negative_opt' class attribute right after 'global_options'; changed how we call 'fancy_getopt()' accordingly. Initialize 'maintainer' and 'maintainer_email' attributes to Distribution to avoid AttributeError when 'author' and 'author_email' not defined. Initialize 'help' attribute in Command constructor (to avoid AttributeError when user *doesn't* ask for help). In 'setup()': * show usage message before dying when we catch DistutilsArgError * only run commands if 'parse_command_line()' returned true (that way, we exit immediately when a help option is found) * catch KeyboardInterrupt and IOError from running commands Bulked up usage message to show --help options. Comment, docstring, and error message tweaks.
* Qualified use of 'newer_group' function.Greg Ward1999-10-231-1/+1
|
* Added 'force' and 'quiet' (negative alias for 'verbose') to theGreg Ward1999-10-031-83/+84
| | | | | | | | | | | | | | | | | | global options table. Every Command instance now has its own copies of the global options, which automatically fallback to the Distribution instance. Changes: - initialize them in constructor - added '__getattr__()' to handle the fallback logic - changed every 'self.distribution.{verbose,dry_run}' in Command to 'self.{verbose,dry_run}'. - filesystem utility methods ('copy_file()' et al) don't take 'update' parameter anymore -- instead we pass 'not force' to the underlying function as 'update' Changed parsing of command line so that global options apply to all commands as well -- that's how (eg.) Command.verbose will be initialized. Simplified 'make_file()' to use 'newer_group()' (from util module). Deleted some cruft. Some docstring tweaks.
* Added 'ready' flag and 'ensure_ready()' method to Command: togetherGreg Ward1999-09-291-28/+53
| | | | | | | | | they make sure that 'set_final_options()' has been called, but isn't called redundantly. Changed Distribution to call 'ensure_ready()' where it used to call 'set_final_options()', and in a few extra places as well. Lots of comment/docstring revisions and additions in both classes. New one-liner utility methods in Command: 'find_peer()', 'spawn()'.
* Ditched the whole notion of "alias options": this meant dropping theGreg Ward1999-09-211-39/+21
| | | | | | | | | | | | | 'alias_options' table and getting rid of some hairy code in the Distribution constructor. Resurrected the distribution options that describe the modules present in the module distribution ('py_modules', 'ext_modules'), and added a bunch more: 'packages', 'package_dir', 'ext_package', 'include_dirs', 'install_path'. Updated some comments. Added 'warn()' method to Command. 'Command.get_command_name()' now stores generated command name in self.command_name.