From c2ad46d60e8a7c3e8f1cd4e41ad5656033a45e7d Mon Sep 17 00:00:00 2001 From: Brent Yi Date: Thu, 1 Dec 2022 07:36:41 -0800 Subject: [PATCH] More informative completion install error messages (#1068) More informative completion install errors --- scripts/completions/install.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/scripts/completions/install.py b/scripts/completions/install.py index adfb76e7c..636ed1979 100755 --- a/scripts/completions/install.py +++ b/scripts/completions/install.py @@ -95,13 +95,21 @@ def _generate_completion( target_path = completions_dir / shell / target_name # Generate and write the new completion. - new = subprocess.run( - args=args, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - encoding="utf8", - check=True, - ).stdout + try: + new = subprocess.run( + args=args, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + encoding="utf8", + check=True, + ).stdout + except subprocess.CalledProcessError as e: + CONSOLE.log(f":x: Completion script generation failed: {args}") + if e.stdout is not None and len(e.stdout) > 0: + CONSOLE.log(e.stdout) + if e.stderr is not None and len(e.stderr) > 0: + CONSOLE.log(e.stderr) + raise e target_path.parent.mkdir(parents=True, exist_ok=True) if not target_path.exists():