Compare commits

..

35 Commits

Author SHA1 Message Date
dependabot[bot]
82b3af17b1 Bump codecov/codecov-action from 5.5.1 to 5.5.2
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.1 to 5.5.2.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](5a1091511a...671740ac38)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 13:02:51 +00:00
dependabot[bot]
7efd635293 Bump actions/checkout from 5.0.0 to 6.0.0 (#157)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](08c6903cd8...1af3b93b68)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-01 16:23:02 +01:00
Ian Butterworth
d60b785c6f Update test_harness.jl 2025-11-23 10:24:12 -05:00
Ian Butterworth
80da54fb1f Update test_harness.jl
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-23 10:24:12 -05:00
Ian Butterworth
2e39f09cda Revert "revertme: disable buildpkg"
This reverts commit fc4beef44a.
2025-11-23 10:24:12 -05:00
Ian Butterworth
4106f361b2 revertme: disable buildpkg 2025-11-23 10:24:12 -05:00
Ian Butterworth
1cc5cea014 fix 2025-11-23 10:24:12 -05:00
Ian Butterworth
8b0e8344b9 fix 2025-11-23 10:24:12 -05:00
Ian Butterworth
639d29024e fix 2025-11-23 10:24:12 -05:00
Ian Butterworth
ee4584ffbd Compare tree hashes instead of using git diff
Comparing tree hashes is more accurate for detecting content differences
between the merge commit and PR head, avoiding false positives when
the content is identical but commit SHAs differ.
2025-11-23 10:24:12 -05:00
Ian Butterworth
013f11f99f Update CI config (#156) 2025-11-16 21:01:29 -05:00
Ian Butterworth
b67f25cc97 warn if merge commit content differs to branch head (#152) 2025-11-08 15:39:46 +00:00
dependabot[bot]
a3f37496e4 Bump codecov/codecov-action from 5.5.0 to 5.5.1 (#151)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.0 to 5.5.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](fdcc847654...5a1091511a)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-01 23:30:03 +02:00
dependabot[bot]
bb32a7cb3f Bump actions/checkout from 4.2.2 to 5.0.0 (#150)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.2 to 5.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](11bd71901b...08c6903cd8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 08:42:09 +01:00
dependabot[bot]
f30bb67fa4 Bump codecov/codecov-action from 5.4.3 to 5.5.0 (#149)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.4.3 to 5.5.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](18283e04ce...fdcc847654)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 08:25:44 +01:00
dependabot[bot]
bf008bfadc Bump codecov/codecov-action from 5.4.2 to 5.4.3 (#147)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.4.2 to 5.4.3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](ad3126e916...18283e04ce)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-01 19:18:56 +01:00
dependabot[bot]
af712fe095 Bump codecov/codecov-action from 5.4.0 to 5.4.2 (#146)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.4.0 to 5.4.2.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](0565863a31...ad3126e916)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 15:46:58 +02:00
dependabot[bot]
8cf619ee45 Bump julia-actions/cache from 2.0.7 to 2.1.0 (#145)
Bumps [julia-actions/cache](https://github.com/julia-actions/cache) from 2.0.7 to 2.1.0.
- [Release notes](https://github.com/julia-actions/cache/releases)
- [Changelog](https://github.com/julia-actions/cache/blob/main/devdocs/making_a_new_release.md)
- [Commits](2b1bf4d8a1...d10a6fd8f3)

---
updated-dependencies:
- dependency-name: julia-actions/cache
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 15:37:31 +02:00
dependabot[bot]
991e65d3c2 Bump codecov/codecov-action from 5.0.7 to 5.4.0 (#142)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.0.7 to 5.4.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](015f24e681...0565863a31)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-01 14:03:31 +00:00
Curtis Vogt
9ed3aa0601 Use julia-actions/cache for tests (#137) 2025-01-22 15:10:51 -06:00
Samuel Brand
678da69444 Pass depwarn in via julia_args (#135)
Co-authored-by: Curtis Vogt <curtis.vogt@gmail.com>
2025-01-22 14:41:17 -06:00
dependabot[bot]
8ce963bd23 Bump codecov/codecov-action from 4.6.0 to 5.0.7 (#131)
* Bump codecov/codecov-action from 4.6.0 to 5.0.7

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.6.0 to 5.0.7.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](b9fd7d16f6...015f24e681)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update .github/workflows/ci.yml

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mosè Giordano <765740+giordano@users.noreply.github.com>
2024-12-01 20:43:33 +00:00
dependabot[bot]
26c0b511fb Bump julia-actions/julia-buildpkg from 1.6.0 to 1.7.0 (#132)
* Bump julia-actions/julia-buildpkg from 1.6.0 to 1.7.0

Bumps [julia-actions/julia-buildpkg](https://github.com/julia-actions/julia-buildpkg) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/julia-actions/julia-buildpkg/releases)
- [Commits](90dd6f23eb...e3eb439fad)

---
updated-dependencies:
- dependency-name: julia-actions/julia-buildpkg
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update .github/workflows/ci.yml

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mosè Giordano <765740+giordano@users.noreply.github.com>
2024-12-01 18:45:03 +00:00
dependabot[bot]
254fe72b03 Bump julia-actions/setup-julia from 2.6.0 to 2.6.1 (#133)
Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/julia-actions/setup-julia/releases)
- [Changelog](https://github.com/julia-actions/setup-julia/blob/master/devdocs/making_a_new_release.md)
- [Commits](9b79636afc...5c9647d97b)

---
updated-dependencies:
- dependency-name: julia-actions/setup-julia
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-01 18:38:40 +00:00
dependabot[bot]
425ad5fc2f Bump actions/checkout from 4.2.1 to 4.2.2 (#129)
* Bump actions/checkout from 4.2.1 to 4.2.2

Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](eef61447b9...11bd71901b)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Apply suggestions from code review

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mosè Giordano <765740+giordano@users.noreply.github.com>
Co-authored-by: Dilum Aluthge <dilum@aluthge.com>
2024-12-01 18:20:28 +00:00
dependabot[bot]
038c3e153a Bump codecov/codecov-action from 4.5.0 to 4.6.0 (#128)
* Bump codecov/codecov-action from 4.5.0 to 4.6.0

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](e28ff129e5...b9fd7d16f6)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update .github/workflows/ci.yml

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mosè Giordano <765740+giordano@users.noreply.github.com>
2024-11-26 01:06:37 +00:00
Ian Butterworth
1e03e0122a don't set test_args if empty (#127) 2024-10-19 06:56:48 -04:00
dependabot[bot]
f5f652a0a9 Bump julia-actions/setup-julia from 2.4.0 to 2.6.0 (#126)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-18 21:19:45 +00:00
dependabot[bot]
d2f8a73c3c Bump actions/checkout from 4.1.7 to 4.2.1 (#125)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-18 17:12:53 -04:00
Mateusz Jakub Fila
df0572688c allow passing multiple arguments in test_args (#118)
Co-authored-by: Markus Hauru <markus@mhauru.org>
Co-authored-by: Ian Butterworth <i.r.butterworth@gmail.com>
2024-10-18 21:04:44 +00:00
Ian Butterworth
ed05f1e927 add a reproducer header (#124)
Co-authored-by: Sukera <11753998+Seelengrab@users.noreply.github.com>
2024-10-18 16:57:09 -04:00
dependabot[bot]
53f7ca9224 Bump julia-actions/setup-julia from 2.3.0 to 2.4.0 (#120)
Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/julia-actions/setup-julia/releases)
- [Changelog](https://github.com/julia-actions/setup-julia/blob/master/devdocs/making_a_new_release.md)
- [Commits](780022b48d...512e2ab44f)

---
updated-dependencies:
- dependency-name: julia-actions/setup-julia
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-03 15:56:57 +00:00
Guillaume Dalle
fe72c6625b Update example workflow in README (#119) 2024-09-03 11:51:22 -04:00
dependabot[bot]
b288068c12 Bump julia-actions/setup-julia from 2.2.0 to 2.3.0 (#117)
Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/julia-actions/setup-julia/releases)
- [Changelog](https://github.com/julia-actions/setup-julia/blob/master/devdocs/making_a_new_release.md)
- [Commits](3645a07f58...780022b48d)

---
updated-dependencies:
- dependency-name: julia-actions/setup-julia
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-01 10:01:35 -04:00
Sebastian Schlenkrich
e16476132f Add test_arg input and populate to test_args in test() (#73) 2024-07-23 07:20:19 -04:00
6 changed files with 159 additions and 38 deletions

View File

@@ -7,17 +7,24 @@ on:
- "master"
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
timeout-minutes: 5
strategy:
fail-fast: false
matrix:
version:
- "1.0"
- "lts"
- "1" # automatically expands to the latest stable 1.x release of Julia
- nightly
- "pre"
- "nightly"
os:
- ubuntu-latest
- macOS-latest
@@ -25,14 +32,26 @@ jobs:
arch:
- x64
- x86
- aarch64
# 32-bit Julia binaries are not available on macOS
# macOS runners use Apple Silicon (ARM64)
exclude:
- os: macOS-latest
arch: x86
- os: macOS-latest
arch: x64
- os: ubuntu-latest
arch: aarch64
- os: windows-latest
arch: aarch64
# Julia 1.0 didn't support ARM64
- os: macOS-latest
arch: aarch64
version: "1.0"
steps:
- name: Checkout Example.jl
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
repository: julia-actions/Example.jl
@@ -41,38 +60,29 @@ jobs:
shell: bash
- name: Checkout julia-runtest
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
path: ./.github/actions/julia-runtest
- uses: julia-actions/setup-julia@3645a07f58c7f83b9f82ac8e0bb95583e69149e6 # v2.2.0
- uses: julia-actions/setup-julia@5c9647d97b78a5debe5164e9eec09d653d29bd71 # v2.6.1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/cache@d10a6fd8f31b12404a54613ebad242900567f2b9 # v2.1.0
- uses: julia-actions/julia-buildpkg@90dd6f23eb49626e4e6612cb9d64d456f86e6a1c
- uses: julia-actions/julia-buildpkg@e3eb439fad4f9aba7da2667e7510e4a46ebc46e1 # v1.7.0
- uses: ./.github/actions/julia-runtest
- uses: julia-actions/julia-processcoverage@03114f09f119417c3242a9fb6e0b722676aedf38
- uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673
- uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
file: lcov.info
files: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
fail-ci-if-error: true
- name: Verify that test output file exists
run: test -f "$HOME/julia-runtest"

View File

@@ -7,17 +7,24 @@ on:
- "master"
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
timeout-minutes: 5
strategy:
fail-fast: false
matrix:
version:
- "1.6"
- "lts"
- "1" # automatically expands to the latest stable 1.x release of Julia
- nightly
- "pre"
- "nightly"
os:
- ubuntu-latest
- macOS-latest
@@ -25,29 +32,32 @@ jobs:
arch:
- x64
- x86
- aarch64
# 32-bit Julia binaries are not available on macOS
# macOS runners use Apple Silicon (ARM64)
exclude:
- os: macOS-latest
arch: x86
- os: macOS-latest
arch: x64
- os: ubuntu-latest
arch: aarch64
- os: windows-latest
arch: aarch64
# Julia 1.6 didn't support ARM64
- os: macOS-latest
arch: aarch64
version: "1.6"
steps:
- name: Checkout julia-runtest
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- uses: julia-actions/setup-julia@3645a07f58c7f83b9f82ac8e0bb95583e69149e6 # v2.2.0
- uses: julia-actions/setup-julia@5c9647d97b78a5debe5164e9eec09d653d29bd71 # v2.6.1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/cache@d10a6fd8f31b12404a54613ebad242900567f2b9 # v2.1.0
- run: julia --color=yes --check-bounds=yes test_logger_tests.jl

View File

@@ -28,7 +28,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
julia-version: ['1.6', '1', 'nightly']
julia-version: ['lts', '1', 'pre']
julia-arch: [x64, x86]
os: [ubuntu-latest, windows-latest, macOS-latest]
exclude:
@@ -37,11 +37,11 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v1
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.julia-version }}
arch: ${{ matrix.julia-arch }}
- uses: julia-actions/cache@v1
- uses: julia-actions/cache@v2
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
# with:
@@ -72,7 +72,7 @@ If you only want to add this prefix on certain builds, you can [include addition
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
version: ['1.0', '1', 'nightly']
version: ['lts', '1', 'pre']
arch: [x64]
include:
- os: ubuntu-latest
@@ -87,6 +87,44 @@ If you only want to add this prefix on certain builds, you can [include addition
This will add the prefix `xvfb-run` to all builds where the `os` is `ubuntu-latest`.
### Pass Arguments to Test Suite
You can pass arguments from the workflow specification to the test script via the `test_args` parameter.
This is useful, for example, to specify separate workflows for fast and slow tests, or conditionally enabling quality assurance tests.
The functionality can be incorporated as follows:
```yaml
# ...
steps:
# ...
- uses: julia-actions/julia-runtest@v1
with:
test_args: 'slow_tests "quality assurance"'
# ...
```
The value of `test_args` can be accessed in `runtest.jl` via the `ARGS` variable. An example for `runtest.jl` is given below.
```julia
using Test
# ...
# run fast tests by default
include("fast_tests.jl")
if "slow_tests" in ARGS
# run slow tests
include("slow_tests.jl")
end
if "quality assurance" in ARGS
# run quality assurance tests
include("qa.jl")
end
```
### Registry flavor preference

View File

@@ -38,6 +38,9 @@ inputs:
allow_reresolve:
description: 'Whether to allow re-resolving of package versions in the test environment. Only effective on Julia 1.9+. Options: true | false. Default value: true'
default: 'true'
test_args:
description: 'Arguments string that is passed on to test.'
default: ''
runs:
using: 'composite'
@@ -57,7 +60,7 @@ runs:
if: inputs.annotate == 'true'
- run: |
# The Julia command that will be executed
julia_cmd=( julia --color=yes --depwarn=${{ inputs.depwarn }} --inline=${{ inputs.inline }} --project=${{ inputs.project }} -e 'include(joinpath(ENV["GITHUB_ACTION_PATH"], "test_harness.jl"))' )
julia_cmd=( julia --color=yes --inline=${{ inputs.inline }} --project=${{ inputs.project }} -e 'include(joinpath(ENV["GITHUB_ACTION_PATH"], "test_harness.jl"))' -- ${{inputs.test_args}} )
# Add the prefix in front of the command if there is one
prefix=( ${{ inputs.prefix }} )
@@ -74,3 +77,4 @@ runs:
CHECK_BOUNDS: ${{ inputs.check_bounds }}
COMPILED_MODULES: ${{ inputs.compiled_modules }}
ALLOW_RERESOLVE: ${{ inputs.allow_reresolve }}
DEPWARN: ${{ inputs.depwarn }}

View File

@@ -7,7 +7,9 @@ include(joinpath(@__DIR__, "autodetect-dependabot.jl"))
function kwargs(; coverage,
force_latest_compatible_version,
allow_reresolve,
julia_args::AbstractVector{<:AbstractString}=String[])
julia_args::AbstractVector{<:AbstractString}=String[],
test_args::AbstractVector{<:AbstractString}=String[],
)
if coverage isa AbstractString
coverage = parse(Bool, coverage)
end
@@ -56,6 +58,10 @@ function kwargs(; coverage,
kwargs_dict[:allow_reresolve] = parse(Bool, allow_reresolve)
end
if !isempty(test_args)
kwargs_dict[:test_args] = test_args
end
return kwargs_dict
end

View File

@@ -4,7 +4,60 @@ kwargs = Kwargs.kwargs(; coverage=ENV["COVERAGE"],
force_latest_compatible_version=ENV["FORCE_LATEST_COMPATIBLE_VERSION"],
allow_reresolve=ENV["ALLOW_RERESOLVE"],
julia_args=[string("--check-bounds=", ENV["CHECK_BOUNDS"]),
string("--compiled-modules=", ENV["COMPILED_MODULES"])])
string("--compiled-modules=", ENV["COMPILED_MODULES"]),
# Needs to be done via `julia_args` to ensure `depwarn: no` is respected:
# https://github.com/JuliaLang/Pkg.jl/pull/1763#discussion_r406819660
string("--depwarn=", ENV["DEPWARN"]),],
test_args=ARGS,
)
kwargs_reprs = map(kv -> string(kv[1], "=", repr(kv[2])), collect(kwargs))
kwargs_repr = join(kwargs_reprs, ", ")
# Warn if running on a merge commit (different from branch HEAD)
git_note = ""
if haskey(ENV, "GITHUB_SHA") && get(ENV, "GITHUB_EVENT_NAME", "") == "pull_request" && haskey(ENV, "GITHUB_HEAD_REF")
# For pull_request events, GITHUB_SHA is the merge commit, not the PR head commit
try
merge_commit = ENV["GITHUB_SHA"]
pr_branch = ENV["GITHUB_HEAD_REF"]
base_branch_name = get(ENV, "GITHUB_BASE_REF", "")
# Check if there's any difference between the merge commit and the PR head
# In GitHub Actions, HEAD^2 is the PR head (second parent of merge commit)
# First check if HEAD^2 exists (i.e., this is actually a merge commit)
if success(`git rev-parse --verify --quiet HEAD^2`)
# Compare tree hashes to check if content actually differs
merge_tree = chomp(read(`git rev-parse HEAD^\{tree\}`, String))
pr_tree = chomp(read(`git rev-parse HEAD^2^\{tree\}`, String))
has_diff = merge_tree != pr_tree
else
# Not a merge commit, so no difference to report
has_diff = false
end
if has_diff
base_branch = isempty(base_branch_name) ? "the base branch" : "'$base_branch_name'"
global git_note = """
│ Note: This is being run on merge commit $merge_commit (merge of PR branch '$pr_branch' into $base_branch).
│ The content differs from the actual commit on your PR branch.
│ To reproduce locally, update your branch with $base_branch first.
"""
end
catch e
@warn "Error while checking git diff" exception=(e, catch_backtrace())
end
end
print("""
│ To reproduce this CI run locally run the following from the same repository state on julia version $VERSION:
│ `import Pkg; Pkg.test(;$kwargs_repr)`
""")
print(git_note)
if parse(Bool, ENV["ANNOTATE"]) && v"1.8pre" < VERSION < v"1.9.0-beta3"
push!(LOAD_PATH, "@tests-logger-env") # access dependencies