mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-01-06 21:34:00 -05:00
45 lines
1.1 KiB
Python
Executable File
45 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
# Update the version in the toplevel Cargo.toml for DarkFi, and then run this
|
|
# script to update all the other Cargo.toml files.
|
|
import subprocess
|
|
|
|
from os import chdir
|
|
from subprocess import PIPE
|
|
|
|
import tomlkit
|
|
|
|
|
|
def update_package_version(filename, version):
|
|
with open(filename) as f:
|
|
content = f.read()
|
|
|
|
p = tomlkit.parse(content)
|
|
p["package"]["version"] = version
|
|
|
|
with open(filename, "w") as f:
|
|
f.write(tomlkit.dumps(p))
|
|
|
|
|
|
def main():
|
|
toplevel = subprocess.run(["git", "rev-parse", "--show-toplevel"],
|
|
capture_output=True)
|
|
toplevel = toplevel.stdout.decode().strip()
|
|
chdir(toplevel)
|
|
|
|
with open("Cargo.toml") as f:
|
|
content = f.read()
|
|
|
|
p = tomlkit.parse(content)
|
|
version = p["package"]["version"]
|
|
|
|
find_output = subprocess.run(
|
|
["find", ".", "-type", "f", "-name", "Cargo.toml"], stdout=PIPE)
|
|
files = [i.strip() for i in find_output.stdout.decode().split("\n")][:-1]
|
|
|
|
for filename in files:
|
|
update_package_version(filename, version)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|