==================== Distutils2 Changelog ==================== This file should list all changes made to the user-visible behavior and the public API, all important internal changes to help developers merge changes with their clones, and all changes that have a bug report. Contributors' first names (and last name initial when needed) are given for each item; see CONTRIBUTORS.txt for full names. Bug numbers refer to http://bugs.python.org/. 1.0a5 - 2012-xx-xx ------------------ - #14294: Let Metadata convert setuptools-style requires.txt [preston] - #14270: Add dest_dir parameter to install functions [mathieu] - #13166: Add __str__ to database.*Distribution for nicer output [guillaume] - #13614: Fix register failure with invalid rst in description [julien c, mathieu, pierre paul, éric] - #13399: Display error message instead of unhandled traceback for missing actions, commands and options [patrice] - #10374: Recreate scripts everytime build_scripts is called [pierre paul] - #14733: Have pysetup read setup.cfg early enough to find custom commands [éric, janusz] - #16107: Fix trailing '.z' in str('1.0.post1') result [richard] 1.0a4 - 2012-03-13 ------------------ - Remove type check for commands in favor of minimal duck type check [tarek] - Add setup_hook, run between setup.cfg parsing and any other action [tarek] - Allow configuring command classes in setup.cfg [tarek] - Add description-file to setup.cfg [tarek] - Make Manifest.read_template accept file objects [tarek] - Replace MANIFEST.in with extra_files field in setup.cfg for sdist [tarek] - Abandon converter idea for d1-d2 migration [tarek] - Make 'include' default action for extra_files lines [tarek] - Rename py_modules to modules in setup.cfg [tarek] - Add detection of files in mkcfg [tarek] - Remove core module [tarek] - Remove log module, use standard logging with 'distutils2' logger name [tarek] - Allow configuring sub-commands in setup.cfg [tarek] - Add manifest_builders field [tarek] - Move useful functions from compiler.ccompiler to compiler [tarek] - Compiler classes should now define a description attribute [tarek] - Compiler classes are now loaded with their fully qualified names [tarek] - Allow registering extra compiler classes in setup.cfg [tarek] - The EMX compiler is gone [tarek] - Standard command classes are now registered with set_commands; command_packages is gone [tarek] - Move extension module to compiler.extension [tarek] - The compiler_type attribute of compiler classes is now name [tarek] - Document the setup.cfg file format in a specification that can be used by non-Python developers [tarek, éric, julien j] - #10409: Fixed the License selector in mkcfg [tarek] - #9558: Fix build_ext with VS 8.0 [éric] - #6007: Add disclaimer about MinGW compatibility in docs [éric] - #11038: Add strict parameter to metadata.check, use it in check command [gaël] - Support multiple files in description-file [gaël] - Simplify and rename package_dir to packages_root: only one root directory for all packages and modules is allowed [tarek] - Add util.generate_setup_py to create a setup.py script compatible with distutils that takes information from a setup.cfg [julien m] - README or README.txt and test/test*.py are no longer included in sdists [godefroid] - Move PEP 345 markers interpreter from metadata to markers [tarek] - #11057: Fix two NameErrors [éric] - Add install.remove, the uninstall feature [gaël] - Reuse info from existing setup.py when creating a setup.cfg with mkcfg [alain] - Add support for extension modules in setup.cfg [andré] - Arguments that specify the target directory for install-related functions in install don't have default values anymore [yannick] - Add paths argument to install.install* functions to allow working outside of sys.path [tarek] - Metadata.check and check command now want an author field, even if maintainer is supplied [godefroid] - Renamed DistributionMetadata to Metadata [chistophe] - Make --help-commands work again [éric] - Fix index.dist.DistInfo.unpack to really use the path given as argument [kelsey] - Introduce the resources system, a major overhaul of data_files installation that supports putting files in various directories compliant with OS policies and pain-free use of these files by Python code [boris, pierre-yves] - New util.iglob function supporting more patterns than stdlib glob [pierre-yves] - Add 'pysetup create' to prompt the user and create a setup.cfg file with the answers [tarek] - Convert and import the code into the CPython 3.3 repository [tarek, arc, vinay, elson, walker, michael, kelsey, jason, alexis, éric, victor]; in the distutils2 backport, change some names to match the CPython repo: exception names start with "Packaging", there is a util.is_packaging function, etc. - Add bdist_wininst helpers compiled with Visual Studio 10 [jason] - 'pysetup install' now accepts a patch to a directory or to an archive in addition to a PyPI project name [kelsey] - Rename mkcfg to create [éric] - Add function to convert an egg-info file or directory to dist-info [kelsey] - Add functions to detect if a project uses distutils, setuptools or packaging [kelsey, hugo] - Config fields that support environment markers (PEP 345) can now check 'platform.python_implementation' [alexis] - Use True and False instead of 0 and 1 (compatible change that makes the intent of the code clearer) [éric] - Rename 'pysetup list' the action used to look for installed projects [alexis] - Add 'pysetup search' to look for projects on an index/catalog [alexis] - Rename packaging.index back to packaging.pypi [kelsey] - Clean up logging setup, improve tests.support.LoggingCatcher [éric] - Replace warnings by logging, remove display_warning argument of Metadata.__init__, kill warn/announce/debug_print methods [éric] - Improve EnvironGuard and rename it EnvironRestorer [éric] - Move PEP 376 implementation from pkgutil to packaging.database [éric] - Add version attribute to database.*Distribution classes [éric] - #10419, #6011: Make sure build_scripts can handle non-ASCII path for the Python interpreter used in shebangs [victor] - #12112, #12320, #9561: Use UTF-8 to read or write setup.cfg, setup.py and METADATA files instead of the default, locale-dependent encoding [victor] - #12114: Fix potential deadlock or zombification in util._find_exe_version [victor] - Use / as path separator in setup.cfg created by 'pysetup create' even on Windows [tarek] - Use / as path separator in RECORD file even on Windows [tarek] - #6459: Fix the import symbol in extension modules [tarek] - #10126: Fix for python built in shared mode on Unix [tarek] - #10359: ';' after function definition is invalid in ISO C [éric] - Remove the resources submodule, move its functions into resources [tarek] - Update the docs and move them to the CPython repository [kelsey, elson, guillermoo, éric] - Add 'pysetup generate-setup' to expose util.generate_setup_py [tarek] - #11092: Make sdist always include setup.cfg [éric] - #12246: Don't try to install something when running from an uninstalled Python built in its checkout [tshepang, éric] - Add packaging.util.split_multiline [julien m, erik] - #11595: Fix assorted bugs in packaging.util.cfg_to_args [erik, éric] - #12240: Allow multiple setup hooks [erik, éric] - #11637: Fix support for importing setup hooks from the project directory [vinay, éric] - #9516: Revise deployment target processing for OS X [ned] - #12169, #10510: Factor out code used by various commands to make HTTP POST requests, and make sure it uses CRLF [john, éric] - #12504: Close file handles in a timely manner in database; this fixes a bug with the remove (uninstall) feature on Windows [thomas] - #11409, #12222: Let all pysetup actions return a meaningful 0 or 1 exit code [kelsey, éric] - Add filesafe argument to Metadata.get_fullname and Distribution.get_fullname [jeremy] - Change distutils2's setup.py script to get info from the setup.cfg [jeremy] - Add support for building OpenSSL on Windows (for _backports.hashlib) [jeremy] - Print all fields when calling 'pysetup metadata' without options, remove --all option for metadata and list actions [éric] - Remove display options (--name, etc.) from the Distribution class; this has the side effect that 'url' is no longer accepted as key in the attrs argument of the class' constructor, it needs to be 'home-page' to be recognized as valid metadata field [éric] - #10946: Make bdist_dumb, bdist_wininst and bdist_msi respect a --skip-build option given to bdist [éric] - The right-hand part in [extension: foo] (in a setup.cfg) is now used as the name of the extension module [éric] - #8933: METADATA files will now correctly report Metadata-Version: 1.1 instead of 1.0 if a Classifier or Download-URL field is present [filip, éric] - Create a branch for a Python 3 version of distutils2 [éric] - #10359: Make C code in one test comply with ISO C [hallvard] - #11254: Fix byte-compilation to comply with PEP 3147 on Python 3.2+ [éric] - #13114: Add tests for Unicode handling in check and register [éric] - #13170: Revert one of Jeremy's changes to config to fix a bug, kludge around shlex not supporting unicode in 2.x, fix wrong shutil import [david, éric] - #13205: Fix and improve generated setup scripts [david, éric] - #12386: Fix writing of the RESOURCES file [éric] - #11751: Improve test coverage for manifest [justin] - Byte compilation is now isolated from the calling Python -B or -O options [éric] - The signature of tests.support.LoggingCatcher.get_logs changed, see docstring [éric] - Rename get_reinitialized_command back to reinitialize_command [éric] - Rename install_distinfo's option from distinfo-dir to the more usual install_dir [éric] - Remove verbose arguments for Command and Compiler classes as well as util functions, obsoleted by logging [éric] - #12659: Add tests for tests.support [francisco] - #13901: Prevent test failure on OS X for Python built in shared mode [ned] - #11805: Add multiple value syntax for package_data in setup.cfg [éric] - #13712: Don't map package_data to extra_files when converting a setup.py script with pysetup create [éric] - #1326113: build_ext now correctly parses multiple values given to the --libraries option [éric] - #13974: add test for util.set_platform [tshepang] - #6884: Fix MANIFEST.in parsing bugs on Windows [éric, nadeem] - #11841: Fix comparison bug with 'rc' versions [filip] - #14263: Fix function name lookup in d2.pypi.wrapper [tarek] - #14264: Stop removing trailing zeroes in versions [tarek] - #14268: Fix small error in a test [tarek] - Drop support for Python 2.4 [tarek, éric] - #13009: Out-of-date documentation removed, people should look at http://docs.python.org/dev/packaging [éric] 1.0a3 - 2010-10-08 ------------------ - Provided a Tox configuration for cross-Python testing [holger] - Fixed the installation when using easy_install and Pip by switching setup.py to distutils1 [holger/tarek] - Added missing c/h files in the MANIFEST so they are always present no matter which Python version was used to build it [holger/tarek] - Added pysetup, the new setup runner that uses only setup.cfg - Renamed mkpkg to mkcfg [tarek] - Renamed install_tools to install [alexis] 1.0a2 - 2010-09-10 ------------------ - Add a converter for distutils/setuptools-based setup scripts [tarek] - Factor out MANIFEST[.in] support into disutils2.manifest [tarek] - Implement pkgutil APIs described in PEP 376 [josip] - Add PEP 376 .dist-info support in Distribute [josip] - Add distutils2.depgraph, a dependency graph builder [josip] - Add a mock server to test network-using code [alexis, konrad] - Add distutils2.index, a comprehensive subpackage to query PyPI [alexis] - Add 2to3 support to the build command [zubin] - Enhance the check command (sanity tests) [konrad] - Make sdist include source files used by other commands [jeremy] - Change install_egg_info to install_distinfo (PEP 376) [josip] - Import the upload_docs command from distribute [konrad] - Add a test command [konrad] - Add post and pre-hooks for build and install [konrad] - Remove PyPIRCCommand, move its helper code into util [tarek] - Remove Mac OS 9 support [éric] - Start adding docstrings to interface methods [jeremy] - Copy documentation from the stdlib [ali, éric] - Lots of bug fixes, cleanups, tests [everyone] 1.0a1 - 2010-05-06 ------------------ - Initial import from the stdlib [tarek] - Add support for PEP 386 in distutils2.version [tarek] - Add support for PEP 345 in distutils2.metadata [tarek] - Add mkpkg, a helper script to create a setup.py [sean] - Remove bdist_rpm command [tarek] - Add some PEP 376 functions to pkgutil [michael] - Add distutils2.util.find_packages [tarek]