code: def do_purge(bare=False, downloads=False, allow_global=False):
      
  
      if downloads:
          if not bare:
              click.echo(crayons.normal(fix_utf8("Clearing out downloads directory…"), bold=True))
          vistir.path.rmtree(project.download_location)
          return
  
      # Remove comments from the output, if any.
      installed = set([
          pep423_name(pkg.project_name) for pkg in project.environment.get_installed_packages()
      ])
      bad_pkgs = set([pep423_name(pkg) for pkg in BAD_PACKAGES])
      # 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),
      )
      if environments.is_verbose():
          click.echo("$ {0}".format(command))
      c = delegator.run(command)
      if c.return_code != 0:
          raise exceptions.UninstallError(installed, command, c.out + c.err, c.return_code)
      if not bare:
          click.echo(crayons.blue(c.out))
          click.echo(crayons.green("Environment now purged and fresh!"))
      return installed
docs: Executes the purge functionality.