4 commits - .gitlab-ci/ignore-quartz-argb32.txt .gitlab-ci/ignore-quartz-rgb24.txt .gitlab-ci.yml test/reference

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jul 16 17:31:50 UTC 2025


 .gitlab-ci.yml                                                       |   49 ++++++++++
 .gitlab-ci/ignore-quartz-argb32.txt                                  |    1 
 .gitlab-ci/ignore-quartz-rgb24.txt                                   |    1 
 dev/null                                                             |binary
 test/reference/bug-51910.quartz.ref.png                              |binary
 test/reference/bug-seams.quartz.xfail.png                            |binary
 test/reference/dash-caps-joins.quartz.xfail.png                      |binary
 test/reference/dash-state.quartz.xfail.png                           |binary
 test/reference/dash-zero-length.quartz.rgb24.xfail.png               |binary
 test/reference/extended-blend-alpha.quartz.rgb24.ref.png             |binary
 test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png       |binary
 test/reference/filter-bilinear-extents.quartz.argb32.xfail.png       |binary
 test/reference/filter-bilinear-extents.quartz.rgb24.xfail.png        |binary
 test/reference/line-width-large-overlap-dashed.quartz.xfail.png      |binary
 test/reference/line-width-overlap-dashed.quartz.xfail.png            |binary
 test/reference/mask-alpha.quartz.argb32.ref.png                      |binary
 test/reference/mask.quartz.argb32.ref.png                            |binary
 test/reference/operator-clear.quartz.argb32.ref.png                  |binary
 test/reference/operator-clear.quartz.rgb24.ref.png                   |binary
 test/reference/operator-source.quartz.argb32.ref.png                 |binary
 test/reference/pthread-same-source.quartz.ref.png                    |binary
 test/reference/radial-gradient-one-stop.quartz.ref.png               |binary
 test/reference/random-clip.quartz.ref.png                            |binary
 test/reference/recording-surface-extend-none.quartz.argb32.ref.png   |binary
 test/reference/recording-surface-extend-none.quartz.rgb24.ref.png    |binary
 test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png |binary
 test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png  |binary
 test/reference/recording-surface-over.quartz.argb32.ref.png          |binary
 test/reference/recording-surface-over.quartz.rgb24.ref.png           |binary
 test/reference/recording-surface-source.quartz.argb32.ref.png        |binary
 test/reference/recording-surface-source.quartz.rgb24.ref.png         |binary
 test/reference/surface-pattern-operator.quartz.argb32.ref.png        |binary
 test/reference/surface-pattern-operator.quartz.rgb24.ref.png         |binary
 test/reference/surface-pattern.quartz.xfail.png                      |binary
 test/reference/text-pattern.quartz.argb32.ref.png                    |binary
 test/reference/text-pattern.quartz.rgb24.ref.png                     |binary
 test/reference/tighten-bounds.quartz.argb32.ref.png                  |binary
 test/reference/tighten-bounds.quartz.rgb24.ref.png                   |binary
 test/reference/trap-clip.quartz.argb32.ref.png                       |binary
 test/reference/unbounded-operator.quartz.argb32.ref.png              |binary
 test/reference/unbounded-operator.quartz.rgb24.ref.png               |binary
 41 files changed, 51 insertions(+)

New commits:
commit 6955595c60662673e37a294521cb6b244b7b9725
Merge: 8e9b85648 a9e3eaccb
Author: Tim-Philipp Müller <tim at centricular.com>
Date:   Wed Jul 16 17:31:44 2025 +0000

    Merge branch 'ci-macos-arm64' into 'master'
    
    ci: add macOS arm64
    
    See merge request cairo/cairo!498

commit a9e3eaccb832333f639bdb54b320c1ca42b94fab
Author: Luca Bacci <luca.bacci982 at gmail.com>
Date:   Wed Jul 16 10:40:04 2025 +0200

    CI: Add coverage-column-triangles to Quartz ignores
    
    Fails with the following log:
    
    Testing coverage-column-triangles with quartz target (dev offset 0 scale: 1)
    963 pixels differ (with maximum difference of 9) from reference image
    963 pixels differ (with maximum difference of 9) from reference image
    OUTPUT: output/coverage-column-triangles.quartz.argb32.out.png
    REFERENCE: ../../test/reference/coverage-column-triangles.ref.png
    DIFFERENCE: output/coverage-column-triangles.quartz.argb32.diff.png
    TEST: coverage-column-triangles TARGET: quartz FORMAT: argb32 OFFSET: 0 SCALE: 1 SIMILAR: 0 RESULT: FAIL
    (...)

diff --git a/.gitlab-ci/ignore-quartz-argb32.txt b/.gitlab-ci/ignore-quartz-argb32.txt
index fb30f4bb0..806837e42 100644
--- a/.gitlab-ci/ignore-quartz-argb32.txt
+++ b/.gitlab-ci/ignore-quartz-argb32.txt
@@ -2,6 +2,7 @@ bug-361
 bug-431
 bug-image-compositor
 clip-operator
+coverage-column-triangles
 coverage-rhombus
 culled-glyphs
 extended-blend-alpha
diff --git a/.gitlab-ci/ignore-quartz-rgb24.txt b/.gitlab-ci/ignore-quartz-rgb24.txt
index 92416e16b..9db477c35 100644
--- a/.gitlab-ci/ignore-quartz-rgb24.txt
+++ b/.gitlab-ci/ignore-quartz-rgb24.txt
@@ -10,6 +10,7 @@ bug-image-compositor
 bug-source-cu
 clip-device-offset
 clip-fill-rule-pixel-aligned
+coverage-column-triangles
 coverage-rhombus
 culled-glyphs
 device-offset
commit 2e0713971f7b5888e4d3a50542823a8567b52251
Author: Luca Bacci <luca.bacci982 at gmail.com>
Date:   Tue Jul 15 19:04:21 2025 +0200

    Update Quartz reference images

diff --git a/test/reference/bug-51910.quartz.ref.png b/test/reference/bug-51910.quartz.ref.png
index cc900e68c..f38b99391 100644
Binary files a/test/reference/bug-51910.quartz.ref.png and b/test/reference/bug-51910.quartz.ref.png differ
diff --git a/test/reference/bug-seams.quartz.xfail.png b/test/reference/bug-seams.quartz.xfail.png
index 25c98b36a..0250ef5dd 100644
Binary files a/test/reference/bug-seams.quartz.xfail.png and b/test/reference/bug-seams.quartz.xfail.png differ
diff --git a/test/reference/dash-caps-joins.quartz.xfail.png b/test/reference/dash-caps-joins.quartz.xfail.png
index cd9fe93ba..fb3df5984 100644
Binary files a/test/reference/dash-caps-joins.quartz.xfail.png and b/test/reference/dash-caps-joins.quartz.xfail.png differ
diff --git a/test/reference/dash-state.quartz.xfail.png b/test/reference/dash-state.quartz.xfail.png
index ef38975ca..e4a77dc5f 100644
Binary files a/test/reference/dash-state.quartz.xfail.png and b/test/reference/dash-state.quartz.xfail.png differ
diff --git a/test/reference/dash-zero-length.quartz.rgb24.xfail.png b/test/reference/dash-zero-length.quartz.rgb24.xfail.png
index 68802c584..8b531ff7e 100644
Binary files a/test/reference/dash-zero-length.quartz.rgb24.xfail.png and b/test/reference/dash-zero-length.quartz.rgb24.xfail.png differ
diff --git a/test/reference/extended-blend-alpha.quartz.rgb24.ref.png b/test/reference/extended-blend-alpha.quartz.rgb24.ref.png
index 1b3dae712..f749e062a 100644
Binary files a/test/reference/extended-blend-alpha.quartz.rgb24.ref.png and b/test/reference/extended-blend-alpha.quartz.rgb24.ref.png differ
diff --git a/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png b/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png
index 1b3dae712..f749e062a 100644
Binary files a/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png and b/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png differ
diff --git a/test/reference/filter-bilinear-extents.quartz.argb32.xfail.png b/test/reference/filter-bilinear-extents.quartz.argb32.xfail.png
new file mode 100644
index 000000000..d39ff8311
Binary files /dev/null and b/test/reference/filter-bilinear-extents.quartz.argb32.xfail.png differ
diff --git a/test/reference/filter-bilinear-extents.quartz.rgb24.xfail.png b/test/reference/filter-bilinear-extents.quartz.rgb24.xfail.png
new file mode 100644
index 000000000..e4f8c9545
Binary files /dev/null and b/test/reference/filter-bilinear-extents.quartz.rgb24.xfail.png differ
diff --git a/test/reference/filter-bilinear-extents.quartz.xfail.png b/test/reference/filter-bilinear-extents.quartz.xfail.png
deleted file mode 100644
index 312ee802d..000000000
Binary files a/test/reference/filter-bilinear-extents.quartz.xfail.png and /dev/null differ
diff --git a/test/reference/line-width-large-overlap-dashed.quartz.xfail.png b/test/reference/line-width-large-overlap-dashed.quartz.xfail.png
index 78dbe5976..b8afa547e 100644
Binary files a/test/reference/line-width-large-overlap-dashed.quartz.xfail.png and b/test/reference/line-width-large-overlap-dashed.quartz.xfail.png differ
diff --git a/test/reference/line-width-overlap-dashed.quartz.xfail.png b/test/reference/line-width-overlap-dashed.quartz.xfail.png
index ce8ff7bc9..0e9c37412 100644
Binary files a/test/reference/line-width-overlap-dashed.quartz.xfail.png and b/test/reference/line-width-overlap-dashed.quartz.xfail.png differ
diff --git a/test/reference/mask-alpha.quartz.argb32.ref.png b/test/reference/mask-alpha.quartz.argb32.ref.png
index a7bfbb2a8..56f27d100 100644
Binary files a/test/reference/mask-alpha.quartz.argb32.ref.png and b/test/reference/mask-alpha.quartz.argb32.ref.png differ
diff --git a/test/reference/mask-alpha.quartz.rgb24.ref.png b/test/reference/mask-alpha.quartz.rgb24.ref.png
deleted file mode 100644
index d4cc59c83..000000000
Binary files a/test/reference/mask-alpha.quartz.rgb24.ref.png and /dev/null differ
diff --git a/test/reference/mask.quartz.argb32.ref.png b/test/reference/mask.quartz.argb32.ref.png
index ab800daf7..b173221ed 100644
Binary files a/test/reference/mask.quartz.argb32.ref.png and b/test/reference/mask.quartz.argb32.ref.png differ
diff --git a/test/reference/operator-clear.quartz.argb32.ref.png b/test/reference/operator-clear.quartz.argb32.ref.png
index a76ebfc82..fb85d2610 100644
Binary files a/test/reference/operator-clear.quartz.argb32.ref.png and b/test/reference/operator-clear.quartz.argb32.ref.png differ
diff --git a/test/reference/operator-clear.quartz.rgb24.ref.png b/test/reference/operator-clear.quartz.rgb24.ref.png
index 7b44e219c..1b016a9c2 100644
Binary files a/test/reference/operator-clear.quartz.rgb24.ref.png and b/test/reference/operator-clear.quartz.rgb24.ref.png differ
diff --git a/test/reference/operator-source.quartz.argb32.ref.png b/test/reference/operator-source.quartz.argb32.ref.png
index 8d4f80dae..ac1afbaa9 100644
Binary files a/test/reference/operator-source.quartz.argb32.ref.png and b/test/reference/operator-source.quartz.argb32.ref.png differ
diff --git a/test/reference/pthread-same-source.quartz.ref.png b/test/reference/pthread-same-source.quartz.ref.png
index 2cd620f43..822b6e39e 100644
Binary files a/test/reference/pthread-same-source.quartz.ref.png and b/test/reference/pthread-same-source.quartz.ref.png differ
diff --git a/test/reference/radial-gradient-one-stop.quartz.ref.png b/test/reference/radial-gradient-one-stop.quartz.ref.png
index cf37c2f48..dada71735 100644
Binary files a/test/reference/radial-gradient-one-stop.quartz.ref.png and b/test/reference/radial-gradient-one-stop.quartz.ref.png differ
diff --git a/test/reference/random-clip.quartz.ref.png b/test/reference/random-clip.quartz.ref.png
index aa617d675..b4a493461 100644
Binary files a/test/reference/random-clip.quartz.ref.png and b/test/reference/random-clip.quartz.ref.png differ
diff --git a/test/reference/recording-surface-extend-none.quartz.argb32.ref.png b/test/reference/recording-surface-extend-none.quartz.argb32.ref.png
index 07d737a13..59b1a194e 100644
Binary files a/test/reference/recording-surface-extend-none.quartz.argb32.ref.png and b/test/reference/recording-surface-extend-none.quartz.argb32.ref.png differ
diff --git a/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png b/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png
index 0df693529..9b1642b28 100644
Binary files a/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png and b/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png differ
diff --git a/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png b/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png
index 2f6f274de..adcdfb4fd 100644
Binary files a/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png and b/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png differ
diff --git a/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png b/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png
index a8943a706..439591038 100644
Binary files a/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png and b/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png differ
diff --git a/test/reference/recording-surface-over.quartz.argb32.ref.png b/test/reference/recording-surface-over.quartz.argb32.ref.png
index 07d737a13..59b1a194e 100644
Binary files a/test/reference/recording-surface-over.quartz.argb32.ref.png and b/test/reference/recording-surface-over.quartz.argb32.ref.png differ
diff --git a/test/reference/recording-surface-over.quartz.rgb24.ref.png b/test/reference/recording-surface-over.quartz.rgb24.ref.png
index 0df693529..9b1642b28 100644
Binary files a/test/reference/recording-surface-over.quartz.rgb24.ref.png and b/test/reference/recording-surface-over.quartz.rgb24.ref.png differ
diff --git a/test/reference/recording-surface-source.quartz.argb32.ref.png b/test/reference/recording-surface-source.quartz.argb32.ref.png
index bd5d7497b..44a9c26d5 100644
Binary files a/test/reference/recording-surface-source.quartz.argb32.ref.png and b/test/reference/recording-surface-source.quartz.argb32.ref.png differ
diff --git a/test/reference/recording-surface-source.quartz.rgb24.ref.png b/test/reference/recording-surface-source.quartz.rgb24.ref.png
index ddba6f3ff..cb4f6bbf9 100644
Binary files a/test/reference/recording-surface-source.quartz.rgb24.ref.png and b/test/reference/recording-surface-source.quartz.rgb24.ref.png differ
diff --git a/test/reference/surface-pattern-operator.quartz.argb32.ref.png b/test/reference/surface-pattern-operator.quartz.argb32.ref.png
index e2a411682..413ccefcc 100644
Binary files a/test/reference/surface-pattern-operator.quartz.argb32.ref.png and b/test/reference/surface-pattern-operator.quartz.argb32.ref.png differ
diff --git a/test/reference/surface-pattern-operator.quartz.rgb24.ref.png b/test/reference/surface-pattern-operator.quartz.rgb24.ref.png
index 02eec1c85..7e4ef3638 100644
Binary files a/test/reference/surface-pattern-operator.quartz.rgb24.ref.png and b/test/reference/surface-pattern-operator.quartz.rgb24.ref.png differ
diff --git a/test/reference/surface-pattern.quartz.xfail.png b/test/reference/surface-pattern.quartz.xfail.png
index 42938f026..41ed28068 100644
Binary files a/test/reference/surface-pattern.quartz.xfail.png and b/test/reference/surface-pattern.quartz.xfail.png differ
diff --git a/test/reference/text-pattern.quartz.argb32.ref.png b/test/reference/text-pattern.quartz.argb32.ref.png
index b3f869b50..3964f5438 100644
Binary files a/test/reference/text-pattern.quartz.argb32.ref.png and b/test/reference/text-pattern.quartz.argb32.ref.png differ
diff --git a/test/reference/text-pattern.quartz.rgb24.ref.png b/test/reference/text-pattern.quartz.rgb24.ref.png
index bb50f4dff..35f28a708 100644
Binary files a/test/reference/text-pattern.quartz.rgb24.ref.png and b/test/reference/text-pattern.quartz.rgb24.ref.png differ
diff --git a/test/reference/tighten-bounds.quartz.argb32.ref.png b/test/reference/tighten-bounds.quartz.argb32.ref.png
index dc4aacdd8..5f9deec6e 100644
Binary files a/test/reference/tighten-bounds.quartz.argb32.ref.png and b/test/reference/tighten-bounds.quartz.argb32.ref.png differ
diff --git a/test/reference/tighten-bounds.quartz.rgb24.ref.png b/test/reference/tighten-bounds.quartz.rgb24.ref.png
index 8d11e0b85..0aeddcd3b 100644
Binary files a/test/reference/tighten-bounds.quartz.rgb24.ref.png and b/test/reference/tighten-bounds.quartz.rgb24.ref.png differ
diff --git a/test/reference/trap-clip.quartz.argb32.ref.png b/test/reference/trap-clip.quartz.argb32.ref.png
index 66a1e8afe..8bf6a5668 100644
Binary files a/test/reference/trap-clip.quartz.argb32.ref.png and b/test/reference/trap-clip.quartz.argb32.ref.png differ
diff --git a/test/reference/trap-clip.quartz.rgb24.ref.png b/test/reference/trap-clip.quartz.rgb24.ref.png
deleted file mode 100644
index 38e6d31df..000000000
Binary files a/test/reference/trap-clip.quartz.rgb24.ref.png and /dev/null differ
diff --git a/test/reference/unbounded-operator.quartz.argb32.ref.png b/test/reference/unbounded-operator.quartz.argb32.ref.png
index b2e99165e..040801d51 100644
Binary files a/test/reference/unbounded-operator.quartz.argb32.ref.png and b/test/reference/unbounded-operator.quartz.argb32.ref.png differ
diff --git a/test/reference/unbounded-operator.quartz.rgb24.ref.png b/test/reference/unbounded-operator.quartz.rgb24.ref.png
index ea41dc892..eaaaaf7ef 100644
Binary files a/test/reference/unbounded-operator.quartz.rgb24.ref.png and b/test/reference/unbounded-operator.quartz.rgb24.ref.png differ
commit d371015d45b5948dc2ba2e820b6a5fa06a213901
Author: Tim-Philipp Müller <tim at centricular.com>
Date:   Wed Jun 25 12:06:38 2025 +0100

    ci: add macOS arm64

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 585dc3fdb..8fae44990 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -406,6 +406,8 @@ vs2019 shared x86:
     EXTRA_MESON_ARGS: '--default-library=shared'
 
 android arm64 fedora:
+  # TODO: should probably build our own image here some day
+  # See https://gitlab.freedesktop.org/gstreamer/gstreamer/container_registry/7689 for current images
   extends:
     - '.fdo.distribution-image at fedora'
   stage: 'build'
@@ -419,6 +421,53 @@ android arm64 fedora:
     - meson setup --cross-file .gitlab-ci/android-cross-file.txt -Dpixman:a64-neon=disabled build
     - meson compile --verbose -C build
 
+macOS arm64:
+  image: "registry.freedesktop.org/gstreamer/cerbero/macos-arm64/15-sequoia:2024-10-28.2"
+  tags:
+    - gst-mac-arm
+  stage: 'build'
+  artifacts:
+    when: 'always'
+    expire_in: "7 days"
+    paths:
+      - build/meson-logs/*.txt
+      - build/meson-private/*.pc
+      - build/test/*.log
+      - build/test/pdiff/*.log
+      - build/test/output
+    exclude:
+      - "build/test/**/*.cs"
+      - "build/test/**/*.trace"
+  before_script:
+    # Install the DejaVu fonts
+    - curl -LO https://downloads.sourceforge.net/dejavu/dejavu-fonts-ttf-2.37.zip
+    - unzip dejavu-fonts-ttf-2.37.zip
+    - cp dejavu-fonts-ttf-2.37/ttf/*.ttf /Library/Fonts
+    # Update pip
+    - pip3 install --upgrade pip
+    # FIXME
+    - export PATH=${PATH}:/Users/gst-ci/Library/Python/3.9/bin
+    # Make sure meson is up to date
+    - pip3 install -U meson
+    # Need to install certificates for Python
+    - pip3 install --upgrade certifi
+    #### Another way to install certificates
+    ####- open /Applications/Python\ 3.8/Install\ Certificates.command
+    # Get ninja
+    - pip3 install -U ninja
+  script:
+    # FIXME
+    - export PATH=${PATH}:/Users/gst-ci/Library/Python/3.9/bin
+    - CERT_PATH=$(python3 -m certifi) && export SSL_CERT_FILE=${CERT_PATH} && export REQUESTS_CA_BUNDLE=${CERT_PATH}
+    # pixman region-test fails to link on macOS
+    - meson setup -Dpixman:tests=disabled build
+    - meson compile --verbose -C build
+    # Test cairo-quartz. Other backends should be covered by other jobs
+    - export CAIRO_TEST_IGNORE_quartz_argb32=$(tr '\n' ',' < .gitlab-ci/ignore-quartz-argb32.txt)
+    - export CAIRO_TEST_IGNORE_quartz_rgb24=$(tr '\n' ',' < .gitlab-ci/ignore-quartz-rgb24.txt)
+    - export CAIRO_TEST_TARGET=quartz
+    - (cd build/test && srcdir=../../test ./cairo-test-suite)
+
 # Run static analysis.
 static-scan:
   stage: 'analysis'


More information about the cairo-commit mailing list