[Python-modules-commits] [python-pex] 01/05: initial upstream import
Barry Warsaw
barry at moszumanska.debian.org
Wed Feb 18 22:42:00 UTC 2015
This is an automated email from the git hooks/post-receive script.
barry pushed a commit to branch master
in repository python-pex.
commit 5a53fd5b89920a5134773ad201cc4cb5b3750cb7
Author: Barry Warsaw <barry at python.org>
Date: Wed Feb 18 16:48:57 2015 -0500
initial upstream import
---
CHANGES.rst | 354 +++++++++++++++++++++++++++++++
MANIFEST.in | 3 +
PKG-INFO | 368 +++++++++++++++++++++++++++++++++
README.rst | 128 ++++++++++++
pex.egg-info/PKG-INFO | 368 +++++++++++++++++++++++++++++++++
pex.egg-info/SOURCES.txt | 43 ++++
pex.egg-info/dependency_links.txt | 1 +
pex.egg-info/entry_points.txt | 3 +
pex.egg-info/requires.txt | 4 +
pex.egg-info/top_level.txt | 1 +
pex.egg-info/zip-safe | 1 +
pex/__init__.py | 2 +
pex/archiver.py | 48 +++++
pex/base.py | 41 ++++
pex/bin/__init__.py | 2 +
pex/bin/pex.py | 346 +++++++++++++++++++++++++++++++
pex/common.py | 313 ++++++++++++++++++++++++++++
pex/compatibility.py | 95 +++++++++
pex/crawler.py | 139 +++++++++++++
pex/environment.py | 170 +++++++++++++++
pex/fetcher.py | 53 +++++
pex/finders.py | 236 +++++++++++++++++++++
pex/http.py | 244 ++++++++++++++++++++++
pex/installer.py | 249 ++++++++++++++++++++++
pex/interpreter.py | 425 ++++++++++++++++++++++++++++++++++++++
pex/iterator.py | 61 ++++++
pex/link.py | 125 +++++++++++
pex/marshaller.py | 86 ++++++++
pex/orderedset.py | 78 +++++++
pex/package.py | 250 ++++++++++++++++++++++
pex/pep425.py | 144 +++++++++++++
pex/pex.py | 374 +++++++++++++++++++++++++++++++++
pex/pex_bootstrapper.py | 80 +++++++
pex/pex_builder.py | 365 ++++++++++++++++++++++++++++++++
pex/pex_info.py | 250 ++++++++++++++++++++++
pex/platforms.py | 64 ++++++
pex/resolver.py | 239 +++++++++++++++++++++
pex/testing.py | 183 ++++++++++++++++
pex/tracer.py | 135 ++++++++++++
pex/translator.py | 167 +++++++++++++++
pex/util.py | 164 +++++++++++++++
pex/version.py | 1 +
setup.cfg | 8 +
setup.py | 57 +++++
44 files changed, 6468 insertions(+)
diff --git a/CHANGES.rst b/CHANGES.rst
new file mode 100644
index 0000000..6a90f1c
--- /dev/null
+++ b/CHANGES.rst
@@ -0,0 +1,354 @@
+=======
+CHANGES
+=======
+
+----------
+0.8.6
+----------
+
+* Bug fix: Honor installed sys.excepthook in pex teardown.
+ `RB #1733 <https://rbcommons.com/s/twitter/r/1733>`_
+
+* Bug fix: ``UrllibContext`` used ``replace`` as a keyword argument for ``bytes.decode``
+ but this only works on Python 3. `Pull Request #46 <https://github.com/pantsbuild/pex/pull/46>`_
+
+-----
+0.8.5
+-----
+
+* Bug fix: Fixup string formatting in pex/bin/pex.py to support Python 2.6
+ `Pull Request #40 <https://github.com/pantsbuild/pex/pull/40>`_
+
+-----
+0.8.4
+-----
+
+* Performance improvement: Speed up the best-case scenario of dependency resolution.
+ `RB #1685 <https://rbcommons.com/s/twitter/r/1685>`_
+
+* Bug fix: Change from ``uuid4().get_hex()`` to ``uuid4().hex`` to maintain Python3
+ compatibility of pex.common.
+ `Pull Request #39 <https://github.com/pantsbuild/pex/pull/39>`_
+
+* Bug fix: Actually cache the results of translation. Previously bdist translations
+ would be created in a temporary directory even if a cache location was specified.
+ `RB #1666 <https://rbcommons.com/s/twitter/r/1666>`_
+
+* Bug fix: Support all potential abi tag permutations when determining platform
+ compatibility.
+ `Pull Request #33 <https://github.com/pantsbuild/pex/pull/33>`_
+
+-----
+0.8.3
+-----
+
+* Performance improvement: Don't always write packages to disk if they've already been
+ cached. This can significantly speed up launching PEX files with a large
+ number of non-zip-safe dependencies.
+ `RB #1642 <https://rbcommons.com/s/twitter/r/1642>`_
+
+-----
+0.8.2
+-----
+
+* Bug fix: Allow pex 0.8.x to parse pex files produced by earlier versions of
+ pex and twitter.common.python.
+
+* Pin pex to setuptools prior to 9.x until we have a chance to make changes
+ related to PEP440 and the change of pkg_resources.py to a package.
+
+-----
+0.8.1
+-----
+
+* Bug fix: Fix issue where it'd be possible to ``os.path.getmtime`` on a remote ``Link`` object
+ `Issue #29 <https://github.com/pantsbuild/pex/issues/29>`_
+
+-----
+0.8.0
+-----
+
+* *API change*: Decouple translation from package iteration. This removes
+ the Obtainer construct entirely, which likely means if you're using PEX as
+ a library, you will need to change your code if you were doing anything
+ nontrivial. This adds a couple new options to ``resolve`` but simplifies
+ the story around how to cache packages.
+ `RB #785 <https://rbcommons.com/s/twitter/r/785/>`_
+
+* Refactor http handling in pex to allow for alternate http implementations. Adds support
+ for `requests <https://github.com/kennethreitz/requests>`_,
+ improving both performance and security. For more information, read the commit notes at
+ `91c7f32 <https://github.com/pantsbuild/pex/commit/91c7f324085c18af714d35947b603a5f60aeb682>`_.
+ `RB #778 <https://rbcommons.com/s/twitter/r/778/>`_
+
+* Improvements to API documentation throughout.
+
+* Renamed ``Tracer`` to ``TraceLogger`` to prevent nondeterministic isort ordering.
+
+* Refactor tox.ini to increase the number of environment combinations and improve coverage.
+
+* Adds HTTP retry support for the RequestsContext.
+ `RB #1303 <https://rbcommons.com/s/twitter/r/1303/>`_
+
+* Make pex --version correct.
+ `Issue #19 <https://github.com/pantsbuild/pex/issues/19>`_
+
+* Bug fix: Fix over-aggressive sys.modules scrubbing for namespace packages. Under
+ certain circumstances, namespace packages in site-packages could conflict with packages
+ within a PEX, causing them to fail importing.
+ `RB #1378 <https://rbcommons.com/s/twitter/r/1378/>`_
+
+* Bug fix: Replace uses of ``os.unsetenv(...)`` with ``del os.environ[...]``
+ `Pull Request #11 <https://github.com/pantsbuild/pex/pull/11>`_
+
+* Bug fix: Scrub sys.path and sys.modules based upon both supplied path and
+ realpath of files and directories. Newer versions of virtualenv on Linux symlink site-packages
+ which caused those packages to not be removed from sys.path correctly.
+ `Issue #21 <https://github.com/pantsbuild/pex/issues/21>`_
+
+* Bug fix: The pex -s option was not correctly pulling in transitive dependencies.
+ `Issue #22 <https://github.com/pantsbuild/pex/issues/22>`_
+
+* Bug fix: Adds ``content`` method to HTTP contexts that does HTML content decoding, fixing
+ an encoding issue only experienced when using Python 3.
+ `Issue #10 <https://github.com/pantsbuild/pex/issues/10>`_
+
+-----
+0.7.0
+-----
+
+* Rename ``twitter.common.python`` to ``pex`` and split out from the
+ `twitter/commons <http://github.com/twitter/commons>`_ repo.
+
+-----
+0.6.0
+-----
+
+* Change the interpretation of ``-i`` (and of PyPIFetcher's pypi_base)
+ to match pip's ``-i``. This is useful for compatibility with devpi.
+
+------
+0.5.10
+------
+
+* Ensures that .egg/.whl distributions on disk have their mtime updated
+ even though we no longer overwrite them. This gives them a new time
+ lease against their ttl.
+
+ Without this change, once a distribution aged past the ttl it would
+ never be used again, and builds would re-create the same distributions
+ in tmpdirs over and over again.
+
+-----
+0.5.9
+-----
+
+* Fixes an issue where SourceTranslator would overwrite .egg/.whl
+ distributions already on disk. Instead it should always check to see if
+ a copy already exists and reuse if there.
+
+ This ordinarily should not be a problem but the zipimporter caches
+ metadata by filename instead of stat/sha, so if the underlying contents
+ changed a runtime error would be thrown due to seemingly corrupt zip file
+ offsets. `RB #684 <https://rbcommons.com/s/twitter/r/684/>`_
+
+-----
+0.5.8
+-----
+
+* Adds ``-i/--index`` option to the pex tool.
+
+-----
+0.5.7
+-----
+
+* Adds ``twitter.common.python.pex_bootstrap`` ``bootstrap_pex_env`` function in
+ order to initialize a PEX environment from within a python interpreter.
+ (Patch contributed by @kwlzn)
+
+* Adds stdin=,stdout=,stderr= keyword parameters to the ``PEX.run`` function.
+ (Patch from @benjy)
+
+-----
+0.5.6
+-----
+
+* The crawler now defaults to not follow links for security reasons.
+ (Before the default behavior was to implicitly ``--follow-links`` for all
+ requirements.) `RB #293 <https://rbcommons.com/s/twitter/r/293/>`_
+
+-----
+0.5.5
+-----
+
+* Improves scrubbing of site-packages from PEX environments.
+ `RB #289 <https://rbcommons.com/s/twitter/r/289/>`_
+
+-------------
+0.5.1 - 0.5.4
+-------------
+
+* Silences exceptions reported during interpreter teardown (the exceptions
+ resulting from incorrect atexit handler behavior) introduced by 0.4.3
+ `RB #253 <https://rbcommons.com/s/twitter/r/253/>`_
+ `RB #249 <https://rbcommons.com/s/twitter/r/249/>`_
+
+* Adds ``__hash__`` to ``Link`` so that Packages are hashed correctly in
+ ``twitter.common.python.resolver`` ``resolve``
+
+-----
+0.5.0
+-----
+
+* Adds wheel support to ``twitter.common.python``
+ `RB #94 <https://rbcommons.com/s/twitter/r/94/>`_
+ `RB #154 <https://rbcommons.com/s/twitter/r/154/>`_
+ `RB #148 <https://rbcommons.com/s/twitter/r/148/>`_
+
+-----
+0.4.3
+-----
+
+* Adds ``twitter.common.python.finders`` which are additional finders for
+ setuptools including:
+ - find eggs within a .zip
+ - find wheels within a directory
+ - find wheels within a .zip
+ `RB #86 <https://rbcommons.com/s/twitter/r/86/>`_
+
+* Adds a new Package abstraction by refactoring Link into Link and Package.
+ `RB #92 <https://rbcommons.com/s/twitter/r/92/>`_
+
+* Adds support for PEP425 tagging necessary for wheel support.
+ `RB #87 <https://rbcommons.com/s/twitter/r/87/>`_
+
+* Improves python environment isolation by correctly scrubbing namespace
+ packages injected into module ``__path__`` attributes by nspkg pth files.
+ `RB #116 <https://rbcommons.com/s/twitter/r/116/>`_
+
+* Adds ``twitter.common.python.resolver`` ``resolve`` method that handles
+ transitive dependency resolution better. This means that if the
+ requirement ``futures==2.1.2`` and an unqualified ``futures>=2`` is pulled in
+ transitively, our resolver will correctly resolve futures 2.1.2 instead
+ of reporting a VersionConflict if any version newer than 2.1.2 is
+ available. `RB #129 <https://rbcommons.com/s/twitter/r/129/>`_
+
+* Factors all ``twitter.common.python`` test helpers into
+ ``twitter.common.python.testing``
+ `RB #91 <https://rbcommons.com/s/twitter/r/91/>`_
+
+* Bug fix: Fix ``OrderedSet`` atexit exceptions
+ `RB #147 <https://rbcommons.com/s/twitter/r/147/>`_
+
+* Bug fix: Fix cross-device symlinking (patch from @benjy)
+
+* Bug fix: Raise a ``RuntimeError`` if we fail to write ``pkg_resources`` into a .pex
+ `RB #115 <https://rbcommons.com/s/twitter/r/115/>`_
+
+-----
+0.4.2
+-----
+
+* Upgrade to ``setuptools>=1``
+
+-----
+0.4.1
+-----
+
+* ``twitter.common.python`` is no longer a namespace package
+
+-----
+0.4.0
+-----
+
+* Kill the egg distiller. We now delegate .egg generation to bdist_egg.
+ `RB #55 <https://rbcommons.com/s/twitter/r/55/>`_
+
+-----
+0.3.1
+-----
+
+* Short-circuit resolving a distribution if a local exact match is found.
+ `RB #47 <https://rbcommons.com/s/twitter/r/47/>`_
+
+* Correctly patch the global ``pkg_resources`` ``WorkingSet`` for the lifetime
+ of the Python interpreter. `RB #52 <https://rbcommons.com/s/twitter/r/52/>`_
+
+* Fixes a performance regression in setuptools ``build_zipmanifest``
+ `Setuptools Issue #154 <https://bitbucket.org/pypa/setuptools/issue/154/build_zipmanifest-results-should-be>`_
+ `RB #53 <https://rbcommons.com/s/twitter/r/53/>`_
+
+-----
+0.3.0
+-----
+
+* Plumb through the ``--zip-safe``, ``--always-write-cache``, ``--ignore-errors``
+ and ``--inherit-path`` flags to the pex tool.
+
+* Delete the unused ``PythonDirWrapper`` code.
+
+* Split ``PEXEnvironment`` resolution into ``twitter.common.python.environment``
+ and deconflate ``WorkingSet``/``Environment`` state.
+
+* Removes the monkeypatched zipimporter in favor of keeping all eggs
+ unzipped within PEX files. Refactors the PEX dependency cache in
+ ``util.py``
+
+* Adds interpreter detection for Jython and PyPy.
+
+* Dependency translation errors should be made uniform.
+ (Patch from @johnsirois)
+
+* Adds ``PEX_PROFILE_ENTRIES`` to limit the number of entries reported when
+ ``PEX_PROFILE`` is enabled. (Patch from @rgs_)
+
+* Bug fix: Several fixes to error handling in ``twitter.common.python.http``
+ (From Marc Abramowitz)
+
+* Bug fix: PEX should not always assume that ``$PATH`` was available.
+ (Patch from @jamesbroadhead)
+
+* Bug fix: Filename should be part of the .pex cache key or else multiple
+ identical versions will incorrectly resolve (Patch from @tc)
+
+* Bug fix: Executed entry points shouldn't be forced to run in an
+ environment with ``__future__`` imports enabled. (Patch from
+ @lawson_patrick)
+
+* Bug fix: Detect versionless egg links and fail fast. (Patch from
+ @johnsirois.)
+
+* Bug fix: Handle setuptools>=2.1 correctly in the zipimport monkeypatch
+ (Patch from @johnsirois.)
+
+-----
+0.2.3
+-----
+
+* Bug fix: Fix handling of Fetchers with ``file://`` urls.
+
+-----
+0.2.2
+-----
+
+* Adds the pex tool as a standalone tool.
+
+-----
+0.2.1
+-----
+
+* Bug fix: Bootstrapped ``twitter.common.python`` should declare ``twitter.common``
+ as a namespace package.
+
+-----
+0.2.0
+-----
+
+* Make ``twitter.common.python`` fully standalone by consolidating
+ external dependencies within ``twitter.common.python.common``.
+
+-----
+0.1.0
+-----
+
+* Initial published version of ``twitter.common.python``.
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000..591118a
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1,3 @@
+include *.py
+include docs/*.md
+include CHANGES.rst
diff --git a/PKG-INFO b/PKG-INFO
new file mode 100644
index 0000000..c84540b
--- /dev/null
+++ b/PKG-INFO
@@ -0,0 +1,368 @@
+Metadata-Version: 1.1
+Name: pex
+Version: 0.8.6
+Summary: The PEX packaging toolchain.
+Home-page: https://github.com/pantsbuild/pex
+Author: UNKNOWN
+Author-email: UNKNOWN
+License: Apache License, Version 2.0
+Description: =======
+ CHANGES
+ =======
+
+ ----------
+ 0.8.6
+ ----------
+
+ * Bug fix: Honor installed sys.excepthook in pex teardown.
+ `RB #1733 <https://rbcommons.com/s/twitter/r/1733>`_
+
+ * Bug fix: ``UrllibContext`` used ``replace`` as a keyword argument for ``bytes.decode``
+ but this only works on Python 3. `Pull Request #46 <https://github.com/pantsbuild/pex/pull/46>`_
+
+ -----
+ 0.8.5
+ -----
+
+ * Bug fix: Fixup string formatting in pex/bin/pex.py to support Python 2.6
+ `Pull Request #40 <https://github.com/pantsbuild/pex/pull/40>`_
+
+ -----
+ 0.8.4
+ -----
+
+ * Performance improvement: Speed up the best-case scenario of dependency resolution.
+ `RB #1685 <https://rbcommons.com/s/twitter/r/1685>`_
+
+ * Bug fix: Change from ``uuid4().get_hex()`` to ``uuid4().hex`` to maintain Python3
+ compatibility of pex.common.
+ `Pull Request #39 <https://github.com/pantsbuild/pex/pull/39>`_
+
+ * Bug fix: Actually cache the results of translation. Previously bdist translations
+ would be created in a temporary directory even if a cache location was specified.
+ `RB #1666 <https://rbcommons.com/s/twitter/r/1666>`_
+
+ * Bug fix: Support all potential abi tag permutations when determining platform
+ compatibility.
+ `Pull Request #33 <https://github.com/pantsbuild/pex/pull/33>`_
+
+ -----
+ 0.8.3
+ -----
+
+ * Performance improvement: Don't always write packages to disk if they've already been
+ cached. This can significantly speed up launching PEX files with a large
+ number of non-zip-safe dependencies.
+ `RB #1642 <https://rbcommons.com/s/twitter/r/1642>`_
+
+ -----
+ 0.8.2
+ -----
+
+ * Bug fix: Allow pex 0.8.x to parse pex files produced by earlier versions of
+ pex and twitter.common.python.
+
+ * Pin pex to setuptools prior to 9.x until we have a chance to make changes
+ related to PEP440 and the change of pkg_resources.py to a package.
+
+ -----
+ 0.8.1
+ -----
+
+ * Bug fix: Fix issue where it'd be possible to ``os.path.getmtime`` on a remote ``Link`` object
+ `Issue #29 <https://github.com/pantsbuild/pex/issues/29>`_
+
+ -----
+ 0.8.0
+ -----
+
+ * *API change*: Decouple translation from package iteration. This removes
+ the Obtainer construct entirely, which likely means if you're using PEX as
+ a library, you will need to change your code if you were doing anything
+ nontrivial. This adds a couple new options to ``resolve`` but simplifies
+ the story around how to cache packages.
+ `RB #785 <https://rbcommons.com/s/twitter/r/785/>`_
+
+ * Refactor http handling in pex to allow for alternate http implementations. Adds support
+ for `requests <https://github.com/kennethreitz/requests>`_,
+ improving both performance and security. For more information, read the commit notes at
+ `91c7f32 <https://github.com/pantsbuild/pex/commit/91c7f324085c18af714d35947b603a5f60aeb682>`_.
+ `RB #778 <https://rbcommons.com/s/twitter/r/778/>`_
+
+ * Improvements to API documentation throughout.
+
+ * Renamed ``Tracer`` to ``TraceLogger`` to prevent nondeterministic isort ordering.
+
+ * Refactor tox.ini to increase the number of environment combinations and improve coverage.
+
+ * Adds HTTP retry support for the RequestsContext.
+ `RB #1303 <https://rbcommons.com/s/twitter/r/1303/>`_
+
+ * Make pex --version correct.
+ `Issue #19 <https://github.com/pantsbuild/pex/issues/19>`_
+
+ * Bug fix: Fix over-aggressive sys.modules scrubbing for namespace packages. Under
+ certain circumstances, namespace packages in site-packages could conflict with packages
+ within a PEX, causing them to fail importing.
+ `RB #1378 <https://rbcommons.com/s/twitter/r/1378/>`_
+
+ * Bug fix: Replace uses of ``os.unsetenv(...)`` with ``del os.environ[...]``
+ `Pull Request #11 <https://github.com/pantsbuild/pex/pull/11>`_
+
+ * Bug fix: Scrub sys.path and sys.modules based upon both supplied path and
+ realpath of files and directories. Newer versions of virtualenv on Linux symlink site-packages
+ which caused those packages to not be removed from sys.path correctly.
+ `Issue #21 <https://github.com/pantsbuild/pex/issues/21>`_
+
+ * Bug fix: The pex -s option was not correctly pulling in transitive dependencies.
+ `Issue #22 <https://github.com/pantsbuild/pex/issues/22>`_
+
+ * Bug fix: Adds ``content`` method to HTTP contexts that does HTML content decoding, fixing
+ an encoding issue only experienced when using Python 3.
+ `Issue #10 <https://github.com/pantsbuild/pex/issues/10>`_
+
+ -----
+ 0.7.0
+ -----
+
+ * Rename ``twitter.common.python`` to ``pex`` and split out from the
+ `twitter/commons <http://github.com/twitter/commons>`_ repo.
+
+ -----
+ 0.6.0
+ -----
+
+ * Change the interpretation of ``-i`` (and of PyPIFetcher's pypi_base)
+ to match pip's ``-i``. This is useful for compatibility with devpi.
+
+ ------
+ 0.5.10
+ ------
+
+ * Ensures that .egg/.whl distributions on disk have their mtime updated
+ even though we no longer overwrite them. This gives them a new time
+ lease against their ttl.
+
+ Without this change, once a distribution aged past the ttl it would
+ never be used again, and builds would re-create the same distributions
+ in tmpdirs over and over again.
+
+ -----
+ 0.5.9
+ -----
+
+ * Fixes an issue where SourceTranslator would overwrite .egg/.whl
+ distributions already on disk. Instead it should always check to see if
+ a copy already exists and reuse if there.
+
+ This ordinarily should not be a problem but the zipimporter caches
+ metadata by filename instead of stat/sha, so if the underlying contents
+ changed a runtime error would be thrown due to seemingly corrupt zip file
+ offsets. `RB #684 <https://rbcommons.com/s/twitter/r/684/>`_
+
+ -----
+ 0.5.8
+ -----
+
+ * Adds ``-i/--index`` option to the pex tool.
+
+ -----
+ 0.5.7
+ -----
+
+ * Adds ``twitter.common.python.pex_bootstrap`` ``bootstrap_pex_env`` function in
+ order to initialize a PEX environment from within a python interpreter.
+ (Patch contributed by @kwlzn)
+
+ * Adds stdin=,stdout=,stderr= keyword parameters to the ``PEX.run`` function.
+ (Patch from @benjy)
+
+ -----
+ 0.5.6
+ -----
+
+ * The crawler now defaults to not follow links for security reasons.
+ (Before the default behavior was to implicitly ``--follow-links`` for all
+ requirements.) `RB #293 <https://rbcommons.com/s/twitter/r/293/>`_
+
+ -----
+ 0.5.5
+ -----
+
+ * Improves scrubbing of site-packages from PEX environments.
+ `RB #289 <https://rbcommons.com/s/twitter/r/289/>`_
+
+ -------------
+ 0.5.1 - 0.5.4
+ -------------
+
+ * Silences exceptions reported during interpreter teardown (the exceptions
+ resulting from incorrect atexit handler behavior) introduced by 0.4.3
+ `RB #253 <https://rbcommons.com/s/twitter/r/253/>`_
+ `RB #249 <https://rbcommons.com/s/twitter/r/249/>`_
+
+ * Adds ``__hash__`` to ``Link`` so that Packages are hashed correctly in
+ ``twitter.common.python.resolver`` ``resolve``
+
+ -----
+ 0.5.0
+ -----
+
+ * Adds wheel support to ``twitter.common.python``
+ `RB #94 <https://rbcommons.com/s/twitter/r/94/>`_
+ `RB #154 <https://rbcommons.com/s/twitter/r/154/>`_
+ `RB #148 <https://rbcommons.com/s/twitter/r/148/>`_
+
+ -----
+ 0.4.3
+ -----
+
+ * Adds ``twitter.common.python.finders`` which are additional finders for
+ setuptools including:
+ - find eggs within a .zip
+ - find wheels within a directory
+ - find wheels within a .zip
+ `RB #86 <https://rbcommons.com/s/twitter/r/86/>`_
+
+ * Adds a new Package abstraction by refactoring Link into Link and Package.
+ `RB #92 <https://rbcommons.com/s/twitter/r/92/>`_
+
+ * Adds support for PEP425 tagging necessary for wheel support.
+ `RB #87 <https://rbcommons.com/s/twitter/r/87/>`_
+
+ * Improves python environment isolation by correctly scrubbing namespace
+ packages injected into module ``__path__`` attributes by nspkg pth files.
+ `RB #116 <https://rbcommons.com/s/twitter/r/116/>`_
+
+ * Adds ``twitter.common.python.resolver`` ``resolve`` method that handles
+ transitive dependency resolution better. This means that if the
+ requirement ``futures==2.1.2`` and an unqualified ``futures>=2`` is pulled in
+ transitively, our resolver will correctly resolve futures 2.1.2 instead
+ of reporting a VersionConflict if any version newer than 2.1.2 is
+ available. `RB #129 <https://rbcommons.com/s/twitter/r/129/>`_
+
+ * Factors all ``twitter.common.python`` test helpers into
+ ``twitter.common.python.testing``
+ `RB #91 <https://rbcommons.com/s/twitter/r/91/>`_
+
+ * Bug fix: Fix ``OrderedSet`` atexit exceptions
+ `RB #147 <https://rbcommons.com/s/twitter/r/147/>`_
+
+ * Bug fix: Fix cross-device symlinking (patch from @benjy)
+
+ * Bug fix: Raise a ``RuntimeError`` if we fail to write ``pkg_resources`` into a .pex
+ `RB #115 <https://rbcommons.com/s/twitter/r/115/>`_
+
+ -----
+ 0.4.2
+ -----
+
+ * Upgrade to ``setuptools>=1``
+
+ -----
+ 0.4.1
+ -----
+
+ * ``twitter.common.python`` is no longer a namespace package
+
+ -----
+ 0.4.0
+ -----
+
+ * Kill the egg distiller. We now delegate .egg generation to bdist_egg.
+ `RB #55 <https://rbcommons.com/s/twitter/r/55/>`_
+
+ -----
+ 0.3.1
+ -----
+
+ * Short-circuit resolving a distribution if a local exact match is found.
+ `RB #47 <https://rbcommons.com/s/twitter/r/47/>`_
+
+ * Correctly patch the global ``pkg_resources`` ``WorkingSet`` for the lifetime
+ of the Python interpreter. `RB #52 <https://rbcommons.com/s/twitter/r/52/>`_
+
+ * Fixes a performance regression in setuptools ``build_zipmanifest``
+ `Setuptools Issue #154 <https://bitbucket.org/pypa/setuptools/issue/154/build_zipmanifest-results-should-be>`_
+ `RB #53 <https://rbcommons.com/s/twitter/r/53/>`_
+
+ -----
+ 0.3.0
+ -----
+
+ * Plumb through the ``--zip-safe``, ``--always-write-cache``, ``--ignore-errors``
+ and ``--inherit-path`` flags to the pex tool.
+
+ * Delete the unused ``PythonDirWrapper`` code.
+
+ * Split ``PEXEnvironment`` resolution into ``twitter.common.python.environment``
+ and deconflate ``WorkingSet``/``Environment`` state.
+
+ * Removes the monkeypatched zipimporter in favor of keeping all eggs
+ unzipped within PEX files. Refactors the PEX dependency cache in
+ ``util.py``
+
+ * Adds interpreter detection for Jython and PyPy.
+
+ * Dependency translation errors should be made uniform.
+ (Patch from @johnsirois)
+
+ * Adds ``PEX_PROFILE_ENTRIES`` to limit the number of entries reported when
+ ``PEX_PROFILE`` is enabled. (Patch from @rgs_)
+
+ * Bug fix: Several fixes to error handling in ``twitter.common.python.http``
+ (From Marc Abramowitz)
+
+ * Bug fix: PEX should not always assume that ``$PATH`` was available.
+ (Patch from @jamesbroadhead)
+
+ * Bug fix: Filename should be part of the .pex cache key or else multiple
+ identical versions will incorrectly resolve (Patch from @tc)
+
+ * Bug fix: Executed entry points shouldn't be forced to run in an
+ environment with ``__future__`` imports enabled. (Patch from
+ @lawson_patrick)
+
+ * Bug fix: Detect versionless egg links and fail fast. (Patch from
+ @johnsirois.)
+
+ * Bug fix: Handle setuptools>=2.1 correctly in the zipimport monkeypatch
+ (Patch from @johnsirois.)
+
+ -----
+ 0.2.3
+ -----
+
+ * Bug fix: Fix handling of Fetchers with ``file://`` urls.
+
+ -----
+ 0.2.2
+ -----
+
+ * Adds the pex tool as a standalone tool.
+
+ -----
+ 0.2.1
+ -----
+
+ * Bug fix: Bootstrapped ``twitter.common.python`` should declare ``twitter.common``
+ as a namespace package.
+
+ -----
+ 0.2.0
+ -----
+
+ * Make ``twitter.common.python`` fully standalone by consolidating
+ external dependencies within ``twitter.common.python.common``.
+
+ -----
+ 0.1.0
+ -----
+
+ * Initial published version of ``twitter.common.python``.
+
+Platform: UNKNOWN
+Classifier: Intended Audience :: Developers
+Classifier: License :: OSI Approved :: Apache Software License
+Classifier: Operating System :: OS Independent
+Classifier: Programming Language :: Python
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..16317df
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,128 @@
+PEX
+===
+.. image:: https://travis-ci.org/pantsbuild/pex.svg?branch=master
+ :target: https://travis-ci.org/pantsbuild/pex
+
+pex is a library for generating .pex (Python EXecutable) files which are
+executable Python environments in the spirit of `virtualenvs <http://virtualenv.org>`_.
+pex is an expansion upon the ideas outlined in
+`PEP 441 <http://legacy.python.org/dev/peps/pep-0441/>`_
+and makes the deployment of Python applications as simple as ``cp``. pex files may even
+include multiple platform-specific Python distributions, meaning that a single pex file
+can be portable across Linux and OS X.
+
+pex files can be built using the ``pex`` tool. Build systems such as `Pants
+<http://pantsbuild.github.io/>`_ and `Buck <http://facebook.github.io/buck/>`_ also
+support building .pex files directly.
+
+Still unsure about what pex does or how it works? Watch this quick lightning
+talk: `WTF is PEX? <http://www.youtube.com/watch?v=NmpnGhRwsu0>`_.
+
+pex is licensed under the Apache2 license.
+
+
+Installation
+============
+
+To install pex, simply
+
+.. code-block:: bash
+
+ $ pip install pex
+
+You can also build pex in a git clone using tox:
+
+.. code-block:: bash
+
+ $ tox -e package
+ $ cp dist/pex ~/bin
+
+This builds a pex binary in ``dist/pex`` that can be copied onto your ``$PATH``.
+The advantage to this approach is that it keeps your Python environment as empty as
+possible and is more in-line with what pex does philosophically.
+
+
+Simple Examples
+===============
+
+Launch an interpreter with ``requests`` and ``flask`` in the environment:
+
+.. code-block:: bash
+
+ $ pex -r requests -r flask
+
+Run webserver.py in an environment containing ``flask`` and the setup.py package in
+the current working directory:
+
+.. code-block::
+
+ $ pex -r flask -s . -- webserver.py
+
+Launch Sphinx in an ephemeral pex environment using the Sphinx entry point ``sphinx:main``:
+
+.. code-block:: bash
+
+ $ pex -r sphinx -e sphinx:main -- --help
+
+Build a standalone pex binary into ``pex.pex``:
+
+.. code-block::
+
+ $ pex -r pex -e pex.bin.pex:main -o pex.pex
+
+Build a standalone pex binary but invoked using a specific Python version:
+
+.. code-block::
+
+ $ pex -r pex -e pex.bin.pex:main --python=pypy -o pypy-pex.pex
+
+Most pex options compose well with one another, so the above commands can be
+mixed and matched.
+
+
+Documentation
+=============
+
+More documentation about pex, building .pex files, and how .pex files work
+is available at http://pex.rtfd.org.
+
+
+Development
+===========
+
+pex uses `tox <https://testrun.org/tox/latest/>`_ for test and development automation. To run
+the test suite, just invoke tox:
+
+.. code-block:: bash
+
+ $ tox
+
+To generate a coverage report (with more substantial integration tests):
+
+.. code-block:: bash
+
+ $ tox -e coverage
+
+To check style and sort ordering:
+
+.. code-block:: bash
+
+ $ tox -e style,isort-check
+
+To generate and open local sphinx documentation:
+
+.. code-block:: bash
+
+ $ tox -e docs
+
+To run the 'pex' tool from source (for 3.4, use 'py34-run'):
+
+.. code-block:: bash
+
+ $ tox -e py27-run -- <cmdline>
+
+
+Contributing
+============
+
+To contribute, follow these instructions: http://pantsbuild.github.io/howto_contribute.html
diff --git a/pex.egg-info/PKG-INFO b/pex.egg-info/PKG-INFO
new file mode 100644
index 0000000..c84540b
--- /dev/null
+++ b/pex.egg-info/PKG-INFO
@@ -0,0 +1,368 @@
+Metadata-Version: 1.1
+Name: pex
+Version: 0.8.6
+Summary: The PEX packaging toolchain.
+Home-page: https://github.com/pantsbuild/pex
+Author: UNKNOWN
+Author-email: UNKNOWN
+License: Apache License, Version 2.0
+Description: =======
+ CHANGES
+ =======
+
+ ----------
+ 0.8.6
+ ----------
+
+ * Bug fix: Honor installed sys.excepthook in pex teardown.
+ `RB #1733 <https://rbcommons.com/s/twitter/r/1733>`_
+
+ * Bug fix: ``UrllibContext`` used ``replace`` as a keyword argument for ``bytes.decode``
+ but this only works on Python 3. `Pull Request #46 <https://github.com/pantsbuild/pex/pull/46>`_
+
+ -----
+ 0.8.5
+ -----
+
+ * Bug fix: Fixup string formatting in pex/bin/pex.py to support Python 2.6
+ `Pull Request #40 <https://github.com/pantsbuild/pex/pull/40>`_
+
+ -----
+ 0.8.4
+ -----
+
+ * Performance improvement: Speed up the best-case scenario of dependency resolution.
+ `RB #1685 <https://rbcommons.com/s/twitter/r/1685>`_
+
+ * Bug fix: Change from ``uuid4().get_hex()`` to ``uuid4().hex`` to maintain Python3
+ compatibility of pex.common.
+ `Pull Request #39 <https://github.com/pantsbuild/pex/pull/39>`_
+
+ * Bug fix: Actually cache the results of translation. Previously bdist translations
+ would be created in a temporary directory even if a cache location was specified.
+ `RB #1666 <https://rbcommons.com/s/twitter/r/1666>`_
+
+ * Bug fix: Support all potential abi tag permutations when determining platform
+ compatibility.
+ `Pull Request #33 <https://github.com/pantsbuild/pex/pull/33>`_
+
+ -----
+ 0.8.3
+ -----
+
+ * Performance improvement: Don't always write packages to disk if they've already been
+ cached. This can significantly speed up launching PEX files with a large
+ number of non-zip-safe dependencies.
+ `RB #1642 <https://rbcommons.com/s/twitter/r/1642>`_
+
+ -----
+ 0.8.2
+ -----
+
+ * Bug fix: Allow pex 0.8.x to parse pex files produced by earlier versions of
+ pex and twitter.common.python.
+
+ * Pin pex to setuptools prior to 9.x until we have a chance to make changes
... 5785 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-pex.git
More information about the Python-modules-commits
mailing list