""" python scripts/release_branch.py anthropic bagatur """ import glob import tomllib import toml import subprocess import sys def main(*args): pkg = args[1] if len(args) >= 2: user = args[2] else: user = "auto" for path in glob.glob("./libs/**/pyproject.toml", recursive=True): if pkg in path: break with open(path, "rb") as f: pyproject = tomllib.load(f) major, minor, patch = pyproject["tool"]["poetry"]["version"].split(".") patch = str(int(patch) + 1) bumped = ".".join((major, minor, patch)) pyproject["tool"]["poetry"]["version"] = bumped with open(path, "w") as f: toml.dump(pyproject, f) branch = f"{user}/{pkg}_{bumped.replace('.', '_')}" print( subprocess.run( f"git checkout -b {branch}; git commit -am '{pkg}[patch]: Release {bumped}'; git push -u origin {branch}", shell=True, capture_output=True, text=True, ) ) if __name__ == "__main__": main(*sys.argv)