Files
PMTiles/.github/check_examples.py
Brandon Liu 5c84faafa3 js v4.3.1 (#626)
* js v4.3.1

* CI: other dependent packages don't fail unless major version bump
2025-12-24 17:45:11 +08:00

39 lines
1.0 KiB
Python

import json
import glob
import re
fail = 0
for package in glob.glob("**/package.json",recursive=True):
if "node_modules" in package:
continue
with open(package,"r") as f:
j = json.loads(f.read())
name = j["name"]
version = j["version"]
for dependent in glob.glob("**/package.json",recursive=True):
if "node_modules" in dependent:
continue
with open(dependent,"r") as f:
j2 = json.loads(f.read())
if 'dependencies' in j2 and name in j2["dependencies"]:
dependent_version = j2["dependencies"]["pmtiles"]
if dependent_version.lstrip("^").split(".")[0] != version.split(".")[0]:
print(dependent, "should be ^" + version, "was", dependent_version)
fail = 1
for html in glob.glob("**/*.html",recursive=True):
if "node_modules" in html:
continue
with open(html,"r") as f:
matches = re.findall("https://unpkg.com/" + name + r"@(\d+\.\d+\.\d+|latest)/",f.read())
for match in matches:
if matches[0] == "latest" or matches[0] != version:
print(html,"should be",version,"was",matches)
fail = 1
exit(fail)