Release 0.9.2 (31 August, 2000): ------------------------------- * fixed bug that broke extension-building under Windows for older setup scripts (not using the new Extension class) * new version of bdist_wininst command and associated tools: fixes some bugs, produces a smaller exeuctable, and has a nicer GUI (thanks to Thomas Heller) * added some hooks to 'setup()' to allow some slightly sneaky ways into the Distutils, in addition to the standard "run 'setup()' from a setup script" Release 0.9.1 (15 August, 2000): ------------------------------ * added --dist-dir option to the sdist and bdist commands, to control where output files are put; all default to the "dist" directory * factored a bunch of code out of the "sdist" command, which will hopefully make it easier to use its nifty "file list template" features used in other places (thanks to Rene Liebscher) * general cleanup/improvement of compiling extensions with non- Microsoft compilers under Windows (Rene Liebscher): - fixed Borland C++ interface so it works - better handling of different GCC versions under Windows * fixed a bunch of little bugs (thanks to various people) * some documentation work: added "Describing extensions" section to the "Distributing Python Modules" manual * fixed a long-standing bug in the "build_py" command that prevented "bdist_rpm" from working in certain cases Release 0.9 (29 June, 2000): ---------------------------- * added config file mechanism * added "bdist_rpm" command: create an RPM built distribution (thanks to Harry Henry Gebel) * added "bdist_wininst" command: create an executable Windows installer (self-extracting ZIP file with a small GUI) (thanks to Thomas Heller) * added extra help options to list the available C/C++ compilers ("build_ext", "build_clib" commands), archive formats for source distributions ("sdist"), and formats for built distributions ("bdist") (thanks to Rene Liebscher) * added "install_data" and "install_scripts" commands to install, respectively, arbitrary data files and scripts (thanks to Bastian Kleineidam) * added the "build_scripts" command, mainly to fix the "#!" line of Python scripts to point to the current Python interpreter (Bastian Kleineidam again) * added "install_headers" command to install C/C++ header files (to the include/python directory by default) * added a new, much simpler way to describe extensions in the setup script (no more hairy list-of-tuples-of-dicts: just call the Extension constructor to create an Extension object that describes your extension) * modified all the example setup scripts to use the new way of describing extensions (thanks to Harry Henry Gebel for help) * added another bit of meta-data: the "long description" (Harry Henry Gebel) * added the ability to compile and link in resource files with Visual C++ on Windows (Thomas Heller) * extension building now works on AIX (actually tested this time) (thanks to Rene Liebscher for the initial patch, and Vladimir Marangozov for testing) * extension building now works on OSF/1 (aka Digital Unix, aka Tru64 Unix) (thanks to Mark Favas for testing) * experimental support for auto-configuration, via the "config" command (think "Autoconf in Python") * modified example setup scripts for PIL and mxDateTime to do some auto-configuration (only partially implemented -- no support for actually using the information discovered during the build process) * experimental interface to Borland C++ for building extensions on Windows (thanks to Lyle Johnson) * experimental interface to Cygwin and Mingw32 ports of GCC for building extensions on Windows (thanks to Rene Liebscher) * added ability to select which compiler to use as an option to "build", "build_ext", and/or "build_clib" * experimental support for building extensions from SWIG interface files * added more ways to sneak compiler and/or linker options in through the back door ('extra_link_args', 'extra_compile_args' when constructing an Extension object, for now) * fixed a bunch of silly bugs in "sdist"; most importantly, it will now exclude directories from the source distribution that really shouldn't be there (like the build tree, the temporary tree that is used to build the source distribution archive, CVS and RCS directories, ...) * added a minimal debugging framework (set environment variable DISTUTILS_DEBUG to 1 and you get a *lot* more feedback!) * added the notion of "list of symbols to export" to CCompiler interface * added preprocessor interface to CCompiler (only implemented in UnixCCompiler, so far) * better separation of responsibilities between the UnixCCompiler class and the build_ext command Release 0.8.2 (24 April, 2000): ------------------------------- * bug fix: --help option failed due to over-eager refactoring in 0.8.1 (thanks to Harry Henry Gebel) * bug fix: conversion of Unix-style paths to Windows style fixed (so the sdist command should be portable now) (thanks to Lyle Johnson) * added bztar format to generate .tar.bz2 source distributions (thanks to Harry Henry Gebel) Release 0.8.1 (21 April, 2000): ------------------------------- * added the meta-data display options: now you can run the setup script with --name, --author, --description, etc. and it will print out that information (thanks to Bastian Kleineidam for the original idea and patch) * thoroughly overhauled the distutils.fancy_getopt module to support those options * manifest template files can now take many filename patterns per line (thanks to Andrew Kuchling) * code cleanup: better and more consistent use of exceptions * building extensions should now work on AIX, thanks to a hack that fixes "./ld_so_aix" in Python's installed Makefile * fixed the "sample3" example to actually work (it hadn't been updated with the Great Renaming prior to release 0.8) Release 0.8 (11 April, 2000): ----------------------------- * some incompatible naming changes in the command classes -- both the classes themselves and some key class attributes were renamed (this will break some old setup scripts -- see README.txt) * half-hearted, unfinished moves towards backwards compatibility with Python 1.5.1 (the 0.1.4 and 0.1.5 releases were done independently, and I still have to fold those code changes in to the current code) * added ability to search the Windows registry to find MSVC++ (thanks to Robin Becker and Thomas Heller) * renamed the "dist" command to "sdist" and introduced the "manifest template" file (MANIFEST.in), used to generate the actual manifest * added "build_clib" command to build static C libraries needed by Python extensions * fixed the "install" command -- we now have a sane, usable, flexible, intelligent scheme for doing standard, alternate, and custom installations (and it's even documented!) (thanks to Fred Drake and Guido van Rossum for design help) * straightened out the incompatibilities between the UnixCCompiler and MSVCCompiler classes, and cleaned up the whole mechanism for compiling C code in the process * reorganized the build directories: now build to either "build/lib" or "build/lib.", with temporary files (eg. compiler turds) in "build/temp." * merged the "install_py" and "install_ext" commands into "install_lib" -- no longer any sense in keeping them apart, since pure Python modules and extension modules build to the same place * added --debug (-g) flag to "build_*" commands, and make that carry through to compiler switches, names of extensions on Windows, etc. * fixed many portability bugs on Windows (thanks to many people) * beginnings of support for Mac OS (I'm told that it's enough for the Distutils to install itself) (thanks to Corran Webster) * actually pay attention to the "--rpath" option to "build_ext" (thanks to Joe Van Andel for spotting this lapse) * added "clean" command (thanks to Bastien Kleineidam) * beginnings of support for creating built distributions: changes to the various build and install commands to support it, and added the "bdist" and "bdist_dumb" commands * code reorganization: split core.py up into dist.py and cmd.py, util.py into *_util.py * removed global "--force" option -- it's now up to individual commands to define this if it makes sense for them * better error-handling (fewer extravagant tracebacks for errors that really aren't the Distutils' fault Release 0.1.5 (6 April, 2000): ------------------------------- * handle spaces in directory names under Windows * don't blow up with extravagant tracebacks for errors that really aren't the Distutils' fault Release 0.1.4 (4 April, 2000): ------------------------------ * backwards compatibility with Python 1.5.1 Release 0.1.3 (30 January, 2000): --------------------------------- * "dist" command works on Windows now * better error handling in a few places * fixed some bugs in the MSVC++ interface class * "install_py" and "install_ext" commands now run their corresponding build commands, in case they are invoked standalone by the user * added the "--help-commands" option to get a list of all commands * renamed the text files to README.txt, USAGE.txt, and CHANGES.txt (for convenience to Windows users) * started adding code to allow building static C libraries and standalone executables (not used yet) Release 0.1.2 (15 December, 1999) --------------------------------- * changes to command-line semantics: - verbose mode is now the default - added help options (and generation of help text), both globally and for each command - better usage message * anywhere that accepts/requires a list of strings now also accepts a tuple of strings (but lists of tuples still have to be lists -- there are limits) * fixes to "build_py" command - explicitly ensure that the setup script (sys.argv[0]) is never included with the modules to be installed - do *not* preserve file mode when copying .py files into the build tree (was preserving 0444 permissions [read-only], which caused subsequent installation of the same module distribution to fail) - several silly bugs that showed up when building simple, non-packagized distributions * fixes to the "dist" command - correct behaviour with filename pattern regexes - don't blow up if MANIFEST missing, just warn and carry on - blow away "distribution" tree after making archive file(s) Release 0.1.1 (23 October, 1999) -------------------------------- * fixed 'mkpath()' function so it should work under DOS/Windows * changes to how we link C code: - under Unix, object files precede -l options on link command line - libraries now can have a directory component, which forces the library to be searched for in only that directory * added --force and --quiet global options * made global options (--verbose, --dry-run, and now --force and --quiet too) valid at each command as well as for the whole distribution * 'dist' command now works on Unices other than Linux; generates tar, tar.Z, tar.gz, and ZIP files. Still Unix-dependent though. Release 0.1 (29 October, 1999) ------------------------------ * initial public release $Id$