match_face/.venv/Lib/site-packages/pipenv/routines/sync.py

68 lines
1.8 KiB
Python
Raw Normal View History

import os
from pipenv import exceptions
from pipenv.routines.install import do_init, do_install_dependencies
from pipenv.utils import console, fileutils
from pipenv.utils.project import ensure_project
def do_sync(
project,
dev=False,
python=None,
bare=False,
clear=False,
pypi_mirror=None,
system=False,
deploy=False,
extra_pip_args=None,
categories=None,
site_packages=False,
):
# The lock file needs to exist because sync won't write to it.
if not project.lockfile_exists:
raise exceptions.LockfileNotFound("Pipfile.lock")
# Ensure that virtualenv is available if not system.
ensure_project(
project,
python=python,
validate=False,
system=system,
deploy=deploy,
pypi_mirror=pypi_mirror,
clear=clear,
site_packages=site_packages,
)
# Install everything.
requirements_dir = fileutils.create_tracked_tempdir(
suffix="-requirements", prefix="pipenv-"
)
if system:
project.s.PIPENV_USE_SYSTEM = True
os.environ["PIPENV_USE_SYSTEM"] = "1"
do_init(
project,
allow_global=system,
requirements_dir=requirements_dir,
ignore_pipfile=True, # Don't check if Pipfile and lock match.
skip_lock=True, # Don't re-lock
pypi_mirror=pypi_mirror,
deploy=deploy,
system=system,
extra_pip_args=extra_pip_args,
categories=categories,
)
do_install_dependencies(
project,
dev=dev,
allow_global=system,
requirements_dir=requirements_dir,
pypi_mirror=pypi_mirror,
extra_pip_args=extra_pip_args,
categories=categories,
)
if not bare:
console.print("[green]All dependencies are now up-to-date![/green]")