From 9c63698e7f3795222221c64a5fc7971efb9526fd Mon Sep 17 00:00:00 2001 From: Martijn Govers Date: Tue, 9 Jan 2024 12:38:58 +0100 Subject: [PATCH] change boost url to new Signed-off-by: Martijn Govers --- .../custom_sources/boost.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/pybuild_header_dependency/custom_sources/boost.py b/src/pybuild_header_dependency/custom_sources/boost.py index 6fb1992..29dff04 100644 --- a/src/pybuild_header_dependency/custom_sources/boost.py +++ b/src/pybuild_header_dependency/custom_sources/boost.py @@ -1,4 +1,5 @@ from pathlib import Path +import re import requests @@ -7,8 +8,8 @@ class Boost(PackageDownloader): name = "boost" - release_url = "https://boostorg.jfrog.io/artifactory/api/storage/main/release" - file_base_url = "https://boostorg.jfrog.io/artifactory/main/release" + release_url = "https://archives.boost.io/release/" + file_base_url = "https://archives.boost.io/release" def __init__(self): super().__init__() @@ -18,17 +19,14 @@ def get_releases(self): response = requests.get(self.release_url) response.raise_for_status() # loop all versions - children = response.json()["children"] - for child in reversed(children): - version_uri = child["uri"] + versions = re.findall(r"\d+\.\d+\.\d+", response.content.decode(response.encoding)) + for version in reversed(versions): # get all files - response = requests.get(f"{self.release_url}{version_uri}/source") + response = requests.get(f"{self.release_url}/{version}/source") response.raise_for_status() - all_files = [x["uri"] for x in response.json()["children"]] - version = version_uri.split("/")[1] - # only add to version list if it has official release version_underscore = version.replace(".", "_") - if f"/boost_{version_underscore}.tar.gz" in all_files: + # only add to version list if it has official release + if re.search(f"boost_{version_underscore}.tar.gz", response.content.decode(response.encoding)): self.all_versions.append(version) def download(self, version: str, base_dir: Path):