From f511f1f4e9f64dd2b175813f66f6e63cb58d3ba6 Mon Sep 17 00:00:00 2001 From: Samuel T Date: Fri, 30 Sep 2022 10:49:58 -0400 Subject: [PATCH] Allow `create_baseline_stubs.py` to add packages to existing stub (#8809) --- scripts/create_baseline_stubs.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/scripts/create_baseline_stubs.py b/scripts/create_baseline_stubs.py index 465ae4805..76bb6fb79 100755 --- a/scripts/create_baseline_stubs.py +++ b/scripts/create_baseline_stubs.py @@ -62,15 +62,16 @@ def run_isort(stub_dir: str) -> None: def create_metadata(stub_dir: str, version: str) -> None: """Create a METADATA.toml file.""" - m = re.match(r"[0-9]+.[0-9]+", version) - if m is None: + match = re.match(r"[0-9]+.[0-9]+", version) + if match is None: sys.exit(f"Error: Cannot parse version number: {version}") - fnam = os.path.join(stub_dir, "METADATA.toml") - version = m.group(0) - assert not os.path.exists(fnam) - print(f"Writing {fnam}") - with open(fnam, "w") as f: - f.write( + filename = os.path.join(stub_dir, "METADATA.toml") + version = match.group(0) + if os.path.exists(filename): + return + print(f"Writing {filename}") + with open(filename, "w") as file: + file.write( f"""\ version = "{version}.*" @@ -153,8 +154,9 @@ def main() -> None: project, version = info stub_dir = os.path.join("stubs", project) - if os.path.exists(stub_dir): - sys.exit(f"Error: {stub_dir} already exists (delete it first)") + package_dir = os.path.join(stub_dir, package) + if os.path.exists(package_dir): + sys.exit(f"Error: {package_dir} already exists (delete it first)") run_stubgen(package, stub_dir)