From 7e7b66fc9229e0bbdc748d3b8fd6f885fd262191 Mon Sep 17 00:00:00 2001 From: Frost Ming Date: Fri, 29 Jul 2022 09:32:50 +0800 Subject: [PATCH] fix: the breakage of completion script after 2.0 Fix #1283 --- news/1283.bugfix.md | 1 + pdm/cli/commands/completion.py | 3 ++- pdm/project/core.py | 4 +++- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 news/1283.bugfix.md diff --git a/news/1283.bugfix.md b/news/1283.bugfix.md new file mode 100644 index 00000000..a2a48b3c --- /dev/null +++ b/news/1283.bugfix.md @@ -0,0 +1 @@ +Fix a bug that completion scripts are interpreted as rich markups. diff --git a/pdm/cli/commands/completion.py b/pdm/cli/commands/completion.py index d874a340..77a035ae 100644 --- a/pdm/cli/commands/completion.py +++ b/pdm/cli/commands/completion.py @@ -33,4 +33,5 @@ class Command(BaseCommand): completion = importlib.resources.read_text( "pdm.cli.completions", f"pdm.{suffix}" ) - project.core.ui.echo(completion.replace("%{python_executable}", sys.executable)) + # Can't use rich print or otherwise the rich markups will be interpreted + print(completion.replace("%{python_executable}", sys.executable)) diff --git a/pdm/project/core.py b/pdm/project/core.py index 93e7af21..4a7e3d22 100644 --- a/pdm/project/core.py +++ b/pdm/project/core.py @@ -281,7 +281,9 @@ class Project: backend: str = self.config["venv.backend"] venv_backend = BACKENDS[backend](self, None) - path = venv_backend.create(in_project=self.config["venv.in_project"]) + path = venv_backend.create( + force=True, in_project=self.config["venv.in_project"] + ) self.core.ui.echo( f"Virtualenv is created successfully at [green]{path}[/]", err=True ) -- GitLab