summaryrefslogtreecommitdiff
path: root/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands
diff options
context:
space:
mode:
Diffstat (limited to 'venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands')
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__init__.py79
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/__init__.cpython-37.pycbin2518 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/check.cpython-37.pycbin1343 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/completion.cpython-37.pycbin3092 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/configuration.cpython-37.pycbin6444 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/download.cpython-37.pycbin4731 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/freeze.cpython-37.pycbin2888 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/hash.cpython-37.pycbin2082 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/help.cpython-37.pycbin1258 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/install.cpython-37.pycbin12475 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/list.cpython-37.pycbin8724 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/search.cpython-37.pycbin4324 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/show.cpython-37.pycbin5905 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/uninstall.cpython-37.pycbin2714 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/wheel.cpython-37.pycbin5017 -> 0 bytes
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/check.py41
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/completion.py94
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/configuration.py227
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/download.py176
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/freeze.py96
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/hash.py57
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/help.py37
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/install.py566
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/list.py301
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/search.py135
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/show.py168
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/uninstall.py78
-rw-r--r--venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/wheel.py186
28 files changed, 0 insertions, 2241 deletions
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__init__.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__init__.py
deleted file mode 100644
index c7d1da3..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__init__.py
+++ /dev/null
@@ -1,79 +0,0 @@
-"""
-Package containing all pip commands
-"""
-from __future__ import absolute_import
-
-from pip._internal.commands.completion import CompletionCommand
-from pip._internal.commands.configuration import ConfigurationCommand
-from pip._internal.commands.download import DownloadCommand
-from pip._internal.commands.freeze import FreezeCommand
-from pip._internal.commands.hash import HashCommand
-from pip._internal.commands.help import HelpCommand
-from pip._internal.commands.list import ListCommand
-from pip._internal.commands.check import CheckCommand
-from pip._internal.commands.search import SearchCommand
-from pip._internal.commands.show import ShowCommand
-from pip._internal.commands.install import InstallCommand
-from pip._internal.commands.uninstall import UninstallCommand
-from pip._internal.commands.wheel import WheelCommand
-
-from pip._internal.utils.typing import MYPY_CHECK_RUNNING
-
-if MYPY_CHECK_RUNNING:
- from typing import List, Type # noqa: F401
- from pip._internal.cli.base_command import Command # noqa: F401
-
-commands_order = [
- InstallCommand,
- DownloadCommand,
- UninstallCommand,
- FreezeCommand,
- ListCommand,
- ShowCommand,
- CheckCommand,
- ConfigurationCommand,
- SearchCommand,
- WheelCommand,
- HashCommand,
- CompletionCommand,
- HelpCommand,
-] # type: List[Type[Command]]
-
-commands_dict = {c.name: c for c in commands_order}
-
-
-def get_summaries(ordered=True):
- """Yields sorted (command name, command summary) tuples."""
-
- if ordered:
- cmditems = _sort_commands(commands_dict, commands_order)
- else:
- cmditems = commands_dict.items()
-
- for name, command_class in cmditems:
- yield (name, command_class.summary)
-
-
-def get_similar_commands(name):
- """Command name auto-correct."""
- from difflib import get_close_matches
-
- name = name.lower()
-
- close_commands = get_close_matches(name, commands_dict.keys())
-
- if close_commands:
- return close_commands[0]
- else:
- return False
-
-
-def _sort_commands(cmddict, order):
- def keyfn(key):
- try:
- return order.index(key[1])
- except ValueError:
- # unordered items should come last
- return 0xff
-
- return sorted(cmddict.items(), key=keyfn)
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/__init__.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/__init__.cpython-37.pyc
deleted file mode 100644
index 81f2d6a..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/__init__.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/check.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/check.cpython-37.pyc
deleted file mode 100644
index 4cf332a..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/check.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/completion.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/completion.cpython-37.pyc
deleted file mode 100644
index 2f10e9a..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/completion.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/configuration.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/configuration.cpython-37.pyc
deleted file mode 100644
index b33e6c9..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/configuration.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/download.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/download.cpython-37.pyc
deleted file mode 100644
index 8c02ceb..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/download.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/freeze.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/freeze.cpython-37.pyc
deleted file mode 100644
index 351ab9f..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/freeze.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/hash.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/hash.cpython-37.pyc
deleted file mode 100644
index 2b6183f..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/hash.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/help.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/help.cpython-37.pyc
deleted file mode 100644
index 0eaefaf..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/help.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/install.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/install.cpython-37.pyc
deleted file mode 100644
index 4587dd5..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/install.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/list.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/list.cpython-37.pyc
deleted file mode 100644
index 219febe..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/list.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/search.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/search.cpython-37.pyc
deleted file mode 100644
index 7809bf0..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/search.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/show.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/show.cpython-37.pyc
deleted file mode 100644
index bb07126..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/show.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/uninstall.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/uninstall.cpython-37.pyc
deleted file mode 100644
index b528ae4..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/uninstall.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/wheel.cpython-37.pyc b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/wheel.cpython-37.pyc
deleted file mode 100644
index 8198357..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/__pycache__/wheel.cpython-37.pyc
+++ /dev/null
Binary files differ
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/check.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/check.py
deleted file mode 100644
index 801cecc..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/check.py
+++ /dev/null
@@ -1,41 +0,0 @@
-import logging
-
-from pip._internal.cli.base_command import Command
-from pip._internal.operations.check import (
- check_package_set, create_package_set_from_installed,
-)
-
-logger = logging.getLogger(__name__)
-
-
-class CheckCommand(Command):
- """Verify installed packages have compatible dependencies."""
- name = 'check'
- usage = """
- %prog [options]"""
- summary = 'Verify installed packages have compatible dependencies.'
-
- def run(self, options, args):
- package_set, parsing_probs = create_package_set_from_installed()
- missing, conflicting = check_package_set(package_set)
-
- for project_name in missing:
- version = package_set[project_name].version
- for dependency in missing[project_name]:
- logger.info(
- "%s %s requires %s, which is not installed.",
- project_name, version, dependency[0],
- )
-
- for project_name in conflicting:
- version = package_set[project_name].version
- for dep_name, dep_version, req in conflicting[project_name]:
- logger.info(
- "%s %s has requirement %s, but you have %s %s.",
- project_name, version, req, dep_name, dep_version,
- )
-
- if missing or conflicting or parsing_probs:
- return 1
- else:
- logger.info("No broken requirements found.")
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/completion.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/completion.py
deleted file mode 100644
index 2fcdd39..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/completion.py
+++ /dev/null
@@ -1,94 +0,0 @@
-from __future__ import absolute_import
-
-import sys
-import textwrap
-
-from pip._internal.cli.base_command import Command
-from pip._internal.utils.misc import get_prog
-
-BASE_COMPLETION = """
-# pip %(shell)s completion start%(script)s# pip %(shell)s completion end
-"""
-
-COMPLETION_SCRIPTS = {
- 'bash': """
- _pip_completion()
- {
- COMPREPLY=( $( COMP_WORDS="${COMP_WORDS[*]}" \\
- COMP_CWORD=$COMP_CWORD \\
- PIP_AUTO_COMPLETE=1 $1 ) )
- }
- complete -o default -F _pip_completion %(prog)s
- """,
- 'zsh': """
- function _pip_completion {
- local words cword
- read -Ac words
- read -cn cword
- reply=( $( COMP_WORDS="$words[*]" \\
- COMP_CWORD=$(( cword-1 )) \\
- PIP_AUTO_COMPLETE=1 $words[1] ) )
- }
- compctl -K _pip_completion %(prog)s
- """,
- 'fish': """
- function __fish_complete_pip
- set -lx COMP_WORDS (commandline -o) ""
- set -lx COMP_CWORD ( \\
- math (contains -i -- (commandline -t) $COMP_WORDS)-1 \\
- )
- set -lx PIP_AUTO_COMPLETE 1
- string split \\ -- (eval $COMP_WORDS[1])
- end
- complete -fa "(__fish_complete_pip)" -c %(prog)s
- """,
-}
-
-
-class CompletionCommand(Command):
- """A helper command to be used for command completion."""
- name = 'completion'
- summary = 'A helper command used for command completion.'
- ignore_require_venv = True
-
- def __init__(self, *args, **kw):
- super(CompletionCommand, self).__init__(*args, **kw)
-
- cmd_opts = self.cmd_opts
-
- cmd_opts.add_option(
- '--bash', '-b',
- action='store_const',
- const='bash',
- dest='shell',
- help='Emit completion code for bash')
- cmd_opts.add_option(
- '--zsh', '-z',
- action='store_const',
- const='zsh',
- dest='shell',
- help='Emit completion code for zsh')
- cmd_opts.add_option(
- '--fish', '-f',
- action='store_const',
- const='fish',
- dest='shell',
- help='Emit completion code for fish')
-
- self.parser.insert_option_group(0, cmd_opts)
-
- def run(self, options, args):
- """Prints the completion code of the given shell"""
- shells = COMPLETION_SCRIPTS.keys()
- shell_options = ['--' + shell for shell in sorted(shells)]
- if options.shell in shells:
- script = textwrap.dedent(
- COMPLETION_SCRIPTS.get(options.shell, '') % {
- 'prog': get_prog(),
- }
- )
- print(BASE_COMPLETION % {'script': script, 'shell': options.shell})
- else:
- sys.stderr.write(
- 'ERROR: You must pass %s\n' % ' or '.join(shell_options)
- )
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/configuration.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/configuration.py
deleted file mode 100644
index 826c08d..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/configuration.py
+++ /dev/null
@@ -1,227 +0,0 @@
-import logging
-import os
-import subprocess
-
-from pip._internal.cli.base_command import Command
-from pip._internal.cli.status_codes import ERROR, SUCCESS
-from pip._internal.configuration import Configuration, kinds
-from pip._internal.exceptions import PipError
-from pip._internal.locations import venv_config_file
-from pip._internal.utils.misc import get_prog
-
-logger = logging.getLogger(__name__)
-
-
-class ConfigurationCommand(Command):
- """Manage local and global configuration.
-
- Subcommands:
-
- list: List the active configuration (or from the file specified)
- edit: Edit the configuration file in an editor
- get: Get the value associated with name
- set: Set the name=value
- unset: Unset the value associated with name
-
- If none of --user, --global and --venv are passed, a virtual
- environment configuration file is used if one is active and the file
- exists. Otherwise, all modifications happen on the to the user file by
- default.
- """
-
- name = 'config'
- usage = """
- %prog [<file-option>] list
- %prog [<file-option>] [--editor <editor-path>] edit
-
- %prog [<file-option>] get name
- %prog [<file-option>] set name value
- %prog [<file-option>] unset name
- """
-
- summary = "Manage local and global configuration."
-
- def __init__(self, *args, **kwargs):
- super(ConfigurationCommand, self).__init__(*args, **kwargs)
-
- self.configuration = None
-
- self.cmd_opts.add_option(
- '--editor',
- dest='editor',
- action='store',
- default=None,
- help=(
- 'Editor to use to edit the file. Uses VISUAL or EDITOR '
- 'environment variables if not provided.'
- )
- )
-
- self.cmd_opts.add_option(
- '--global',
- dest='global_file',
- action='store_true',
- default=False,
- help='Use the system-wide configuration file only'
- )
-
- self.cmd_opts.add_option(
- '--user',
- dest='user_file',
- action='store_true',
- default=False,
- help='Use the user configuration file only'
- )
-
- self.cmd_opts.add_option(
- '--venv',
- dest='venv_file',
- action='store_true',
- default=False,
- help='Use the virtualenv configuration file only'
- )
-
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- handlers = {
- "list": self.list_values,
- "edit": self.open_in_editor,
- "get": self.get_name,
- "set": self.set_name_value,
- "unset": self.unset_name
- }
-
- # Determine action
- if not args or args[0] not in handlers:
- logger.error("Need an action ({}) to perform.".format(
- ", ".join(sorted(handlers)))
- )
- return ERROR
-
- action = args[0]
-
- # Determine which configuration files are to be loaded
- # Depends on whether the command is modifying.
- try:
- load_only = self._determine_file(
- options, need_value=(action in ["get", "set", "unset", "edit"])
- )
- except PipError as e:
- logger.error(e.args[0])
- return ERROR
-
- # Load a new configuration
- self.configuration = Configuration(
- isolated=options.isolated_mode, load_only=load_only
- )
- self.configuration.load()
-
- # Error handling happens here, not in the action-handlers.
- try:
- handlers[action](options, args[1:])
- except PipError as e:
- logger.error(e.args[0])
- return ERROR
-
- return SUCCESS
-
- def _determine_file(self, options, need_value):
- file_options = {
- kinds.USER: options.user_file,
- kinds.GLOBAL: options.global_file,
- kinds.VENV: options.venv_file
- }
-
- if sum(file_options.values()) == 0:
- if not need_value:
- return None
- # Default to user, unless there's a virtualenv file.
- elif os.path.exists(venv_config_file):
- return kinds.VENV
- else:
- return kinds.USER
- elif sum(file_options.values()) == 1:
- # There's probably a better expression for this.
- return [key for key in file_options if file_options[key]][0]
-
- raise PipError(
- "Need exactly one file to operate upon "
- "(--user, --venv, --global) to perform."
- )
-
- def list_values(self, options, args):
- self._get_n_args(args, "list", n=0)
-
- for key, value in sorted(self.configuration.items()):
- logger.info("%s=%r", key, value)
-
- def get_name(self, options, args):
- key = self._get_n_args(args, "get [name]", n=1)
- value = self.configuration.get_value(key)
-
- logger.info("%s", value)
-
- def set_name_value(self, options, args):
- key, value = self._get_n_args(args, "set [name] [value]", n=2)
- self.configuration.set_value(key, value)
-
- self._save_configuration()
-
- def unset_name(self, options, args):
- key = self._get_n_args(args, "unset [name]", n=1)
- self.configuration.unset_value(key)
-
- self._save_configuration()
-
- def open_in_editor(self, options, args):
- editor = self._determine_editor(options)
-
- fname = self.configuration.get_file_to_edit()
- if fname is None:
- raise PipError("Could not determine appropriate file.")
-
- try:
- subprocess.check_call([editor, fname])
- except subprocess.CalledProcessError as e:
- raise PipError(
- "Editor Subprocess exited with exit code {}"
- .format(e.returncode)
- )
-
- def _get_n_args(self, args, example, n):
- """Helper to make sure the command got the right number of arguments
- """
- if len(args) != n:
- msg = (
- 'Got unexpected number of arguments, expected {}. '
- '(example: "{} config {}")'
- ).format(n, get_prog(), example)
- raise PipError(msg)
-
- if n == 1:
- return args[0]
- else:
- return args
-
- def _save_configuration(self):
- # We successfully ran a modifying command. Need to save the
- # configuration.
- try:
- self.configuration.save()
- except Exception:
- logger.error(
- "Unable to save configuration. Please report this as a bug.",
- exc_info=1
- )
- raise PipError("Internal Error.")
-
- def _determine_editor(self, options):
- if options.editor is not None:
- return options.editor
- elif "VISUAL" in os.environ:
- return os.environ["VISUAL"]
- elif "EDITOR" in os.environ:
- return os.environ["EDITOR"]
- else:
- raise PipError("Could not determine editor to use.")
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/download.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/download.py
deleted file mode 100644
index a57e4bc..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/download.py
+++ /dev/null
@@ -1,176 +0,0 @@
-from __future__ import absolute_import
-
-import logging
-import os
-
-from pip._internal.cli import cmdoptions
-from pip._internal.cli.base_command import RequirementCommand
-from pip._internal.operations.prepare import RequirementPreparer
-from pip._internal.req import RequirementSet
-from pip._internal.req.req_tracker import RequirementTracker
-from pip._internal.resolve import Resolver
-from pip._internal.utils.filesystem import check_path_owner
-from pip._internal.utils.misc import ensure_dir, normalize_path
-from pip._internal.utils.temp_dir import TempDirectory
-
-logger = logging.getLogger(__name__)
-
-
-class DownloadCommand(RequirementCommand):
- """
- Download packages from:
-
- - PyPI (and other indexes) using requirement specifiers.
- - VCS project urls.
- - Local project directories.
- - Local or remote source archives.
-
- pip also supports downloading from "requirements files", which provide
- an easy way to specify a whole environment to be downloaded.
- """
- name = 'download'
-
- usage = """
- %prog [options] <requirement specifier> [package-index-options] ...
- %prog [options] -r <requirements file> [package-index-options] ...
- %prog [options] <vcs project url> ...
- %prog [options] <local project path> ...
- %prog [options] <archive url/path> ..."""
-
- summary = 'Download packages.'
-
- def __init__(self, *args, **kw):
- super(DownloadCommand, self).__init__(*args, **kw)
-
- cmd_opts = self.cmd_opts
-
- cmd_opts.add_option(cmdoptions.constraints())
- cmd_opts.add_option(cmdoptions.requirements())
- cmd_opts.add_option(cmdoptions.build_dir())
- cmd_opts.add_option(cmdoptions.no_deps())
- cmd_opts.add_option(cmdoptions.global_options())
- cmd_opts.add_option(cmdoptions.no_binary())
- cmd_opts.add_option(cmdoptions.only_binary())
- cmd_opts.add_option(cmdoptions.prefer_binary())
- cmd_opts.add_option(cmdoptions.src())
- cmd_opts.add_option(cmdoptions.pre())
- cmd_opts.add_option(cmdoptions.no_clean())
- cmd_opts.add_option(cmdoptions.require_hashes())
- cmd_opts.add_option(cmdoptions.progress_bar())
- cmd_opts.add_option(cmdoptions.no_build_isolation())
- cmd_opts.add_option(cmdoptions.use_pep517())
- cmd_opts.add_option(cmdoptions.no_use_pep517())
-
- cmd_opts.add_option(
- '-d', '--dest', '--destination-dir', '--destination-directory',
- dest='download_dir',
- metavar='dir',
- default=os.curdir,
- help=("Download packages into <dir>."),
- )
-
- cmd_opts.add_option(cmdoptions.platform())
- cmd_opts.add_option(cmdoptions.python_version())
- cmd_opts.add_option(cmdoptions.implementation())
- cmd_opts.add_option(cmdoptions.abi())
-
- index_opts = cmdoptions.make_option_group(
- cmdoptions.index_group,
- self.parser,
- )
-
- self.parser.insert_option_group(0, index_opts)
- self.parser.insert_option_group(0, cmd_opts)
-
- def run(self, options, args):
- options.ignore_installed = True
- # editable doesn't really make sense for `pip download`, but the bowels
- # of the RequirementSet code require that property.
- options.editables = []
-
- if options.python_version:
- python_versions = [options.python_version]
- else:
- python_versions = None
-
- cmdoptions.check_dist_restriction(options)
-
- options.src_dir = os.path.abspath(options.src_dir)
- options.download_dir = normalize_path(options.download_dir)
-
- ensure_dir(options.download_dir)
-
- with self._build_session(options) as session:
- finder = self._build_package_finder(
- options=options,
- session=session,
- platform=options.platform,
- python_versions=python_versions,
- abi=options.abi,
- implementation=options.implementation,
- )
- build_delete = (not (options.no_clean or options.build_dir))
- if options.cache_dir and not check_path_owner(options.cache_dir):
- logger.warning(
- "The directory '%s' or its parent directory is not owned "
- "by the current user and caching wheels has been "
- "disabled. check the permissions and owner of that "
- "directory. If executing pip with sudo, you may want "
- "sudo's -H flag.",
- options.cache_dir,
- )
- options.cache_dir = None
-
- with RequirementTracker() as req_tracker, TempDirectory(
- options.build_dir, delete=build_delete, kind="download"
- ) as directory:
-
- requirement_set = RequirementSet(
- require_hashes=options.require_hashes,
- )
- self.populate_requirement_set(
- requirement_set,
- args,
- options,
- finder,
- session,
- self.name,
- None
- )
-
- preparer = RequirementPreparer(
- build_dir=directory.path,
- src_dir=options.src_dir,
- download_dir=options.download_dir,
- wheel_download_dir=None,
- progress_bar=options.progress_bar,
- build_isolation=options.build_isolation,
- req_tracker=req_tracker,
- )
-
- resolver = Resolver(
- preparer=preparer,
- finder=finder,
- session=session,
- wheel_cache=None,
- use_user_site=False,
- upgrade_strategy="to-satisfy-only",
- force_reinstall=False,
- ignore_dependencies=options.ignore_dependencies,
- ignore_requires_python=False,
- ignore_installed=True,
- isolated=options.isolated_mode,
- )
- resolver.resolve(requirement_set)
-
- downloaded = ' '.join([
- req.name for req in requirement_set.successfully_downloaded
- ])
- if downloaded:
- logger.info('Successfully downloaded %s', downloaded)
-
- # Clean up
- if not options.no_clean:
- requirement_set.cleanup_files()
-
- return requirement_set
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/freeze.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/freeze.py
deleted file mode 100644
index dc9c53a..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/freeze.py
+++ /dev/null
@@ -1,96 +0,0 @@
-from __future__ import absolute_import
-
-import sys
-
-from pip._internal.cache import WheelCache
-from pip._internal.cli.base_command import Command
-from pip._internal.models.format_control import FormatControl
-from pip._internal.operations.freeze import freeze
-from pip._internal.utils.compat import stdlib_pkgs
-
-DEV_PKGS = {'pip', 'setuptools', 'distribute', 'wheel'}
-
-
-class FreezeCommand(Command):
- """
- Output installed packages in requirements format.
-
- packages are listed in a case-insensitive sorted order.
- """
- name = 'freeze'
- usage = """
- %prog [options]"""
- summary = 'Output installed packages in requirements format.'
- log_streams = ("ext://sys.stderr", "ext://sys.stderr")
-
- def __init__(self, *args, **kw):
- super(FreezeCommand, self).__init__(*args, **kw)
-
- self.cmd_opts.add_option(
- '-r', '--requirement',
- dest='requirements',
- action='append',
- default=[],
- metavar='file',
- help="Use the order in the given requirements file and its "
- "comments when generating output. This option can be "
- "used multiple times.")
- self.cmd_opts.add_option(
- '-f', '--find-links',
- dest='find_links',
- action='append',
- default=[],
- metavar='URL',
- help='URL for finding packages, which will be added to the '
- 'output.')
- self.cmd_opts.add_option(
- '-l', '--local',
- dest='local',
- action='store_true',
- default=False,
- help='If in a virtualenv that has global access, do not output '
- 'globally-installed packages.')
- self.cmd_opts.add_option(
- '--user',
- dest='user',
- action='store_true',
- default=False,
- help='Only output packages installed in user-site.')
- self.cmd_opts.add_option(
- '--all',
- dest='freeze_all',
- action='store_true',
- help='Do not skip these packages in the output:'
- ' %s' % ', '.join(DEV_PKGS))
- self.cmd_opts.add_option(
- '--exclude-editable',
- dest='exclude_editable',
- action='store_true',
- help='Exclude editable package from output.')
-
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- format_control = FormatControl(set(), set())
- wheel_cache = WheelCache(options.cache_dir, format_control)
- skip = set(stdlib_pkgs)
- if not options.freeze_all:
- skip.update(DEV_PKGS)
-
- freeze_kwargs = dict(
- requirement=options.requirements,
- find_links=options.find_links,
- local_only=options.local,
- user_only=options.user,
- skip_regex=options.skip_requirements_regex,
- isolated=options.isolated_mode,
- wheel_cache=wheel_cache,
- skip=skip,
- exclude_editable=options.exclude_editable,
- )
-
- try:
- for line in freeze(**freeze_kwargs):
- sys.stdout.write(line + '\n')
- finally:
- wheel_cache.cleanup()
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/hash.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/hash.py
deleted file mode 100644
index 423440e..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/hash.py
+++ /dev/null
@@ -1,57 +0,0 @@
-from __future__ import absolute_import
-
-import hashlib
-import logging
-import sys
-
-from pip._internal.cli.base_command import Command
-from pip._internal.cli.status_codes import ERROR
-from pip._internal.utils.hashes import FAVORITE_HASH, STRONG_HASHES
-from pip._internal.utils.misc import read_chunks
-
-logger = logging.getLogger(__name__)
-
-
-class HashCommand(Command):
- """
- Compute a hash of a local package archive.
-
- These can be used with --hash in a requirements file to do repeatable
- installs.
-
- """
- name = 'hash'
- usage = '%prog [options] <file> ...'
- summary = 'Compute hashes of package archives.'
- ignore_require_venv = True
-
- def __init__(self, *args, **kw):
- super(HashCommand, self).__init__(*args, **kw)
- self.cmd_opts.add_option(
- '-a', '--algorithm',
- dest='algorithm',
- choices=STRONG_HASHES,
- action='store',
- default=FAVORITE_HASH,
- help='The hash algorithm to use: one of %s' %
- ', '.join(STRONG_HASHES))
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- if not args:
- self.parser.print_usage(sys.stderr)
- return ERROR
-
- algorithm = options.algorithm
- for path in args:
- logger.info('%s:\n--hash=%s:%s',
- path, algorithm, _hash_of_file(path, algorithm))
-
-
-def _hash_of_file(path, algorithm):
- """Return the hash digest of a file."""
- with open(path, 'rb') as archive:
- hash = hashlib.new(algorithm)
- for chunk in read_chunks(archive):
- hash.update(chunk)
- return hash.hexdigest()
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/help.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/help.py
deleted file mode 100644
index 49a81cb..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/help.py
+++ /dev/null
@@ -1,37 +0,0 @@
-from __future__ import absolute_import
-
-from pip._internal.cli.base_command import Command
-from pip._internal.cli.status_codes import SUCCESS
-from pip._internal.exceptions import CommandError
-
-
-class HelpCommand(Command):
- """Show help for commands"""
- name = 'help'
- usage = """
- %prog <command>"""
- summary = 'Show help for commands.'
- ignore_require_venv = True
-
- def run(self, options, args):
- from pip._internal.commands import commands_dict, get_similar_commands
-
- try:
- # 'pip help' with no args is handled by pip.__init__.parseopt()
- cmd_name = args[0] # the command we need help for
- except IndexError:
- return SUCCESS
-
- if cmd_name not in commands_dict:
- guess = get_similar_commands(cmd_name)
-
- msg = ['unknown command "%s"' % cmd_name]
- if guess:
- msg.append('maybe you meant "%s"' % guess)
-
- raise CommandError(' - '.join(msg))
-
- command = commands_dict[cmd_name]()
- command.parser.print_help()
-
- return SUCCESS
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/install.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/install.py
deleted file mode 100644
index 1c244d2..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/install.py
+++ /dev/null
@@ -1,566 +0,0 @@
-from __future__ import absolute_import
-
-import errno
-import logging
-import operator
-import os
-import shutil
-from optparse import SUPPRESS_HELP
-
-from pip._vendor import pkg_resources
-
-from pip._internal.cache import WheelCache
-from pip._internal.cli import cmdoptions
-from pip._internal.cli.base_command import RequirementCommand
-from pip._internal.cli.status_codes import ERROR
-from pip._internal.exceptions import (
- CommandError, InstallationError, PreviousBuildDirError,
-)
-from pip._internal.locations import distutils_scheme, virtualenv_no_global
-from pip._internal.operations.check import check_install_conflicts
-from pip._internal.operations.prepare import RequirementPreparer
-from pip._internal.req import RequirementSet, install_given_reqs
-from pip._internal.req.req_tracker import RequirementTracker
-from pip._internal.resolve import Resolver
-from pip._internal.utils.filesystem import check_path_owner
-from pip._internal.utils.misc import (
- ensure_dir, get_installed_version,
- protect_pip_from_modification_on_windows,
-)
-from pip._internal.utils.temp_dir import TempDirectory
-from pip._internal.wheel import WheelBuilder
-
-logger = logging.getLogger(__name__)
-
-
-class InstallCommand(RequirementCommand):
- """
- Install packages from:
-
- - PyPI (and other indexes) using requirement specifiers.
- - VCS project urls.
- - Local project directories.
- - Local or remote source archives.
-
- pip also supports installing from "requirements files", which provide
- an easy way to specify a whole environment to be installed.
- """
- name = 'install'
-
- usage = """
- %prog [options] <requirement specifier> [package-index-options] ...
- %prog [options] -r <requirements file> [package-index-options] ...
- %prog [options] [-e] <vcs project url> ...
- %prog [options] [-e] <local project path> ...
- %prog [options] <archive url/path> ..."""
-
- summary = 'Install packages.'
-
- def __init__(self, *args, **kw):
- super(InstallCommand, self).__init__(*args, **kw)
-
- cmd_opts = self.cmd_opts
-
- cmd_opts.add_option(cmdoptions.requirements())
- cmd_opts.add_option(cmdoptions.constraints())
- cmd_opts.add_option(cmdoptions.no_deps())
- cmd_opts.add_option(cmdoptions.pre())
-
- cmd_opts.add_option(cmdoptions.editable())
- cmd_opts.add_option(
- '-t', '--target',
- dest='target_dir',
- metavar='dir',
- default=None,
- help='Install packages into <dir>. '
- 'By default this will not replace existing files/folders in '
- '<dir>. Use --upgrade to replace existing packages in <dir> '
- 'with new versions.'
- )
- cmd_opts.add_option(cmdoptions.platform())
- cmd_opts.add_option(cmdoptions.python_version())
- cmd_opts.add_option(cmdoptions.implementation())
- cmd_opts.add_option(cmdoptions.abi())
-
- cmd_opts.add_option(
- '--user',
- dest='use_user_site',
- action='store_true',
- help="Install to the Python user install directory for your "
- "platform. Typically ~/.local/, or %APPDATA%\\Python on "
- "Windows. (See the Python documentation for site.USER_BASE "
- "for full details.)")
- cmd_opts.add_option(
- '--no-user',
- dest='use_user_site',
- action='store_false',
- help=SUPPRESS_HELP)
- cmd_opts.add_option(
- '--root',
- dest='root_path',
- metavar='dir',
- default=None,
- help="Install everything relative to this alternate root "
- "directory.")
- cmd_opts.add_option(
- '--prefix',
- dest='prefix_path',
- metavar='dir',
- default=None,
- help="Installation prefix where lib, bin and other top-level "
- "folders are placed")
-
- cmd_opts.add_option(cmdoptions.build_dir())
-
- cmd_opts.add_option(cmdoptions.src())
-
- cmd_opts.add_option(
- '-U', '--upgrade',
- dest='upgrade',
- action='store_true',
- help='Upgrade all specified packages to the newest available '
- 'version. The handling of dependencies depends on the '
- 'upgrade-strategy used.'
- )
-
- cmd_opts.add_option(
- '--upgrade-strategy',
- dest='upgrade_strategy',
- default='only-if-needed',
- choices=['only-if-needed', 'eager'],
- help='Determines how dependency upgrading should be handled '
- '[default: %default]. '
- '"eager" - dependencies are upgraded regardless of '
- 'whether the currently installed version satisfies the '
- 'requirements of the upgraded package(s). '
- '"only-if-needed" - are upgraded only when they do not '
- 'satisfy the requirements of the upgraded package(s).'
- )
-
- cmd_opts.add_option(
- '--force-reinstall',
- dest='force_reinstall',
- action='store_true',
- help='Reinstall all packages even if they are already '
- 'up-to-date.')
-
- cmd_opts.add_option(
- '-I', '--ignore-installed',
- dest='ignore_installed',
- action='store_true',
- help='Ignore the installed packages (reinstalling instead).')
-
- cmd_opts.add_option(cmdoptions.ignore_requires_python())
- cmd_opts.add_option(cmdoptions.no_build_isolation())
- cmd_opts.add_option(cmdoptions.use_pep517())
- cmd_opts.add_option(cmdoptions.no_use_pep517())
-
- cmd_opts.add_option(cmdoptions.install_options())
- cmd_opts.add_option(cmdoptions.global_options())
-
- cmd_opts.add_option(
- "--compile",
- action="store_true",
- dest="compile",
- default=True,
- help="Compile Python source files to bytecode",
- )
-
- cmd_opts.add_option(
- "--no-compile",
- action="store_false",
- dest="compile",
- help="Do not compile Python source files to bytecode",
- )
-
- cmd_opts.add_option(
- "--no-warn-script-location",
- action="store_false",
- dest="warn_script_location",
- default=True,
- help="Do not warn when installing scripts outside PATH",
- )
- cmd_opts.add_option(
- "--no-warn-conflicts",
- action="store_false",
- dest="warn_about_conflicts",
- default=True,
- help="Do not warn about broken dependencies",
- )
-
- cmd_opts.add_option(cmdoptions.no_binary())
- cmd_opts.add_option(cmdoptions.only_binary())
- cmd_opts.add_option(cmdoptions.prefer_binary())
- cmd_opts.add_option(cmdoptions.no_clean())
- cmd_opts.add_option(cmdoptions.require_hashes())
- cmd_opts.add_option(cmdoptions.progress_bar())
-
- index_opts = cmdoptions.make_option_group(
- cmdoptions.index_group,
- self.parser,
- )
-
- self.parser.insert_option_group(0, index_opts)
- self.parser.insert_option_group(0, cmd_opts)
-
- def run(self, options, args):
- cmdoptions.check_install_build_global(options)
- upgrade_strategy = "to-satisfy-only"
- if options.upgrade:
- upgrade_strategy = options.upgrade_strategy
-
- if options.build_dir:
- options.build_dir = os.path.abspath(options.build_dir)
-
- cmdoptions.check_dist_restriction(options, check_target=True)
-
- if options.python_version:
- python_versions = [options.python_version]
- else:
- python_versions = None
-
- options.src_dir = os.path.abspath(options.src_dir)
- install_options = options.install_options or []
- if options.use_user_site:
- if options.prefix_path:
- raise CommandError(
- "Can not combine '--user' and '--prefix' as they imply "
- "different installation locations"
- )
- if virtualenv_no_global():
- raise InstallationError(
- "Can not perform a '--user' install. User site-packages "
- "are not visible in this virtualenv."
- )
- install_options.append('--user')
- install_options.append('--prefix=')
-
- target_temp_dir = TempDirectory(kind="target")
- if options.target_dir:
- options.ignore_installed = True
- options.target_dir = os.path.abspath(options.target_dir)
- if (os.path.exists(options.target_dir) and not
- os.path.isdir(options.target_dir)):
- raise CommandError(
- "Target path exists but is not a directory, will not "
- "continue."
- )
-
- # Create a target directory for using with the target option
- target_temp_dir.create()
- install_options.append('--home=' + target_temp_dir.path)
-
- global_options = options.global_options or []
-
- with self._build_session(options) as session:
- finder = self._build_package_finder(
- options=options,
- session=session,
- platform=options.platform,
- python_versions=python_versions,
- abi=options.abi,
- implementation=options.implementation,
- )
- build_delete = (not (options.no_clean or options.build_dir))
- wheel_cache = WheelCache(options.cache_dir, options.format_control)
-
- if options.cache_dir and not check_path_owner(options.cache_dir):
- logger.warning(
- "The directory '%s' or its parent directory is not owned "
- "by the current user and caching wheels has been "
- "disabled. check the permissions and owner of that "
- "directory. If executing pip with sudo, you may want "
- "sudo's -H flag.",
- options.cache_dir,
- )
- options.cache_dir = None
-
- with RequirementTracker() as req_tracker, TempDirectory(
- options.build_dir, delete=build_delete, kind="install"
- ) as directory:
- requirement_set = RequirementSet(
- require_hashes=options.require_hashes,
- check_supported_wheels=not options.target_dir,
- )
-
- try:
- self.populate_requirement_set(
- requirement_set, args, options, finder, session,
- self.name, wheel_cache
- )
- preparer = RequirementPreparer(
- build_dir=directory.path,
- src_dir=options.src_dir,
- download_dir=None,
- wheel_download_dir=None,
- progress_bar=options.progress_bar,
- build_isolation=options.build_isolation,
- req_tracker=req_tracker,
- )
-
- resolver = Resolver(
- preparer=preparer,
- finder=finder,
- session=session,
- wheel_cache=wheel_cache,
- use_user_site=options.use_user_site,
- upgrade_strategy=upgrade_strategy,
- force_reinstall=options.force_reinstall,
- ignore_dependencies=options.ignore_dependencies,
- ignore_requires_python=options.ignore_requires_python,
- ignore_installed=options.ignore_installed,
- isolated=options.isolated_mode,
- use_pep517=options.use_pep517
- )
- resolver.resolve(requirement_set)
-
- protect_pip_from_modification_on_windows(
- modifying_pip=requirement_set.has_requirement("pip")
- )
-
- # Consider legacy and PEP517-using requirements separately
- legacy_requirements = []
- pep517_requirements = []
- for req in requirement_set.requirements.values():
- if req.use_pep517:
- pep517_requirements.append(req)
- else:
- legacy_requirements.append(req)
-
- # We don't build wheels for legacy requirements if we
- # don't have wheel installed or we don't have a cache dir
- try:
- import wheel # noqa: F401
- build_legacy = bool(options.cache_dir)
- except ImportError:
- build_legacy = False
-
- wb = WheelBuilder(
- finder, preparer, wheel_cache,
- build_options=[], global_options=[],
- )
-
- # Always build PEP 517 requirements
- build_failures = wb.build(
- pep517_requirements,
- session=session, autobuilding=True
- )
-
- if build_legacy:
- # We don't care about failures building legacy
- # requirements, as we'll fall through to a direct
- # install for those.
- wb.build(
- legacy_requirements,
- session=session, autobuilding=True
- )
-
- # If we're using PEP 517, we cannot do a direct install
- # so we fail here.
- if build_failures:
- raise InstallationError(
- "Could not build wheels for {} which use"
- " PEP 517 and cannot be installed directly".format(
- ", ".join(r.name for r in build_failures)))
-
- to_install = resolver.get_installation_order(
- requirement_set
- )
-
- # Consistency Checking of the package set we're installing.
- should_warn_about_conflicts = (
- not options.ignore_dependencies and
- options.warn_about_conflicts
- )
- if should_warn_about_conflicts:
- self._warn_about_conflicts(to_install)
-
- # Don't warn about script install locations if
- # --target has been specified
- warn_script_location = options.warn_script_location
- if options.target_dir:
- warn_script_location = False
-
- installed = install_given_reqs(
- to_install,
- install_options,
- global_options,
- root=options.root_path,
- home=target_temp_dir.path,
- prefix=options.prefix_path,
- pycompile=options.compile,
- warn_script_location=warn_script_location,
- use_user_site=options.use_user_site,
- )
-
- lib_locations = get_lib_location_guesses(
- user=options.use_user_site,
- home=target_temp_dir.path,
- root=options.root_path,
- prefix=options.prefix_path,
- isolated=options.isolated_mode,
- )
- working_set = pkg_resources.WorkingSet(lib_locations)
-
- reqs = sorted(installed, key=operator.attrgetter('name'))
- items = []
- for req in reqs:
- item = req.name
- try:
- installed_version = get_installed_version(
- req.name, working_set=working_set
- )
- if installed_version:
- item += '-' + installed_version
- except Exception:
- pass
- items.append(item)
- installed = ' '.join(items)
- if installed:
- logger.info('Successfully installed %s', installed)
- except EnvironmentError as error:
- show_traceback = (self.verbosity >= 1)
-
- message = create_env_error_message(
- error, show_traceback, options.use_user_site,
- )
- logger.error(message, exc_info=show_traceback)
-
- return ERROR
- except PreviousBuildDirError:
- options.no_clean = True
- raise
- finally:
- # Clean up
- if not options.no_clean:
- requirement_set.cleanup_files()
- wheel_cache.cleanup()
-
- if options.target_dir:
- self._handle_target_dir(
- options.target_dir, target_temp_dir, options.upgrade
- )
- return requirement_set
-
- def _handle_target_dir(self, target_dir, target_temp_dir, upgrade):
- ensure_dir(target_dir)
-
- # Checking both purelib and platlib directories for installed
- # packages to be moved to target directory
- lib_dir_list = []
-
- with target_temp_dir:
- # Checking both purelib and platlib directories for installed
- # packages to be moved to target directory
- scheme = distutils_scheme('', home=target_temp_dir.path)
- purelib_dir = scheme['purelib']
- platlib_dir = scheme['platlib']
- data_dir = scheme['data']
-
- if os.path.exists(purelib_dir):
- lib_dir_list.append(purelib_dir)
- if os.path.exists(platlib_dir) and platlib_dir != purelib_dir:
- lib_dir_list.append(platlib_dir)
- if os.path.exists(data_dir):
- lib_dir_list.append(data_dir)
-
- for lib_dir in lib_dir_list:
- for item in os.listdir(lib_dir):
- if lib_dir == data_dir:
- ddir = os.path.join(data_dir, item)
- if any(s.startswith(ddir) for s in lib_dir_list[:-1]):
- continue
- target_item_dir = os.path.join(target_dir, item)
- if os.path.exists(target_item_dir):
- if not upgrade:
- logger.warning(
- 'Target directory %s already exists. Specify '
- '--upgrade to force replacement.',
- target_item_dir
- )
- continue
- if os.path.islink(target_item_dir):
- logger.warning(
- 'Target directory %s already exists and is '
- 'a link. Pip will not automatically replace '
- 'links, please remove if replacement is '
- 'desired.',
- target_item_dir
- )
- continue
- if os.path.isdir(target_item_dir):
- shutil.rmtree(target_item_dir)
- else:
- os.remove(target_item_dir)
-
- shutil.move(
- os.path.join(lib_dir, item),
- target_item_dir
- )
-
- def _warn_about_conflicts(self, to_install):
- try:
- package_set, _dep_info = check_install_conflicts(to_install)
- except Exception:
- logger.error("Error checking for conflicts.", exc_info=True)
- return
- missing, conflicting = _dep_info
-
- # NOTE: There is some duplication here from pip check
- for project_name in missing:
- version = package_set[project_name][0]
- for dependency in missing[project_name]:
- logger.critical(
- "%s %s requires %s, which is not installed.",
- project_name, version, dependency[1],
- )
-
- for project_name in conflicting:
- version = package_set[project_name][0]
- for dep_name, dep_version, req in conflicting[project_name]:
- logger.critical(
- "%s %s has requirement %s, but you'll have %s %s which is "
- "incompatible.",
- project_name, version, req, dep_name, dep_version,
- )
-
-
-def get_lib_location_guesses(*args, **kwargs):
- scheme = distutils_scheme('', *args, **kwargs)
- return [scheme['purelib'], scheme['platlib']]
-
-
-def create_env_error_message(error, show_traceback, using_user_site):
- """Format an error message for an EnvironmentError
-
- It may occur anytime during the execution of the install command.
- """
- parts = []
-
- # Mention the error if we are not going to show a traceback
- parts.append("Could not install packages due to an EnvironmentError")
- if not show_traceback:
- parts.append(": ")
- parts.append(str(error))
- else:
- parts.append(".")
-
- # Spilt the error indication from a helper message (if any)
- parts[-1] += "\n"
-
- # Suggest useful actions to the user:
- # (1) using user site-packages or (2) verifying the permissions
- if error.errno == errno.EACCES:
- user_option_part = "Consider using the `--user` option"
- permissions_part = "Check the permissions"
-
- if not using_user_site:
- parts.extend([
- user_option_part, " or ",
- permissions_part.lower(),
- ])
- else:
- parts.append(permissions_part)
- parts.append(".\n")
-
- return "".join(parts).strip() + "\n"
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/list.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/list.py
deleted file mode 100644
index a640274..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/list.py
+++ /dev/null
@@ -1,301 +0,0 @@
-from __future__ import absolute_import
-
-import json
-import logging
-
-from pip._vendor import six
-from pip._vendor.six.moves import zip_longest
-
-from pip._internal.cli import cmdoptions
-from pip._internal.cli.base_command import Command
-from pip._internal.exceptions import CommandError
-from pip._internal.index import PackageFinder
-from pip._internal.utils.misc import (
- dist_is_editable, get_installed_distributions,
-)
-from pip._internal.utils.packaging import get_installer
-
-logger = logging.getLogger(__name__)
-
-
-class ListCommand(Command):
- """
- List installed packages, including editables.
-
- Packages are listed in a case-insensitive sorted order.
- """
- name = 'list'
- usage = """
- %prog [options]"""
- summary = 'List installed packages.'
-
- def __init__(self, *args, **kw):
- super(ListCommand, self).__init__(*args, **kw)
-
- cmd_opts = self.cmd_opts
-
- cmd_opts.add_option(
- '-o', '--outdated',
- action='store_true',
- default=False,
- help='List outdated packages')
- cmd_opts.add_option(
- '-u', '--uptodate',
- action='store_true',
- default=False,
- help='List uptodate packages')
- cmd_opts.add_option(
- '-e', '--editable',
- action='store_true',
- default=False,
- help='List editable projects.')
- cmd_opts.add_option(
- '-l', '--local',
- action='store_true',
- default=False,
- help=('If in a virtualenv that has global access, do not list '
- 'globally-installed packages.'),
- )
- self.cmd_opts.add_option(
- '--user',
- dest='user',
- action='store_true',
- default=False,
- help='Only output packages installed in user-site.')
-
- cmd_opts.add_option(
- '--pre',
- action='store_true',
- default=False,
- help=("Include pre-release and development versions. By default, "
- "pip only finds stable versions."),
- )
-
- cmd_opts.add_option(
- '--format',
- action='store',
- dest='list_format',
- default="columns",
- choices=('columns', 'freeze', 'json'),
- help="Select the output format among: columns (default), freeze, "
- "or json",
- )
-
- cmd_opts.add_option(
- '--not-required',
- action='store_true',
- dest='not_required',
- help="List packages that are not dependencies of "
- "installed packages.",
- )
-
- cmd_opts.add_option(
- '--exclude-editable',
- action='store_false',
- dest='include_editable',
- help='Exclude editable package from output.',
- )
- cmd_opts.add_option(
- '--include-editable',
- action='store_true',
- dest='include_editable',
- help='Include editable package from output.',
- default=True,
- )
- index_opts = cmdoptions.make_option_group(
- cmdoptions.index_group, self.parser
- )
-
- self.parser.insert_option_group(0, index_opts)
- self.parser.insert_option_group(0, cmd_opts)
-
- def _build_package_finder(self, options, index_urls, session):
- """
- Create a package finder appropriate to this list command.
- """
- return PackageFinder(
- find_links=options.find_links,
- index_urls=index_urls,
- allow_all_prereleases=options.pre,
- trusted_hosts=options.trusted_hosts,
- session=session,
- )
-
- def run(self, options, args):
- if options.outdated and options.uptodate:
- raise CommandError(
- "Options --outdated and --uptodate cannot be combined.")
-
- packages = get_installed_distributions(
- local_only=options.local,
- user_only=options.user,
- editables_only=options.editable,
- include_editables=options.include_editable,
- )
-
- # get_not_required must be called firstly in order to find and
- # filter out all dependencies correctly. Otherwise a package
- # can't be identified as requirement because some parent packages
- # could be filtered out before.
- if options.not_required:
- packages = self.get_not_required(packages, options)
-
- if options.outdated:
- packages = self.get_outdated(packages, options)
- elif options.uptodate:
- packages = self.get_uptodate(packages, options)
-
- self.output_package_listing(packages, options)
-
- def get_outdated(self, packages, options):
- return [
- dist for dist in self.iter_packages_latest_infos(packages, options)
- if dist.latest_version > dist.parsed_version
- ]
-
- def get_uptodate(self, packages, options):
- return [
- dist for dist in self.iter_packages_latest_infos(packages, options)
- if dist.latest_version == dist.parsed_version
- ]
-
- def get_not_required(self, packages, options):
- dep_keys = set()
- for dist in packages:
- dep_keys.update(requirement.key for requirement in dist.requires())
- return {pkg for pkg in packages if pkg.key not in dep_keys}
-
- def iter_packages_latest_infos(self, packages, options):
- index_urls = [options.index_url] + options.extra_index_urls
- if options.no_index:
- logger.debug('Ignoring indexes: %s', ','.join(index_urls))
- index_urls = []
-
- with self._build_session(options) as session:
- finder = self._build_package_finder(options, index_urls, session)
-
- for dist in packages:
- typ = 'unknown'
- all_candidates = finder.find_all_candidates(dist.key)
- if not options.pre:
- # Remove prereleases
- all_candidates = [candidate for candidate in all_candidates
- if not candidate.version.is_prerelease]
-
- if not all_candidates:
- continue
- best_candidate = max(all_candidates,
- key=finder._candidate_sort_key)
- remote_version = best_candidate.version
- if best_candidate.location.is_wheel:
- typ = 'wheel'
- else:
- typ = 'sdist'
- # This is dirty but makes the rest of the code much cleaner
- dist.latest_version = remote_version
- dist.latest_filetype = typ
- yield dist
-
- def output_package_listing(self, packages, options):
- packages = sorted(
- packages,
- key=lambda dist: dist.project_name.lower(),
- )
- if options.list_format == 'columns' and packages:
- data, header = format_for_columns(packages, options)
- self.output_package_listing_columns(data, header)
- elif options.list_format == 'freeze':
- for dist in packages:
- if options.verbose >= 1:
- logger.info("%s==%s (%s)", dist.project_name,
- dist.version, dist.location)
- else:
- logger.info("%s==%s", dist.project_name, dist.version)
- elif options.list_format == 'json':
- logger.info(format_for_json(packages, options))
-
- def output_package_listing_columns(self, data, header):
- # insert the header first: we need to know the size of column names
- if len(data) > 0:
- data.insert(0, header)
-
- pkg_strings, sizes = tabulate(data)
-
- # Create and add a separator.
- if len(data) > 0:
- pkg_strings.insert(1, " ".join(map(lambda x: '-' * x, sizes)))
-
- for val in pkg_strings:
- logger.info(val)
-
-
-def tabulate(vals):
- # From pfmoore on GitHub:
- # https://github.com/pypa/pip/issues/3651#issuecomment-216932564
- assert len(vals) > 0
-
- sizes = [0] * max(len(x) for x in vals)
- for row in vals:
- sizes = [max(s, len(str(c))) for s, c in zip_longest(sizes, row)]
-
- result = []
- for row in vals:
- display = " ".join([str(c).ljust(s) if c is not None else ''
- for s, c in zip_longest(sizes, row)])
- result.append(display)
-
- return result, sizes
-
-
-def format_for_columns(pkgs, options):
- """
- Convert the package data into something usable
- by output_package_listing_columns.
- """
- running_outdated = options.outdated
- # Adjust the header for the `pip list --outdated` case.
- if running_outdated:
- header = ["Package", "Version", "Latest", "Type"]
- else:
- header = ["Package", "Version"]
-
- data = []
- if options.verbose >= 1 or any(dist_is_editable(x) for x in pkgs):
- header.append("Location")
- if options.verbose >= 1:
- header.append("Installer")
-
- for proj in pkgs:
- # if we're working on the 'outdated' list, separate out the
- # latest_version and type
- row = [proj.project_name, proj.version]
-
- if running_outdated:
- row.append(proj.latest_version)
- row.append(proj.latest_filetype)
-
- if options.verbose >= 1 or dist_is_editable(proj):
- row.append(proj.location)
- if options.verbose >= 1:
- row.append(get_installer(proj))
-
- data.append(row)
-
- return data, header
-
-
-def format_for_json(packages, options):
- data = []
- for dist in packages:
- info = {
- 'name': dist.project_name,
- 'version': six.text_type(dist.version),
- }
- if options.verbose >= 1:
- info['location'] = dist.location
- info['installer'] = get_installer(dist)
- if options.outdated:
- info['latest_version'] = six.text_type(dist.latest_version)
- info['latest_filetype'] = dist.latest_filetype
- data.append(info)
- return json.dumps(data)
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/search.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/search.py
deleted file mode 100644
index c157a31..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/search.py
+++ /dev/null
@@ -1,135 +0,0 @@
-from __future__ import absolute_import
-
-import logging
-import sys
-import textwrap
-from collections import OrderedDict
-
-from pip._vendor import pkg_resources
-from pip._vendor.packaging.version import parse as parse_version
-# NOTE: XMLRPC Client is not annotated in typeshed as on 2017-07-17, which is
-# why we ignore the type on this import
-from pip._vendor.six.moves import xmlrpc_client # type: ignore
-
-from pip._internal.cli.base_command import Command
-from pip._internal.cli.status_codes import NO_MATCHES_FOUND, SUCCESS
-from pip._internal.download import PipXmlrpcTransport
-from pip._internal.exceptions import CommandError
-from pip._internal.models.index import PyPI
-from pip._internal.utils.compat import get_terminal_size
-from pip._internal.utils.logging import indent_log
-
-logger = logging.getLogger(__name__)
-
-
-class SearchCommand(Command):
- """Search for PyPI packages whose name or summary contains <query>."""
- name = 'search'
- usage = """
- %prog [options] <query>"""
- summary = 'Search PyPI for packages.'
- ignore_require_venv = True
-
- def __init__(self, *args, **kw):
- super(SearchCommand, self).__init__(*args, **kw)
- self.cmd_opts.add_option(
- '-i', '--index',
- dest='index',
- metavar='URL',
- default=PyPI.pypi_url,
- help='Base URL of Python Package Index (default %default)')
-
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- if not args:
- raise CommandError('Missing required argument (search query).')
- query = args
- pypi_hits = self.search(query, options)
- hits = transform_hits(pypi_hits)
-
- terminal_width = None
- if sys.stdout.isatty():
- terminal_width = get_terminal_size()[0]
-
- print_results(hits, terminal_width=terminal_width)
- if pypi_hits:
- return SUCCESS
- return NO_MATCHES_FOUND
-
- def search(self, query, options):
- index_url = options.index
- with self._build_session(options) as session:
- transport = PipXmlrpcTransport(index_url, session)
- pypi = xmlrpc_client.ServerProxy(index_url, transport)
- hits = pypi.search({'name': query, 'summary': query}, 'or')
- return hits
-
-
-def transform_hits(hits):
- """
- The list from pypi is really a list of versions. We want a list of
- packages with the list of versions stored inline. This converts the
- list from pypi into one we can use.
- """
- packages = OrderedDict()
- for hit in hits:
- name = hit['name']
- summary = hit['summary']
- version = hit['version']
-
- if name not in packages.keys():
- packages[name] = {
- 'name': name,
- 'summary': summary,
- 'versions': [version],
- }
- else:
- packages[name]['versions'].append(version)
-
- # if this is the highest version, replace summary and score
- if version == highest_version(packages[name]['versions']):
- packages[name]['summary'] = summary
-
- return list(packages.values())
-
-
-def print_results(hits, name_column_width=None, terminal_width=None):
- if not hits:
- return
- if name_column_width is None:
- name_column_width = max([
- len(hit['name']) + len(highest_version(hit.get('versions', ['-'])))
- for hit in hits
- ]) + 4
-
- installed_packages = [p.project_name for p in pkg_resources.working_set]
- for hit in hits:
- name = hit['name']
- summary = hit['summary'] or ''
- latest = highest_version(hit.get('versions', ['-']))
- if terminal_width is not None:
- target_width = terminal_width - name_column_width - 5
- if target_width > 10:
- # wrap and indent summary to fit terminal
- summary = textwrap.wrap(summary, target_width)
- summary = ('\n' + ' ' * (name_column_width + 3)).join(summary)
-
- line = '%-*s - %s' % (name_column_width,
- '%s (%s)' % (name, latest), summary)
- try:
- logger.info(line)
- if name in installed_packages:
- dist = pkg_resources.get_distribution(name)
- with indent_log():
- if dist.version == latest:
- logger.info('INSTALLED: %s (latest)', dist.version)
- else:
- logger.info('INSTALLED: %s', dist.version)
- logger.info('LATEST: %s', latest)
- except UnicodeEncodeError:
- pass
-
-
-def highest_version(versions):
- return max(versions, key=parse_version)
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/show.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/show.py
deleted file mode 100644
index f92c9bc..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/show.py
+++ /dev/null
@@ -1,168 +0,0 @@
-from __future__ import absolute_import
-
-import logging
-import os
-from email.parser import FeedParser # type: ignore
-
-from pip._vendor import pkg_resources
-from pip._vendor.packaging.utils import canonicalize_name
-
-from pip._internal.cli.base_command import Command
-from pip._internal.cli.status_codes import ERROR, SUCCESS
-
-logger = logging.getLogger(__name__)
-
-
-class ShowCommand(Command):
- """
- Show information about one or more installed packages.
-
- The output is in RFC-compliant mail header format.
- """
- name = 'show'
- usage = """
- %prog [options] <package> ..."""
- summary = 'Show information about installed packages.'
- ignore_require_venv = True
-
- def __init__(self, *args, **kw):
- super(ShowCommand, self).__init__(*args, **kw)
- self.cmd_opts.add_option(
- '-f', '--files',
- dest='files',
- action='store_true',
- default=False,
- help='Show the full list of installed files for each package.')
-
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- if not args:
- logger.warning('ERROR: Please provide a package name or names.')
- return ERROR
- query = args
-
- results = search_packages_info(query)
- if not print_results(
- results, list_files=options.files, verbose=options.verbose):
- return ERROR
- return SUCCESS
-
-
-def search_packages_info(query):
- """
- Gather details from installed distributions. Print distribution name,
- version, location, and installed files. Installed files requires a
- pip generated 'installed-files.txt' in the distributions '.egg-info'
- directory.
- """
- installed = {}
- for p in pkg_resources.working_set:
- installed[canonicalize_name(p.project_name)] = p
-
- query_names = [canonicalize_name(name) for name in query]
-
- for dist in [installed[pkg] for pkg in query_names if pkg in installed]:
- package = {
- 'name': dist.project_name,
- 'version': dist.version,
- 'location': dist.location,
- 'requires': [dep.project_name for dep in dist.requires()],
- }
- file_list = None
- metadata = None
- if isinstance(dist, pkg_resources.DistInfoDistribution):
- # RECORDs should be part of .dist-info metadatas
- if dist.has_metadata('RECORD'):
- lines = dist.get_metadata_lines('RECORD')
- paths = [l.split(',')[0] for l in lines]
- paths = [os.path.join(dist.location, p) for p in paths]
- file_list = [os.path.relpath(p, dist.location) for p in paths]
-
- if dist.has_metadata('METADATA'):
- metadata = dist.get_metadata('METADATA')
- else:
- # Otherwise use pip's log for .egg-info's
- if dist.has_metadata('installed-files.txt'):
- paths = dist.get_metadata_lines('installed-files.txt')
- paths = [os.path.join(dist.egg_info, p) for p in paths]
- file_list = [os.path.relpath(p, dist.location) for p in paths]
-
- if dist.has_metadata('PKG-INFO'):
- metadata = dist.get_metadata('PKG-INFO')
-
- if dist.has_metadata('entry_points.txt'):
- entry_points = dist.get_metadata_lines('entry_points.txt')
- package['entry_points'] = entry_points
-
- if dist.has_metadata('INSTALLER'):
- for line in dist.get_metadata_lines('INSTALLER'):
- if line.strip():
- package['installer'] = line.strip()
- break
-
- # @todo: Should pkg_resources.Distribution have a
- # `get_pkg_info` method?
- feed_parser = FeedParser()
- feed_parser.feed(metadata)
- pkg_info_dict = feed_parser.close()
- for key in ('metadata-version', 'summary',
- 'home-page', 'author', 'author-email', 'license'):
- package[key] = pkg_info_dict.get(key)
-
- # It looks like FeedParser cannot deal with repeated headers
- classifiers = []
- for line in metadata.splitlines():
- if line.startswith('Classifier: '):
- classifiers.append(line[len('Classifier: '):])
- package['classifiers'] = classifiers
-
- if file_list:
- package['files'] = sorted(file_list)
- yield package
-
-
-def print_results(distributions, list_files=False, verbose=False):
- """
- Print the informations from installed distributions found.
- """
- results_printed = False
- for i, dist in enumerate(distributions):
- results_printed = True
- if i > 0:
- logger.info("---")
-
- name = dist.get('name', '')
- required_by = [
- pkg.project_name for pkg in pkg_resources.working_set
- if name in [required.name for required in pkg.requires()]
- ]
-
- logger.info("Name: %s", name)
- logger.info("Version: %s", dist.get('version', ''))
- logger.info("Summary: %s", dist.get('summary', ''))
- logger.info("Home-page: %s", dist.get('home-page', ''))
- logger.info("Author: %s", dist.get('author', ''))
- logger.info("Author-email: %s", dist.get('author-email', ''))
- logger.info("License: %s", dist.get('license', ''))
- logger.info("Location: %s", dist.get('location', ''))
- logger.info("Requires: %s", ', '.join(dist.get('requires', [])))
- logger.info("Required-by: %s", ', '.join(required_by))
-
- if verbose:
- logger.info("Metadata-Version: %s",
- dist.get('metadata-version', ''))
- logger.info("Installer: %s", dist.get('installer', ''))
- logger.info("Classifiers:")
- for classifier in dist.get('classifiers', []):
- logger.info(" %s", classifier)
- logger.info("Entry-points:")
- for entry in dist.get('entry_points', []):
- logger.info(" %s", entry.strip())
- if list_files:
- logger.info("Files:")
- for line in dist.get('files', []):
- logger.info(" %s", line.strip())
- if "files" not in dist:
- logger.info("Cannot locate installed-files.txt")
- return results_printed
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/uninstall.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/uninstall.py
deleted file mode 100644
index 0cd6f54..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/uninstall.py
+++ /dev/null
@@ -1,78 +0,0 @@
-from __future__ import absolute_import
-
-from pip._vendor.packaging.utils import canonicalize_name
-
-from pip._internal.cli.base_command import Command
-from pip._internal.exceptions import InstallationError
-from pip._internal.req import parse_requirements
-from pip._internal.req.constructors import install_req_from_line
-from pip._internal.utils.misc import protect_pip_from_modification_on_windows
-
-
-class UninstallCommand(Command):
- """
- Uninstall packages.
-
- pip is able to uninstall most installed packages. Known exceptions are:
-
- - Pure distutils packages installed with ``python setup.py install``, which
- leave behind no metadata to determine what files were installed.
- - Script wrappers installed by ``python setup.py develop``.
- """
- name = 'uninstall'
- usage = """
- %prog [options] <package> ...
- %prog [options] -r <requirements file> ..."""
- summary = 'Uninstall packages.'
-
- def __init__(self, *args, **kw):
- super(UninstallCommand, self).__init__(*args, **kw)
- self.cmd_opts.add_option(
- '-r', '--requirement',
- dest='requirements',
- action='append',
- default=[],
- metavar='file',
- help='Uninstall all the packages listed in the given requirements '
- 'file. This option can be used multiple times.',
- )
- self.cmd_opts.add_option(
- '-y', '--yes',
- dest='yes',
- action='store_true',
- help="Don't ask for confirmation of uninstall deletions.")
-
- self.parser.insert_option_group(0, self.cmd_opts)
-
- def run(self, options, args):
- with self._build_session(options) as session:
- reqs_to_uninstall = {}
- for name in args:
- req = install_req_from_line(
- name, isolated=options.isolated_mode,
- )
- if req.name:
- reqs_to_uninstall[canonicalize_name(req.name)] = req
- for filename in options.requirements:
- for req in parse_requirements(
- filename,
- options=options,
- session=session):
- if req.name:
- reqs_to_uninstall[canonicalize_name(req.name)] = req
- if not reqs_to_uninstall:
- raise InstallationError(
- 'You must give at least one requirement to %(name)s (see '
- '"pip help %(name)s")' % dict(name=self.name)
- )
-
- protect_pip_from_modification_on_windows(
- modifying_pip="pip" in reqs_to_uninstall
- )
-
- for req in reqs_to_uninstall.values():
- uninstall_pathset = req.uninstall(
- auto_confirm=options.yes, verbose=self.verbosity > 0,
- )
- if uninstall_pathset:
- uninstall_pathset.commit()
diff --git a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/wheel.py b/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/wheel.py
deleted file mode 100644
index cd72a3d..0000000
--- a/venv/Lib/site-packages/pip-19.0.3-py3.7.egg/pip/_internal/commands/wheel.py
+++ /dev/null
@@ -1,186 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import absolute_import
-
-import logging
-import os
-
-from pip._internal.cache import WheelCache
-from pip._internal.cli import cmdoptions
-from pip._internal.cli.base_command import RequirementCommand
-from pip._internal.exceptions import CommandError, PreviousBuildDirError
-from pip._internal.operations.prepare import RequirementPreparer
-from pip._internal.req import RequirementSet
-from pip._internal.req.req_tracker import RequirementTracker
-from pip._internal.resolve import Resolver
-from pip._internal.utils.temp_dir import TempDirectory
-from pip._internal.wheel import WheelBuilder
-
-logger = logging.getLogger(__name__)
-
-
-class WheelCommand(RequirementCommand):
- """
- Build Wheel archives for your requirements and dependencies.
-
- Wheel is a built-package format, and offers the advantage of not
- recompiling your software during every install. For more details, see the
- wheel docs: https://wheel.readthedocs.io/en/latest/
-
- Requirements: setuptools>=0.8, and wheel.
-
- 'pip wheel' uses the bdist_wheel setuptools extension from the wheel
- package to build individual wheels.
-
- """
-
- name = 'wheel'
- usage = """
- %prog [options] <requirement specifier> ...
- %prog [options] -r <requirements file> ...
- %prog [options] [-e] <vcs project url> ...
- %prog [options] [-e] <local project path> ...
- %prog [options] <archive url/path> ..."""
-
- summary = 'Build wheels from your requirements.'
-
- def __init__(self, *args, **kw):
- super(WheelCommand, self).__init__(*args, **kw)
-
- cmd_opts = self.cmd_opts
-
- cmd_opts.add_option(
- '-w', '--wheel-dir',
- dest='wheel_dir',
- metavar='dir',
- default=os.curdir,
- help=("Build wheels into <dir>, where the default is the "
- "current working directory."),
- )
- cmd_opts.add_option(cmdoptions.no_binary())
- cmd_opts.add_option(cmdoptions.only_binary())
- cmd_opts.add_option(cmdoptions.prefer_binary())
- cmd_opts.add_option(
- '--build-option',
- dest='build_options',
- metavar='options',
- action='append',
- help="Extra arguments to be supplied to 'setup.py bdist_wheel'.",
- )
- cmd_opts.add_option(cmdoptions.no_build_isolation())
- cmd_opts.add_option(cmdoptions.use_pep517())
- cmd_opts.add_option(cmdoptions.no_use_pep517())
- cmd_opts.add_option(cmdoptions.constraints())
- cmd_opts.add_option(cmdoptions.editable())
- cmd_opts.add_option(cmdoptions.requirements())
- cmd_opts.add_option(cmdoptions.src())
- cmd_opts.add_option(cmdoptions.ignore_requires_python())
- cmd_opts.add_option(cmdoptions.no_deps())
- cmd_opts.add_option(cmdoptions.build_dir())
- cmd_opts.add_option(cmdoptions.progress_bar())
-
- cmd_opts.add_option(
- '--global-option',
- dest='global_options',
- action='append',
- metavar='options',
- help="Extra global options to be supplied to the setup.py "
- "call before the 'bdist_wheel' command.")
-
- cmd_opts.add_option(
- '--pre',
- action='store_true',
- default=False,
- help=("Include pre-release and development versions. By default, "
- "pip only finds stable versions."),
- )
-
- cmd_opts.add_option(cmdoptions.no_clean())
- cmd_opts.add_option(cmdoptions.require_hashes())
-
- index_opts = cmdoptions.make_option_group(
- cmdoptions.index_group,
- self.parser,
- )
-
- self.parser.insert_option_group(0, index_opts)
- self.parser.insert_option_group(0, cmd_opts)
-
- def run(self, options, args):
- cmdoptions.check_install_build_global(options)
-
- index_urls = [options.index_url] + options.extra_index_urls
- if options.no_index:
- logger.debug('Ignoring indexes: %s', ','.join(index_urls))
- index_urls = []
-
- if options.build_dir:
- options.build_dir = os.path.abspath(options.build_dir)
-
- options.src_dir = os.path.abspath(options.src_dir)
-
- with self._build_session(options) as session:
- finder = self._build_package_finder(options, session)
- build_delete = (not (options.no_clean or options.build_dir))
- wheel_cache = WheelCache(options.cache_dir, options.format_control)
-
- with RequirementTracker() as req_tracker, TempDirectory(
- options.build_dir, delete=build_delete, kind="wheel"
- ) as directory:
-
- requirement_set = RequirementSet(
- require_hashes=options.require_hashes,
- )
-
- try:
- self.populate_requirement_set(
- requirement_set, args, options, finder, session,
- self.name, wheel_cache
- )
-
- preparer = RequirementPreparer(
- build_dir=directory.path,
- src_dir=options.src_dir,
- download_dir=None,
- wheel_download_dir=options.wheel_dir,
- progress_bar=options.progress_bar,
- build_isolation=options.build_isolation,
- req_tracker=req_tracker,
- )
-
- resolver = Resolver(
- preparer=preparer,
- finder=finder,
- session=session,
- wheel_cache=wheel_cache,
- use_user_site=False,
- upgrade_strategy="to-satisfy-only",
- force_reinstall=False,
- ignore_dependencies=options.ignore_dependencies,
- ignore_requires_python=options.ignore_requires_python,
- ignore_installed=True,
- isolated=options.isolated_mode,
- use_pep517=options.use_pep517
- )
- resolver.resolve(requirement_set)
-
- # build wheels
- wb = WheelBuilder(
- finder, preparer, wheel_cache,
- build_options=options.build_options or [],
- global_options=options.global_options or [],
- no_clean=options.no_clean,
- )
- build_failures = wb.build(
- requirement_set.requirements.values(), session=session,
- )
- if len(build_failures) != 0:
- raise CommandError(
- "Failed to build one or more wheels"
- )
- except PreviousBuildDirError:
- options.no_clean = True
- raise
- finally:
- if not options.no_clean:
- requirement_set.cleanup_files()
- wheel_cache.cleanup()