[Python-checkins] python/nondist/sandbox/setuptools pkg_resources.txt, 1.12, 1.13 setuptools.txt, 1.32, 1.33
pje@users.sourceforge.net
pje at users.sourceforge.net
Mon Aug 22 05:40:31 CEST 2005
- Previous message: [Python-checkins] python/nondist/sandbox/setuptools EasyInstall.txt, 1.52, 1.53 ez_setup.py, 1.23, 1.24 pkg_resources.txt, 1.11, 1.12 setuptools.txt, 1.31, 1.32
- Next message: [Python-checkins] python/nondist/sandbox/setuptools EasyInstall.txt, 1.53, 1.54 ez_setup.py, 1.24, 1.25 setup.py, 1.36, 1.37
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/python/python/nondist/sandbox/setuptools
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7825
Modified Files:
pkg_resources.txt setuptools.txt
Log Message:
Give pkg_resources its own revision history; add some notes on today's
fixes and enhancements.
Index: pkg_resources.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/setuptools/pkg_resources.txt,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- pkg_resources.txt 22 Aug 2005 03:28:27 -0000 1.12
+++ pkg_resources.txt 22 Aug 2005 03:40:20 -0000 1.13
@@ -1409,3 +1409,149 @@
reflect the platform's case-sensitivity, so there is always the possibility
of two apparently-different paths being equal on such platforms.
+
+----------------------------
+Release Notes/Change History
+----------------------------
+
+0.6a1
+ * Enhanced performance of ``require()`` and related operations when all
+ requirements are already in the working set, and enhanced performance of
+ directory scanning for distributions.
+
+ * Fixed some problems using ``pkg_resources`` w/PEP 302 loaders other than
+ ``zipimport``, and the previously-broken "eager resource" support.
+
+ * Fixed ``pkg_resources.resource_exists()`` not working correctly, along with
+ some other resource API bugs.
+
+ * Many API changes and enhancements:
+
+ * Added ``EntryPoint``, ``get_entry_map``, ``load_entry_point``, and
+ ``get_entry_info`` APIs for dynamic plugin discovery.
+
+ * ``list_resources`` is now ``resource_listdir`` (and it actually works)
+
+ * Resource API functions like ``resource_string()`` that accepted a package
+ name and resource name, will now also accept a ``Requirement`` object in
+ place of the package name (to allow access to non-package data files in
+ an egg).
+
+ * ``get_provider()`` will now accept a ``Requirement`` instance or a module
+ name. If it is given a ``Requirement``, it will return a corresponding
+ ``Distribution`` (by calling ``require()`` if a suitable distribution
+ isn't already in the working set), rather than returning a metadata and
+ resource provider for a specific module. (The difference is in how
+ resource paths are interpreted; supplying a module name means resources
+ path will be module-relative, rather than relative to the distribution's
+ root.)
+
+ * ``Distribution`` objects now implement the ``IResourceProvider`` and
+ ``IMetadataProvider`` interfaces, so you don't need to reference the (no
+ longer available) ``metadata`` attribute to get at these interfaces.
+
+ * ``Distribution`` and ``Requirement`` both have a ``project_name``
+ attribute for the project name they refer to. (Previously these were
+ ``name`` and ``distname`` attributes.)
+
+ * The ``path`` attribute of ``Distribution`` objects is now ``location``,
+ because it isn't necessarily a filesystem path (and hasn't been for some
+ time now). The ``location`` of ``Distribution`` objects in the filesystem
+ should always be normalized using ``pkg_resources.normalize_path()``; all
+ of the setuptools and EasyInstall code that generates distributions from
+ the filesystem (including ``Distribution.from_filename()``) ensure this
+ invariant, but if you use a more generic API like ``Distribution()`` or
+ ``Distribution.from_location()`` you should take care that you don't
+ create a distribution with an un-normalized filesystem path.
+
+ * ``Distribution`` objects now have an ``as_requirement()`` method that
+ returns a ``Requirement`` for the distribution's project name and version.
+
+ * Distribution objects no longer have an ``installed_on()`` method, and the
+ ``install_on()`` method is now ``activate()`` (but may go away altogether
+ soon). The ``depends()`` method has also been renamed to ``requires()``,
+ and ``InvalidOption`` is now ``UnknownExtra``.
+
+ * ``find_distributions()`` now takes an additional argument called ``only``,
+ that tells it to only yield distributions whose location is the passed-in
+ path. (It defaults to False, so that the default behavior is unchanged.)
+
+ * ``AvailableDistributions`` is now called ``Environment``, and the
+ ``get()``, ``__len__()``, and ``__contains__()`` methods were removed,
+ because they weren't particularly useful. ``__getitem__()`` no longer
+ raises ``KeyError``; it just returns an empty list if there are no
+ distributions for the named project.
+
+ * The ``resolve()`` method of ``Environment`` is now a method of
+ ``WorkingSet`` instead, and the ``best_match()`` method now uses a working
+ set instead of a path list as its second argument.
+
+ * There is a new ``pkg_resources.add_activation_listener()`` API that lets
+ you register a callback for notifications about distributions added to
+ ``sys.path`` (including the distributions already on it). This is
+ basically a hook for extensible applications and frameworks to be able to
+ search for plugin metadata in distributions added at runtime.
+
+0.5a13
+ * Fixed a bug in resource extraction from nested packages in a zipped egg.
+
+0.5a12
+ * Updated extraction/cache mechanism for zipped resources to avoid inter-
+ process and inter-thread races during extraction. The default cache
+ location can now be set via the ``PYTHON_EGGS_CACHE`` environment variable,
+ and the default Windows cache is now a ``Python-Eggs`` subdirectory of the
+ current user's "Application Data" directory, if the ``PYTHON_EGGS_CACHE``
+ variable isn't set.
+
+0.5a10
+ * Fix a problem with ``pkg_resources`` being confused by non-existent eggs on
+ ``sys.path`` (e.g. if a user deletes an egg without removing it from the
+ ``easy-install.pth`` file).
+
+ * Fix a problem with "basket" support in ``pkg_resources``, where egg-finding
+ never actually went inside ``.egg`` files.
+
+ * Made ``pkg_resources`` import the module you request resources from, if it's
+ not already imported.
+
+0.5a4
+ * ``pkg_resources.AvailableDistributions.resolve()`` and related methods now
+ accept an ``installer`` argument: a callable taking one argument, a
+ ``Requirement`` instance. The callable must return a ``Distribution``
+ object, or ``None`` if no distribution is found. This feature is used by
+ EasyInstall to resolve dependencies by recursively invoking itself.
+
+0.4a4
+ * Fix problems with ``resource_listdir()``, ``resource_isdir()`` and resource
+ directory extraction for zipped eggs.
+
+0.4a3
+ * Fixed scripts not being able to see a ``__file__`` variable in ``__main__``
+
+ * Fixed a problem with ``resource_isdir()`` implementation that was introduced
+ in 0.4a2.
+
+0.4a1
+ * Fixed a bug in requirements processing for exact versions (i.e. ``==`` and
+ ``!=``) when only one condition was included.
+
+ * Added ``safe_name()`` and ``safe_version()`` APIs to clean up handling of
+ arbitrary distribution names and versions found on PyPI.
+
+0.3a4
+ * ``pkg_resources`` now supports resource directories, not just the resources
+ in them. In particular, there are ``resource_listdir()`` and
+ ``resource_isdir()`` APIs.
+
+ * ``pkg_resources`` now supports "egg baskets" -- .egg zipfiles which contain
+ multiple distributions in subdirectories whose names end with ``.egg``.
+ Having such a "basket" in a directory on ``sys.path`` is equivalent to
+ having the individual eggs in that directory, but the contained eggs can
+ be individually added (or not) to ``sys.path``. Currently, however, there
+ is no automated way to create baskets.
+
+ * Namespace package manipulation is now protected by the Python import lock.
+
+0.3a1
+ * Initial release.
+
Index: setuptools.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/setuptools/setuptools.txt,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- setuptools.txt 22 Aug 2005 03:28:27 -0000 1.32
+++ setuptools.txt 22 Aug 2005 03:40:20 -0000 1.33
@@ -1777,16 +1777,24 @@
----------------------------
0.6a1
+ * The ``build_ext`` command now works better when using the ``--inplace``
+ option and multiple Python versions. It now makes sure that all extensions
+ match the current Python version, even if newer copies were built for a
+ different Python version.
+
+ * The ``upload`` command no longer attaches an extra ``.zip`` when uploading
+ eggs, as PyPI now supports egg uploads without trickery.
+
+ * The ``ez_setup`` script/module now displays a warning before downloading
+ the setuptools egg, and attempts to check the downloaded egg against an
+ internal MD5 checksum table.
+
* Fixed the ``--tag-svn-revision`` option of ``egg_info`` not finding the
latest revision number; it was using the revision number of the directory
containing ``setup.py``, not the highest revision number in the project.
* Added ``eager_resources`` setup argument
- * Enhanced performance of ``require()`` and related operations when all
- requirements are already in the working set, and enhanced performance of
- directory scanning for distributions.
-
* The ``sdist`` command now recognizes Subversion "deleted file" entries and
does not include them in source distributions.
@@ -1794,12 +1802,6 @@
other distutils extensions (e.g. py2exe, py2app) will subclass setuptools'
versions of things, rather than the native distutils ones.
- * Fixed some problems using ``pkg_resources`` w/PEP 302 loaders other than
- ``zipimport``, and the previously-broken "eager resource" support.
-
- * Fixed ``pkg_resources.resource_exists()`` not working correctly, along with
- some other resource API bugs.
-
* Added ``entry_points`` and ``setup_requires`` arguments to ``setup()``;
``setup_requires`` allows you to automatically find and download packages
that are needed in order to *build* your project (as opposed to running it).
@@ -1812,104 +1814,16 @@
* The vestigial ``depends`` command has been removed. It was never finished
or documented, and never would have worked without EasyInstall - which it
pre-dated and was never compatible with.
-
- * Many ``pkg_resources`` API changes and enhancements:
-
- * Added ``EntryPoint``, ``get_entry_map``, ``load_entry_point``, and
- ``get_entry_info`` APIs for dynamic plugin discovery.
-
- * ``list_resources`` is now ``resource_listdir`` (and it actually works)
-
- * Resource API functions like ``resource_string()`` that accepted a package
- name and resource name, will now also accept a ``Requirement`` object in
- place of the package name (to allow access to non-package data files in
- an egg).
-
- * ``get_provider()`` will now accept a ``Requirement`` instance or a module
- name. If it is given a ``Requirement``, it will return a corresponding
- ``Distribution`` (by calling ``require()`` if a suitable distribution
- isn't already in the working set), rather than returning a metadata and
- resource provider for a specific module. (The difference is in how
- resource paths are interpreted; supplying a module name means resources
- path will be module-relative, rather than relative to the distribution's
- root.)
-
- * ``Distribution`` objects now implement the ``IResourceProvider`` and
- ``IMetadataProvider`` interfaces, so you don't need to reference the (no
- longer available) ``metadata`` attribute to get at these interfaces.
-
- * ``Distribution`` and ``Requirement`` both have a ``project_name``
- attribute for the project name they refer to. (Previously these were
- ``name`` and ``distname`` attributes.)
-
- * The ``path`` attribute of ``Distribution`` objects is now ``location``,
- because it isn't necessarily a filesystem path (and hasn't been for some
- time now). The ``location`` of ``Distribution`` objects in the filesystem
- should always be normalized using ``pkg_resources.normalize_path()``; all
- of the setuptools and EasyInstall code that generates distributions from
- the filesystem (including ``Distribution.from_filename()``) ensure this
- invariant, but if you use a more generic API like ``Distribution()`` or
- ``Distribution.from_location()`` you should take care that you don't
- create a distribution with an un-normalized filesystem path.
-
- * ``Distribution`` objects now have an ``as_requirement()`` method that
- returns a ``Requirement`` for the distribution's project name and version.
-
- * Distribution objects no longer have an ``installed_on()`` method, and the
- ``install_on()`` method is now ``activate()`` (but may go away altogether
- soon). The ``depends()`` method has also been renamed to ``requires()``,
- and ``InvalidOption`` is now ``UnknownExtra``.
-
- * ``find_distributions()`` now takes an additional argument called ``only``,
- that tells it to only yield distributions whose location is the passed-in
- path. (It defaults to False, so that the default behavior is unchanged.)
-
- * ``AvailableDistributions`` is now called ``Environment``, and the
- ``get()``, ``__len__()``, and ``__contains__()`` methods were removed,
- because they weren't particularly useful. ``__getitem__()`` no longer
- raises ``KeyError``; it just returns an empty list if there are no
- distributions for the named project.
-
- * The ``resolve()`` method of ``Environment`` is now a method of
- ``WorkingSet`` instead, and the ``best_match()`` method now uses a working
- set instead of a path list as its second argument.
-
- * There is a new ``pkg_resources.add_activation_listener()`` API that lets
- you register a callback for notifications about distributions added to
- ``sys.path`` (including the distributions already on it). This is
- basically a hook for extensible applications and frameworks to be able to
- search for plugin metadata in distributions added at runtime.
-0.5a13
- * Fixed a bug in resource extraction from nested packages in a zipped egg.
-
0.5a12
* The zip-safety scanner now checks for modules that might be used with
``python -m``, and marks them as unsafe for zipping, since Python 2.4 can't
handle ``-m`` on zipped modules.
- * Updated extraction/cache mechanism for zipped resources to avoid inter-
- process and inter-thread races during extraction. The default cache
- location can now be set via the ``PYTHON_EGGS_CACHE`` environment variable,
- and the default Windows cache is now a ``Python-Eggs`` subdirectory of the
- current user's "Application Data" directory, if the ``PYTHON_EGGS_CACHE``
- variable isn't set.
-
0.5a11
* Fix breakage of the "develop" command that was caused by the addition of
``--always-unzip`` to the ``easy_install`` command.
-0.5a10
- * Fix a problem with ``pkg_resources`` being confused by non-existent eggs on
- ``sys.path`` (e.g. if a user deletes an egg without removing it from the
- ``easy-install.pth`` file).
-
- * Fix a problem with "basket" support in ``pkg_resources``, where egg-finding
- never actually went inside ``.egg`` files.
-
- * Made ``pkg_resources`` import the module you request resources from, if it's
- not already imported.
-
0.5a9
* Include ``svn:externals`` directories in source distributions as well as
normal subversion-controlled files and directories.
@@ -2026,12 +1940,6 @@
* Setup scripts using setuptools now always install using ``easy_install``
internally, for ease of uninstallation and upgrading.
- * ``pkg_resources.AvailableDistributions.resolve()`` and related methods now
- accept an ``installer`` argument: a callable taking one argument, a
- ``Requirement`` instance. The callable must return a ``Distribution``
- object, or ``None`` if no distribution is found. This feature is used by
- EasyInstall to resolve dependencies by recursively invoking itself.
-
0.5a1
* Added support for "self-installation" bootstrapping. Packages can now
include ``ez_setup.py`` in their source distribution, and add the following
@@ -2044,16 +1952,6 @@
from setuptools import setup
# etc...
-0.4a4
- * Fix problems with ``resource_listdir()``, ``resource_isdir()`` and resource
- directory extraction for zipped eggs.
-
-0.4a3
- * Fixed scripts not being able to see a ``__file__`` variable in ``__main__``
-
- * Fixed a problem with ``resource_isdir()`` implementation that was introduced
- in 0.4a2.
-
0.4a2
* Added ``ez_setup.py`` installer/bootstrap script to make initial setuptools
installation easier, and to allow distributions using setuptools to avoid
@@ -2079,27 +1977,6 @@
their ``command_consumes_arguments`` attribute to ``True`` in order to
receive an ``args`` option containing the rest of the command line.
-0.4a1
- * Fixed a bug in requirements processing for exact versions (i.e. ``==`` and
- ``!=``) when only one condition was included.
-
- * Added ``safe_name()`` and ``safe_version()`` APIs to clean up handling of
- arbitrary distribution names and versions found on PyPI.
-
-0.3a4
- * ``pkg_resources`` now supports resource directories, not just the resources
- in them. In particular, there are ``resource_listdir()`` and
- ``resource_isdir()`` APIs.
-
- * ``pkg_resources`` now supports "egg baskets" -- .egg zipfiles which contain
- multiple distributions in subdirectories whose names end with ``.egg``.
- Having such a "basket" in a directory on ``sys.path`` is equivalent to
- having the individual eggs in that directory, but the contained eggs can
- be individually added (or not) to ``sys.path``. Currently, however, there
- is no automated way to create baskets.
-
- * Namespace package manipulation is now protected by the Python import lock.
-
0.3a2
* Added new options to ``bdist_egg`` to allow tagging the egg's version number
with a subversion revision number, the current date, or an explicit tag
- Previous message: [Python-checkins] python/nondist/sandbox/setuptools EasyInstall.txt, 1.52, 1.53 ez_setup.py, 1.23, 1.24 pkg_resources.txt, 1.11, 1.12 setuptools.txt, 1.31, 1.32
- Next message: [Python-checkins] python/nondist/sandbox/setuptools EasyInstall.txt, 1.53, 1.54 ez_setup.py, 1.24, 1.25 setup.py, 1.36, 1.37
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Python-checkins
mailing list