diff --git a/pipenv/cli/command.py b/pipenv/cli/command.py index 247672d811..29fd85ed65 100644 --- a/pipenv/cli/command.py +++ b/pipenv/cli/command.py @@ -219,7 +219,7 @@ def install(state, **kwargs): editable_packages=state.installstate.editables, site_packages=state.site_packages, extra_pip_args=state.installstate.extra_pip_args, - categories=state.installstate.categories, + pipfile_categories=state.installstate.categories, skip_lock=state.installstate.skip_lock, ) diff --git a/pipenv/routines/install.py b/pipenv/routines/install.py index 19b0390c79..e4c7b572aa 100644 --- a/pipenv/routines/install.py +++ b/pipenv/routines/install.py @@ -252,7 +252,7 @@ def do_install( deploy=False, site_packages=None, extra_pip_args=None, - categories=None, + pipfile_categories=None, skip_lock=False, ): requirements_directory = fileutils.create_tracked_tempdir( @@ -263,10 +263,10 @@ def do_install( editable_packages = editable_packages if editable_packages else [] package_args = [p for p in packages if p] + [p for p in editable_packages if p] new_packages = [] - if dev and not categories: - categories = ["packages", "dev-packages"] - elif not categories: - categories = ["packages"] + if dev and not pipfile_categories: + pipfile_categories = ["packages", "dev-packages"] + elif not pipfile_categories: + pipfile_categories = ["packages"] ensure_project( project, @@ -277,7 +277,7 @@ def do_install( skip_requirements=False, pypi_mirror=pypi_mirror, site_packages=site_packages, - categories=categories, + pipfile_categories=pipfile_categories, ) do_install_validations( @@ -290,7 +290,7 @@ def do_install( requirementstxt=requirementstxt, pre=pre, deploy=deploy, - categories=categories, + categories=pipfile_categories, skip_lock=skip_lock, ) @@ -313,11 +313,11 @@ def do_install( system=system, pypi_mirror=pypi_mirror, extra_pip_args=extra_pip_args, - categories=categories, + categories=pipfile_categories, perform_upgrades=not skip_lock, index=index, ) - if not dev and len(categories) == 1 and packages_installed: + if not dev and len(pipfile_categories) == 1 and packages_installed: sys.exit(0) try: @@ -328,7 +328,7 @@ def do_install( requirements_dir=requirements_directory, pypi_mirror=pypi_mirror, extra_pip_args=extra_pip_args, - categories=categories, + categories=pipfile_categories, skip_lock=skip_lock, ) except Exception as e: diff --git a/pipenv/routines/update.py b/pipenv/routines/update.py index 7f84203ee4..1834d04590 100644 --- a/pipenv/routines/update.py +++ b/pipenv/routines/update.py @@ -198,6 +198,12 @@ def upgrade( categories = ["develop"] else: categories = ["default"] + elif "dev-packages" in categories: + categories.remove("dev-packages") + categories.insert(0, "develop") + elif "packages" in categories: + categories.remove("packages") + categories.insert(0, "default") # Get current dependency graph try: diff --git a/pipenv/utils/pipfile.py b/pipenv/utils/pipfile.py index 93eb0f69cc..78e43c55ce 100644 --- a/pipenv/utils/pipfile.py +++ b/pipenv/utils/pipfile.py @@ -64,7 +64,7 @@ def find_pipfile(max_depth=3): def ensure_pipfile( - project, validate=True, skip_requirements=False, system=False, categories=None + project, validate=True, skip_requirements=False, system=False, pipfile_categories=None ): """Creates a Pipfile for the project, if it doesn't exist.""" @@ -96,7 +96,7 @@ def ensure_pipfile( ) as st: # Import requirements.txt. try: - import_requirements(project, categories=categories) + import_requirements(project, categories=pipfile_categories) except Exception: err.print(environments.PIPENV_SPINNER_FAIL_TEXT.format("Failed...")) else: diff --git a/pipenv/utils/project.py b/pipenv/utils/project.py index dffc9e2cbf..b6e58119fd 100644 --- a/pipenv/utils/project.py +++ b/pipenv/utils/project.py @@ -31,7 +31,7 @@ def ensure_project( skip_requirements=False, pypi_mirror=None, clear=False, - categories=None, + pipfile_categories=None, ): """Ensures both Pipfile and virtualenv exist for the project.""" @@ -91,7 +91,7 @@ def ensure_project( validate=validate, skip_requirements=skip_requirements, system=system, - categories=categories, + pipfile_categories=pipfile_categories, ) os.environ["PIP_PYTHON_PATH"] = project.python(system=system)