diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c8127d1..0f8ac17 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,46 +16,58 @@ jobs: CI: if: "!contains(github.event.head_commit.message, '[skip ci]')" env: - GKS_ENCODING: "utf8" - GKSwstype: "nul" + GKS_ENCODING: utf8 + GKSwstype: nul name: Julia ${{ matrix.version }} - ${{ matrix.os }} runs-on: ${{ matrix.os }} - continue-on-error: ${{ matrix.version == 'nightly' }} + continue-on-error: ${{ matrix.experimental }} strategy: fail-fast: false matrix: version: - - '1.6' # lowest declared compat in `Project.toml` - - '1' - # - 'nightly' - os: [ubuntu-latest, windows-latest, macos-13] - arch: - - x64 - # - x86 + - 'lts' # minimal declared julia compat in `Project.toml` + - '1' # latest stable + experimental: + - false + os: [ubuntu-latest, windows-latest] + arch: [x64] include: - os: ubuntu-latest - prefix: xvfb-run # julia-actions/julia-runtest/blob/master/README.md + experimental: true + version: 'pre' # upcoming julia version (`alpha`, `beta` or `rc`) + - os: macos-latest + arch: aarch64 + version: '1' + experimental: false steps: # Setup environment - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: julia-actions/setup-julia@latest with: version: ${{ matrix.version }} - - uses: julia-actions/cache@v1 + - uses: julia-actions/cache@v2 - uses: julia-actions/julia-buildpkg@latest - - uses: julia-actions/julia-runtest@latest - with: - prefix: ${{ matrix.prefix }} # for `xvfb-run` + - name: Testing VisualRegressionTests + run: | + cmd=(julia --project=@. --color=yes --depwarn=yes) + if [ "$RUNNER_OS" == "Linux" ]; then + cmd=(xvfb-run ${cmd[@]}) + fi + echo ${cmd[@]} + ${cmd[@]} -e 'using Pkg + Pkg.test("VisualRegressionTests"; coverage=true)' - # - name: Codecov - # uses: julia-actions/julia-uploadcodecov@latest - # env: - # CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + - uses: julia-actions/julia-processcoverage@latest + - uses: codecov/codecov-action@v5 + with: + token: ${{ secrets.CODECOV_TOKEN }} + fail_ci_if_error: false + file: lcov.info Skip: if: "contains(github.event.head_commit.message, '[skip ci]')" diff --git a/Project.toml b/Project.toml index abc15d1..3d2c257 100644 --- a/Project.toml +++ b/Project.toml @@ -9,7 +9,6 @@ ImageBase = "c817782e-172a-44cc-b673-b171935fbb9e" ImageDistances = "51556ac3-7006-55f5-8cb3-34580c88182d" ImageFiltering = "6a3955dd-da59-5b1f-98d4-e7296123deb5" ImageMagick = "6218d12a-5da1-5696-b52f-db25d2ecc6d1" -QuartzImageIO = "dca85d43-d64c-5e67-8c65-017450d5d020" Requires = "ae029012-a4dd-5104-9daa-d747884805df" [compat] @@ -18,15 +17,5 @@ ImageBase = "0.1" ImageDistances = "0.2" ImageFiltering = "0.4 - 0.7" ImageMagick = "0.7, 1" -QuartzImageIO = "0.7" Requires = "1" -julia = "1.6" - -[extras] -Gtk = "4c0ca9eb-093a-5379-98c5-f87ac0bbbf44" -Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" -TestImages = "5e47fb64-e119-507b-a336-dd2b206d9990" - -[targets] -test = ["Gtk", "Test", "Plots", "TestImages"] +julia = "1.10" diff --git a/test/Project.toml b/test/Project.toml new file mode 100644 index 0000000..ee95e52 --- /dev/null +++ b/test/Project.toml @@ -0,0 +1,7 @@ +[deps] +FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" +Gtk = "4c0ca9eb-093a-5379-98c5-f87ac0bbbf44" +Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" +Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" +Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" +TestImages = "5e47fb64-e119-507b-a336-dd2b206d9990" diff --git a/test/runtests.jl b/test/runtests.jl index 13642ad..0f35ae5 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,3 +1,6 @@ +using Pkg +Pkg.status(; outdated = true, mode = Pkg.PKGMODE_MANIFEST) + using Gtk, Plots, Test, VisualRegressionTests # popup on local machine only