[cairo-commit] 4 commits - .gitlab-ci/ignore-image16-rgb24.txt .gitlab-ci/ignore-image-argb32.txt .gitlab-ci/ignore-image-rgb24.txt .gitlab-ci/ignore-pdf-argb32.txt .gitlab-ci/ignore-pdf-rgb24.txt .gitlab-ci/ignore-quartz-argb32.txt .gitlab-ci/ignore-quartz-rgb24.txt .gitlab-ci/ignore-recording-argb32.txt .gitlab-ci/ignore-recording-rgb24.txt .gitlab-ci/ignore-script-argb32.txt .gitlab-ci/ignore-svg11-argb32.txt .gitlab-ci/ignore-svg11-rgb24.txt .gitlab-ci/ignore-xcb-argb32.txt .gitlab-ci/ignore-xcb-fallback-rgb24.txt .gitlab-ci/ignore-xcb-render-0-0-argb32.txt .gitlab-ci/ignore-xcb-render-0-0-rgb24.txt .gitlab-ci/ignore-xcb-rgb24.txt .gitlab-ci/ignore-xcb-window&-rgb24.txt .gitlab-ci/ignore-xcb-window-rgb24.txt .gitlab-ci/ignore-xlib-argb32.txt .gitlab-ci/ignore-xlib-fallback-rgb24.txt .gitlab-ci/ignore-xlib-render-0-0-rgb24.txt .gitlab-ci/ignore-xlib-rgb24.txt .gitlab-ci/ignore-xlib-window-rgb24.txt test/buffer-diff.c test/pdiff
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Sep 17 13:48:48 UTC 2021
.gitlab-ci/ignore-image-argb32.txt | 11 +
.gitlab-ci/ignore-image-rgb24.txt | 63 ++++++++++-
.gitlab-ci/ignore-image16-rgb24.txt | 147 +++++++++++++++-----------
.gitlab-ci/ignore-pdf-argb32.txt | 44 +------
.gitlab-ci/ignore-pdf-rgb24.txt | 84 +++++++--------
.gitlab-ci/ignore-quartz-argb32.txt | 33 +++--
.gitlab-ci/ignore-quartz-rgb24.txt | 74 +++++++++----
.gitlab-ci/ignore-recording-argb32.txt | 20 +--
.gitlab-ci/ignore-recording-rgb24.txt | 70 ++++++++++--
.gitlab-ci/ignore-script-argb32.txt | 156 ++++------------------------
.gitlab-ci/ignore-svg11-argb32.txt | 31 +----
.gitlab-ci/ignore-svg11-rgb24.txt | 87 +++++++++++----
.gitlab-ci/ignore-xcb-argb32.txt | 38 +++---
.gitlab-ci/ignore-xcb-fallback-rgb24.txt | 61 +++++++++-
.gitlab-ci/ignore-xcb-render-0-0-argb32.txt | 16 +-
.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt | 73 ++++++++++---
.gitlab-ci/ignore-xcb-rgb24.txt | 148 ++++++++++----------------
.gitlab-ci/ignore-xcb-window&-rgb24.txt | 135 +++++++++---------------
.gitlab-ci/ignore-xcb-window-rgb24.txt | 133 +++++++++--------------
.gitlab-ci/ignore-xlib-argb32.txt | 60 +++++-----
.gitlab-ci/ignore-xlib-fallback-rgb24.txt | 130 +++++++++--------------
.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt | 69 +++++++++---
.gitlab-ci/ignore-xlib-rgb24.txt | 151 +++++++++++----------------
.gitlab-ci/ignore-xlib-window-rgb24.txt | 141 +++++++++++--------------
test/buffer-diff.c | 43 +++++--
test/pdiff/pdiff.c | 38 ++++--
26 files changed, 1057 insertions(+), 999 deletions(-)
New commits:
commit 4f761bd5aae51a2ea9cc45931e993a46dd05c93a
Merge: 994e33215 664751159
Author: Uli Schlachter <psychon at znc.in>
Date: Fri Sep 17 13:48:46 2021 +0000
Merge branch 'fix-core-diff' into 'master'
Explicitly handle image formats in buffer_diff_core and pdiff_compare
Closes #25
See merge request cairo/cairo!243
commit 6647511593ce0ab1de3dbd514796e926e232d644
Author: Manuel Stoeckl <code at mstoeckl.com>
Date: Wed Aug 25 21:08:36 2021 -0400
test: explicitly handle image formats in buffer_diff_core
In practice, the A and B images may be any mixture of RGB24 and
ARGB32 formats, so this change accepts all combinations of these
types, and converts the pixel values to a common (ARGB32) format
as needed.
Some of the newly added test failures are cases where the image
output is RGB24, but the matching reference image is ARGB32 with
noticeable transparency. Some of the newly passing tests are cases
where the unused 'alpha' channel of an RGB24 image was not equal
to 0xff, and the previous code had incorrectly used this channel
in max_diff calculations.
diff --git a/.gitlab-ci/ignore-image-rgb24.txt b/.gitlab-ci/ignore-image-rgb24.txt
index 9017df695..3b9f32f9f 100644
--- a/.gitlab-ci/ignore-image-rgb24.txt
+++ b/.gitlab-ci/ignore-image-rgb24.txt
@@ -1,26 +1,65 @@
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
bug-source-cu
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-text
+clip-unbounded
culled-glyphs
dash-zero-length
degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
fill-and-stroke
+fill-empty
fill-missed-stop
finer-grained-fallbacks
+ft-color-font
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
gradient-alpha
gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
new-sub-path
+nil-surface
+overlapping-boxes
overlapping-glyphs
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
+radial-gradient-source
record1414x-select-font-face
record1414x-text-transform
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-none
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
rel-path
+scale-source-surface-paint
+set-source
shifted-operator
show-glyphs-advance
+source-surface-scale-paint
subsurface
+subsurface-outside-target
subsurface-scale
text-antialias-subpixel
text-antialias-subpixel-bgr
@@ -30,4 +69,7 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+thin-lines
user-font-mask
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-image16-rgb24.txt b/.gitlab-ci/ignore-image16-rgb24.txt
index 0e2533821..7b1c2e906 100644
--- a/.gitlab-ci/ignore-image16-rgb24.txt
+++ b/.gitlab-ci/ignore-image16-rgb24.txt
@@ -1,9 +1,15 @@
a1-bug
+a1-clip-fill-rule
a1-tiger
aliasing
+alpha-similar
arc-direction
arc-looping-dash
+big-empty-box
+big-empty-triangle
big-line
+big-little-box
+bitmap-font
bug-84115
bug-bo-ricotz
bug-extents
@@ -19,11 +25,13 @@ caps-joins-alpha
caps-joins-curve
caps-tails-curve
clear-source
+clip-device-offset
clip-disjoint
clip-disjoint-quad
clip-fill
clip-fill-eo-unbounded
clip-fill-nz-unbounded
+clip-fill-rule-pixel-aligned
clip-image
clip-intersect
clip-operator
@@ -33,6 +41,7 @@ clip-stroke
clip-stroke-unbounded
clip-text
clip-twice
+clip-unbounded
close-path-current-point
copy-path
coverage-abutting
@@ -54,6 +63,8 @@ degenerate-curve-to
degenerate-path
degenerate-pen
degenerate-rel-curve-to
+device-offset
+device-offset-positive
drunkard-tails
extended-blend
extended-blend-alpha
@@ -69,6 +80,7 @@ fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
fill-degenerate-sort-order
+fill-empty
fill-image
fill-missed-stop
fill-rule
@@ -82,6 +94,8 @@ ft-text-vertical-layout-type3
glyph-cache-pressure
gradient-alpha
gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
group-unaligned
halo
halo-transform
@@ -97,6 +111,7 @@ large-font
large-twin-antialias-mixed
leaky-dashed-stroke
linear-gradient
+linear-gradient-one-stop
linear-gradient-reflect
linear-gradient-subset
line-width-overlap-offset
@@ -115,6 +130,7 @@ mesh-pattern-fold
mesh-pattern-overlap
mesh-pattern-transformed
new-sub-path
+nil-surface
operator-source
over-around-source
overlapping-boxes
@@ -193,6 +209,7 @@ record-neg-extents-unbounded
record-paint-alpha
record-paint-alpha-clip
record-paint-alpha-clip-mask
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
@@ -207,6 +224,7 @@ rounded-rectangle-fill
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
+scale-source-surface-paint
select-font-face
set-source
shape-general-convex
@@ -221,11 +239,13 @@ smask-mask
smask-paint
smask-stroke
smask-text
+source-surface-scale-paint
spline-decomposition
stroke-ctm-caps
stroke-image
stroke-pattern
subsurface
+subsurface-outside-target
subsurface-scale
surface-pattern
surface-pattern-operator
@@ -242,6 +262,7 @@ text-pattern
text-rotate
text-transform
text-unhinted-metrics
+thin-lines
tiger
tighten-bounds
transforms
diff --git a/.gitlab-ci/ignore-pdf-argb32.txt b/.gitlab-ci/ignore-pdf-argb32.txt
index bb7abf93a..cea0d4256 100644
--- a/.gitlab-ci/ignore-pdf-argb32.txt
+++ b/.gitlab-ci/ignore-pdf-argb32.txt
@@ -9,30 +9,15 @@ fallback
filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
-font-matrix-translation
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
-halo
halo-transform
-inverse-text
-large-font
linear-gradient-reflect
mask
-operator-alpha-alpha
overlapping-glyphs
-paint-with-alpha-clip
-partial-clip-text-bottom
-partial-clip-text-left
-pixman-downscale-best-24
pixman-downscale-best-95
-pixman-downscale-bilinear-24
-pixman-downscale-fast-24
pixman-downscale-fast-95
-pixman-downscale-good-24
-pixman-downscale-nearest-24
pixman-downscale-nearest-95
pthread-same-source
pthread-show-text
@@ -44,32 +29,19 @@ radial-gradient-source
record1414x-select-font-face
record1414x-text-transform
record2x-text-transform
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
record-replay-extend-reflect
-record-replay-extend-repeat
rectilinear-dash
-rectilinear-miter-limit
rectilinear-stroke
rotate-clip-image-surface-paint
rotate-image-surface-paint
-select-font-face
-self-copy
show-glyphs-advance
-show-text-current-point
smask-text
-smp-glyph
surface-pattern
surface-pattern-operator
surface-pattern-scale-down
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
thin-lines
-trap-clip
twin
-user-font-proxy
user-font-rescale
diff --git a/.gitlab-ci/ignore-pdf-rgb24.txt b/.gitlab-ci/ignore-pdf-rgb24.txt
index 33b8694f6..380d37710 100644
--- a/.gitlab-ci/ignore-pdf-rgb24.txt
+++ b/.gitlab-ci/ignore-pdf-rgb24.txt
@@ -1,37 +1,44 @@
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
bug-image-compositor
clear-source
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-text
culled-glyphs
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-extended-blend-solid
+fill-empty
filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
-font-matrix-translation
+ft-color-font
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
-halo
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
-inverse-text
-large-font
+image-surface-source
+linear-gradient-one-stop
linear-gradient-reflect
mask
-operator-alpha-alpha
+mask-ctm
+mask-surface-ctm
+nil-surface
+overlapping-boxes
overlapping-glyphs
-paint-with-alpha-clip
-partial-clip-text-bottom
-partial-clip-text-left
-pixman-downscale-best-24
+pass-through
+pdf-surface-source
pixman-downscale-best-95
-pixman-downscale-bilinear-24
-pixman-downscale-fast-24
pixman-downscale-fast-95
-pixman-downscale-good-24
-pixman-downscale-nearest-24
pixman-downscale-nearest-95
+pixman-rotate
+ps-surface-source
pthread-same-source
pthread-show-text
radial-gradient
@@ -50,41 +57,30 @@ record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
record90-paint-alpha-clip
-record90-paint-alpha-clip-mask
record90-select-font-face
-record90-text-transform
recordflip-select-font-face
-recordflip-text-transform
recordflip-whole-select-font-face
recordflip-whole-self-intersecting
recordflip-whole-text-transform
-recording-surface-extend-repeat
-recording-surface-over
record-paint-alpha-clip
-record-replay-extend-reflect
-record-replay-extend-repeat
+record-replay-extend-pad
record-select-font-face
-record-text-transform
rectilinear-dash
-rectilinear-miter-limit
rectilinear-stroke
rel-path
rotate-clip-image-surface-paint
rotate-image-surface-paint
-select-font-face
-self-copy
+set-source
show-glyphs-advance
-show-text-current-point
smask-text
-smp-glyph
+source-surface-scale-paint
surface-pattern
surface-pattern-scale-down
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
-trap-clip
+thin-lines
twin
-user-font-proxy
user-font-rescale
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-quartz-argb32.txt b/.gitlab-ci/ignore-quartz-argb32.txt
index e00077831..b09168133 100644
--- a/.gitlab-ci/ignore-quartz-argb32.txt
+++ b/.gitlab-ci/ignore-quartz-argb32.txt
@@ -14,6 +14,7 @@ ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
negative-stride-image
operator-www
+pdf-operators-text
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
diff --git a/.gitlab-ci/ignore-quartz-rgb24.txt b/.gitlab-ci/ignore-quartz-rgb24.txt
index 58d226784..277ad4bca 100644
--- a/.gitlab-ci/ignore-quartz-rgb24.txt
+++ b/.gitlab-ci/ignore-quartz-rgb24.txt
@@ -1,21 +1,46 @@
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
bug-361
bug-431
bug-448
bug-image-compositor
bug-source-cu
+clip-device-offset
+clip-fill-rule-pixel-aligned
+clip-unbounded
coverage-rhombus
culled-glyphs
-extended-blend-alpha
+device-offset
+device-offset-positive
extended-blend-alpha-mask
extended-blend-mask
-extended-blend-solid-alpha
+fill-and-stroke
+fill-empty
fill-missed-stop
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
+hatchings
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
negative-stride-image
+nil-surface
operator-www
+overlapping-boxes
+pass-through
+pdf-surface-source
+ps-surface-source
+quartz-surface-source
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
@@ -37,15 +62,18 @@ record-mesh
record-neg-extents-bounded
record-neg-extents-unbounded
record-paint-alpha-clip-mask
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
record-select-font-face
record-text-transform
rel-path
+scale-source-surface-paint
set-source
shifted-operator
simple-edge
+source-surface-scale-paint
subsurface
subsurface-scale
text-antialias-subpixel
@@ -54,4 +82,5 @@ text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
text-unhinted-metrics
+thin-lines
user-font-proxy
diff --git a/.gitlab-ci/ignore-recording-rgb24.txt b/.gitlab-ci/ignore-recording-rgb24.txt
index 39ba6df2e..90eb1d5fe 100644
--- a/.gitlab-ci/ignore-recording-rgb24.txt
+++ b/.gitlab-ci/ignore-recording-rgb24.txt
@@ -1,23 +1,52 @@
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
bug-source-cu
clear-source
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-text
+clip-unbounded
coverage-rectangles
culled-glyphs
dash-zero-length
degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
fill-and-stroke
+fill-empty
fill-missed-stop
finer-grained-fallbacks
+ft-color-font
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
gradient-alpha
gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
new-sub-path
+nil-surface
+overlapping-boxes
overlapping-glyphs
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
pthread-same-source
+radial-gradient-source
record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
@@ -29,10 +58,20 @@ recording-surface-extend-reflect
recording-surface-extend-repeat
recording-surface-over
recording-surface-source
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-none
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
rel-path
scale-offset-similar
+scale-source-surface-paint
+set-source
show-glyphs-advance
+source-surface-scale-paint
subsurface
+subsurface-outside-target
subsurface-scale
text-antialias-subpixel
text-antialias-subpixel-bgr
@@ -42,3 +81,6 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+thin-lines
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-script-argb32.txt b/.gitlab-ci/ignore-script-argb32.txt
index dd8b6ee8c..8ea8607c2 100644
--- a/.gitlab-ci/ignore-script-argb32.txt
+++ b/.gitlab-ci/ignore-script-argb32.txt
@@ -1,124 +1,44 @@
-a1-bug
a1-fill
-arc-looping-dash
bilevel-image
bitmap-font
-bug-51910
-bug-84115
-bug-seams
-caps
-caps-05
-caps-1
-caps-2
-caps-joins-05
-caps-joins-1
-caps-joins-2
-caps-joins-curve
-caps-sub-paths
-caps-tails-curve
-checkerboard
clear-source
clip-device-offset
-clip-disjoint-quad
-clip-image
-clip-mixed-antialias
-clip-polygons
-clip-push-group
clip-text
-close-path
-close-path-current-point
composite-integer-translate-over-repeat
-copy-path
coverage-abutting
-coverage-intersecting-quads
coverage-intersecting-triangles
coverage-rectangles
culled-glyphs
-dash-caps-joins
-dash-curve
-dash-infinite-loop
-dash-scale
-dash-state
-degenerate-curve-to
-degenerate-linear-gradient
-degenerate-pen
-degenerate-radial-gradient
-degenerate-rel-curve-to
device-offset-scale
-extend-pad-border
-fill-and-stroke-alpha
-fill-and-stroke-alpha-add
-filter-bilinear-extents
-font-matrix-translation
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-antialias-none
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
-halo
halo-transform
-huge-radial
image-surface-source
-infinite-join
-inverse-text
-joins
-large-font
large-source
large-twin-antialias-mixed
leaky-dashed-rectangle
-leaky-dashed-stroke
-leaky-polygon
-linear-gradient-extend
linear-gradient-reflect
-line-width-scale
-line-width-tolerance
-long-dashed-lines
map-all-to-image
map-bit-to-image
map-to-image-fill
-mask-transformed-image
-mask-transformed-similar
mesh-pattern
-mesh-pattern-conical
-mesh-pattern-control-points
-mesh-pattern-fold
-mesh-pattern-overlap
-mesh-pattern-transformed
negative-stride-image
-operator-alpha-alpha
overlapping-glyphs
paint-source-alpha
-paint-with-alpha
-paint-with-alpha-clip
-paint-with-alpha-solid-clip
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-half-reference
-partial-coverage-reference
-partial-coverage-three-quarter-reference
-path-stroke-twice
pdf-surface-source
ps-surface-source
pthread-show-text
push-group-color
radial-gradient
-radial-gradient-extend
radial-gradient-mask
radial-gradient-mask-source
-radial-gradient-one-stop
radial-gradient-source
-record1414x-paint-alpha
-record1414x-paint-alpha-clip
-record1414x-paint-alpha-solid-clip
record1414x-select-font-face
record1414x-text-transform
-record2x-paint-alpha
-record2x-paint-alpha-clip
-record2x-paint-alpha-solid-clip
record2x-select-font-face
record2x-text-transform
-record90-paint-alpha-clip-mask
record90-select-font-face
record90-text-transform
recordflip-select-font-face
@@ -130,61 +50,37 @@ recording-surface-extend-reflect
recording-surface-extend-repeat
recording-surface-over
recording-surface-source
-record-mesh
record-neg-extents-bounded
-record-paint-alpha-clip
-record-paint-alpha-solid-clip
record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
record-select-font-face
record-text-transform
-rectilinear-miter-limit
-reflected-stroke
scale-offset-image
scale-offset-similar
-select-font-face
-self-copy
-shape-sierpinski
show-glyphs-advance
-show-text-current-point
smask
-smask-image-mask
-smask-mask
-smask-paint
smask-text
stride-12-image
-stroke-ctm-caps
subsurface
subsurface-scale
-surface-pattern
-surface-pattern-scale-up
-text-antialias-gray
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
-transforms
twin
twin-antialias-gray
twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
-unclosed-strokes
user-font
user-font-proxy
user-font-rescale
-world-map
-world-map-fill
-world-map-stroke
xcb-stress-cache
xcb-surface-source
-xcomposite-projection
xlib-surface-source
diff --git a/.gitlab-ci/ignore-svg11-argb32.txt b/.gitlab-ci/ignore-svg11-argb32.txt
index f231e26dc..c0f6bb287 100644
--- a/.gitlab-ci/ignore-svg11-argb32.txt
+++ b/.gitlab-ci/ignore-svg11-argb32.txt
@@ -13,16 +13,12 @@ ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
halo-transform
linear-gradient-reflect
-mask-transformed-image
operator-alpha-alpha
overlapping-glyphs
paint-source-alpha
paint-with-alpha
paint-with-alpha-clip
paint-with-alpha-clip-mask
-pthread-similar
-radial-gradient
-radial-gradient-mask
record1414x-fill-alpha
record1414x-paint-alpha
record1414x-paint-alpha-clip
@@ -45,14 +41,7 @@ record-paint-alpha-clip
record-paint-alpha-clip-mask
scale-offset-image
scale-source-surface-paint
-self-copy
show-glyphs-advance
-smask
-smask-image-mask
-smask-mask
-smask-paint
-smask-stroke
-smask-text
surface-pattern
surface-pattern-operator
surface-pattern-scale-up
diff --git a/.gitlab-ci/ignore-svg11-rgb24.txt b/.gitlab-ci/ignore-svg11-rgb24.txt
index cb52865d2..f344cb841 100644
--- a/.gitlab-ci/ignore-svg11-rgb24.txt
+++ b/.gitlab-ci/ignore-svg11-rgb24.txt
@@ -1,39 +1,72 @@
alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-source-cu
clear-source
+clip-device-offset
+clip-fill-eo-unbounded
+clip-fill-nz-unbounded
+clip-fill-rule-pixel-aligned
clip-operator
+clip-stroke-unbounded
clip-text
+clip-unbounded
culled-glyphs
+dash-zero-length
+degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
extended-blend-solid
extended-blend-solid-alpha
+fill-and-stroke
+fill-empty
+fill-missed-stop
filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
+finer-grained-fallbacks
+ft-color-font
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
gradient-alpha
gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
+image-surface-source
+linear-gradient-one-stop
linear-gradient-reflect
-mask
-mask-transformed-image
+mask-ctm
+mask-surface-ctm
+new-sub-path
+nil-surface
operator-alpha-alpha
+operator-source
+overlapping-boxes
overlapping-glyphs
paint-source-alpha
paint-with-alpha
paint-with-alpha-clip
paint-with-alpha-clip-mask
-pthread-similar
-radial-gradient
-radial-gradient-mask
+pass-through
+pdf-surface-source
+pixman-rotate
+ps-surface-source
radial-gradient-mask-source
radial-gradient-source
record1414x-fill-alpha
+record1414x-paint
record1414x-paint-alpha
record1414x-paint-alpha-clip
record1414x-paint-alpha-clip-mask
+record1414x-paint-alpha-solid-clip
record1414x-select-font-face
+record1414x-self-intersecting
record1414x-text-transform
record2x-paint-alpha
record2x-paint-alpha-clip
@@ -46,24 +79,32 @@ recordflip-paint-alpha-clip-mask
recordflip-whole-paint-alpha
recordflip-whole-paint-alpha-clip
recordflip-whole-paint-alpha-clip-mask
+recording-surface-extend-none
+recording-surface-extend-reflect
+recording-surface-over
+recording-surface-source
+record-neg-extents-bounded
+record-neg-extents-unbounded
record-paint-alpha
record-paint-alpha-clip
record-paint-alpha-clip-mask
+record-replay-extend-none
+record-replay-extend-pad
+record-replay-extend-reflect
+rel-path
scale-offset-image
scale-source-surface-paint
-self-copy
+set-source
show-glyphs-advance
-smask
-smask-image-mask
-smask-mask
-smask-paint
-smask-stroke
-smask-text
+source-surface-scale-paint
surface-pattern
surface-pattern-operator
surface-pattern-scale-up
text-pattern
text-rotate
text-unhinted-metrics
+thin-lines
tighten-bounds
unbounded-operator
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
index 9c4cd185e..42f15e80a 100644
--- a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
@@ -1,23 +1,63 @@
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-text
+clip-unbounded
coverage-intersecting-triangles
culled-glyphs
dash-zero-length
degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
+fill-and-stroke
+fill-empty
fill-missed-stop
+finer-grained-fallbacks
+ft-color-font
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
new-sub-path
+nil-surface
+overlapping-boxes
overlapping-glyphs
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
record1414x-select-font-face
record1414x-text-transform
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-none
record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
rel-path
+scale-source-surface-paint
+set-source
show-glyphs-advance
+source-surface-scale-paint
subsurface
+subsurface-outside-target
subsurface-scale
text-antialias-subpixel
text-antialias-subpixel-bgr
@@ -27,3 +67,6 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+thin-lines
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
index c2d889e19..69e5f75d7 100644
--- a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
@@ -1,23 +1,53 @@
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
+bug-source-cu
+clip-device-offset
clip-disjoint-hatching
clip-fill-eo-unbounded
clip-fill-nz-unbounded
+clip-fill-rule-pixel-aligned
clip-operator
clip-polygons
clip-shape
clip-stroke-unbounded
-clip-twice
+clip-unbounded
coverage-intersecting-triangles
culled-glyphs
dash-zero-length
degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
+fill-and-stroke
+fill-empty
fill-missed-stop
+finer-grained-fallbacks
+ft-color-font
ft-text-vertical-layout-type1
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
hatchings
-mask
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
new-sub-path
-operator-source
+nil-surface
+overlapping-boxes
+overlapping-glyphs
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
@@ -25,18 +55,25 @@ radial-gradient-source
random-clip
record1414x-select-font-face
record1414x-text-transform
-recording-surface-extend-none
-recording-surface-over
record-neg-extents-bounded
+record-neg-extents-unbounded
record-paint-alpha-solid-clip
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
rel-path
rotated-clip
+scale-source-surface-paint
+set-source
+source-surface-scale-paint
+subsurface-outside-target
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-trap-clip
+text-pattern
+thin-lines
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xcb-rgb24.txt b/.gitlab-ci/ignore-xcb-rgb24.txt
index cbb1b2d37..eb56f6949 100644
--- a/.gitlab-ci/ignore-xcb-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-rgb24.txt
@@ -1,19 +1,16 @@
+a1-clip-fill-rule
a1-tiger
-arc-looping-dash
-bug-51910
-bug-84115
-bug-image-compositor
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-431
bug-spline
-caps-05
-caps-1
-caps-2
-caps-joins-05
-caps-joins-1
-caps-joins-2
-clear-source
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-operator
-clip-text
-coverage-abutting
+clip-unbounded
coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
@@ -22,37 +19,32 @@ coverage-rhombus
coverage-row-triangles
coverage-triangles
culled-glyphs
-dash-curve
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
+fill-empty
fill-image
-filter-bilinear-extents
-font-matrix-translation
-ft-show-glyphs-positioning
-ft-show-glyphs-table
+ft-color-font
ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo
halo-transform
hatchings
-inverse-text
-large-font
-linear-gradient
-linear-gradient-subset
-mask
-mask-transformed-image
-mask-transformed-similar
-operator-alpha-alpha
-operator-clear
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
+nil-surface
operator-source
overlapping-boxes
-overlapping-dash-caps
-overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
@@ -61,70 +53,44 @@ radial-outer-focus
random-clip
record1414x-fill-alpha
record1414x-self-intersecting
-record1414x-text-transform
record2x-fill-alpha
record2x-paint-alpha-clip-mask
-record90-fill-alpha
record90-paint-alpha-clip
record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-fill-alpha
recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
recordflip-whole-fill-alpha
recordflip-whole-paint-alpha-clip-mask
recordflip-whole-self-intersecting
-recording-surface-extend-none
recording-surface-extend-pad
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
-recording-surface-source
record-neg-extents-bounded
record-neg-extents-unbounded
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
record-self-intersecting
-reflected-stroke
rotated-clip
-select-font-face
-show-glyphs-advance
-show-text-current-point
+scale-source-surface-paint
+set-source
simple-edge
-smask
-smask-fill
-smask-image-mask
-smask-mask
-smask-paint
-smask-stroke
-smp-glyph
+source-surface-scale-paint
stroke-clipped
stroke-image
-subsurface
-subsurface-scale
-surface-pattern-operator
-surface-pattern-scale-up
-text-antialias-gray
+subsurface-outside-target
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
+thin-lines
tighten-bounds
-trap-clip
-twin
-twin-antialias-gray
twin-antialias-none
-twin-antialias-subpixel
unantialiased-shapes
-unbounded-operator
user-font
user-font-proxy
-world-map
-world-map-fill
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xcb-window&-rgb24.txt b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
index 10b9c9c3a..105fcfc6f 100644
--- a/.gitlab-ci/ignore-xcb-window&-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
@@ -1,16 +1,15 @@
-arc-looping-dash
-bug-51910
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-431
bug-spline
-caps-05
-caps-1
-caps-2
-caps-joins-05
-caps-joins-1
-caps-joins-2
-clear-source
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-operator
-clip-text
-coverage-abutting
+clip-unbounded
coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
@@ -18,97 +17,70 @@ coverage-rectangles
coverage-row-triangles
coverage-triangles
culled-glyphs
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
+fill-empty
fill-image
-filter-bilinear-extents
-font-matrix-translation
-ft-show-glyphs-positioning
-ft-show-glyphs-table
+ft-color-font
ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo
halo-transform
-inverse-text
-linear-gradient
-linear-gradient-subset
-mask
-mask-transformed-image
-mask-transformed-similar
-operator-alpha-alpha
-operator-clear
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
+nil-surface
operator-source
overlapping-boxes
-overlapping-dash-caps
-overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
radial-outer-focus
record1414x-fill-alpha
record1414x-self-intersecting
-record1414x-text-transform
record2x-fill-alpha
record2x-paint-alpha-clip-mask
-record90-fill-alpha
record90-paint-alpha-clip
record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-fill-alpha
recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
recordflip-whole-fill-alpha
recordflip-whole-paint-alpha-clip-mask
recordflip-whole-self-intersecting
-recording-surface-extend-none
recording-surface-extend-pad
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
-recording-surface-source
record-neg-extents-bounded
record-neg-extents-unbounded
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
record-self-intersecting
-reflected-stroke
rotated-clip
-select-font-face
-show-glyphs-advance
-show-text-current-point
+scale-source-surface-paint
+set-source
simple-edge
-smask
-smask-fill
-smask-image-mask
-smask-mask
-smask-paint
-smask-stroke
-smp-glyph
+source-surface-scale-paint
stroke-clipped
stroke-image
-subsurface
-subsurface-scale
-surface-pattern-operator
-surface-pattern-scale-up
-text-antialias-gray
+subsurface-outside-target
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
+thin-lines
tighten-bounds
-trap-clip
-twin
-twin-antialias-gray
twin-antialias-none
-twin-antialias-subpixel
unantialiased-shapes
-unbounded-operator
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xcb-window-rgb24.txt b/.gitlab-ci/ignore-xcb-window-rgb24.txt
index 26df57963..1ecea73ed 100644
--- a/.gitlab-ci/ignore-xcb-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window-rgb24.txt
@@ -1,16 +1,15 @@
-arc-looping-dash
-bug-51910
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-431
bug-spline
-caps-05
-caps-1
-caps-2
-caps-joins-05
-caps-joins-1
-caps-joins-2
-clear-source
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-operator
-clip-text
-coverage-abutting
+clip-unbounded
coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
@@ -18,99 +17,72 @@ coverage-rectangles
coverage-row-triangles
coverage-triangles
culled-glyphs
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
+fill-empty
fill-image
-filter-bilinear-extents
-font-matrix-translation
-ft-show-glyphs-positioning
-ft-show-glyphs-table
+ft-color-font
ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo
halo-transform
-inverse-text
-linear-gradient
-linear-gradient-subset
-mask
-mask-transformed-image
-mask-transformed-similar
-operator-alpha-alpha
-operator-clear
+image-surface-source
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
+nil-surface
operator-source
overlapping-boxes
-overlapping-dash-caps
-overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
push-group
push-group-color
radial-outer-focus
record1414x-fill-alpha
record1414x-self-intersecting
-record1414x-text-transform
record2x-fill-alpha
record2x-paint-alpha-clip-mask
-record90-fill-alpha
record90-paint-alpha-clip
record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-fill-alpha
recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
recordflip-whole-fill-alpha
recordflip-whole-paint-alpha-clip-mask
recordflip-whole-self-intersecting
-recording-surface-extend-none
recording-surface-extend-pad
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
-recording-surface-source
record-neg-extents-bounded
record-neg-extents-unbounded
+record-replay-extend-none
record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
record-self-intersecting
-reflected-stroke
rotated-clip
-select-font-face
-show-glyphs-advance
-show-text-current-point
+scale-source-surface-paint
+set-source
simple-edge
-smask
-smask-fill
-smask-image-mask
-smask-mask
-smask-paint
-smask-stroke
-smp-glyph
+source-surface-scale-paint
stroke-clipped
stroke-image
-subsurface
-subsurface-scale
-surface-pattern-operator
-surface-pattern-scale-up
-text-antialias-gray
+subsurface-outside-target
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
+thin-lines
tighten-bounds
-trap-clip
-twin
-twin-antialias-gray
twin-antialias-none
-twin-antialias-subpixel
unantialiased-shapes
-unbounded-operator
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
index f4effb215..617d4d07d 100644
--- a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
@@ -1,112 +1,88 @@
-arc-looping-dash
-bug-51910
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
bug-seams
-caps
-caps-05
-caps-1
-caps-2
-caps-joins-05
-caps-joins-1
-caps-joins-2
-caps-joins-curve
-caps-sub-paths
-clear-source
-clip-disjoint-quad
-clip-image
-clip-mixed-antialias
-clip-polygons
-clip-push-group
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-text
-close-path
-close-path-current-point
-copy-path
-coverage-abutting
-coverage-intersecting-quads
+clip-unbounded
culled-glyphs
-dash-caps-joins
-dash-infinite-loop
-dash-scale
dash-zero-length
-degenerate-curve-to
degenerate-path
-degenerate-pen
-degenerate-rel-curve-to
+device-offset
+device-offset-positive
extended-blend-alpha-mask
fallback
+fill-and-stroke
+fill-empty
fill-missed-stop
-filter-bilinear-extents
finer-grained-fallbacks
-font-matrix-translation
+ft-color-font
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
-infinite-join
-inverse-text
-joins
+image-surface-source
large-twin-antialias-mixed
-leaky-dashed-stroke
-leaky-polygon
-line-width-scale
-line-width-tolerance
-long-dashed-lines
-mask-transformed-image
-mask-transformed-similar
+linear-gradient-one-stop
+mask-ctm
+mask-surface-ctm
new-sub-path
-operator-alpha-alpha
+nil-surface
over-above-source
over-around-source
over-between-source
+overlapping-boxes
overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
-path-stroke-twice
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
pthread-show-text
pthread-similar
push-group-color
record1414x-select-font-face
record1414x-text-transform
-recording-surface-extend-none
-recording-surface-over
-rectilinear-miter-limit
-reflected-stroke
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-none
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
rel-path
-select-font-face
-self-copy
+scale-source-surface-paint
+set-source
shifted-operator
show-glyphs-advance
-show-text-current-point
smask
-smask-image-mask
-smask-mask
-smask-paint
smask-text
-smp-glyph
-stroke-ctm-caps
+source-surface-scale-paint
subsurface
+subsurface-outside-target
subsurface-scale
surface-pattern-scale-down-extend-none
-surface-pattern-scale-up
-text-antialias-gray
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
-transforms
-twin
+thin-lines
twin-antialias-gray
twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
-unclosed-strokes
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
index fc31fb370..004faf999 100644
--- a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
@@ -1,48 +1,82 @@
-caps-sub-paths
-clear-source
+a1-clip-fill-rule
+alpha-similar
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
+bug-361
+bug-431
+bug-source-cu
+clip-device-offset
+clip-fill-rule-pixel-aligned
clip-operator
clipped-group
-clip-push-group
clip-text
+clip-unbounded
coverage-intersecting-triangles
culled-glyphs
curve-to-as-line-to
-dash-zero-length
degenerate-path
+device-offset
+device-offset-positive
extended-blend-alpha-mask
-fallback
fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
+fill-empty
fill-missed-stop
finer-grained-fallbacks
+ft-color-font
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo-transform
horizontal-clip
-infinite-join
+image-surface-source
large-twin-antialias-mixed
leaky-polygon
+linear-gradient-one-stop
mask
+mask-ctm
+mask-surface-ctm
new-sub-path
+nil-surface
operator-clear
operator-source
+overlapping-boxes
overlapping-glyphs
+pass-through
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
pthread-show-text
+radial-gradient-source
radial-outer-focus
record1414x-select-font-face
record1414x-text-transform
-rectilinear-miter-limit
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-none
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
rectilinear-stroke
rel-path
+scale-source-surface-paint
+set-source
show-glyphs-advance
smask
smask-text
+source-surface-scale-paint
subsurface
+subsurface-outside-target
subsurface-scale
surface-pattern-operator
-text-antialias-gray
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
@@ -51,8 +85,11 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+thin-lines
twin-antialias-gray
twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
unbounded-operator
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xlib-rgb24.txt b/.gitlab-ci/ignore-xlib-rgb24.txt
index b7b11523b..cf2d7239d 100644
--- a/.gitlab-ci/ignore-xlib-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-rgb24.txt
@@ -1,22 +1,26 @@
+a1-clip-fill-rule
aliasing
+alpha-similar
arc-looping-dash
-bug-51910
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
bug-84115
bug-extents
bug-image-compositor
bug-spline
-caps-joins-05
caps-joins-curve
-caps-tails-curve
-clear-source
+clip-device-offset
clip-disjoint
+clip-fill-rule-pixel-aligned
clip-operator
clip-shape
clip-stroke
clip-stroke-unbounded
clip-text
+clip-unbounded
close-path-current-point
-coverage-abutting
coverage-column-triangles
coverage-rhombus
culled-glyphs
@@ -26,54 +30,50 @@ dash-scale
degenerate-curve-to
degenerate-pen
degenerate-rel-curve-to
+device-offset
+device-offset-positive
drunkard-tails
extended-blend-alpha-mask
-extended-blend-mask
-fallback
fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
+fill-empty
fill-image
-filter-bilinear-extents
-font-matrix-translation
+ft-color-font
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo
halo-transform
hatchings
-infinite-join
-inverse-text
+image-surface-source
joins
joins-loop
joins-retrace
-joins-star
-large-font
large-twin-antialias-mixed
leaky-dashed-stroke
-linear-gradient
-linear-gradient-subset
+linear-gradient-one-stop
line-width-scale
line-width-tolerance
long-dashed-lines
-mask
-mask-transformed-image
-mask-transformed-similar
-miter-precision
+mask-ctm
+mask-surface-ctm
new-sub-path
-operator-alpha-alpha
-operator-clear
+nil-surface
operator-source
overlapping-boxes
overlapping-dash-caps
overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
+pass-through
path-stroke-twice
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
pthread-show-text
radial-gradient
radial-gradient-mask
@@ -93,13 +93,11 @@ record2x-fill-alpha
record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
-record90-fill-alpha
record90-paint-alpha-clip
record90-paint-alpha-solid-clip
record90-select-font-face
record90-self-intersecting
record90-text-transform
-recordflip-fill-alpha
recordflip-paint-alpha-clip-mask
recordflip-select-font-face
recordflip-self-intersecting
@@ -109,12 +107,7 @@ recordflip-whole-paint-alpha-clip-mask
recordflip-whole-select-font-face
recordflip-whole-self-intersecting
recordflip-whole-text-transform
-recording-surface-extend-none
recording-surface-extend-pad
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
-recording-surface-source
record-neg-extents-bounded
record-neg-extents-unbounded
record-replay-extend-none
@@ -126,57 +119,46 @@ record-self-intersecting
record-text-transform
reflected-stroke
rel-path
-rotated-clip
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-select-font-face
+scale-source-surface-paint
+set-source
shape-general-convex
shape-sierpinski
shifted-operator
show-glyphs-advance
-show-text-current-point
simple-edge
smask
-smask-fill
-smask-image-mask
-smask-mask
-smask-paint
smask-stroke
smask-text
-smp-glyph
+source-surface-scale-paint
spline-decomposition
stroke-clipped
-stroke-ctm-caps
stroke-image
stroke-pattern
subsurface
+subsurface-outside-target
subsurface-scale
-surface-pattern-operator
-surface-pattern-scale-up
-text-antialias-gray
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
+thin-lines
tighten-bounds
-trap-clip
twin
twin-antialias-gray
twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
-unbounded-operator
unclosed-strokes
user-font
user-font-proxy
world-map
-world-map-fill
world-map-stroke
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-xlib-window-rgb24.txt b/.gitlab-ci/ignore-xlib-window-rgb24.txt
index ac83dd920..e05790caa 100644
--- a/.gitlab-ci/ignore-xlib-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-window-rgb24.txt
@@ -1,19 +1,24 @@
+a1-clip-fill-rule
aliasing
+alpha-similar
arc-looping-dash
-bug-51910
+big-empty-box
+big-empty-triangle
+big-little-box
+bitmap-font
bug-extents
bug-spline
-caps-joins-05
caps-joins-curve
-clear-source
+clip-device-offset
clip-disjoint
+clip-fill-rule-pixel-aligned
clip-operator
clip-shape
clip-stroke
clip-stroke-unbounded
clip-text
+clip-unbounded
close-path-current-point
-coverage-abutting
coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
@@ -26,52 +31,49 @@ dash-scale
degenerate-curve-to
degenerate-pen
degenerate-rel-curve-to
+device-offset
+device-offset-positive
drunkard-tails
extended-blend-alpha-mask
-extended-blend-mask
-fallback
fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
+fill-empty
fill-image
-filter-bilinear-extents
-font-matrix-translation
+ft-color-font
ft-show-glyphs-positioning
-ft-show-glyphs-table
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
-glyph-cache-pressure
+gradient-alpha
+gradient-constant-alpha
+gradient-zero-stops
+gradient-zero-stops-mask
halo
halo-transform
-infinite-join
-inverse-text
+image-surface-source
joins
joins-loop
joins-retrace
-joins-star
large-twin-antialias-mixed
leaky-dashed-stroke
-linear-gradient
-linear-gradient-subset
+linear-gradient-one-stop
line-width-scale
line-width-tolerance
long-dashed-lines
-mask
-mask-transformed-image
-mask-transformed-similar
-miter-precision
+mask-ctm
+mask-surface-ctm
new-sub-path
-operator-alpha-alpha
-operator-clear
+nil-surface
operator-source
overlapping-boxes
overlapping-dash-caps
overlapping-glyphs
-partial-clip-text-bottom
-partial-clip-text-left
-partial-coverage-reference
-partial-coverage-three-quarter-reference
+pass-through
path-stroke-twice
+pdf-surface-source
+pixman-downscale-best-24
+pixman-rotate
+ps-surface-source
pthread-show-text
radial-outer-focus
record1414x-fill-alpha
@@ -82,13 +84,11 @@ record2x-fill-alpha
record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
-record90-fill-alpha
record90-paint-alpha-clip
record90-paint-alpha-solid-clip
record90-select-font-face
record90-self-intersecting
record90-text-transform
-recordflip-fill-alpha
recordflip-paint-alpha-clip-mask
recordflip-select-font-face
recordflip-self-intersecting
@@ -98,12 +98,7 @@ recordflip-whole-paint-alpha-clip-mask
recordflip-whole-select-font-face
recordflip-whole-self-intersecting
recordflip-whole-text-transform
-recording-surface-extend-none
recording-surface-extend-pad
-recording-surface-extend-reflect
-recording-surface-extend-repeat
-recording-surface-over
-recording-surface-source
record-neg-extents-bounded
record-neg-extents-unbounded
record-replay-extend-none
@@ -115,51 +110,41 @@ record-self-intersecting
record-text-transform
reflected-stroke
rel-path
-rotated-clip
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-select-font-face
+scale-source-surface-paint
+set-source
shape-general-convex
shifted-operator
show-glyphs-advance
-show-text-current-point
simple-edge
smask
-smask-fill
-smask-image-mask
-smask-mask
-smask-paint
smask-stroke
smask-text
-smp-glyph
+source-surface-scale-paint
spline-decomposition
stroke-clipped
-stroke-ctm-caps
stroke-image
stroke-pattern
subsurface
+subsurface-outside-target
subsurface-scale
-surface-pattern-operator
-surface-pattern-scale-up
-text-antialias-gray
text-antialias-subpixel
text-antialias-subpixel-bgr
text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
-text-glyph-range
text-pattern
text-rotate
-text-transform
text-unhinted-metrics
+thin-lines
tighten-bounds
-trap-clip
twin
twin-antialias-gray
twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
-unbounded-operator
unclosed-strokes
-xcomposite-projection
+xcb-surface-source
+xlib-surface-source
diff --git a/test/buffer-diff.c b/test/buffer-diff.c
index 6d2a6bf8a..0796ca42a 100644
--- a/test/buffer-diff.c
+++ b/test/buffer-diff.c
@@ -25,6 +25,7 @@
#include "config.h"
+#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#ifdef HAVE_UNISTD_H
@@ -48,15 +49,14 @@
* result_ret.
*
* This function should be rewritten to compare all formats supported by
- * cairo_format_t instead of taking a mask as a parameter.
+ * cairo_format_t.
*/
static void
-buffer_diff_core (const unsigned char *_buf_a, int stride_a,
- const unsigned char *_buf_b, int stride_b,
- unsigned char *_buf_diff, int stride_diff,
+buffer_diff_core (const unsigned char *_buf_a, int stride_a, cairo_format_t format_a,
+ const unsigned char *_buf_b, int stride_b, cairo_format_t format_b,
+ unsigned char *_buf_diff, int stride_diff, cairo_format_t format_diff,
int width,
int height,
- uint32_t mask,
buffer_diff_result_t *result_ret)
{
const uint32_t *buf_a = (const uint32_t*) _buf_a;
@@ -65,6 +65,10 @@ buffer_diff_core (const unsigned char *_buf_a, int stride_a,
int x, y;
buffer_diff_result_t result = {0, 0};
+ assert (format_a == CAIRO_FORMAT_RGB24 || format_a == CAIRO_FORMAT_ARGB32);
+ assert (format_b == CAIRO_FORMAT_RGB24 || format_b == CAIRO_FORMAT_ARGB32);
+ assert (format_diff == CAIRO_FORMAT_RGB24 || format_diff == CAIRO_FORMAT_ARGB32);
+
stride_a /= sizeof (uint32_t);
stride_b /= sizeof (uint32_t);
stride_diff /= sizeof (uint32_t);
@@ -74,24 +78,32 @@ buffer_diff_core (const unsigned char *_buf_a, int stride_a,
uint32_t *row = buf_diff + y * stride_diff;
for (x = 0; x < width; x++) {
+ uint32_t pixel_a = row_a[x];
+ uint32_t pixel_b = row_b[x];
+ /* convert pixel data to ARGB32 if necessary */
+ if (format_a == CAIRO_FORMAT_RGB24)
+ pixel_a |= 0xff000000;
+ if (format_b == CAIRO_FORMAT_RGB24)
+ pixel_b |= 0xff000000;
+
/* check if the pixels are the same */
- if ((row_a[x] & mask) != (row_b[x] & mask)) {
+ if (pixel_a != pixel_b) {
int channel;
uint32_t diff_pixel = 0;
/* calculate a difference value for all 4 channels */
for (channel = 0; channel < 4; channel++) {
- int value_a = (row_a[x] >> (channel*8)) & 0xff;
- int value_b = (row_b[x] >> (channel*8)) & 0xff;
+ int value_a = (pixel_a >> (channel*8)) & 0xff;
+ int value_b = (pixel_b >> (channel*8)) & 0xff;
unsigned int diff;
diff = abs (value_a - value_b);
if (diff > result.max_diff)
result.max_diff = diff;
diff *= 4; /* emphasize */
if (diff)
- diff += 128; /* make sure it's visible */
+ diff += 128; /* make sure it's visible */
if (diff > 255)
- diff = 255;
+ diff = 255;
diff_pixel |= diff << (channel*8);
}
@@ -141,13 +153,15 @@ compare_surfaces (const cairo_test_context_t *ctx,
*/
buffer_diff_core (cairo_image_surface_get_data (surface_a),
cairo_image_surface_get_stride (surface_a),
+ cairo_image_surface_get_format (surface_a),
cairo_image_surface_get_data (surface_b),
cairo_image_surface_get_stride (surface_b),
+ cairo_image_surface_get_format (surface_b),
cairo_image_surface_get_data (surface_diff),
cairo_image_surface_get_stride (surface_diff),
+ cairo_image_surface_get_format (surface_diff),
cairo_image_surface_get_width (surface_a),
cairo_image_surface_get_height (surface_a),
- cairo_surface_get_content (surface_a) & CAIRO_CONTENT_ALPHA ? 0xffffffff : 0x00ffffff,
result);
if (result->pixels_changed == 0)
return;
@@ -185,11 +199,10 @@ buffer_diff_noalpha (const unsigned char *buf_a,
int stride,
buffer_diff_result_t *result)
{
- buffer_diff_core(buf_a, stride,
- buf_b, stride,
- buf_diff, stride,
+ buffer_diff_core(buf_a, stride, CAIRO_FORMAT_RGB24,
+ buf_b, stride, CAIRO_FORMAT_RGB24,
+ buf_diff, stride, CAIRO_FORMAT_RGB24,
width, height,
- 0x00ffffff,
result);
}
commit 04906075847dd5f13d9b02503032a2fbb557b32e
Author: Manuel Stoeckl <code at mstoeckl.com>
Date: Wed Aug 25 21:44:00 2021 -0400
pdiff: convert RGB24 image values to ARGB32 on read
To avoid reading a potentially garbage alpha channel when users
of pdiff_compare pass in RGB24 images, if the format is RGB24,
force the alpha channel to be 0xff.
This commit also updates CI to adjust for the new tests that have
started/stopped failing. New failures often are cases where
the reference image has alpha transparency, but the test output
does not; new passing tests may indicate that the unused alpha
channel of an RGB24 image was garbage, but now is ignored.
diff --git a/.gitlab-ci/ignore-image-argb32.txt b/.gitlab-ci/ignore-image-argb32.txt
index 84a246f17..c5b96d732 100644
--- a/.gitlab-ci/ignore-image-argb32.txt
+++ b/.gitlab-ci/ignore-image-argb32.txt
@@ -18,3 +18,4 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+user-font-mask
diff --git a/.gitlab-ci/ignore-image-rgb24.txt b/.gitlab-ci/ignore-image-rgb24.txt
index 2ed564551..9017df695 100644
--- a/.gitlab-ci/ignore-image-rgb24.txt
+++ b/.gitlab-ci/ignore-image-rgb24.txt
@@ -1,13 +1,23 @@
+bug-source-cu
clip-text
culled-glyphs
+dash-zero-length
+degenerate-path
extended-blend-alpha-mask
+fill-and-stroke
+fill-missed-stop
+finer-grained-fallbacks
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
+gradient-alpha
+gradient-constant-alpha
halo-transform
+new-sub-path
overlapping-glyphs
record1414x-select-font-face
record1414x-text-transform
+rel-path
shifted-operator
show-glyphs-advance
subsurface
@@ -20,3 +30,4 @@ text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
+user-font-mask
diff --git a/.gitlab-ci/ignore-quartz-rgb24.txt b/.gitlab-ci/ignore-quartz-rgb24.txt
index d2084bd31..58d226784 100644
--- a/.gitlab-ci/ignore-quartz-rgb24.txt
+++ b/.gitlab-ci/ignore-quartz-rgb24.txt
@@ -2,17 +2,18 @@ bug-361
bug-431
bug-448
bug-image-compositor
+bug-source-cu
coverage-rhombus
culled-glyphs
-extended-blend
extended-blend-alpha
extended-blend-alpha-mask
extended-blend-mask
-extended-blend-solid
extended-blend-solid-alpha
+fill-missed-stop
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
+gradient-alpha
negative-stride-image
operator-www
radial-gradient
@@ -41,6 +42,8 @@ record-replay-extend-reflect
record-replay-extend-repeat
record-select-font-face
record-text-transform
+rel-path
+set-source
shifted-operator
simple-edge
subsurface
diff --git a/.gitlab-ci/ignore-recording-rgb24.txt b/.gitlab-ci/ignore-recording-rgb24.txt
index 9ad61875d..39ba6df2e 100644
--- a/.gitlab-ci/ignore-recording-rgb24.txt
+++ b/.gitlab-ci/ignore-recording-rgb24.txt
@@ -3,12 +3,19 @@ clear-source
clip-text
coverage-rectangles
culled-glyphs
+dash-zero-length
+degenerate-path
extended-blend-alpha-mask
+fill-and-stroke
+fill-missed-stop
finer-grained-fallbacks
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
+gradient-alpha
+gradient-constant-alpha
halo-transform
+new-sub-path
overlapping-glyphs
pthread-same-source
record1414x-fill-alpha
@@ -22,6 +29,7 @@ recording-surface-extend-reflect
recording-surface-extend-repeat
recording-surface-over
recording-surface-source
+rel-path
scale-offset-similar
show-glyphs-advance
subsurface
diff --git a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
index 902ffa63d..9c4cd185e 100644
--- a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
@@ -1,15 +1,21 @@
clip-text
coverage-intersecting-triangles
culled-glyphs
+dash-zero-length
+degenerate-path
extended-blend-alpha-mask
fallback
+fill-missed-stop
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
ft-text-vertical-layout-type3
halo-transform
+new-sub-path
overlapping-glyphs
record1414x-select-font-face
record1414x-text-transform
+record-replay-extend-pad
+rel-path
show-glyphs-advance
subsurface
subsurface-scale
diff --git a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
index 1578b7e9a..c2d889e19 100644
--- a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
@@ -8,11 +8,15 @@ clip-stroke-unbounded
clip-twice
coverage-intersecting-triangles
culled-glyphs
+dash-zero-length
+degenerate-path
extended-blend-alpha-mask
fallback
+fill-missed-stop
ft-text-vertical-layout-type1
hatchings
mask
+new-sub-path
operator-source
radial-gradient
radial-gradient-mask
@@ -25,8 +29,10 @@ recording-surface-extend-none
recording-surface-over
record-neg-extents-bounded
record-paint-alpha-solid-clip
+record-replay-extend-pad
record-replay-extend-reflect
record-replay-extend-repeat
+rel-path
rotated-clip
text-antialias-subpixel
text-antialias-subpixel-bgr
diff --git a/.gitlab-ci/ignore-xcb-rgb24.txt b/.gitlab-ci/ignore-xcb-rgb24.txt
index 6baceeb65..cbb1b2d37 100644
--- a/.gitlab-ci/ignore-xcb-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-rgb24.txt
@@ -3,7 +3,6 @@ arc-looping-dash
bug-51910
bug-84115
bug-image-compositor
-bug-source-cu
bug-spline
caps-05
caps-1
@@ -54,8 +53,6 @@ partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
partial-coverage-three-quarter-reference
-push-group
-push-group-color
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
@@ -115,6 +112,7 @@ text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
text-glyph-range
+text-pattern
text-rotate
text-transform
tighten-bounds
diff --git a/.gitlab-ci/ignore-xcb-window&-rgb24.txt b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
index 8f6f96d5c..10b9c9c3a 100644
--- a/.gitlab-ci/ignore-xcb-window&-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
@@ -46,8 +46,6 @@ partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
partial-coverage-three-quarter-reference
-push-group
-push-group-color
radial-outer-focus
record1414x-fill-alpha
record1414x-self-intersecting
@@ -102,6 +100,7 @@ text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
text-glyph-range
+text-pattern
text-rotate
text-transform
tighten-bounds
diff --git a/.gitlab-ci/ignore-xcb-window-rgb24.txt b/.gitlab-ci/ignore-xcb-window-rgb24.txt
index 8f6f96d5c..26df57963 100644
--- a/.gitlab-ci/ignore-xcb-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window-rgb24.txt
@@ -102,6 +102,7 @@ text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
text-antialias-subpixel-vrgb
text-glyph-range
+text-pattern
text-rotate
text-transform
tighten-bounds
diff --git a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
index d86d694a1..f4effb215 100644
--- a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
@@ -28,10 +28,12 @@ dash-infinite-loop
dash-scale
dash-zero-length
degenerate-curve-to
+degenerate-path
degenerate-pen
degenerate-rel-curve-to
extended-blend-alpha-mask
fallback
+fill-missed-stop
filter-bilinear-extents
finer-grained-fallbacks
font-matrix-translation
@@ -52,6 +54,7 @@ line-width-tolerance
long-dashed-lines
mask-transformed-image
mask-transformed-similar
+new-sub-path
operator-alpha-alpha
over-above-source
over-around-source
@@ -71,6 +74,7 @@ recording-surface-extend-none
recording-surface-over
rectilinear-miter-limit
reflected-stroke
+rel-path
select-font-face
self-copy
shifted-operator
diff --git a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
index a5f0ec34f..fc31fb370 100644
--- a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
@@ -7,11 +7,14 @@ clip-text
coverage-intersecting-triangles
culled-glyphs
curve-to-as-line-to
+dash-zero-length
+degenerate-path
extended-blend-alpha-mask
fallback
fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
+fill-missed-stop
finer-grained-fallbacks
ft-show-glyphs-positioning
ft-text-vertical-layout-type1
@@ -22,6 +25,7 @@ infinite-join
large-twin-antialias-mixed
leaky-polygon
mask
+new-sub-path
operator-clear
operator-source
overlapping-glyphs
diff --git a/.gitlab-ci/ignore-xlib-rgb24.txt b/.gitlab-ci/ignore-xlib-rgb24.txt
index 0a4c9f616..b7b11523b 100644
--- a/.gitlab-ci/ignore-xlib-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-rgb24.txt
@@ -4,7 +4,6 @@ bug-51910
bug-84115
bug-extents
bug-image-compositor
-bug-source-cu
bug-spline
caps-joins-05
caps-joins-curve
@@ -76,8 +75,6 @@ partial-coverage-reference
partial-coverage-three-quarter-reference
path-stroke-twice
pthread-show-text
-push-group
-push-group-color
radial-gradient
radial-gradient-mask
radial-gradient-mask-source
diff --git a/.gitlab-ci/ignore-xlib-window-rgb24.txt b/.gitlab-ci/ignore-xlib-window-rgb24.txt
index 814bd7da6..ac83dd920 100644
--- a/.gitlab-ci/ignore-xlib-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-window-rgb24.txt
@@ -73,8 +73,6 @@ partial-coverage-reference
partial-coverage-three-quarter-reference
path-stroke-twice
pthread-show-text
-push-group
-push-group-color
radial-outer-focus
record1414x-fill-alpha
record1414x-select-font-face
diff --git a/test/pdiff/pdiff.c b/test/pdiff/pdiff.c
index 6e05552d6..119369858 100644
--- a/test/pdiff/pdiff.c
+++ b/test/pdiff/pdiff.c
@@ -17,6 +17,7 @@
#include "config.h"
#include "lpyramid.h"
+#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
@@ -171,18 +172,21 @@ XYZToLAB (float x, float y, float z, float *L, float *A, float *B)
}
static uint32_t
-_get_pixel (const uint32_t *data, int i)
+_get_pixel (const uint32_t *data, int i, cairo_format_t format)
{
- return data[i];
+ if (format == CAIRO_FORMAT_ARGB32)
+ return data[i];
+ else
+ return data[i] | 0xff000000;
}
static unsigned char
-_get_red (const uint32_t *data, int i)
+_get_red (const uint32_t *data, int i, cairo_format_t format)
{
uint32_t pixel;
uint8_t alpha;
- pixel = _get_pixel (data, i);
+ pixel = _get_pixel (data, i, format);
alpha = (pixel & 0xff000000) >> 24;
if (alpha == 0)
return 0;
@@ -191,12 +195,12 @@ _get_red (const uint32_t *data, int i)
}
static unsigned char
-_get_green (const uint32_t *data, int i)
+_get_green (const uint32_t *data, int i, cairo_format_t format)
{
uint32_t pixel;
uint8_t alpha;
- pixel = _get_pixel (data, i);
+ pixel = _get_pixel (data, i, format);
alpha = (pixel & 0xff000000) >> 24;
if (alpha == 0)
return 0;
@@ -205,12 +209,12 @@ _get_green (const uint32_t *data, int i)
}
static unsigned char
-_get_blue (const uint32_t *data, int i)
+_get_blue (const uint32_t *data, int i, cairo_format_t format)
{
uint32_t pixel;
uint8_t alpha;
- pixel = _get_pixel (data, i);
+ pixel = _get_pixel (data, i, format);
alpha = (pixel & 0xff000000) >> 24;
if (alpha == 0)
return 0;
@@ -269,6 +273,7 @@ pdiff_compare (cairo_surface_t *surface_a,
float F_freq[MAX_PYR_LEVELS - 2];
float csf_max;
const uint32_t *data_a, *data_b;
+ cairo_format_t format_a, format_b;
unsigned int pixels_failed;
@@ -277,6 +282,11 @@ pdiff_compare (cairo_surface_t *surface_a,
if (w < 3 || h < 3) /* too small for the Laplacian convolution */
return -1;
+ format_a = cairo_image_surface_get_format (surface_a);
+ format_b = cairo_image_surface_get_format (surface_b);
+ assert (format_a == CAIRO_FORMAT_RGB24 || format_a == CAIRO_FORMAT_ARGB32);
+ assert (format_b == CAIRO_FORMAT_RGB24 || format_b == CAIRO_FORMAT_ARGB32);
+
aX = xmalloc (dim * sizeof (float));
aY = xmalloc (dim * sizeof (float));
aZ = xmalloc (dim * sizeof (float));
@@ -297,15 +307,15 @@ pdiff_compare (cairo_surface_t *surface_a,
for (x = 0; x < w; x++) {
float r, g, b, l;
i = x + y * w;
- r = powf(_get_red (data_a, i) / 255.0f, gamma);
- g = powf(_get_green (data_a, i) / 255.0f, gamma);
- b = powf(_get_blue (data_a, i) / 255.0f, gamma);
+ r = powf(_get_red (data_a, i, format_a) / 255.0f, gamma);
+ g = powf(_get_green (data_a, i, format_a) / 255.0f, gamma);
+ b = powf(_get_blue (data_a, i, format_a) / 255.0f, gamma);
AdobeRGBToXYZ(r,g,b,&aX[i],&aY[i],&aZ[i]);
XYZToLAB(aX[i], aY[i], aZ[i], &l, &aA[i], &aB[i]);
- r = powf(_get_red (data_b, i) / 255.0f, gamma);
- g = powf(_get_green (data_b, i) / 255.0f, gamma);
- b = powf(_get_blue (data_b, i) / 255.0f, gamma);
+ r = powf(_get_red (data_b, i, format_b) / 255.0f, gamma);
+ g = powf(_get_green (data_b, i, format_b) / 255.0f, gamma);
+ b = powf(_get_blue (data_b, i, format_b) / 255.0f, gamma);
AdobeRGBToXYZ(r,g,b,&bX[i],&bY[i],&bZ[i]);
XYZToLAB(bX[i], bY[i], bZ[i], &l, &bA[i], &bB[i]);
commit a8012953ed2821b1d9444b28e1dcc95846004dce
Author: Manuel Stoeckl <code at mstoeckl.com>
Date: Sun Aug 29 11:54:36 2021 -0400
ci: sort lists of ignored tests
diff --git a/.gitlab-ci/ignore-image-argb32.txt b/.gitlab-ci/ignore-image-argb32.txt
index 9b70c84a5..84a246f17 100644
--- a/.gitlab-ci/ignore-image-argb32.txt
+++ b/.gitlab-ci/ignore-image-argb32.txt
@@ -1,5 +1,8 @@
clip-text
culled-glyphs
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
overlapping-glyphs
record1414x-select-font-face
@@ -8,13 +11,10 @@ show-glyphs-advance
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-image-rgb24.txt b/.gitlab-ci/ignore-image-rgb24.txt
index abaa20111..2ed564551 100644
--- a/.gitlab-ci/ignore-image-rgb24.txt
+++ b/.gitlab-ci/ignore-image-rgb24.txt
@@ -1,6 +1,9 @@
clip-text
culled-glyphs
extended-blend-alpha-mask
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
overlapping-glyphs
record1414x-select-font-face
@@ -10,13 +13,10 @@ show-glyphs-advance
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-image16-rgb24.txt b/.gitlab-ci/ignore-image16-rgb24.txt
index 6705caf6b..0e2533821 100644
--- a/.gitlab-ci/ignore-image16-rgb24.txt
+++ b/.gitlab-ci/ignore-image16-rgb24.txt
@@ -1,18 +1,19 @@
a1-bug
+a1-tiger
aliasing
arc-direction
arc-looping-dash
big-line
-bug-spline
bug-84115
bug-bo-ricotz
-bug-source-cu
bug-extents
-bug-seams
bug-image-compositor
+bug-seams
+bug-source-cu
+bug-spline
caps
-caps-2
caps-05
+caps-2
caps-joins-2
caps-joins-alpha
caps-joins-curve
@@ -20,28 +21,28 @@ caps-tails-curve
clear-source
clip-disjoint
clip-disjoint-quad
-clip-stroke-unbounded
-clip-fill-nz-unbounded
-clip-fill-eo-unbounded
clip-fill
+clip-fill-eo-unbounded
+clip-fill-nz-unbounded
clip-image
clip-intersect
clip-operator
clip-push-group
clip-shape
clip-stroke
+clip-stroke-unbounded
clip-text
clip-twice
close-path-current-point
copy-path
-coverage-rectangles
-coverage-rhombus
+coverage-abutting
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
+coverage-rhombus
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
-coverage-abutting
culled-glyphs
dash-caps-joins
dash-curve
@@ -54,13 +55,13 @@ degenerate-path
degenerate-pen
degenerate-rel-curve-to
drunkard-tails
-extend-pad-border
extended-blend
extended-blend-alpha
-extended-blend-mask
extended-blend-alpha-mask
+extended-blend-mask
extended-blend-solid
extended-blend-solid-alpha
+extend-pad-border
fallback
fill-alpha
fill-alpha-pattern
@@ -74,6 +75,10 @@ fill-rule
filter-bilinear-extents
finer-grained-fallbacks
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
gradient-alpha
gradient-constant-alpha
@@ -86,16 +91,16 @@ huge-radial
inverse-text
joins
joins-loop
-joins-star
joins-retrace
+joins-star
large-font
large-twin-antialias-mixed
leaky-dashed-stroke
-line-width-overlap-offset
-line-width-scale
linear-gradient
linear-gradient-reflect
linear-gradient-subset
+line-width-overlap-offset
+line-width-scale
long-dashed-lines
mask
mask-alpha
@@ -113,8 +118,8 @@ new-sub-path
operator-source
over-around-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
paint-source-alpha
paint-with-alpha
paint-with-alpha-clip
@@ -125,72 +130,74 @@ pass-through
path-append
path-stroke-twice
pdf-isolated-group
+pixman-downscale-best-24
+pixman-downscale-best-96
+pixman-downscale-bilinear-96
pixman-downscale-fast-96
pixman-downscale-good-96
-pixman-downscale-best-96
-pixman-downscale-best-24
pixman-downscale-nearest-96
-pixman-downscale-bilinear-96
pixman-rotate
+pthread-same-source
+pthread-show-text
push-group
push-group-color
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
random-clip
-random-intersections-eo
-random-intersections-nonzero
random-intersections-curves-eo
random-intersections-curves-nz
+random-intersections-eo
+random-intersections-nonzero
raster-source
-record-paint-alpha
-record-paint-alpha-clip
-record-paint-alpha-clip-mask
-record-fill-alpha
-record-select-font-face
-record-text-transform
+record1414x-fill-alpha
record1414x-paint-alpha
record1414x-paint-alpha-clip
record1414x-paint-alpha-clip-mask
-record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
+record2x-fill-alpha
record2x-paint-alpha
record2x-paint-alpha-clip
record2x-paint-alpha-clip-mask
-record2x-fill-alpha
record2x-select-font-face
record2x-text-transform
+record90-fill-alpha
record90-paint-alpha
record90-paint-alpha-clip
record90-paint-alpha-clip-mask
-record90-fill-alpha
record90-select-font-face
record90-text-transform
-recordflip-whole-paint-alpha
-recordflip-whole-paint-alpha-clip
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-select-font-face
-recordflip-whole-text-transform
+record-fill-alpha
+recordflip-fill-alpha
recordflip-paint-alpha
recordflip-paint-alpha-clip
recordflip-paint-alpha-clip-mask
-recordflip-fill-alpha
recordflip-select-font-face
recordflip-text-transform
-record-neg-extents-unbounded
-record-neg-extents-bounded
-record-mesh
-record-replay-extend-repeat
-record-replay-extend-reflect
-record-replay-extend-pad
-recording-surface-over
-recording-surface-source
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha
+recordflip-whole-paint-alpha-clip
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-select-font-face
+recordflip-whole-text-transform
recording-surface-extend-none
-recording-surface-extend-repeat
recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
+record-mesh
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-paint-alpha
+record-paint-alpha-clip
+record-paint-alpha-clip-mask
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-text-transform
rectilinear-dash-scale-unaligned
reflected-stroke
rel-path
@@ -200,15 +207,13 @@ rounded-rectangle-fill
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-stroke-ctm-caps
-stroke-image
select-font-face
set-source
+shape-general-convex
+shape-sierpinski
shifted-operator
show-glyphs-advance
show-text-current-point
-shape-general-convex
-shape-sierpinski
simple-edge
smask
smask-fill
@@ -217,6 +222,8 @@ smask-paint
smask-stroke
smask-text
spline-decomposition
+stroke-ctm-caps
+stroke-image
stroke-pattern
subsurface
subsurface-scale
@@ -226,18 +233,17 @@ surface-pattern-scale-down
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-pattern
text-rotate
text-transform
text-unhinted-metrics
-tighten-bounds
tiger
-a1-tiger
+tighten-bounds
transforms
trap-clip
twin
@@ -251,14 +257,8 @@ user-font-mask
user-font-proxy
user-font-rescale
world-map
-world-map-stroke
world-map-fill
+world-map-stroke
xcb-huge-image-shm
xcb-huge-subimage
xcomposite-projection
-pthread-same-source
-pthread-show-text
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-pdf-argb32.txt b/.gitlab-ci/ignore-pdf-argb32.txt
index 2fc1fa760..bb7abf93a 100644
--- a/.gitlab-ci/ignore-pdf-argb32.txt
+++ b/.gitlab-ci/ignore-pdf-argb32.txt
@@ -10,6 +10,10 @@ filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -22,32 +26,34 @@ overlapping-glyphs
paint-with-alpha-clip
partial-clip-text-bottom
partial-clip-text-left
-pixman-downscale-fast-95
+pixman-downscale-best-24
+pixman-downscale-best-95
+pixman-downscale-bilinear-24
pixman-downscale-fast-24
+pixman-downscale-fast-95
pixman-downscale-good-24
-pixman-downscale-best-95
-pixman-downscale-best-24
-pixman-downscale-nearest-95
pixman-downscale-nearest-24
-pixman-downscale-bilinear-24
+pixman-downscale-nearest-95
+pthread-same-source
+pthread-show-text
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
radial-gradient-one-stop
+radial-gradient-source
record1414x-select-font-face
record1414x-text-transform
record2x-text-transform
-record-replay-extend-repeat
-record-replay-extend-reflect
-recording-surface-over
-recording-surface-extend-repeat
recording-surface-extend-reflect
-rectilinear-miter-limit
+recording-surface-extend-repeat
+recording-surface-over
+record-replay-extend-reflect
+record-replay-extend-repeat
rectilinear-dash
+rectilinear-miter-limit
rectilinear-stroke
-rotate-image-surface-paint
rotate-clip-image-surface-paint
+rotate-image-surface-paint
select-font-face
self-copy
show-glyphs-advance
@@ -67,9 +73,3 @@ trap-clip
twin
user-font-proxy
user-font-rescale
-pthread-same-source
-pthread-show-text
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-pdf-rgb24.txt b/.gitlab-ci/ignore-pdf-rgb24.txt
index ae5e7e994..33b8694f6 100644
--- a/.gitlab-ci/ignore-pdf-rgb24.txt
+++ b/.gitlab-ci/ignore-pdf-rgb24.txt
@@ -8,6 +8,10 @@ filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -20,24 +24,23 @@ overlapping-glyphs
paint-with-alpha-clip
partial-clip-text-bottom
partial-clip-text-left
-pixman-downscale-fast-95
+pixman-downscale-best-24
+pixman-downscale-best-95
+pixman-downscale-bilinear-24
pixman-downscale-fast-24
+pixman-downscale-fast-95
pixman-downscale-good-24
-pixman-downscale-best-95
-pixman-downscale-best-24
-pixman-downscale-nearest-95
pixman-downscale-nearest-24
-pixman-downscale-bilinear-24
+pixman-downscale-nearest-95
+pthread-same-source
+pthread-show-text
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
radial-gradient-one-stop
+radial-gradient-source
random-intersections-curves-eo
random-intersections-curves-nz
-record-paint-alpha-clip
-record-select-font-face
-record-text-transform
record1414x-paint-alpha
record1414x-paint-alpha-clip
record1414x-paint-alpha-clip-mask
@@ -50,21 +53,24 @@ record90-paint-alpha-clip
record90-paint-alpha-clip-mask
record90-select-font-face
record90-text-transform
+recordflip-select-font-face
+recordflip-text-transform
recordflip-whole-select-font-face
recordflip-whole-self-intersecting
recordflip-whole-text-transform
-recordflip-select-font-face
-recordflip-text-transform
-record-replay-extend-repeat
-record-replay-extend-reflect
-recording-surface-over
recording-surface-extend-repeat
-rectilinear-miter-limit
+recording-surface-over
+record-paint-alpha-clip
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-text-transform
rectilinear-dash
+rectilinear-miter-limit
rectilinear-stroke
rel-path
-rotate-image-surface-paint
rotate-clip-image-surface-paint
+rotate-image-surface-paint
select-font-face
self-copy
show-glyphs-advance
@@ -82,9 +88,3 @@ trap-clip
twin
user-font-proxy
user-font-rescale
-pthread-same-source
-pthread-show-text
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-quartz-argb32.txt b/.gitlab-ci/ignore-quartz-argb32.txt
index 67810065a..e00077831 100644
--- a/.gitlab-ci/ignore-quartz-argb32.txt
+++ b/.gitlab-ci/ignore-quartz-argb32.txt
@@ -5,20 +5,19 @@ clip-operator
coverage-rhombus
culled-glyphs
extended-blend-alpha
-extended-blend-mask
extended-blend-alpha-mask
+extended-blend-mask
extended-blend-solid-alpha
fallback
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
negative-stride-image
operator-www
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
-record-paint-alpha-clip-mask
-record-fill-alpha
-record-select-font-face
-record-text-transform
+radial-gradient-source
record1414x-select-font-face
record1414x-text-transform
record2x-paint-alpha-clip-mask
@@ -27,27 +26,28 @@ record2x-text-transform
record90-fill-alpha
record90-select-font-face
record90-text-transform
-recordflip-whole-select-font-face
-recordflip-whole-text-transform
+record-fill-alpha
recordflip-select-font-face
recordflip-text-transform
-record-neg-extents-bounded
+recordflip-whole-select-font-face
+recordflip-whole-text-transform
record-mesh
-record-replay-extend-repeat
-record-replay-extend-reflect
+record-neg-extents-bounded
+record-paint-alpha-clip-mask
record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-text-transform
simple-edge
subsurface
subsurface-outside-target
subsurface-scale
surface-pattern
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-unhinted-metrics
user-font-proxy
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-quartz-rgb24.txt b/.gitlab-ci/ignore-quartz-rgb24.txt
index 314ef4aef..d2084bd31 100644
--- a/.gitlab-ci/ignore-quartz-rgb24.txt
+++ b/.gitlab-ci/ignore-quartz-rgb24.txt
@@ -6,20 +6,19 @@ coverage-rhombus
culled-glyphs
extended-blend
extended-blend-alpha
-extended-blend-mask
extended-blend-alpha-mask
+extended-blend-mask
extended-blend-solid
extended-blend-solid-alpha
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
negative-stride-image
operator-www
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
-record-paint-alpha-clip-mask
-record-fill-alpha
-record-select-font-face
-record-text-transform
+radial-gradient-source
record1414x-select-font-face
record1414x-text-transform
record2x-paint-alpha-clip-mask
@@ -28,27 +27,28 @@ record2x-text-transform
record90-fill-alpha
record90-select-font-face
record90-text-transform
-recordflip-whole-select-font-face
-recordflip-whole-text-transform
+record-fill-alpha
recordflip-select-font-face
recordflip-text-transform
-record-neg-extents-unbounded
-record-neg-extents-bounded
+recordflip-whole-select-font-face
+recordflip-whole-text-transform
record-mesh
-record-replay-extend-repeat
-record-replay-extend-reflect
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-paint-alpha-clip-mask
record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-text-transform
shifted-operator
simple-edge
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-unhinted-metrics
user-font-proxy
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-recording-argb32.txt b/.gitlab-ci/ignore-recording-argb32.txt
index 99cee110f..2697bd99c 100644
--- a/.gitlab-ci/ignore-recording-argb32.txt
+++ b/.gitlab-ci/ignore-recording-argb32.txt
@@ -4,32 +4,32 @@ clip-text
coverage-rectangles
culled-glyphs
finer-grained-fallbacks
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
overlapping-glyphs
+pthread-same-source
record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
+record2x-paint-alpha-clip-mask
record2x-text-transform
-recording-surface-over
-recording-surface-source
recording-surface-extend-none
-recording-surface-extend-repeat
recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
scale-offset-similar
show-glyphs-advance
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
-pthread-same-source
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-recording-rgb24.txt b/.gitlab-ci/ignore-recording-rgb24.txt
index 47838dcc3..9ad61875d 100644
--- a/.gitlab-ci/ignore-recording-rgb24.txt
+++ b/.gitlab-ci/ignore-recording-rgb24.txt
@@ -5,32 +5,32 @@ coverage-rectangles
culled-glyphs
extended-blend-alpha-mask
finer-grained-fallbacks
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
overlapping-glyphs
+pthread-same-source
record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
+record2x-paint-alpha-clip-mask
record2x-text-transform
-recording-surface-over
-recording-surface-source
recording-surface-extend-none
-recording-surface-extend-repeat
recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
scale-offset-similar
show-glyphs-advance
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
-pthread-same-source
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-script-argb32.txt b/.gitlab-ci/ignore-script-argb32.txt
index 493e69bdb..dd8b6ee8c 100644
--- a/.gitlab-ci/ignore-script-argb32.txt
+++ b/.gitlab-ci/ignore-script-argb32.txt
@@ -2,36 +2,37 @@ a1-bug
a1-fill
arc-looping-dash
bilevel-image
+bitmap-font
bug-51910
bug-84115
bug-seams
caps
-caps-2
-caps-1
caps-05
-checkerboard
-caps-joins-2
-caps-joins-1
+caps-1
+caps-2
caps-joins-05
+caps-joins-1
+caps-joins-2
caps-joins-curve
-caps-tails-curve
caps-sub-paths
+caps-tails-curve
+checkerboard
clear-source
-clip-disjoint-quad
clip-device-offset
+clip-disjoint-quad
clip-image
clip-mixed-antialias
-clip-push-group
clip-polygons
+clip-push-group
clip-text
close-path
close-path-current-point
composite-integer-translate-over-repeat
copy-path
-coverage-rectangles
+coverage-abutting
coverage-intersecting-quads
coverage-intersecting-triangles
-coverage-abutting
+coverage-rectangles
culled-glyphs
dash-caps-joins
dash-curve
@@ -49,13 +50,16 @@ fill-and-stroke-alpha
fill-and-stroke-alpha-add
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-antialias-none
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
huge-radial
image-surface-source
-xcb-surface-source
-xlib-surface-source
infinite-join
inverse-text
joins
@@ -65,10 +69,10 @@ large-twin-antialias-mixed
leaky-dashed-rectangle
leaky-dashed-stroke
leaky-polygon
-line-width-scale
-line-width-tolerance
linear-gradient-extend
linear-gradient-reflect
+line-width-scale
+line-width-tolerance
long-dashed-lines
map-all-to-image
map-bit-to-image
@@ -86,79 +90,82 @@ operator-alpha-alpha
overlapping-glyphs
paint-source-alpha
paint-with-alpha
-paint-with-alpha-solid-clip
paint-with-alpha-clip
+paint-with-alpha-solid-clip
partial-clip-text-bottom
partial-clip-text-left
+partial-coverage-half-reference
partial-coverage-reference
partial-coverage-three-quarter-reference
-partial-coverage-half-reference
path-stroke-twice
+pdf-surface-source
+ps-surface-source
+pthread-show-text
push-group-color
radial-gradient
+radial-gradient-extend
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
radial-gradient-one-stop
-radial-gradient-extend
-record-paint-alpha-solid-clip
-record-paint-alpha-clip
-record-select-font-face
-record-text-transform
+radial-gradient-source
record1414x-paint-alpha
-record1414x-paint-alpha-solid-clip
record1414x-paint-alpha-clip
+record1414x-paint-alpha-solid-clip
record1414x-select-font-face
record1414x-text-transform
record2x-paint-alpha
-record2x-paint-alpha-solid-clip
record2x-paint-alpha-clip
+record2x-paint-alpha-solid-clip
record2x-select-font-face
record2x-text-transform
record90-paint-alpha-clip-mask
record90-select-font-face
record90-text-transform
-recordflip-whole-select-font-face
-recordflip-whole-text-transform
recordflip-select-font-face
recordflip-text-transform
-record-neg-extents-bounded
+recordflip-whole-select-font-face
+recordflip-whole-text-transform
+recording-surface-extend-none
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
record-mesh
+record-neg-extents-bounded
+record-paint-alpha-clip
+record-paint-alpha-solid-clip
record-replay-extend-none
-record-replay-extend-repeat
-record-replay-extend-reflect
record-replay-extend-pad
-recording-surface-over
-recording-surface-source
-recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-text-transform
rectilinear-miter-limit
reflected-stroke
scale-offset-image
scale-offset-similar
-stroke-ctm-caps
select-font-face
self-copy
+shape-sierpinski
show-glyphs-advance
show-text-current-point
-shape-sierpinski
smask
smask-image-mask
smask-mask
smask-paint
smask-text
stride-12-image
+stroke-ctm-caps
subsurface
subsurface-scale
surface-pattern
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-pattern
text-rotate
@@ -175,16 +182,9 @@ user-font
user-font-proxy
user-font-rescale
world-map
-world-map-stroke
world-map-fill
+world-map-stroke
xcb-stress-cache
+xcb-surface-source
xcomposite-projection
-pthread-show-text
-bitmap-font
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
-ft-text-antialias-none
-pdf-surface-source
-ps-surface-source
+xlib-surface-source
diff --git a/.gitlab-ci/ignore-svg11-argb32.txt b/.gitlab-ci/ignore-svg11-argb32.txt
index 26de01d66..f231e26dc 100644
--- a/.gitlab-ci/ignore-svg11-argb32.txt
+++ b/.gitlab-ci/ignore-svg11-argb32.txt
@@ -8,6 +8,9 @@ extended-blend-solid-alpha
filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
linear-gradient-reflect
mask-transformed-image
@@ -17,15 +20,13 @@ paint-source-alpha
paint-with-alpha
paint-with-alpha-clip
paint-with-alpha-clip-mask
+pthread-similar
radial-gradient
radial-gradient-mask
-record-paint-alpha
-record-paint-alpha-clip
-record-paint-alpha-clip-mask
+record1414x-fill-alpha
record1414x-paint-alpha
record1414x-paint-alpha-clip
record1414x-paint-alpha-clip-mask
-record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
record2x-paint-alpha
@@ -33,12 +34,15 @@ record2x-paint-alpha-clip
record2x-paint-alpha-clip-mask
record90-paint-alpha-clip
record90-paint-alpha-clip-mask
-recordflip-whole-paint-alpha
-recordflip-whole-paint-alpha-clip
-recordflip-whole-paint-alpha-clip-mask
recordflip-paint-alpha
recordflip-paint-alpha-clip
recordflip-paint-alpha-clip-mask
+recordflip-whole-paint-alpha
+recordflip-whole-paint-alpha-clip
+recordflip-whole-paint-alpha-clip-mask
+record-paint-alpha
+record-paint-alpha-clip
+record-paint-alpha-clip-mask
scale-offset-image
scale-source-surface-paint
self-copy
@@ -57,7 +61,3 @@ text-rotate
text-unhinted-metrics
tighten-bounds
unbounded-operator
-pthread-similar
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-svg11-rgb24.txt b/.gitlab-ci/ignore-svg11-rgb24.txt
index 4dd13ae01..cb52865d2 100644
--- a/.gitlab-ci/ignore-svg11-rgb24.txt
+++ b/.gitlab-ci/ignore-svg11-rgb24.txt
@@ -9,6 +9,9 @@ extended-blend-solid-alpha
filter-bilinear-extents
filter-nearest-offset
filter-nearest-transformed
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
gradient-alpha
gradient-constant-alpha
halo-transform
@@ -21,17 +24,15 @@ paint-source-alpha
paint-with-alpha
paint-with-alpha-clip
paint-with-alpha-clip-mask
+pthread-similar
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
-record-paint-alpha
-record-paint-alpha-clip
-record-paint-alpha-clip-mask
+radial-gradient-source
+record1414x-fill-alpha
record1414x-paint-alpha
record1414x-paint-alpha-clip
record1414x-paint-alpha-clip-mask
-record1414x-fill-alpha
record1414x-select-font-face
record1414x-text-transform
record2x-paint-alpha
@@ -39,12 +40,15 @@ record2x-paint-alpha-clip
record2x-paint-alpha-clip-mask
record90-paint-alpha-clip
record90-paint-alpha-clip-mask
-recordflip-whole-paint-alpha
-recordflip-whole-paint-alpha-clip
-recordflip-whole-paint-alpha-clip-mask
recordflip-paint-alpha
recordflip-paint-alpha-clip
recordflip-paint-alpha-clip-mask
+recordflip-whole-paint-alpha
+recordflip-whole-paint-alpha-clip
+recordflip-whole-paint-alpha-clip-mask
+record-paint-alpha
+record-paint-alpha-clip
+record-paint-alpha-clip-mask
scale-offset-image
scale-source-surface-paint
self-copy
@@ -63,7 +67,3 @@ text-rotate
text-unhinted-metrics
tighten-bounds
unbounded-operator
-pthread-similar
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xcb-argb32.txt b/.gitlab-ci/ignore-xcb-argb32.txt
index 2acf41059..18cfefded 100644
--- a/.gitlab-ci/ignore-xcb-argb32.txt
+++ b/.gitlab-ci/ignore-xcb-argb32.txt
@@ -1,14 +1,16 @@
+a1-tiger
bug-spline
clip-operator
-coverage-rectangles
-coverage-rhombus
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
+coverage-rhombus
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
culled-glyphs
fill-image
+ft-text-vertical-layout-type1
halo
halo-transform
hatchings
@@ -16,41 +18,39 @@ operator-source
overlapping-boxes
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
radial-outer-focus
random-clip
-record-self-intersecting
record1414x-fill-alpha
record1414x-self-intersecting
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
-record90-paint-alpha-solid-clip
+record2x-paint-alpha-clip-mask
record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-self-intersecting
recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
-record-neg-extents-unbounded
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-self-intersecting
+recording-surface-extend-pad
+recording-surface-extend-repeat
record-neg-extents-bounded
-record-replay-extend-repeat
-record-replay-extend-reflect
+record-neg-extents-unbounded
record-replay-extend-pad
-recording-surface-extend-repeat
-recording-surface-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-self-intersecting
rotated-clip
+simple-edge
stroke-clipped
stroke-image
-simple-edge
-text-antialias-subpixel-vrgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-rotate
tighten-bounds
-a1-tiger
twin-antialias-none
unantialiased-shapes
user-font
user-font-proxy
-ft-text-vertical-layout-type1
diff --git a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
index 8f2477884..902ffa63d 100644
--- a/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-fallback-rgb24.txt
@@ -3,6 +3,9 @@ coverage-intersecting-triangles
culled-glyphs
extended-blend-alpha-mask
fallback
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
overlapping-glyphs
record1414x-select-font-face
@@ -11,13 +14,10 @@ show-glyphs-advance
subsurface
subsurface-scale
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xcb-render-0-0-argb32.txt b/.gitlab-ci/ignore-xcb-render-0-0-argb32.txt
index 13bcae273..9e9fbc37c 100644
--- a/.gitlab-ci/ignore-xcb-render-0-0-argb32.txt
+++ b/.gitlab-ci/ignore-xcb-render-0-0-argb32.txt
@@ -1,30 +1,30 @@
clip-disjoint-hatching
-clip-stroke-unbounded
-clip-fill-nz-unbounded
clip-fill-eo-unbounded
+clip-fill-nz-unbounded
clip-operator
clip-polygons
clip-shape
+clip-stroke-unbounded
clip-twice
coverage-intersecting-triangles
culled-glyphs
+ft-text-vertical-layout-type1
hatchings
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
random-clip
-record-paint-alpha-solid-clip
record1414x-select-font-face
record1414x-text-transform
record-neg-extents-bounded
-record-replay-extend-repeat
+record-paint-alpha-solid-clip
record-replay-extend-reflect
+record-replay-extend-repeat
rotated-clip
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
trap-clip
-ft-text-vertical-layout-type1
diff --git a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
index 21de16050..1578b7e9a 100644
--- a/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-render-0-0-rgb24.txt
@@ -1,36 +1,36 @@
clip-disjoint-hatching
-clip-stroke-unbounded
-clip-fill-nz-unbounded
clip-fill-eo-unbounded
+clip-fill-nz-unbounded
clip-operator
clip-polygons
clip-shape
+clip-stroke-unbounded
clip-twice
coverage-intersecting-triangles
culled-glyphs
extended-blend-alpha-mask
fallback
+ft-text-vertical-layout-type1
hatchings
mask
operator-source
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
random-clip
-record-paint-alpha-solid-clip
record1414x-select-font-face
record1414x-text-transform
+recording-surface-extend-none
+recording-surface-over
record-neg-extents-bounded
-record-replay-extend-repeat
+record-paint-alpha-solid-clip
record-replay-extend-reflect
-recording-surface-over
-recording-surface-extend-none
+record-replay-extend-repeat
rotated-clip
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
trap-clip
-ft-text-vertical-layout-type1
diff --git a/.gitlab-ci/ignore-xcb-rgb24.txt b/.gitlab-ci/ignore-xcb-rgb24.txt
index c1823bb5a..6baceeb65 100644
--- a/.gitlab-ci/ignore-xcb-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-rgb24.txt
@@ -1,26 +1,27 @@
+a1-tiger
arc-looping-dash
-bug-spline
bug-51910
bug-84115
-bug-source-cu
bug-image-compositor
-caps-2
-caps-1
+bug-source-cu
+bug-spline
caps-05
-caps-joins-2
-caps-joins-1
+caps-1
+caps-2
caps-joins-05
+caps-joins-1
+caps-joins-2
clear-source
clip-operator
clip-text
-coverage-rectangles
-coverage-rhombus
+coverage-abutting
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
+coverage-rhombus
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
-coverage-abutting
culled-glyphs
dash-curve
extended-blend-alpha-mask
@@ -28,6 +29,10 @@ fallback
fill-image
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -43,8 +48,8 @@ operator-alpha-alpha
operator-clear
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
@@ -53,42 +58,40 @@ push-group
push-group-color
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
radial-outer-focus
random-clip
-record-self-intersecting
record1414x-fill-alpha
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
-record90-paint-alpha-solid-clip
-record90-paint-alpha-clip
+record2x-paint-alpha-clip-mask
record90-fill-alpha
+record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-self-intersecting
-recordflip-paint-alpha-clip-mask
recordflip-fill-alpha
+recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
-record-neg-extents-unbounded
-record-neg-extents-bounded
-record-replay-extend-repeat
-record-replay-extend-reflect
-record-replay-extend-pad
-recording-surface-over
-recording-surface-source
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-self-intersecting
recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
recording-surface-extend-pad
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-self-intersecting
reflected-stroke
rotated-clip
select-font-face
-stroke-clipped
-stroke-image
show-glyphs-advance
show-text-current-point
simple-edge
@@ -99,21 +102,22 @@ smask-mask
smask-paint
smask-stroke
smp-glyph
+stroke-clipped
+stroke-image
subsurface
subsurface-scale
surface-pattern-operator
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-rotate
text-transform
tighten-bounds
-a1-tiger
trap-clip
twin
twin-antialias-gray
@@ -126,7 +130,3 @@ user-font-proxy
world-map
world-map-fill
xcomposite-projection
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xcb-window&-rgb24.txt b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
index f0137c1c2..8f6f96d5c 100644
--- a/.gitlab-ci/ignore-xcb-window&-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window&-rgb24.txt
@@ -1,28 +1,32 @@
arc-looping-dash
-bug-spline
bug-51910
-caps-2
-caps-1
+bug-spline
caps-05
-caps-joins-2
-caps-joins-1
+caps-1
+caps-2
caps-joins-05
+caps-joins-1
+caps-joins-2
clear-source
clip-operator
clip-text
-coverage-rectangles
+coverage-abutting
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
-coverage-abutting
culled-glyphs
extended-blend-alpha-mask
fallback
fill-image
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -36,8 +40,8 @@ operator-alpha-alpha
operator-clear
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
@@ -45,38 +49,36 @@ partial-coverage-three-quarter-reference
push-group
push-group-color
radial-outer-focus
-record-self-intersecting
record1414x-fill-alpha
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
-record90-paint-alpha-solid-clip
-record90-paint-alpha-clip
+record2x-paint-alpha-clip-mask
record90-fill-alpha
+record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-self-intersecting
-recordflip-paint-alpha-clip-mask
recordflip-fill-alpha
+recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
-record-neg-extents-unbounded
-record-neg-extents-bounded
-record-replay-extend-repeat
-record-replay-extend-reflect
-record-replay-extend-pad
-recording-surface-over
-recording-surface-source
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-self-intersecting
recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
recording-surface-extend-pad
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-self-intersecting
reflected-stroke
rotated-clip
select-font-face
-stroke-clipped
-stroke-image
show-glyphs-advance
show-text-current-point
simple-edge
@@ -87,16 +89,18 @@ smask-mask
smask-paint
smask-stroke
smp-glyph
+stroke-clipped
+stroke-image
subsurface
subsurface-scale
surface-pattern-operator
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-rotate
text-transform
@@ -109,7 +113,3 @@ twin-antialias-subpixel
unantialiased-shapes
unbounded-operator
xcomposite-projection
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xcb-window-rgb24.txt b/.gitlab-ci/ignore-xcb-window-rgb24.txt
index f0137c1c2..8f6f96d5c 100644
--- a/.gitlab-ci/ignore-xcb-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xcb-window-rgb24.txt
@@ -1,28 +1,32 @@
arc-looping-dash
-bug-spline
bug-51910
-caps-2
-caps-1
+bug-spline
caps-05
-caps-joins-2
-caps-joins-1
+caps-1
+caps-2
caps-joins-05
+caps-joins-1
+caps-joins-2
clear-source
clip-operator
clip-text
-coverage-rectangles
+coverage-abutting
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
-coverage-abutting
culled-glyphs
extended-blend-alpha-mask
fallback
fill-image
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -36,8 +40,8 @@ operator-alpha-alpha
operator-clear
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
@@ -45,38 +49,36 @@ partial-coverage-three-quarter-reference
push-group
push-group-color
radial-outer-focus
-record-self-intersecting
record1414x-fill-alpha
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
-record90-paint-alpha-solid-clip
-record90-paint-alpha-clip
+record2x-paint-alpha-clip-mask
record90-fill-alpha
+record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-self-intersecting
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-self-intersecting
-recordflip-paint-alpha-clip-mask
recordflip-fill-alpha
+recordflip-paint-alpha-clip-mask
recordflip-self-intersecting
-record-neg-extents-unbounded
-record-neg-extents-bounded
-record-replay-extend-repeat
-record-replay-extend-reflect
-record-replay-extend-pad
-recording-surface-over
-recording-surface-source
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-self-intersecting
recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
recording-surface-extend-pad
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
+record-neg-extents-bounded
+record-neg-extents-unbounded
+record-replay-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-self-intersecting
reflected-stroke
rotated-clip
select-font-face
-stroke-clipped
-stroke-image
show-glyphs-advance
show-text-current-point
simple-edge
@@ -87,16 +89,18 @@ smask-mask
smask-paint
smask-stroke
smp-glyph
+stroke-clipped
+stroke-image
subsurface
subsurface-scale
surface-pattern-operator
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-rotate
text-transform
@@ -109,7 +113,3 @@ twin-antialias-subpixel
unantialiased-shapes
unbounded-operator
xcomposite-projection
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xlib-argb32.txt b/.gitlab-ci/ignore-xlib-argb32.txt
index 914a7c1bf..098259fc7 100644
--- a/.gitlab-ci/ignore-xlib-argb32.txt
+++ b/.gitlab-ci/ignore-xlib-argb32.txt
@@ -1,19 +1,19 @@
aliasing
arc-looping-dash
-bug-spline
bug-84115
bug-extents
bug-image-compositor
+bug-spline
caps-joins-curve
clip-disjoint
-clip-stroke-unbounded
clip-operator
clip-shape
clip-stroke
+clip-stroke-unbounded
clip-text
close-path-current-point
-coverage-rhombus
coverage-column-triangles
+coverage-rhombus
culled-glyphs
dash-caps-joins
dash-curve
@@ -27,6 +27,9 @@ fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
fill-image
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo
halo-transform
hatchings
@@ -41,72 +44,73 @@ long-dashed-lines
new-sub-path
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
path-stroke-twice
+pthread-show-text
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
radial-outer-focus
random-clip
-random-intersections-eo
-random-intersections-nonzero
random-intersections-curves-eo
random-intersections-curves-nz
-record-select-font-face
-record-self-intersecting
-record-text-transform
+random-intersections-eo
+random-intersections-nonzero
record1414x-fill-alpha
record1414x-select-font-face
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
+record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
-record90-paint-alpha-solid-clip
record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-select-font-face
record90-self-intersecting
record90-text-transform
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-select-font-face
-recordflip-whole-self-intersecting
-recordflip-whole-text-transform
recordflip-paint-alpha-clip-mask
recordflip-select-font-face
recordflip-self-intersecting
recordflip-text-transform
-record-neg-extents-unbounded
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-select-font-face
+recordflip-whole-self-intersecting
+recordflip-whole-text-transform
+recording-surface-extend-pad
+recording-surface-extend-repeat
record-neg-extents-bounded
+record-neg-extents-unbounded
record-replay-extend-none
-record-replay-extend-repeat
-record-replay-extend-reflect
record-replay-extend-pad
-recording-surface-extend-repeat
-recording-surface-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-self-intersecting
+record-text-transform
reflected-stroke
rel-path
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-stroke-clipped
-stroke-image
-show-glyphs-advance
shape-general-convex
shape-sierpinski
+show-glyphs-advance
simple-edge
smask
smask-stroke
smask-text
spline-decomposition
+stroke-clipped
+stroke-image
stroke-pattern
subsurface
subsurface-scale
-text-antialias-subpixel-vrgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
@@ -121,7 +125,3 @@ user-font
user-font-proxy
world-map
world-map-stroke
-pthread-show-text
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
index f308f68c2..d86d694a1 100644
--- a/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-fallback-rgb24.txt
@@ -2,26 +2,26 @@ arc-looping-dash
bug-51910
bug-seams
caps
-caps-2
-caps-1
caps-05
-caps-joins-2
-caps-joins-1
+caps-1
+caps-2
caps-joins-05
+caps-joins-1
+caps-joins-2
caps-joins-curve
caps-sub-paths
clear-source
clip-disjoint-quad
clip-image
clip-mixed-antialias
-clip-push-group
clip-polygons
+clip-push-group
clip-text
close-path
close-path-current-point
copy-path
-coverage-intersecting-quads
coverage-abutting
+coverage-intersecting-quads
culled-glyphs
dash-caps-joins
dash-infinite-loop
@@ -35,6 +35,10 @@ fallback
filter-bilinear-extents
finer-grained-fallbacks
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo-transform
infinite-join
@@ -58,14 +62,15 @@ partial-clip-text-left
partial-coverage-reference
partial-coverage-three-quarter-reference
path-stroke-twice
+pthread-show-text
+pthread-similar
push-group-color
record1414x-select-font-face
record1414x-text-transform
-recording-surface-over
recording-surface-extend-none
+recording-surface-over
rectilinear-miter-limit
reflected-stroke
-stroke-ctm-caps
select-font-face
self-copy
shifted-operator
@@ -77,16 +82,17 @@ smask-mask
smask-paint
smask-text
smp-glyph
+stroke-ctm-caps
subsurface
subsurface-scale
surface-pattern-scale-down-extend-none
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-pattern
text-rotate
@@ -100,9 +106,3 @@ twin-antialias-none
twin-antialias-subpixel
unclosed-strokes
xcomposite-projection
-pthread-show-text
-pthread-similar
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
index fb2c53607..a5f0ec34f 100644
--- a/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-render-0-0-rgb24.txt
@@ -1,9 +1,9 @@
caps-sub-paths
clear-source
clip-operator
+clipped-group
clip-push-group
clip-text
-clipped-group
coverage-intersecting-triangles
culled-glyphs
curve-to-as-line-to
@@ -13,6 +13,9 @@ fill-and-stroke
fill-and-stroke-alpha
fill-and-stroke-alpha-add
finer-grained-fallbacks
+ft-show-glyphs-positioning
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
halo-transform
horizontal-clip
infinite-join
@@ -22,6 +25,7 @@ mask
operator-clear
operator-source
overlapping-glyphs
+pthread-show-text
radial-outer-focus
record1414x-select-font-face
record1414x-text-transform
@@ -36,10 +40,10 @@ subsurface-scale
surface-pattern-operator
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-pattern
text-rotate
text-unhinted-metrics
@@ -48,7 +52,3 @@ twin-antialias-mixed
twin-antialias-none
twin-antialias-subpixel
unbounded-operator
-pthread-show-text
-ft-show-glyphs-positioning
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xlib-rgb24.txt b/.gitlab-ci/ignore-xlib-rgb24.txt
index 144bbf2ad..0a4c9f616 100644
--- a/.gitlab-ci/ignore-xlib-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-rgb24.txt
@@ -1,25 +1,25 @@
aliasing
arc-looping-dash
-bug-spline
bug-51910
bug-84115
-bug-source-cu
bug-extents
bug-image-compositor
+bug-source-cu
+bug-spline
caps-joins-05
caps-joins-curve
caps-tails-curve
clear-source
clip-disjoint
-clip-stroke-unbounded
clip-operator
clip-shape
clip-stroke
+clip-stroke-unbounded
clip-text
close-path-current-point
-coverage-rhombus
-coverage-column-triangles
coverage-abutting
+coverage-column-triangles
+coverage-rhombus
culled-glyphs
dash-caps-joins
dash-curve
@@ -28,8 +28,8 @@ degenerate-curve-to
degenerate-pen
degenerate-rel-curve-to
drunkard-tails
-extended-blend-mask
extended-blend-alpha-mask
+extended-blend-mask
fallback
fill-and-stroke
fill-and-stroke-alpha
@@ -37,6 +37,10 @@ fill-and-stroke-alpha-add
fill-image
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -45,15 +49,15 @@ infinite-join
inverse-text
joins
joins-loop
-joins-star
joins-retrace
+joins-star
large-font
large-twin-antialias-mixed
leaky-dashed-stroke
-line-width-scale
-line-width-tolerance
linear-gradient
linear-gradient-subset
+line-width-scale
+line-width-tolerance
long-dashed-lines
mask
mask-transformed-image
@@ -64,79 +68,77 @@ operator-alpha-alpha
operator-clear
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
partial-coverage-three-quarter-reference
path-stroke-twice
+pthread-show-text
push-group
push-group-color
radial-gradient
radial-gradient-mask
-radial-gradient-source
radial-gradient-mask-source
+radial-gradient-source
radial-outer-focus
random-clip
-random-intersections-eo
-random-intersections-nonzero
random-intersections-curves-eo
random-intersections-curves-nz
-record-select-font-face
-record-self-intersecting
-record-text-transform
+random-intersections-eo
+random-intersections-nonzero
record1414x-fill-alpha
record1414x-select-font-face
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
+record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
-record90-paint-alpha-solid-clip
-record90-paint-alpha-clip
record90-fill-alpha
+record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-select-font-face
record90-self-intersecting
record90-text-transform
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-select-font-face
-recordflip-whole-self-intersecting
-recordflip-whole-text-transform
-recordflip-paint-alpha-clip-mask
recordflip-fill-alpha
+recordflip-paint-alpha-clip-mask
recordflip-select-font-face
recordflip-self-intersecting
recordflip-text-transform
-record-neg-extents-unbounded
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-select-font-face
+recordflip-whole-self-intersecting
+recordflip-whole-text-transform
+recording-surface-extend-none
+recording-surface-extend-pad
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
record-neg-extents-bounded
+record-neg-extents-unbounded
record-replay-extend-none
-record-replay-extend-repeat
-record-replay-extend-reflect
record-replay-extend-pad
-recording-surface-over
-recording-surface-source
-recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
-recording-surface-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-self-intersecting
+record-text-transform
reflected-stroke
rel-path
rotated-clip
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-stroke-ctm-caps
-stroke-clipped
-stroke-image
select-font-face
+shape-general-convex
+shape-sierpinski
shifted-operator
show-glyphs-advance
show-text-current-point
-shape-general-convex
-shape-sierpinski
simple-edge
smask
smask-fill
@@ -147,6 +149,9 @@ smask-stroke
smask-text
smp-glyph
spline-decomposition
+stroke-clipped
+stroke-ctm-caps
+stroke-image
stroke-pattern
subsurface
subsurface-scale
@@ -154,10 +159,10 @@ surface-pattern-operator
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-pattern
text-rotate
@@ -175,11 +180,6 @@ unclosed-strokes
user-font
user-font-proxy
world-map
-world-map-stroke
world-map-fill
+world-map-stroke
xcomposite-projection
-pthread-show-text
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
diff --git a/.gitlab-ci/ignore-xlib-window-rgb24.txt b/.gitlab-ci/ignore-xlib-window-rgb24.txt
index 7501b8c11..814bd7da6 100644
--- a/.gitlab-ci/ignore-xlib-window-rgb24.txt
+++ b/.gitlab-ci/ignore-xlib-window-rgb24.txt
@@ -1,25 +1,25 @@
aliasing
arc-looping-dash
-bug-spline
bug-51910
bug-extents
+bug-spline
caps-joins-05
caps-joins-curve
clear-source
clip-disjoint
-clip-stroke-unbounded
clip-operator
clip-shape
clip-stroke
+clip-stroke-unbounded
clip-text
close-path-current-point
-coverage-rectangles
+coverage-abutting
+coverage-column-triangles
coverage-intersecting-quads
coverage-intersecting-triangles
+coverage-rectangles
coverage-row-triangles
-coverage-column-triangles
coverage-triangles
-coverage-abutting
culled-glyphs
dash-caps-joins
dash-scale
@@ -27,8 +27,8 @@ degenerate-curve-to
degenerate-pen
degenerate-rel-curve-to
drunkard-tails
-extended-blend-mask
extended-blend-alpha-mask
+extended-blend-mask
fallback
fill-and-stroke
fill-and-stroke-alpha
@@ -36,6 +36,10 @@ fill-and-stroke-alpha-add
fill-image
filter-bilinear-extents
font-matrix-translation
+ft-show-glyphs-positioning
+ft-show-glyphs-table
+ft-text-vertical-layout-type1
+ft-text-vertical-layout-type3
glyph-cache-pressure
halo
halo-transform
@@ -43,14 +47,14 @@ infinite-join
inverse-text
joins
joins-loop
-joins-star
joins-retrace
+joins-star
large-twin-antialias-mixed
leaky-dashed-stroke
-line-width-scale
-line-width-tolerance
linear-gradient
linear-gradient-subset
+line-width-scale
+line-width-tolerance
long-dashed-lines
mask
mask-transformed-image
@@ -61,69 +65,67 @@ operator-alpha-alpha
operator-clear
operator-source
overlapping-boxes
-overlapping-glyphs
overlapping-dash-caps
+overlapping-glyphs
partial-clip-text-bottom
partial-clip-text-left
partial-coverage-reference
partial-coverage-three-quarter-reference
path-stroke-twice
+pthread-show-text
push-group
push-group-color
radial-outer-focus
-record-select-font-face
-record-self-intersecting
-record-text-transform
record1414x-fill-alpha
record1414x-select-font-face
record1414x-self-intersecting
record1414x-text-transform
-record2x-paint-alpha-clip-mask
record2x-fill-alpha
+record2x-paint-alpha-clip-mask
record2x-select-font-face
record2x-text-transform
-record90-paint-alpha-solid-clip
-record90-paint-alpha-clip
record90-fill-alpha
+record90-paint-alpha-clip
+record90-paint-alpha-solid-clip
record90-select-font-face
record90-self-intersecting
record90-text-transform
-recordflip-whole-paint-alpha-clip-mask
-recordflip-whole-fill-alpha
-recordflip-whole-select-font-face
-recordflip-whole-self-intersecting
-recordflip-whole-text-transform
-recordflip-paint-alpha-clip-mask
recordflip-fill-alpha
+recordflip-paint-alpha-clip-mask
recordflip-select-font-face
recordflip-self-intersecting
recordflip-text-transform
-record-neg-extents-unbounded
+recordflip-whole-fill-alpha
+recordflip-whole-paint-alpha-clip-mask
+recordflip-whole-select-font-face
+recordflip-whole-self-intersecting
+recordflip-whole-text-transform
+recording-surface-extend-none
+recording-surface-extend-pad
+recording-surface-extend-reflect
+recording-surface-extend-repeat
+recording-surface-over
+recording-surface-source
record-neg-extents-bounded
+record-neg-extents-unbounded
record-replay-extend-none
-record-replay-extend-repeat
-record-replay-extend-reflect
record-replay-extend-pad
-recording-surface-over
-recording-surface-source
-recording-surface-extend-none
-recording-surface-extend-repeat
-recording-surface-extend-reflect
-recording-surface-extend-pad
+record-replay-extend-reflect
+record-replay-extend-repeat
+record-select-font-face
+record-self-intersecting
+record-text-transform
reflected-stroke
rel-path
rotated-clip
rounded-rectangle-stroke
scale-offset-image
scale-offset-similar
-stroke-ctm-caps
-stroke-clipped
-stroke-image
select-font-face
+shape-general-convex
shifted-operator
show-glyphs-advance
show-text-current-point
-shape-general-convex
simple-edge
smask
smask-fill
@@ -134,6 +136,9 @@ smask-stroke
smask-text
smp-glyph
spline-decomposition
+stroke-clipped
+stroke-ctm-caps
+stroke-image
stroke-pattern
subsurface
subsurface-scale
@@ -141,10 +146,10 @@ surface-pattern-operator
surface-pattern-scale-up
text-antialias-gray
text-antialias-subpixel
-text-antialias-subpixel-rgb
text-antialias-subpixel-bgr
-text-antialias-subpixel-vrgb
+text-antialias-subpixel-rgb
text-antialias-subpixel-vbgr
+text-antialias-subpixel-vrgb
text-glyph-range
text-pattern
text-rotate
@@ -160,8 +165,3 @@ twin-antialias-subpixel
unbounded-operator
unclosed-strokes
xcomposite-projection
-pthread-show-text
-ft-show-glyphs-positioning
-ft-show-glyphs-table
-ft-text-vertical-layout-type1
-ft-text-vertical-layout-type3
More information about the cairo-commit
mailing list