Skip to content

CI: upgrade runner to Ubuntu 22.04 #2850

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 12, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 12 additions & 26 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ jobs:
fail-fast: false
matrix:
include:
- name: "Linux x64 (Ubuntu 20.04) - GCC 9"
os: ubuntu-20.04
- name: "Linux x64 (Ubuntu 22.04) - GCC 11"
os: ubuntu-22.04
build: { cc: gcc, cxx: g++, linker: ld }
shell: bash

- name: "Linux x64 (Ubuntu 20.04) - Clang 13 with ASan and UBSan"
os: ubuntu-20.04
build: { cc: clang-13, cxx: clang++-13, linker: ld.lld-13, sanitize: true }
- name: "Linux x64 (Ubuntu 22.04) - Clang 14 with ASan and UBSan"
os: ubuntu-22.04
build: { cc: clang-14, cxx: clang++-14, linker: ld.lld-14, sanitize: true }
shell: bash

- name: "macOS (11.6) - Xcode 13.2.1"
Expand Down Expand Up @@ -51,18 +51,11 @@ jobs:
if: runner.os == 'Linux'
run: sudo -E apt-get update -qq -o Acquire::Retries=3

- name: Add Ubuntu PPAs
if: runner.os == 'Linux'
run: |
sudo add-apt-repository ppa:strukturag/libde265
sudo add-apt-repository ppa:strukturag/libheif
sudo add-apt-repository ppa:lovell/cgif

- name: Install Ubuntu dependencies
if: runner.os == 'Linux'
run:
sudo -E apt-get install --fix-missing -qq -o Acquire::Retries=3
ninja-build
meson
python3-pip python3-setuptools python3-wheel
libfftw3-dev libexif-dev libjpeg-turbo8-dev
libpng-dev libwebp-dev libtiff5-dev
Expand All @@ -73,24 +66,17 @@ jobs:
libopenslide-dev libffi-dev libopenjp2-7-dev
libimagequant-dev libcgif-dev

- name: Install recent meson
if: runner.os == 'Linux'
run:
sudo pip3 install meson

- name: Install macOS dependencies
if: runner.os == 'macOS'
run: |
brew install meson ninja fftw fontconfig glib libexif libgsf little-cms2 orc pango
brew install cfitsio libheif libimagequant libjpeg-turbo libmatio librsvg libspng libtiff openexr openjpeg openslide poppler webp cgif

- name: Install Clang 13
if: runner.os == 'Linux' && matrix.build.cc == 'clang-13'
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository -y "deb http://apt.llvm.org/$(lsb_release -sc)/ llvm-toolchain-$(lsb_release -sc)-13 main"
sudo -E apt-get install --fix-missing -qq -o Acquire::Retries=3 \
clang-13 libomp-13-dev lld-13 llvm-13
- name: Install Clang 14
if: runner.os == 'Linux' && matrix.build.cc == 'clang-14'
run:
sudo -E apt-get install --fix-missing -qq -o Acquire::Retries=3
clang-14 libomp-14-dev lld-14 llvm-14

- name: Prepare Ubuntu environment
if: runner.os == 'Linux'
Expand All @@ -105,7 +91,7 @@ jobs:
- name: Prepare sanitizers
if: matrix.build.sanitize
env:
LLVM_PREFIX: /usr/lib/llvm-13
LLVM_PREFIX: /usr/lib/llvm-14
run: |
ASAN_DSO=`$CC -print-file-name=libclang_rt.asan-x86_64.so`
echo "LDSHARED=$CC -shared" >> $GITHUB_ENV
Expand Down
4 changes: 2 additions & 2 deletions suppressions/lsan.supp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
leak:python3
leak:bash
leak:libfontconfig.so
leak:libIlmImf-2_3.so
leak:libIlmThread-2_3.so
leak:libIlmImf-2_5.so
leak:libIlmThread-2_5.so
leak:libx265.so
23 changes: 10 additions & 13 deletions test/test_formats.sh
Original file line number Diff line number Diff line change
Expand Up @@ -200,23 +200,20 @@ fi

if test_supported matload; then
test_loader $matlab_ref $matlab matlab 0

# test blocked and untrusted
printf "testing VIPS_BLOCK_UNTRUSTED with matio ... "
export VIPS_BLOCK_UNTRUSTED=1
if vips matload $matlab $tmp/block.png; then
echo "failed to block matload"
exit 1
fi
echo "ok"
unset VIPS_BLOCK_UNTRUSTED
fi

if test_supported dzsave; then
test_saver dzsave $image .zip
test_saver copy $image .dz
test_saver copy $image .dz[container=zip]
fi

# test blocked and untrusted
if test_supported magicksave; then
printf "testing VIPS_BLOCK_UNTRUSTED with imagemagick ... "
export VIPS_BLOCK_UNTRUSTED=1
if vips magicksave $matlab $tmp/block.png; then
echo "failed to block imagemagick"
exit 1
fi
echo "ok"
unset VIPS_BLOCK_UNTRUSTED
fi