diff --git a/news/3170.feature b/news/3170.feature new file mode 100644 index 00000000..b8bc5218 --- /dev/null +++ b/news/3170.feature @@ -0,0 +1 @@ +Do not show error but success for running pipenv uninstall --all in a fresh virtuanlenv diff --git a/pipenv/core.py b/pipenv/core.py index 80e3ffdb..6e25b733 100644 --- a/pipenv/core.py +++ b/pipenv/core.py @@ -1135,10 +1135,18 @@ def do_purge(bare=False, downloads=False, allow_global=False): # Remove setuptools, pip, etc from targets for removal to_remove = installed - bad_pkgs + # Skip purging if there is no packages which needs to be removed + if not to_remove: + if not bare: + click.echo("Found 0 installed package, skip purging.") + click.echo(crayons.green("Environment now purged and fresh!")) + return installed + if not bare: click.echo( fix_utf8("Found {0} installed package(s), purging…".format(len(to_remove))) ) + command = "{0} uninstall {1} -y".format( escape_grouped_arguments(which_pip(allow_global=allow_global)), " ".join(to_remove),