Files
concrete/frontends/concrete-python/script/make_utils/is_latest.py
2023-03-08 11:23:21 +01:00

45 lines
987 B
Python

"""
Simple script to check if a given version is the latest version of Concrete Numpy.
"""
import sys
from typing import List
import requests # type: ignore
from semver import VersionInfo
def is_latest(new_version: VersionInfo, existing_versions: List[VersionInfo]):
"""
Get if `new_version` is the latest version among `existing_versions`.
"""
if new_version.prerelease:
return False
for existing_version in existing_versions:
if existing_version.prerelease:
continue
if existing_version > new_version:
return False
return True
def main():
"""
Run the script.
"""
info = requests.get("https://api.github.com/repos/zama-ai/concrete-numpy/releases").json()
new_version = VersionInfo.parse(sys.argv[1])
existing_versions = [VersionInfo.parse(releases["name"][1:]) for releases in info]
print(is_latest(new_version, existing_versions))
if __name__ == "__main__":
main()