summary refs log tree commit diff
path: root/.ci/scripts/check_lockfile.py
diff options
context:
space:
mode:
Diffstat (limited to '.ci/scripts/check_lockfile.py')
-rwxr-xr-x.ci/scripts/check_lockfile.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/.ci/scripts/check_lockfile.py b/.ci/scripts/check_lockfile.py
new file mode 100755

index 0000000000..dfdc0105d5 --- /dev/null +++ b/.ci/scripts/check_lockfile.py
@@ -0,0 +1,23 @@ +#! /usr/bin/env python +import sys + +if sys.version_info < (3, 11): + raise RuntimeError("Requires at least Python 3.11, to import tomllib") + +import tomllib + +with open("poetry.lock", "rb") as f: + lockfile = tomllib.load(f) + +try: + lock_version = lockfile["metadata"]["lock-version"] + assert lock_version == "2.0" +except Exception: + print( + """\ + Lockfile is not version 2.0. You probably need to upgrade poetry on your local box + and re-run `poetry lock --no-update`. See the Poetry cheat sheet at + https://matrix-org.github.io/synapse/develop/development/dependencies.html + """ + ) + raise