diff options
| author | mat <27899617+mat-1@users.noreply.github.com> | 2025-09-30 10:56:34 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-30 10:56:34 -0500 |
| commit | 643fcb98c0e6cdc63218dd39960d9053b209d9a6 (patch) | |
| tree | 6bddb7fe39b8fcc3ab3fb2665574533bb227898a /codegen/lib/download.py | |
| parent | a80d8d1b242430c4a251876fa67bfd26af7a0de9 (diff) | |
| download | azalea-drasl-643fcb98c0e6cdc63218dd39960d9053b209d9a6.tar.xz | |
1.21.9 (#235)
* start updating to 25w33a
* 1.21.9-pre2
* clippy
* cleanup, and fix c_explode and c_player_rotation
* mc update should be in Changed section in the changelog
* 1.21.9
Diffstat (limited to 'codegen/lib/download.py')
| -rw-r--r-- | codegen/lib/download.py | 105 |
1 files changed, 72 insertions, 33 deletions
diff --git a/codegen/lib/download.py b/codegen/lib/download.py index 7878bb45..de6e2f2d 100644 --- a/codegen/lib/download.py +++ b/codegen/lib/download.py @@ -140,50 +140,87 @@ def get_latest_fabric_api_version(): return tree.find(".//latest").text +def get_latest_fabric_kotlin_version(): + # https://maven.fabricmc.net/net/fabricmc/fabric-language-kotlin/maven-metadata.xml + path = get_dir_location("__cache__/fabric-kotlin-maven-metadata.xml") + + if not os.path.exists(path): + print("\033[92mDownloading Fabric Kotlin metadata...\033[m") + url = "https://maven.fabricmc.net/net/fabricmc/fabric-language-kotlin/maven-metadata.xml" + maven_metadata_xml = requests.get(url).text + with open(path, "w") as f: + json.dump(maven_metadata_xml, f) + else: + with open(path, "r") as f: + maven_metadata_xml = json.load(f) + + tree = ET.ElementTree(ET.fromstring(maven_metadata_xml)) + return tree.find(".//latest").text + + +def get_latest_fabric_loom_version(): + # https://maven.fabricmc.net/fabric-loom/fabric-loom.gradle.plugin/maven-metadata.xml + + path = get_dir_location("__cache__/fabric-loom-maven-metadata.xml") + if not os.path.exists(path): + print("\033[92mDownloading Fabric Loom metadata...\033[m") + url = "https://maven.fabricmc.net/fabric-loom/fabric-loom.gradle.plugin/maven-metadata.xml" + maven_metadata_xml = requests.get(url).text + with open(path, "w") as f: + json.dump(maven_metadata_xml, f) + else: + with open(path, "r") as f: + maven_metadata_xml = json.load(f) + + tree = ET.ElementTree(ET.fromstring(maven_metadata_xml)) + return tree.find(".//latest").text + + def get_fabric_api_versions(): # https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api/maven-metadata.xml - if not os.path.exists(get_dir_location("__cache__/fabric_api_versions.json")): - print("\033[92mDownloading Fabric API versions...\033[m") - fabric_api_versions_xml_text = requests.get( - "https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api/maven-metadata.xml" - ).text - # parse xml - fabric_api_versions_data_xml = ET.fromstring(fabric_api_versions_xml_text) - fabric_api_versions = [] - - versioning_el = fabric_api_versions_data_xml.find("versioning") - assert versioning_el - versions_el = versioning_el.find("versions") - assert versions_el - - for version_el in versions_el.findall("version"): - fabric_api_versions.append(version_el.text) - - with open(get_dir_location("__cache__/fabric_api_versions.json"), "w") as f: - f.write(json.dumps(fabric_api_versions)) - else: + if os.path.exists(get_dir_location("__cache__/fabric_api_versions.json")): with open(get_dir_location("__cache__/fabric_api_versions.json"), "r") as f: fabric_api_versions = json.loads(f.read()) + return fabric_api_versions + + print("\033[92mDownloading Fabric API versions...\033[m") + fabric_api_versions_xml_text = requests.get( + "https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api/maven-metadata.xml" + ).text + # parse xml + fabric_api_versions_data_xml = ET.fromstring(fabric_api_versions_xml_text) + fabric_api_versions = [] + + versioning_el = fabric_api_versions_data_xml.find("versioning") + assert versioning_el + versions_el = versioning_el.find("versions") + assert versions_el + + for version_el in versions_el.findall("version"): + fabric_api_versions.append(version_el.text) + + with open(get_dir_location("__cache__/fabric_api_versions.json"), "w") as f: + f.write(json.dumps(fabric_api_versions)) return fabric_api_versions def get_fabric_loader_versions(): # https://meta.fabricmc.net/v2/versions/loader - if not os.path.exists(get_dir_location("__cache__/fabric_loader_versions.json")): - print("\033[92mDownloading Fabric loader versions...\033[m") - fabric_api_versions_json = requests.get( - "https://meta.fabricmc.net/v2/versions/loader" - ).json() + if os.path.exists(get_dir_location("__cache__/fabric_loader_versions.json")): + with open(get_dir_location("__cache__/fabric_loader_versions.json"), "r") as f: + return json.loads(f.read()) - fabric_api_versions = [] - for version in fabric_api_versions_json: - fabric_api_versions.append(version["version"]) + print("\033[92mDownloading Fabric loader versions...\033[m") + fabric_api_versions_json = requests.get( + "https://meta.fabricmc.net/v2/versions/loader" + ).json() - with open(get_dir_location("__cache__/fabric_loader_versions.json"), "w") as f: - f.write(json.dumps(fabric_api_versions)) - else: - with open(get_dir_location("__cache__/fabric_loader_versions.json"), "r") as f: - fabric_api_versions = json.loads(f.read()) + fabric_api_versions = [] + for version in fabric_api_versions_json: + fabric_api_versions.append(version["version"]) + + with open(get_dir_location("__cache__/fabric_loader_versions.json"), "w") as f: + f.write(json.dumps(fabric_api_versions)) return fabric_api_versions @@ -195,6 +232,8 @@ def clear_version_cache(): "fabric_api_versions.json", "fabric_loader_versions.json", "fabric-api-maven-metadata.xml", + "fabric-kotlin-maven-metadata.xml", + "fabric-loom-maven-metadata.xml", ] for file in files: if os.path.exists(get_dir_location(f"__cache__/{file}")): |
