From 1003ba9762ac9a9e750fc03b3f57363cbef109c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Ketelaars?= Date: Tue, 19 Nov 2024 20:55:21 +0100 Subject: [PATCH 1/4] Fix OpenBSD Vagrant This should address #8506. Unfortunately I'm unable to test. #8506 is likely caused by the Vagrant box having a mirror in its `etc/installurl`, which does not offer 7.4 packages. There are other mirrors out there who do, e.g., https://ftp.eu.openbsd.org/pub/OpenBSD/. Proposed 'fix' is to replace the mirror in `/etc/installurl`. --- Vagrantfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Vagrantfile b/Vagrantfile index a1d1cccb6..c79398cf8 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -71,6 +71,7 @@ end def packages_openbsd return <<-EOF + echo "https://ftp.eu.openbsd.org/pub/OpenBSD" > /etc/installurl pkg_add bash chsh -s bash vagrant pkg_add xxhash From fa2aa5f5bdc30ac0e5fcdd11cceeb57e335855a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Ketelaars?= Date: Wed, 20 Nov 2024 05:57:00 +0100 Subject: [PATCH 2/4] Filter test output with LibreSSL related warnings on OpenBSD We do not want that urllib spoils test output with LibreSSL related warnings on OpenBSD. `NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 3.8.2'`. --- src/borg/logger.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/borg/logger.py b/src/borg/logger.py index 8641f52f2..8c23d392d 100644 --- a/src/borg/logger.py +++ b/src/borg/logger.py @@ -44,6 +44,12 @@ # warnings.filterwarnings('ignore', r'... regex for warning message to ignore ...') +# we do not want that urllib spoils test output with LibreSSL related warnings on OpenBSD. +# NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, +# currently the 'ssl' module is compiled with 'LibreSSL 3.8.2'. +warnings.filterwarnings("ignore", message=r".*urllib3 v2 only supports OpenSSL.*") + + def _log_warning(message, category, filename, lineno, file=None, line=None): # for warnings, we just want to use the logging system, not stderr or other files msg = f"{filename}:{lineno}: {category.__name__}: {message}" From 2dfb5d9a063ada016b2931543897aa40afb311d5 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sun, 29 Dec 2024 00:53:50 +0100 Subject: [PATCH 3/4] use Cython 3.0.11 --- requirements.d/development.lock.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.d/development.lock.txt b/requirements.d/development.lock.txt index 1272873ce..e7c1a3f01 100644 --- a/requirements.d/development.lock.txt +++ b/requirements.d/development.lock.txt @@ -9,4 +9,4 @@ pytest==7.4.3 pytest-xdist==3.5.0 pytest-cov==4.1.0 pytest-benchmark==4.0.0 -Cython==3.0.10 +Cython==3.0.11 From 094a4a4d48940f0baf4d24904e8b8013cf1971b1 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sun, 29 Dec 2024 01:04:45 +0100 Subject: [PATCH 4/4] vagrant: pyenv: only use Python 3.11.11 Installing 3.9/10/12 involves downloading and compiling these, which takes a lot of time and has some potential breaking the boxes by installing misc. openssl versions. We test misc. python versions on github actions CI all the time, so we only need the one here which we want to use for the binary builds. --- Vagrantfile | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Vagrantfile b/Vagrantfile index c79398cf8..bd84710c7 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -167,10 +167,7 @@ end def install_pythons(boxname) return <<-EOF . ~/.bash_profile - pyenv install 3.12.0 # tests pyenv install 3.11.11 # tests, binary build - pyenv install 3.10.2 # tests - pyenv install 3.9.4 # tests pyenv rehash EOF end @@ -235,8 +232,8 @@ def run_tests(boxname, skip_env) . ../borg-env/bin/activate if which pyenv 2> /dev/null; then # for testing, use the earliest point releases of the supported python versions: - pyenv global 3.9.4 3.10.2 3.11.11 3.12.0 - pyenv local 3.9.4 3.10.2 3.11.11 3.12.0 + pyenv global 3.11.11 + pyenv local 3.11.11 fi # otherwise: just use the system python # avoid that git complains about dubious ownership if we use fakeroot: