Commit c652e7e7 authored by Jason R. Coombs's avatar Jason R. Coombs

Re-wrote link inference to now respect specific patterns and generate links to...

Re-wrote link inference to now respect specific patterns and generate links to known issue trackers.
parent 5896424c
...@@ -106,7 +106,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -106,7 +106,7 @@ Added several features that were slated for setuptools 0.6c12:
* Move warning check in ``get_cache_path`` to follow the directory creation * Move warning check in ``get_cache_path`` to follow the directory creation
to avoid errors when the cache path does not yet exist. Fixes the error to avoid errors when the cache path does not yet exist. Fixes the error
reported in #375. reported in Distribute #375.
------ ------
0.6.48 0.6.48
...@@ -126,7 +126,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -126,7 +126,7 @@ Added several features that were slated for setuptools 0.6c12:
0.6.46 0.6.46
------ ------
* Issue #375: Issue a warning if the PYTHON_EGG_CACHE or otherwise * Distribute #375: Issue a warning if the PYTHON_EGG_CACHE or otherwise
customized egg cache location specifies a directory that's group- or customized egg cache location specifies a directory that's group- or
world-writable. world-writable.
...@@ -134,7 +134,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -134,7 +134,7 @@ Added several features that were slated for setuptools 0.6c12:
0.6.45 0.6.45
------ ------
* Issue #379: ``distribute_setup.py`` now traps VersionConflict as well, * Distribute #379: ``distribute_setup.py`` now traps VersionConflict as well,
restoring ability to upgrade from an older setuptools version. restoring ability to upgrade from an older setuptools version.
------ ------
...@@ -148,21 +148,21 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -148,21 +148,21 @@ Added several features that were slated for setuptools 0.6c12:
0.6.43 0.6.43
------ ------
* Issue #378: Restore support for Python 2.4 Syntax (regression in 0.6.42). * Distribute #378: Restore support for Python 2.4 Syntax (regression in 0.6.42).
------ ------
0.6.42 0.6.42
------ ------
* External links finder no longer yields duplicate links. * External links finder no longer yields duplicate links.
* Issue #337: Moved site.py to setuptools/site-patch.py (graft of very old * Distribute #337: Moved site.py to setuptools/site-patch.py (graft of very old
patch from setuptools trunk which inspired PR #31). patch from setuptools trunk which inspired PR #31).
------ ------
0.6.41 0.6.41
------ ------
* Issue #27: Use public api for loading resources from zip files rather than * Distribute #27: Use public api for loading resources from zip files rather than
the private method `_zip_directory_cache`. the private method `_zip_directory_cache`.
* Added a new function ``easy_install.get_win_launcher`` which may be used by * Added a new function ``easy_install.get_win_launcher`` which may be used by
third-party libraries such as buildout to get a suitable script launcher. third-party libraries such as buildout to get a suitable script launcher.
...@@ -171,7 +171,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -171,7 +171,7 @@ Added several features that were slated for setuptools 0.6c12:
0.6.40 0.6.40
------ ------
* Issue #376: brought back cli.exe and gui.exe that were deleted in the * Distribute #376: brought back cli.exe and gui.exe that were deleted in the
previous release. previous release.
------ ------
...@@ -182,7 +182,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -182,7 +182,7 @@ Added several features that were slated for setuptools 0.6c12:
* Fix possible issue in GUI launchers where the subsystem was not supplied to * Fix possible issue in GUI launchers where the subsystem was not supplied to
the linker. the linker.
* Launcher build script now refactored for robustness. * Launcher build script now refactored for robustness.
* Issue #375: Resources extracted from a zip egg to the file system now also * Distribute #375: Resources extracted from a zip egg to the file system now also
check the contents of the file against the zip contents during each check the contents of the file against the zip contents during each
invocation of get_resource_filename. invocation of get_resource_filename.
...@@ -190,13 +190,13 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -190,13 +190,13 @@ Added several features that were slated for setuptools 0.6c12:
0.6.38 0.6.38
------ ------
* Issue #371: The launcher manifest file is now installed properly. * Distribute #371: The launcher manifest file is now installed properly.
------ ------
0.6.37 0.6.37
------ ------
* Issue #143: Launcher scripts, including easy_install itself, are now * Distribute #143: Launcher scripts, including easy_install itself, are now
accompanied by a manifest on 32-bit Windows environments to avoid the accompanied by a manifest on 32-bit Windows environments to avoid the
Installer Detection Technology and thus undesirable UAC elevation described Installer Detection Technology and thus undesirable UAC elevation described
in `this Microsoft article in `this Microsoft article
...@@ -206,8 +206,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -206,8 +206,7 @@ Added several features that were slated for setuptools 0.6c12:
0.6.36 0.6.36
------ ------
* Pull Request #35: In `Buildout issue 64 * Pull Request #35: In Buildout #64, it was reported that
<https://github.com/buildout/buildout/issues/64>`_, it was reported that
under Python 3, installation of distutils scripts could attempt to copy under Python 3, installation of distutils scripts could attempt to copy
the ``__pycache__`` directory as a file, causing an error, apparently only the ``__pycache__`` directory as a file, causing an error, apparently only
under Windows. Easy_install now skips all directories when processing under Windows. Easy_install now skips all directories when processing
...@@ -221,7 +220,7 @@ Added several features that were slated for setuptools 0.6c12: ...@@ -221,7 +220,7 @@ Added several features that were slated for setuptools 0.6c12:
Note this release is backward-incompatible with distribute 0.6.23-0.6.34 in Note this release is backward-incompatible with distribute 0.6.23-0.6.34 in
how it parses version numbers. how it parses version numbers.
* Issue #278: Restored compatibility with distribute 0.6.22 and setuptools * Distribute #278: Restored compatibility with distribute 0.6.22 and setuptools
0.6. Updated the documentation to match more closely with the version 0.6. Updated the documentation to match more closely with the version
parsing as intended in setuptools 0.6. parsing as intended in setuptools 0.6.
...@@ -229,7 +228,7 @@ how it parses version numbers. ...@@ -229,7 +228,7 @@ how it parses version numbers.
0.6.34 0.6.34
------ ------
* Issue #341: 0.6.33 fails to build under Python 2.4. * Distribute #341: 0.6.33 fails to build under Python 2.4.
------ ------
0.6.33 0.6.33
...@@ -238,11 +237,11 @@ how it parses version numbers. ...@@ -238,11 +237,11 @@ how it parses version numbers.
* Fix 2 errors with Jython 2.5. * Fix 2 errors with Jython 2.5.
* Fix 1 failure with Jython 2.5 and 2.7. * Fix 1 failure with Jython 2.5 and 2.7.
* Disable workaround for Jython scripts on Linux systems. * Disable workaround for Jython scripts on Linux systems.
* Issue #336: `setup.py` no longer masks failure exit code when tests fail. * Distribute #336: `setup.py` no longer masks failure exit code when tests fail.
* Fix issue in pkg_resources where try/except around a platform-dependent * Fix issue in pkg_resources where try/except around a platform-dependent
import would trigger hook load failures on Mercurial. See pull request 32 import would trigger hook load failures on Mercurial. See pull request 32
for details. for details.
* Issue #341: Fix a ResourceWarning. * Distribute #341: Fix a ResourceWarning.
------ ------
0.6.32 0.6.32
...@@ -250,19 +249,18 @@ how it parses version numbers. ...@@ -250,19 +249,18 @@ how it parses version numbers.
* Fix test suite with Python 2.6. * Fix test suite with Python 2.6.
* Fix some DeprecationWarnings and ResourceWarnings. * Fix some DeprecationWarnings and ResourceWarnings.
* Issue #335: Backed out `setup_requires` superceding installed requirements * Distribute #335: Backed out `setup_requires` superceding installed requirements
until regression can be addressed. until regression can be addressed.
------ ------
0.6.31 0.6.31
------ ------
* Issue #303: Make sure the manifest only ever contains UTF-8 in Python 3. * Distribute #303: Make sure the manifest only ever contains UTF-8 in Python 3.
* Issue #329: Properly close files created by tests for compatibility with * Distribute #329: Properly close files created by tests for compatibility with
Jython. Jython.
* Work around Jython bugs `#1980 <http://bugs.jython.org/issue1980>`_ and * Work around Jython #1980 and Jython #1981.
`#1981 <http://bugs.jython.org/issue1981>`_. * Distribute #334: Provide workaround for packages that reference `sys.__stdout__`
* Issue #334: Provide workaround for packages that reference `sys.__stdout__`
such as numpy does. This change should address such as numpy does. This change should address
`virtualenv #359 <https://github.com/pypa/virtualenv/issues/359>`_ as long `virtualenv #359 <https://github.com/pypa/virtualenv/issues/359>`_ as long
as the system encoding is UTF-8 or the IO encoding is specified in the as the system encoding is UTF-8 or the IO encoding is specified in the
...@@ -271,7 +269,7 @@ how it parses version numbers. ...@@ -271,7 +269,7 @@ how it parses version numbers.
PYTHONIOENCODING=utf8 pip install numpy PYTHONIOENCODING=utf8 pip install numpy
* Fix for encoding issue when installing from Windows executable on Python 3. * Fix for encoding issue when installing from Windows executable on Python 3.
* Issue #323: Allow `setup_requires` requirements to supercede installed * Distribute #323: Allow `setup_requires` requirements to supercede installed
requirements. Added some new keyword arguments to existing pkg_resources requirements. Added some new keyword arguments to existing pkg_resources
methods. Also had to updated how __path__ is handled for namespace packages methods. Also had to updated how __path__ is handled for namespace packages
to ensure that when a new egg distribution containing a namespace package is to ensure that when a new egg distribution containing a namespace package is
...@@ -283,7 +281,7 @@ how it parses version numbers. ...@@ -283,7 +281,7 @@ how it parses version numbers.
0.6.30 0.6.30
------ ------
* Issue #328: Clean up temporary directories in distribute_setup.py. * Distribute #328: Clean up temporary directories in distribute_setup.py.
* Fix fatal bug in distribute_setup.py. * Fix fatal bug in distribute_setup.py.
------ ------
...@@ -291,28 +289,28 @@ how it parses version numbers. ...@@ -291,28 +289,28 @@ how it parses version numbers.
------ ------
* Pull Request #14: Honor file permissions in zip files. * Pull Request #14: Honor file permissions in zip files.
* Issue #327: Merged pull request #24 to fix a dependency problem with pip. * Distribute #327: Merged pull request #24 to fix a dependency problem with pip.
* Merged pull request #23 to fix https://github.com/pypa/virtualenv/issues/301. * Merged pull request #23 to fix https://github.com/pypa/virtualenv/issues/301.
* If Sphinx is installed, the `upload_docs` command now runs `build_sphinx` * If Sphinx is installed, the `upload_docs` command now runs `build_sphinx`
to produce uploadable documentation. to produce uploadable documentation.
* Issue #326: `upload_docs` provided mangled auth credentials under Python 3. * Distribute #326: `upload_docs` provided mangled auth credentials under Python 3.
* Issue #320: Fix check for "createable" in distribute_setup.py. * Distribute #320: Fix check for "createable" in distribute_setup.py.
* Issue #305: Remove a warning that was triggered during normal operations. * Distribute #305: Remove a warning that was triggered during normal operations.
* Issue #311: Print metadata in UTF-8 independent of platform. * Distribute #311: Print metadata in UTF-8 independent of platform.
* Issue #303: Read manifest file with UTF-8 encoding under Python 3. * Distribute #303: Read manifest file with UTF-8 encoding under Python 3.
* Issue #301: Allow to run tests of namespace packages when using 2to3. * Distribute #301: Allow to run tests of namespace packages when using 2to3.
* Issue #304: Prevent import loop in site.py under Python 3.3. * Distribute #304: Prevent import loop in site.py under Python 3.3.
* Issue #283: Reenable scanning of `*.pyc` / `*.pyo` files on Python 3.3. * Distribute #283: Reenable scanning of `*.pyc` / `*.pyo` files on Python 3.3.
* Issue #299: The develop command didn't work on Python 3, when using 2to3, * Distribute #299: The develop command didn't work on Python 3, when using 2to3,
as the egg link would go to the Python 2 source. Linking to the 2to3'd code as the egg link would go to the Python 2 source. Linking to the 2to3'd code
in build/lib makes it work, although you will have to rebuild the module in build/lib makes it work, although you will have to rebuild the module
before testing it. before testing it.
* Issue #306: Even if 2to3 is used, we build in-place under Python 2. * Distribute #306: Even if 2to3 is used, we build in-place under Python 2.
* Issue #307: Prints the full path when .svn/entries is broken. * Distribute #307: Prints the full path when .svn/entries is broken.
* Issue #313: Support for sdist subcommands (Python 2.7) * Distribute #313: Support for sdist subcommands (Python 2.7)
* Issue #314: test_local_index() would fail an OS X. * Distribute #314: test_local_index() would fail an OS X.
* Issue #310: Non-ascii characters in a namespace __init__.py causes errors. * Distribute #310: Non-ascii characters in a namespace __init__.py causes errors.
* Issue #218: Improved documentation on behavior of `package_data` and * Distribute #218: Improved documentation on behavior of `package_data` and
`include_package_data`. Files indicated by `package_data` are now included `include_package_data`. Files indicated by `package_data` are now included
in the manifest. in the manifest.
* `distribute_setup.py` now allows a `--download-base` argument for retrieving * `distribute_setup.py` now allows a `--download-base` argument for retrieving
...@@ -322,10 +320,10 @@ how it parses version numbers. ...@@ -322,10 +320,10 @@ how it parses version numbers.
0.6.28 0.6.28
------ ------
* Issue #294: setup.py can now be invoked from any directory. * Distribute #294: setup.py can now be invoked from any directory.
* Scripts are now installed honoring the umask. * Scripts are now installed honoring the umask.
* Added support for .dist-info directories. * Added support for .dist-info directories.
* Issue #283: Fix and disable scanning of `*.pyc` / `*.pyo` files on * Distribute #283: Fix and disable scanning of `*.pyc` / `*.pyo` files on
Python 3.3. Python 3.3.
------ ------
...@@ -336,15 +334,15 @@ how it parses version numbers. ...@@ -336,15 +334,15 @@ how it parses version numbers.
* Distribute now recognizes README.rst as a standard, default readme file. * Distribute now recognizes README.rst as a standard, default readme file.
* Exclude 'encodings' modules when removing modules from sys.modules. * Exclude 'encodings' modules when removing modules from sys.modules.
Workaround for #285. Workaround for #285.
* Issue #231: Don't fiddle with system python when used with buildout * Distribute #231: Don't fiddle with system python when used with buildout
(bootstrap.py) (bootstrap.py)
------ ------
0.6.26 0.6.26
------ ------
* Issue #183: Symlinked files are now extracted from source distributions. * Distribute #183: Symlinked files are now extracted from source distributions.
* Issue #227: Easy_install fetch parameters are now passed during the * Distribute #227: Easy_install fetch parameters are now passed during the
installation of a source distribution; now fulfillment of setup_requires installation of a source distribution; now fulfillment of setup_requires
dependencies will honor the parameters passed to easy_install. dependencies will honor the parameters passed to easy_install.
...@@ -352,65 +350,65 @@ how it parses version numbers. ...@@ -352,65 +350,65 @@ how it parses version numbers.
0.6.25 0.6.25
------ ------
* Issue #258: Workaround a cache issue * Distribute #258: Workaround a cache issue
* Issue #260: distribute_setup.py now accepts the --user parameter for * Distribute #260: distribute_setup.py now accepts the --user parameter for
Python 2.6 and later. Python 2.6 and later.
* Issue #262: package_index.open_with_auth no longer throws LookupError * Distribute #262: package_index.open_with_auth no longer throws LookupError
on Python 3. on Python 3.
* Issue #269: AttributeError when an exception occurs reading Manifest.in * Distribute #269: AttributeError when an exception occurs reading Manifest.in
on late releases of Python. on late releases of Python.
* Issue #272: Prevent TypeError when namespace package names are unicode * Distribute #272: Prevent TypeError when namespace package names are unicode
and single-install-externally-managed is used. Also fixes PIP issue and single-install-externally-managed is used. Also fixes PIP issue
449. 449.
* Issue #273: Legacy script launchers now install with Python2/3 support. * Distribute #273: Legacy script launchers now install with Python2/3 support.
------ ------
0.6.24 0.6.24
------ ------
* Issue #249: Added options to exclude 2to3 fixers * Distribute #249: Added options to exclude 2to3 fixers
------ ------
0.6.23 0.6.23
------ ------
* Issue #244: Fixed a test * Distribute #244: Fixed a test
* Issue #243: Fixed a test * Distribute #243: Fixed a test
* Issue #239: Fixed a test * Distribute #239: Fixed a test
* Issue #240: Fixed a test * Distribute #240: Fixed a test
* Issue #241: Fixed a test * Distribute #241: Fixed a test
* Issue #237: Fixed a test * Distribute #237: Fixed a test
* Issue #238: easy_install now uses 64bit executable wrappers on 64bit Python * Distribute #238: easy_install now uses 64bit executable wrappers on 64bit Python
* Issue #208: Fixed parsed_versions, it now honors post-releases as noted in the documentation * Distribute #208: Fixed parsed_versions, it now honors post-releases as noted in the documentation
* Issue #207: Windows cli and gui wrappers pass CTRL-C to child python process * Distribute #207: Windows cli and gui wrappers pass CTRL-C to child python process
* Issue #227: easy_install now passes its arguments to setup.py bdist_egg * Distribute #227: easy_install now passes its arguments to setup.py bdist_egg
* Issue #225: Fixed a NameError on Python 2.5, 2.4 * Distribute #225: Fixed a NameError on Python 2.5, 2.4
------ ------
0.6.21 0.6.21
------ ------
* Issue #225: FIxed a regression on py2.4 * Distribute #225: FIxed a regression on py2.4
------ ------
0.6.20 0.6.20
------ ------
* Issue #135: Include url in warning when processing URLs in package_index. * Distribute #135: Include url in warning when processing URLs in package_index.
* Issue #212: Fix issue where easy_instal fails on Python 3 on windows installer. * Distribute #212: Fix issue where easy_instal fails on Python 3 on windows installer.
* Issue #213: Fix typo in documentation. * Distribute #213: Fix typo in documentation.
------ ------
0.6.19 0.6.19
------ ------
* Issue 206: AttributeError: 'HTTPMessage' object has no attribute 'getheaders' * Distribute #206: AttributeError: 'HTTPMessage' object has no attribute 'getheaders'
------ ------
0.6.18 0.6.18
------ ------
* Issue 210: Fixed a regression introduced by Issue 204 fix. * Distribute #210: Fixed a regression introduced by Distribute #204 fix.
------ ------
0.6.17 0.6.17
...@@ -419,21 +417,21 @@ how it parses version numbers. ...@@ -419,21 +417,21 @@ how it parses version numbers.
* Support 'DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT' environment * Support 'DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT' environment
variable to allow to disable installation of easy_install-${version} script. variable to allow to disable installation of easy_install-${version} script.
* Support Python >=3.1.4 and >=3.2.1. * Support Python >=3.1.4 and >=3.2.1.
* Issue 204: Don't try to import the parent of a namespace package in * Distribute #204: Don't try to import the parent of a namespace package in
declare_namespace declare_namespace
* Issue 196: Tolerate responses with multiple Content-Length headers * Distribute #196: Tolerate responses with multiple Content-Length headers
* Issue 205: Sandboxing doesn't preserve working_set. Leads to setup_requires * Distribute #205: Sandboxing doesn't preserve working_set. Leads to setup_requires
problems. problems.
------ ------
0.6.16 0.6.16
------ ------
* Builds sdist gztar even on Windows (avoiding Issue 193). * Builds sdist gztar even on Windows (avoiding Distribute #193).
* Issue 192: Fixed metadata omitted on Windows when package_dir * Distribute #192: Fixed metadata omitted on Windows when package_dir
specified with forward-slash. specified with forward-slash.
* Issue 195: Cython build support. * Distribute #195: Cython build support.
* Issue 200: Issues with recognizing 64-bit packages on Windows. * Distribute #200: Issues with recognizing 64-bit packages on Windows.
------ ------
0.6.15 0.6.15
...@@ -441,49 +439,49 @@ how it parses version numbers. ...@@ -441,49 +439,49 @@ how it parses version numbers.
* Fixed typo in bdist_egg * Fixed typo in bdist_egg
* Several issues under Python 3 has been solved. * Several issues under Python 3 has been solved.
* Issue 146: Fixed missing DLL files after easy_install of windows exe package. * Distribute #146: Fixed missing DLL files after easy_install of windows exe package.
------ ------
0.6.14 0.6.14
------ ------
* Issue 170: Fixed unittest failure. Thanks to Toshio. * Distribute #170: Fixed unittest failure. Thanks to Toshio.
* Issue 171: Fixed race condition in unittests cause deadlocks in test suite. * Distribute #171: Fixed race condition in unittests cause deadlocks in test suite.
* Issue 143: Fixed a lookup issue with easy_install. * Distribute #143: Fixed a lookup issue with easy_install.
Thanks to David and Zooko. Thanks to David and Zooko.
* Issue 174: Fixed the edit mode when its used with setuptools itself * Distribute #174: Fixed the edit mode when its used with setuptools itself
------ ------
0.6.13 0.6.13
------ ------
* Issue 160: 2.7 gives ValueError("Invalid IPv6 URL") * Distribute #160: 2.7 gives ValueError("Invalid IPv6 URL")
* Issue 150: Fixed using ~/.local even in a --no-site-packages virtualenv * Distribute #150: Fixed using ~/.local even in a --no-site-packages virtualenv
* Issue 163: scan index links before external links, and don't use the md5 when * Distribute #163: scan index links before external links, and don't use the md5 when
comparing two distributions comparing two distributions
------ ------
0.6.12 0.6.12
------ ------
* Issue 149: Fixed various failures on 2.3/2.4 * Distribute #149: Fixed various failures on 2.3/2.4
------ ------
0.6.11 0.6.11
------ ------
* Found another case of SandboxViolation - fixed * Found another case of SandboxViolation - fixed
* Issue 15 and 48: Introduced a socket timeout of 15 seconds on url openings * Distribute #15 and Distribute #48: Introduced a socket timeout of 15 seconds on url openings
* Added indexsidebar.html into MANIFEST.in * Added indexsidebar.html into MANIFEST.in
* Issue 108: Fixed TypeError with Python3.1 * Distribute #108: Fixed TypeError with Python3.1
* Issue 121: Fixed --help install command trying to actually install. * Distribute #121: Fixed --help install command trying to actually install.
* Issue 112: Added an os.makedirs so that Tarek's solution will work. * Distribute #112: Added an os.makedirs so that Tarek's solution will work.
* Issue 133: Added --no-find-links to easy_install * Distribute #133: Added --no-find-links to easy_install
* Added easy_install --user * Added easy_install --user
* Issue 100: Fixed develop --user not taking '.' in PYTHONPATH into account * Distribute #100: Fixed develop --user not taking '.' in PYTHONPATH into account
* Issue 134: removed spurious UserWarnings. Patch by VanLindberg * Distribute #134: removed spurious UserWarnings. Patch by VanLindberg
* Issue 138: cant_write_to_target error when setup_requires is used. * Distribute #138: cant_write_to_target error when setup_requires is used.
* Issue 147: respect the sys.dont_write_bytecode flag * Distribute #147: respect the sys.dont_write_bytecode flag
------ ------
0.6.10 0.6.10
...@@ -497,27 +495,27 @@ how it parses version numbers. ...@@ -497,27 +495,27 @@ how it parses version numbers.
0.6.9 0.6.9
----- -----
* Issue 90: unknown setuptools version can be added in the working set * Distribute #90: unknown setuptools version can be added in the working set
* Issue 87: setupt.py doesn't try to convert distribute_setup.py anymore * Distribute #87: setupt.py doesn't try to convert distribute_setup.py anymore
Initial Patch by arfrever. Initial Patch by arfrever.
* Issue 89: added a side bar with a download link to the doc. * Distribute #89: added a side bar with a download link to the doc.
* Issue 86: fixed missing sentence in pkg_resources doc. * Distribute #86: fixed missing sentence in pkg_resources doc.
* Added a nicer error message when a DistributionNotFound is raised. * Added a nicer error message when a DistributionNotFound is raised.
* Issue 80: test_develop now works with Python 3.1 * Distribute #80: test_develop now works with Python 3.1
* Issue 93: upload_docs now works if there is an empty sub-directory. * Distribute #93: upload_docs now works if there is an empty sub-directory.
* Issue 70: exec bit on non-exec files * Distribute #70: exec bit on non-exec files
* Issue 99: now the standalone easy_install command doesn't uses a * Distribute #99: now the standalone easy_install command doesn't uses a
"setup.cfg" if any exists in the working directory. It will use it "setup.cfg" if any exists in the working directory. It will use it
only if triggered by ``install_requires`` from a setup.py call only if triggered by ``install_requires`` from a setup.py call
(install, develop, etc). (install, develop, etc).
* Issue 101: Allowing ``os.devnull`` in Sandbox * Distribute #101: Allowing ``os.devnull`` in Sandbox
* Issue 92: Fixed the "no eggs" found error with MacPort * Distribute #92: Fixed the "no eggs" found error with MacPort
(platform.mac_ver() fails) (platform.mac_ver() fails)
* Issue 103: test_get_script_header_jython_workaround not run * Distribute #103: test_get_script_header_jython_workaround not run
anymore under py3 with C or POSIX local. Contributed by Arfrever. anymore under py3 with C or POSIX local. Contributed by Arfrever.
* Issue 104: remvoved the assertion when the installation fails, * Distribute #104: remvoved the assertion when the installation fails,
with a nicer message for the end user. with a nicer message for the end user.
* Issue 100: making sure there's no SandboxViolation when * Distribute #100: making sure there's no SandboxViolation when
the setup script patches setuptools. the setup script patches setuptools.
----- -----
...@@ -531,8 +529,8 @@ how it parses version numbers. ...@@ -531,8 +529,8 @@ how it parses version numbers.
0.6.7 0.6.7
----- -----
* Issue 58: Added --user support to the develop command * Distribute #58: Added --user support to the develop command
* Issue 11: Generated scripts now wrap their call to the script entry point * Distribute #11: Generated scripts now wrap their call to the script entry point
in the standard "if name == 'main'" in the standard "if name == 'main'"
* Added the 'DONT_PATCH_SETUPTOOLS' environment variable, so virtualenv * Added the 'DONT_PATCH_SETUPTOOLS' environment variable, so virtualenv
can drive an installation that doesn't patch a global setuptools. can drive an installation that doesn't patch a global setuptools.
...@@ -540,17 +538,17 @@ how it parses version numbers. ...@@ -540,17 +538,17 @@ how it parses version numbers.
http://code.google.com/p/unladen-swallow/source/detail?spec=svn875&r=719 http://code.google.com/p/unladen-swallow/source/detail?spec=svn875&r=719
and determined that it no longer applies. Distribute should work fine with and determined that it no longer applies. Distribute should work fine with
Unladen Swallow 2009Q3. Unladen Swallow 2009Q3.
* Issue 21: Allow PackageIndex.open_url to gracefully handle all cases of a * Distribute #21: Allow PackageIndex.open_url to gracefully handle all cases of a
httplib.HTTPException instead of just InvalidURL and BadStatusLine. httplib.HTTPException instead of just InvalidURL and BadStatusLine.
* Removed virtual-python.py from this distribution and updated documentation * Removed virtual-python.py from this distribution and updated documentation
to point to the actively maintained virtualenv instead. to point to the actively maintained virtualenv instead.
* Issue 64: use_setuptools no longer rebuilds the distribute egg every * Distribute #64: use_setuptools no longer rebuilds the distribute egg every
time it is run time it is run
* use_setuptools now properly respects the requested version * use_setuptools now properly respects the requested version
* use_setuptools will no longer try to import a distribute egg for the * use_setuptools will no longer try to import a distribute egg for the
wrong Python version wrong Python version
* Issue 74: no_fake should be True by default. * Distribute #74: no_fake should be True by default.
* Issue 72: avoid a bootstrapping issue with easy_install -U * Distribute #72: avoid a bootstrapping issue with easy_install -U
----- -----
0.6.6 0.6.6
...@@ -563,10 +561,10 @@ how it parses version numbers. ...@@ -563,10 +561,10 @@ how it parses version numbers.
0.6.5 0.6.5
----- -----
* Issue 65: cli.exe and gui.exe are now generated at build time, * Distribute #65: cli.exe and gui.exe are now generated at build time,
depending on the platform in use. depending on the platform in use.
* Issue 67: Fixed doc typo (PEP 381/382) * Distribute #67: Fixed doc typo (PEP 381/382)
* Distribute no longer shadows setuptools if we require a 0.7-series * Distribute no longer shadows setuptools if we require a 0.7-series
setuptools. And an error is raised when installing a 0.7 setuptools with setuptools. And an error is raised when installing a 0.7 setuptools with
...@@ -583,10 +581,10 @@ how it parses version numbers. ...@@ -583,10 +581,10 @@ how it parses version numbers.
----- -----
* Added the generation of `distribute_setup_3k.py` during the release. * Added the generation of `distribute_setup_3k.py` during the release.
This closes issue #52. This closes Distribute #52.
* Added an upload_docs command to easily upload project documentation to * Added an upload_docs command to easily upload project documentation to
PyPI's https://pythonhosted.org. This close issue #56. PyPI's https://pythonhosted.org. This close issue Distribute #56.
* Fixed a bootstrap bug on the use_setuptools() API. * Fixed a bootstrap bug on the use_setuptools() API.
...@@ -612,29 +610,29 @@ setuptools ...@@ -612,29 +610,29 @@ setuptools
========== ==========
* Added Python 3 support; see docs/python3.txt. * Added Python 3 support; see docs/python3.txt.
This closes http://bugs.python.org/setuptools/issue39. This closes Old Setuptools #39.
* Added option to run 2to3 automatically when installing on Python 3. * Added option to run 2to3 automatically when installing on Python 3.
This closes issue #31. This closes issue Distribute #31.
* Fixed invalid usage of requirement.parse, that broke develop -d. * Fixed invalid usage of requirement.parse, that broke develop -d.
This closes http://bugs.python.org/setuptools/issue44. This closes Old Setuptools #44.
* Fixed script launcher for 64-bit Windows. * Fixed script launcher for 64-bit Windows.
This closes http://bugs.python.org/setuptools/issue2. This closes Old Setuptools #2.
* KeyError when compiling extensions. * KeyError when compiling extensions.
This closes http://bugs.python.org/setuptools/issue41. This closes Old Setuptools #41.
bootstrapping bootstrapping
============= =============
* Fixed bootstrap not working on Windows. This closes issue #49. * Fixed bootstrap not working on Windows. This closes issue Distribute #49.
* Fixed 2.6 dependencies. This closes issue #50. * Fixed 2.6 dependencies. This closes issue Distribute #50.
* Make sure setuptools is patched when running through easy_install * Make sure setuptools is patched when running through easy_install
This closes http://bugs.python.org/setuptools/issue40. This closes Old Setuptools #40.
----- -----
0.6.1 0.6.1
...@@ -644,14 +642,13 @@ setuptools ...@@ -644,14 +642,13 @@ setuptools
========== ==========
* package_index.urlopen now catches BadStatusLine and malformed url errors. * package_index.urlopen now catches BadStatusLine and malformed url errors.
This closes issue #16 and issue #18. This closes Distribute #16 and Distribute #18.
* zip_ok is now False by default. This closes * zip_ok is now False by default. This closes Old Setuptools #33.
http://bugs.python.org/setuptools/issue33.
* Fixed invalid URL error catching. http://bugs.python.org/setuptools/issue20. * Fixed invalid URL error catching. Old Setuptools #20.
* Fixed invalid bootstraping with easy_install installation (issue #40). * Fixed invalid bootstraping with easy_install installation (Distribute #40).
Thanks to Florian Schulze for the help. Thanks to Florian Schulze for the help.
* Removed buildout/bootstrap.py. A new repository will create a specific * Removed buildout/bootstrap.py. A new repository will create a specific
...@@ -663,7 +660,7 @@ bootstrapping ...@@ -663,7 +660,7 @@ bootstrapping
* The boostrap process leave setuptools alone if detected in the system * The boostrap process leave setuptools alone if detected in the system
and --root or --prefix is provided, but is not in the same location. and --root or --prefix is provided, but is not in the same location.
This closes issue #10. This closes Distribute #10.
--- ---
0.6 0.6
...@@ -673,18 +670,18 @@ setuptools ...@@ -673,18 +670,18 @@ setuptools
========== ==========
* Packages required at build time where not fully present at install time. * Packages required at build time where not fully present at install time.
This closes issue #12. This closes Distribute #12.
* Protected against failures in tarfile extraction. This closes issue #10. * Protected against failures in tarfile extraction. This closes Distribute #10.
* Made Jython api_tests.txt doctest compatible. This closes issue #7. * Made Jython api_tests.txt doctest compatible. This closes Distribute #7.
* sandbox.py replaced builtin type file with builtin function open. This * sandbox.py replaced builtin type file with builtin function open. This
closes issue #6. closes Distribute #6.
* Immediately close all file handles. This closes issue #3. * Immediately close all file handles. This closes Distribute #3.
* Added compatibility with Subversion 1.6. This references issue #1. * Added compatibility with Subversion 1.6. This references Distribute #1.
pkg_resources pkg_resources
============= =============
...@@ -693,18 +690,18 @@ pkg_resources ...@@ -693,18 +690,18 @@ pkg_resources
instead. Based on a patch from ronaldoussoren. This closes issue #5. instead. Based on a patch from ronaldoussoren. This closes issue #5.
* Fixed a SandboxViolation for mkdir that could occur in certain cases. * Fixed a SandboxViolation for mkdir that could occur in certain cases.
This closes issue #13. This closes Distribute #13.
* Allow to find_on_path on systems with tight permissions to fail gracefully. * Allow to find_on_path on systems with tight permissions to fail gracefully.
This closes issue #9. This closes Distribute #9.
* Corrected inconsistency between documentation and code of add_entry. * Corrected inconsistency between documentation and code of add_entry.
This closes issue #8. This closes Distribute #8.
* Immediately close all file handles. This closes issue #3. * Immediately close all file handles. This closes Distribute #3.
easy_install easy_install
============ ============
* Immediately close all file handles. This closes issue #3. * Immediately close all file handles. This closes Distribute #3.
...@@ -13,7 +13,7 @@ except AttributeError: ...@@ -13,7 +13,7 @@ except AttributeError:
zip_longest = itertools.izip_longest zip_longest = itertools.izip_longest
def before_upload(): def before_upload():
_linkify('CHANGES.txt', 'CHANGES (linked).txt') _linkify('CHANGES.txt', 'CHANGES (links).txt')
files_with_versions = ( files_with_versions = (
'ez_setup.py', 'setuptools/__init__.py', 'ez_setup.py', 'setuptools/__init__.py',
...@@ -23,56 +23,33 @@ test_info = "Travis-CI tests: http://travis-ci.org/#!/jaraco/setuptools" ...@@ -23,56 +23,33 @@ test_info = "Travis-CI tests: http://travis-ci.org/#!/jaraco/setuptools"
os.environ["SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES"] = "1" os.environ["SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES"] = "1"
link_patterns = [
r"(Issue )?#(?P<issue>\d+)",
r"Distribute #(?P<distribute>\d+)",
r"Buildout #(?P<buildout>\d+)",
r"Old Setuptools #(?P<old_setuptools>\d+)",
r"Jython #(?P<jython>\d+)",
]
issue_urls = dict(
issue='https://bitbucket.org/pypa/setuptools/issue/{issue}',
distribute='https://bitbucket.org/tarek/distribute/issue/{distribute}',
buildout='https://github.com/buildout/buildout/issues/{buildout}',
old_setuptools='http://bugs.python.org/setuptools/issue{old_setuptools}',
jython='http://bugs.jython.org/issue{jython}',
)
def _linkify(source, dest): def _linkify(source, dest):
pattern = '|'.join(link_patterns)
with open(source) as source: with open(source) as source:
out = _linkified_text(source.read()) out = re.sub(pattern, replacer, source.read())
with open(dest, 'w') as dest: with open(dest, 'w') as dest:
dest.write(out) dest.write(out)
def _linkified(rst_path): def replacer(match):
"return contents of reStructureText file with linked issue references" text = match.group(0)
rst_file = open(rst_path) match_dict = match.groupdict()
rst_content = rst_file.read() for key in match_dict:
rst_file.close() if match_dict[key]:
url = issue_urls[key].format(**match_dict)
return _linkified_text(rst_content) return "`{text} <{url}>`_".format(text=text, url=url)
def _linkified_text(rst_content):
# first identify any existing HREFs so they're not changed
HREF_pattern = re.compile('`.*?`_', re.MULTILINE | re.DOTALL)
# split on the HREF pattern, returning the parts to be linkified
plain_text_parts = HREF_pattern.split(rst_content)
anchors = []
linkified_parts = [_linkified_part(part, anchors)
for part in plain_text_parts]
pairs = zip_longest(
linkified_parts,
HREF_pattern.findall(rst_content),
fillvalue='',
)
rst_content = ''.join(flatten(pairs))
anchors = sorted(anchors)
bitroot = 'https://bitbucket.org/tarek/distribute'
rst_content += "\n"
for x in anchors:
issue = re.findall(r'\d+', x)[0]
rst_content += '.. _`%s`: %s/issue/%s\n' % (x, bitroot, issue)
rst_content += "\n"
return rst_content
def flatten(listOfLists):
"Flatten one level of nesting"
return itertools.chain.from_iterable(listOfLists)
def _linkified_part(text, anchors):
"""
Linkify a part and collect any anchors generated
"""
revision = re.compile(r'\b(issue\s+#?\d+)\b', re.M | re.I)
anchors.extend(revision.findall(text)) # ['Issue #43', ...]
return revision.sub(r'`\1`_', text)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment