Skip to content

Commit

Permalink
CI fixes v2 (#4980)
Browse files Browse the repository at this point in the history
* CI fixes (#4974)

* Update tests for Latexify 0.16.5

Behaviour was changed such that ã becomes \tilde{a}, instead of
\textnormal{\~{a}}.

* Test Julia 1.6 on x86 macOS instead of ARM

See: https://discourse.julialang.org/t/how-to-fix-github-actions-ci-failures-with-julia-1-6-or-1-7-on-macos-latest-and-macos-14/117019

* Bump GR compat and Plots version number

* update plotly show methods for PlotlyKaleido v2

* remove Pkg

* add it back

---------

Co-authored-by: Simon Christ <[email protected]>

* Don't need to edit CI for 1.6 as no longer supported

* Don't test GR/50 on macOS

* Reorganise failing tests

 - Disabled reference tests 25 and 30, which require StatsPlots support,
   for all backends (in PlotsBase/src/examples.jl)
 - Separate tests that are skipped and tests that are known to be broken
   due to upstream issues
 - Re-enable reference test 41 as upstream issue has been fixed
   (JuliaLang/julia#47261)
 - Disable reference test 50 because of upstream issue
   (jheinen/GR.jl#550)

---------

Co-authored-by: Simon Christ <[email protected]>
  • Loading branch information
penelopeysm and BeastyBlacksmith authored Sep 10, 2024
1 parent 8bb247a commit 4bae77b
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 14 deletions.
8 changes: 5 additions & 3 deletions PlotsBase/src/examples.jl
Original file line number Diff line number Diff line change
Expand Up @@ -1258,12 +1258,10 @@ _animation_examples = [02, 31]
_backend_skips = Dict(
:none => Int[],
:pythonplot => Int[],
:gr => [25, 30], # TODO: add back when StatsPlots is available
:gr => Int[],
:plotlyjs => [
21,
24,
25,
30,
49,
50,
51,
Expand Down Expand Up @@ -1314,6 +1312,10 @@ _backend_skips = Dict(
],
)
_backend_skips[:plotly] = _backend_skips[:plotlyjs]
# 25 and 30 require StatsPlots, which doesn't support Plots v2 yet
for backend in keys(_backend_skips)
append!(_backend_skips[backend], [25, 30])
end

# ---------------------------------------------------------------------------------
# replace `f(args...)` with `f(rng, args...)` for `f ∈ (rand, randn)`
Expand Down
8 changes: 2 additions & 6 deletions PlotsBase/test/runtests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,8 @@ is_ci() || @eval using Gtk # see JuliaPlots/VisualRegressionTests.jl/issues/30

ref_name(i) = "ref" * lpad(i, 3, '0')

const blacklist = if VERSION.major == 1 && VERSION.minor 9
[
25,
30, # FIXME: remove, when StatsPlots supports Plots v2
41,
] # FIXME: github.com/JuliaLang/julia/issues/47261
const broken_examples = if Sys.isapple()
[50] # FIXME: https://github.com/jheinen/GR.jl/issues/550
else
[]
end
Expand Down
2 changes: 1 addition & 1 deletion PlotsBase/test/test_backends.jl
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ is_pkgeval() || @testset "Backends" begin
@test filesize(fn) > 1_000
end
Sys.islinux() && for be TEST_BACKENDS
skip = vcat(PlotsBase._backend_skips[be], blacklist)
skip = vcat(PlotsBase._backend_skips[be], broken_examples)
PlotsBase.test_examples(be; skip, callback, disp = is_ci(), strict = true) # `ci` display for coverage
closeall()
end
Expand Down
2 changes: 1 addition & 1 deletion PlotsBase/test/test_pgfplotsx.jl
Original file line number Diff line number Diff line change
Expand Up @@ -436,7 +436,7 @@ with(:pgfplotsx) do
@test PlotsBase.pgfx_sanitize_string("A string, with 2 punctuation chars.") ==
"A string, with 2 punctuation chars."
@test PlotsBase.pgfx_sanitize_string("Interpolação polinomial") ==
raw"Interpola$\textnormal{\c{c}}$$\textnormal{\~{a}}$o polinomial"
raw"Interpola$\textnormal{\c{c}}$$\tilde{a}$o polinomial"
@test PlotsBase.pgfx_sanitize_string("∫∞ ∂x") == raw"$\int$$\infty$ $\partial$x"

# special LaTeX characters
Expand Down
10 changes: 8 additions & 2 deletions PlotsBase/test/test_reference.jl
Original file line number Diff line number Diff line change
Expand Up @@ -105,14 +105,19 @@ end
function image_comparison_facts(
pkg::Symbol;
skip = [], # skip these examples (int index)
broken = [], # known broken examples (int index)
only = nothing, # limit to these examples (int index)
debug = false, # print debug information ?
sigma = [1, 1], # number of pixels to "blur"
tol = 1e-2, # acceptable error (percent)
)
for i setdiff(1:length(PlotsBase._examples), skip)
if only nothing || i in only
@test success(image_comparison_tests(pkg, i; debug, sigma, tol))
if i broken
@test_broken success(image_comparison_tests(pkg, i; debug, sigma, tol))
else
@test success(image_comparison_tests(pkg, i; debug, sigma, tol))
end
end
end
end
Expand Down Expand Up @@ -141,7 +146,8 @@ end
image_comparison_facts(
:gr,
tol = PLOTS_IMG_TOL,
skip = vcat(PlotsBase._backend_skips[:gr], blacklist),
skip = vcat(PlotsBase._backend_skips[:gr]),
broken = broken_examples,
)
end
end
16 changes: 15 additions & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,22 @@ PlotsBase = "c52230a3-c5da-43a3-9e85-260fcdfdc737"
PrecompileTools = "aea7be01-6a6a-4083-8856-8a6e6704d82a"
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"

[weakdeps]
FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549"
GeometryBasics = "5c1252a2-5f33-56bf-86c9-59e7332b4326"
IJulia = "7073ff75-c697-5162-941a-fcdaad2a7d2a"
ImageInTerminal = "d8c32880-2388-543b-8c61-d9f865259254"
Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d"

[extensions]
FileIOExt = "FileIO"
GeometryBasicsExt = "GeometryBasics"
IJuliaExt = "IJulia"
ImageInTerminalExt = "ImageInTerminal"
UnitfulExt = "Unitful"

[compat]
GR = "0, 1"
GR = "0.73, 1"
PlotsBase = "0.1"
PrecompileTools = "1"
Reexport = "1"
Expand Down

0 comments on commit 4bae77b

Please sign in to comment.