Compare commits

...

19 Commits

Author SHA1 Message Date
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
3 changed files with 84 additions and 27 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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
repository: julia-actions/Example.jl
@@ -41,7 +60,7 @@ jobs:
shell: bash
- name: Checkout julia-runtest
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
path: ./.github/actions/julia-runtest
@@ -50,16 +69,7 @@ jobs:
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@e3eb439fad4f9aba7da2667e7510e4a46ebc46e1 # v1.7.0
@@ -67,12 +77,12 @@ jobs:
- uses: julia-actions/julia-processcoverage@03114f09f119417c3242a9fb6e0b722676aedf38
- uses: codecov/codecov-action@015f24e6818733317a2da2edd6290ab26238649a # v5.0.7
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
with:
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.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

@@ -14,6 +14,42 @@ kwargs = Kwargs.kwargs(; coverage=ENV["COVERAGE"],
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:
@@ -21,6 +57,7 @@ print("""
│ `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