From 9c3a195f271d19678fe772b60baacf697c0b6f51 Mon Sep 17 00:00:00 2001 From: Tim Vaughan Date: Wed, 19 Nov 2025 11:22:59 +0100 Subject: [PATCH 1/2] Prevent projectURL exceptions bubbling up. This commit prevents URL parsing exceptions in package projectURL strings from bubbling up and causing BEAUti to produce incorrect "your internet connection is broken" error messages. --- src/beast/pkgmgmt/PackageManager.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/beast/pkgmgmt/PackageManager.java b/src/beast/pkgmgmt/PackageManager.java index d2690b20..c3567039 100644 --- a/src/beast/pkgmgmt/PackageManager.java +++ b/src/beast/pkgmgmt/PackageManager.java @@ -381,9 +381,14 @@ private static void loadURL(URL url, InputStream is, Map packag PackageVersion packageVersion = new PackageVersion(element.getAttribute("version")); - if (element.hasAttribute("projectURL") && - !(pkg.getLatestVersion() != null && packageVersion.compareTo(pkg.getLatestVersion())<0)) - pkg.setProjectURL(new URL(element.getAttribute("projectURL"))); + if (element.hasAttribute("projectURL") && + !(pkg.getLatestVersion() != null && packageVersion.compareTo(pkg.getLatestVersion()) < 0)) { + try { + pkg.setProjectURL(new URL(element.getAttribute("projectURL"))); + } catch (MalformedURLException ex) { + System.err.println("Error parsing projectURL: " + ex.getMessage()); + } + } Set packageDependencies = new HashSet(); NodeList depNodes = element.getElementsByTagName("depends"); From 76df70bf3ac9b361013f9db47e868eed61471ca7 Mon Sep 17 00:00:00 2001 From: Tim Vaughan Date: Wed, 19 Nov 2025 12:01:23 +0100 Subject: [PATCH 2/2] Updated Dockerfile so that CI tests again work --- Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index f1fd7e14..a7faa4c6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,11 +17,11 @@ # connect it to localhost (password: password) to observe # the graphical output of these tests. -FROM openjdk:11 +FROM debian:stable WORKDIR /beast2 # Install Apache Ant -RUN apt-get update && apt-get install -y ant +RUN apt-get update && apt-get install -y openjdk-21-jdk openjfx ant # Install and configure VNC server RUN apt-get update && apt-get install -y tightvncserver twm @@ -30,7 +30,7 @@ RUN echo password | vncpasswd -f > /root/.vnc/passwd RUN chmod 600 /root/.vnc/passwd # Install BEAGLE -RUN apt-get update && apt-get install -y build-essential autoconf automake libtool pkg-config +RUN apt-get update && apt-get install -y build-essential autoconf automake libtool pkg-config git # use latest release v3.1.2, issue #786 RUN cd /root && git clone --branch v3.1.2 --depth=1 https://github.com/beagle-dev/beagle-lib.git RUN cd /root/beagle-lib && ./autogen.sh && ./configure --prefix=/usr/local && make install