-
-
Notifications
You must be signed in to change notification settings - Fork 259
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update vendored dists via
tox -e vendor
.
- Loading branch information
Showing
403 changed files
with
114,416 additions
and
3,220 deletions.
There are no files selected for viewing
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
Copyright (c) 2008-2019 The pip developers (see AUTHORS.txt file) | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining | ||
a copy of this software and associated documentation files (the | ||
"Software"), to deal in the Software without restriction, including | ||
without limitation the rights to use, copy, modify, merge, publish, | ||
distribute, sublicense, and/or sell copies of the Software, and to | ||
permit persons to whom the Software is furnished to do so, subject to | ||
the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be | ||
included in all copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE | ||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION | ||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | ||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
Metadata-Version: 2.1 | ||
Name: pip | ||
Version: 19.3.1 | ||
Summary: The PyPA recommended tool for installing Python packages. | ||
Home-page: https://pip.pypa.io/ | ||
Author: The pip developers | ||
Author-email: pypa-dev@groups.google.com | ||
License: MIT | ||
Keywords: distutils easy_install egg setuptools wheel virtualenv | ||
Platform: UNKNOWN | ||
Classifier: Development Status :: 5 - Production/Stable | ||
Classifier: Intended Audience :: Developers | ||
Classifier: License :: OSI Approved :: MIT License | ||
Classifier: Topic :: Software Development :: Build Tools | ||
Classifier: Programming Language :: Python | ||
Classifier: Programming Language :: Python :: 2 | ||
Classifier: Programming Language :: Python :: 2.7 | ||
Classifier: Programming Language :: Python :: 3 | ||
Classifier: Programming Language :: Python :: 3.5 | ||
Classifier: Programming Language :: Python :: 3.6 | ||
Classifier: Programming Language :: Python :: 3.7 | ||
Classifier: Programming Language :: Python :: 3.8 | ||
Classifier: Programming Language :: Python :: Implementation :: CPython | ||
Classifier: Programming Language :: Python :: Implementation :: PyPy | ||
Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.* | ||
|
||
pip - The Python Package Installer | ||
================================== | ||
|
||
.. image:: https://img.shields.io/pypi/v/pip.svg | ||
:target: https://pypi.org/project/pip/ | ||
|
||
.. image:: https://readthedocs.org/projects/pip/badge/?version=latest | ||
:target: https://pip.pypa.io/en/latest | ||
|
||
pip is the `package installer`_ for Python. You can use pip to install packages from the `Python Package Index`_ and other indexes. | ||
|
||
Please take a look at our documentation for how to install and use pip: | ||
|
||
* `Installation`_ | ||
* `Usage`_ | ||
|
||
Updates are released regularly, with a new version every 3 months. More details can be found in our documentation: | ||
|
||
* `Release notes`_ | ||
* `Release process`_ | ||
|
||
If you find bugs, need help, or want to talk to the developers please use our mailing lists or chat rooms: | ||
|
||
* `Issue tracking`_ | ||
* `Discourse channel`_ | ||
* `User IRC`_ | ||
|
||
If you want to get involved head over to GitHub to get the source code, look at our development documentation and feel free to jump on the developer mailing lists and chat rooms: | ||
|
||
* `GitHub page`_ | ||
* `Dev documentation`_ | ||
* `Dev mailing list`_ | ||
* `Dev IRC`_ | ||
|
||
Code of Conduct | ||
--------------- | ||
|
||
Everyone interacting in the pip project's codebases, issue trackers, chat | ||
rooms, and mailing lists is expected to follow the `PyPA Code of Conduct`_. | ||
|
||
.. _package installer: https://packaging.python.org/en/latest/current/ | ||
.. _Python Package Index: https://pypi.org | ||
.. _Installation: https://pip.pypa.io/en/stable/installing.html | ||
.. _Usage: https://pip.pypa.io/en/stable/ | ||
.. _Release notes: https://pip.pypa.io/en/stable/news.html | ||
.. _Release process: https://pip.pypa.io/en/latest/development/release-process/ | ||
.. _GitHub page: https://github.com/pypa/pip | ||
.. _Dev documentation: https://pip.pypa.io/en/latest/development | ||
.. _Issue tracking: https://github.com/pypa/pip/issues | ||
.. _Discourse channel: https://discuss.python.org/c/packaging | ||
.. _Dev mailing list: https://groups.google.com/forum/#!forum/pypa-dev | ||
.. _User IRC: https://webchat.freenode.net/?channels=%23pypa | ||
.. _Dev IRC: https://webchat.freenode.net/?channels=%23pypa-dev | ||
.. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ | ||
|
||
|
2 changes: 1 addition & 1 deletion
2
...ndored/wheel/wheel-0.31.1.dist-info/WHEEL → .../_vendored/pip/pip-19.3.1.dist-info/WHEEL
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
5 changes: 5 additions & 0 deletions
5
pex/vendor/_vendored/pip/pip-19.3.1.dist-info/entry_points.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
[console_scripts] | ||
pip = pip._internal.main:main | ||
pip3 = pip._internal.main:main | ||
pip3.7 = pip._internal.main:main | ||
|
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
__version__ = "19.3.1" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
from __future__ import absolute_import | ||
|
||
import os | ||
import sys | ||
|
||
# If we are running from a wheel, add the wheel to sys.path | ||
# This allows the usage python pip-*.whl/pip install pip-*.whl | ||
if __package__ == '': | ||
# __file__ is pip-*.whl/pip/__main__.py | ||
# first dirname call strips of '/__main__.py', second strips off '/pip' | ||
# Resulting path is the name of the wheel itself | ||
# Add that to sys.path so we can import pip | ||
path = os.path.dirname(os.path.dirname(__file__)) | ||
sys.path.insert(0, path) | ||
|
||
from pip._internal.main import main as _main # isort:skip # noqa | ||
|
||
if __name__ == '__main__': | ||
sys.exit(_main()) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#!/usr/bin/env python | ||
import pip._internal.utils.inject_securetransport # noqa |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,221 @@ | ||
"""Build Environment used for isolation during sdist building | ||
""" | ||
|
||
# The following comment should be removed at some point in the future. | ||
# mypy: strict-optional=False | ||
# mypy: disallow-untyped-defs=False | ||
|
||
import logging | ||
import os | ||
import sys | ||
import textwrap | ||
from collections import OrderedDict | ||
from distutils.sysconfig import get_python_lib | ||
from sysconfig import get_paths | ||
|
||
from pip._vendor.pkg_resources import Requirement, VersionConflict, WorkingSet | ||
|
||
from pip import __file__ as pip_location | ||
from pip._internal.utils.subprocess import call_subprocess | ||
from pip._internal.utils.temp_dir import TempDirectory | ||
from pip._internal.utils.typing import MYPY_CHECK_RUNNING | ||
from pip._internal.utils.ui import open_spinner | ||
|
||
if MYPY_CHECK_RUNNING: | ||
from typing import Tuple, Set, Iterable, Optional, List | ||
from pip._internal.index import PackageFinder | ||
|
||
logger = logging.getLogger(__name__) | ||
|
||
|
||
class _Prefix: | ||
|
||
def __init__(self, path): | ||
# type: (str) -> None | ||
self.path = path | ||
self.setup = False | ||
self.bin_dir = get_paths( | ||
'nt' if os.name == 'nt' else 'posix_prefix', | ||
vars={'base': path, 'platbase': path} | ||
)['scripts'] | ||
# Note: prefer distutils' sysconfig to get the | ||
# library paths so PyPy is correctly supported. | ||
purelib = get_python_lib(plat_specific=False, prefix=path) | ||
platlib = get_python_lib(plat_specific=True, prefix=path) | ||
if purelib == platlib: | ||
self.lib_dirs = [purelib] | ||
else: | ||
self.lib_dirs = [purelib, platlib] | ||
|
||
|
||
class BuildEnvironment(object): | ||
"""Creates and manages an isolated environment to install build deps | ||
""" | ||
|
||
def __init__(self): | ||
# type: () -> None | ||
self._temp_dir = TempDirectory(kind="build-env") | ||
|
||
self._prefixes = OrderedDict(( | ||
(name, _Prefix(os.path.join(self._temp_dir.path, name))) | ||
for name in ('normal', 'overlay') | ||
)) | ||
|
||
self._bin_dirs = [] # type: List[str] | ||
self._lib_dirs = [] # type: List[str] | ||
for prefix in reversed(list(self._prefixes.values())): | ||
self._bin_dirs.append(prefix.bin_dir) | ||
self._lib_dirs.extend(prefix.lib_dirs) | ||
|
||
# Customize site to: | ||
# - ensure .pth files are honored | ||
# - prevent access to system site packages | ||
system_sites = { | ||
os.path.normcase(site) for site in ( | ||
get_python_lib(plat_specific=False), | ||
get_python_lib(plat_specific=True), | ||
) | ||
} | ||
self._site_dir = os.path.join(self._temp_dir.path, 'site') | ||
if not os.path.exists(self._site_dir): | ||
os.mkdir(self._site_dir) | ||
with open(os.path.join(self._site_dir, 'sitecustomize.py'), 'w') as fp: | ||
fp.write(textwrap.dedent( | ||
''' | ||
import os, site, sys | ||
# First, drop system-sites related paths. | ||
original_sys_path = sys.path[:] | ||
known_paths = set() | ||
for path in {system_sites!r}: | ||
site.addsitedir(path, known_paths=known_paths) | ||
system_paths = set( | ||
os.path.normcase(path) | ||
for path in sys.path[len(original_sys_path):] | ||
) | ||
original_sys_path = [ | ||
path for path in original_sys_path | ||
if os.path.normcase(path) not in system_paths | ||
] | ||
sys.path = original_sys_path | ||
# Second, add lib directories. | ||
# ensuring .pth file are processed. | ||
for path in {lib_dirs!r}: | ||
assert not path in sys.path | ||
site.addsitedir(path) | ||
''' | ||
).format(system_sites=system_sites, lib_dirs=self._lib_dirs)) | ||
|
||
def __enter__(self): | ||
self._save_env = { | ||
name: os.environ.get(name, None) | ||
for name in ('PATH', 'PYTHONNOUSERSITE', 'PYTHONPATH') | ||
} | ||
|
||
path = self._bin_dirs[:] | ||
old_path = self._save_env['PATH'] | ||
if old_path: | ||
path.extend(old_path.split(os.pathsep)) | ||
|
||
pythonpath = [self._site_dir] | ||
|
||
os.environ.update({ | ||
'PATH': os.pathsep.join(path), | ||
'PYTHONNOUSERSITE': '1', | ||
'PYTHONPATH': os.pathsep.join(pythonpath), | ||
}) | ||
|
||
def __exit__(self, exc_type, exc_val, exc_tb): | ||
for varname, old_value in self._save_env.items(): | ||
if old_value is None: | ||
os.environ.pop(varname, None) | ||
else: | ||
os.environ[varname] = old_value | ||
|
||
def cleanup(self): | ||
# type: () -> None | ||
self._temp_dir.cleanup() | ||
|
||
def check_requirements(self, reqs): | ||
# type: (Iterable[str]) -> Tuple[Set[Tuple[str, str]], Set[str]] | ||
"""Return 2 sets: | ||
- conflicting requirements: set of (installed, wanted) reqs tuples | ||
- missing requirements: set of reqs | ||
""" | ||
missing = set() | ||
conflicting = set() | ||
if reqs: | ||
ws = WorkingSet(self._lib_dirs) | ||
for req in reqs: | ||
try: | ||
if ws.find(Requirement.parse(req)) is None: | ||
missing.add(req) | ||
except VersionConflict as e: | ||
conflicting.add((str(e.args[0].as_requirement()), | ||
str(e.args[1]))) | ||
return conflicting, missing | ||
|
||
def install_requirements( | ||
self, | ||
finder, # type: PackageFinder | ||
requirements, # type: Iterable[str] | ||
prefix_as_string, # type: str | ||
message # type: Optional[str] | ||
): | ||
# type: (...) -> None | ||
prefix = self._prefixes[prefix_as_string] | ||
assert not prefix.setup | ||
prefix.setup = True | ||
if not requirements: | ||
return | ||
args = [ | ||
sys.executable, os.path.dirname(pip_location), 'install', | ||
'--ignore-installed', '--no-user', '--prefix', prefix.path, | ||
'--no-warn-script-location', | ||
] # type: List[str] | ||
if logger.getEffectiveLevel() <= logging.DEBUG: | ||
args.append('-v') | ||
for format_control in ('no_binary', 'only_binary'): | ||
formats = getattr(finder.format_control, format_control) | ||
args.extend(('--' + format_control.replace('_', '-'), | ||
','.join(sorted(formats or {':none:'})))) | ||
|
||
index_urls = finder.index_urls | ||
if index_urls: | ||
args.extend(['-i', index_urls[0]]) | ||
for extra_index in index_urls[1:]: | ||
args.extend(['--extra-index-url', extra_index]) | ||
else: | ||
args.append('--no-index') | ||
for link in finder.find_links: | ||
args.extend(['--find-links', link]) | ||
|
||
for host in finder.trusted_hosts: | ||
args.extend(['--trusted-host', host]) | ||
if finder.allow_all_prereleases: | ||
args.append('--pre') | ||
args.append('--') | ||
args.extend(requirements) | ||
with open_spinner(message) as spinner: | ||
call_subprocess(args, spinner=spinner) | ||
|
||
|
||
class NoOpBuildEnvironment(BuildEnvironment): | ||
"""A no-op drop-in replacement for BuildEnvironment | ||
""" | ||
|
||
def __init__(self): | ||
pass | ||
|
||
def __enter__(self): | ||
pass | ||
|
||
def __exit__(self, exc_type, exc_val, exc_tb): | ||
pass | ||
|
||
def cleanup(self): | ||
pass | ||
|
||
def install_requirements(self, finder, requirements, prefix, message): | ||
raise NotImplementedError() |
Oops, something went wrong.