diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 699f477..2ccdce9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,16 +13,19 @@ jobs: os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: actions/setup-go@v5 with: go-version: stable cache-dependency-path: go.sum - uses: julia-actions/setup-julia@v2 - - uses: julia-actions/cache@v2 + - uses: julia-actions/cache@v3 - uses: r-lib/actions/setup-r@v2 - with: - rtools-version: none + if: runner.os != 'Windows' + # windows-latest ships R; setup-r would reinstall it plus Ghostscript (~30s). + - if: runner.os == 'Windows' + shell: bash + run: cygpath -w "$(ls -d /c/Program\ Files/R/R-*/bin | tail -1)" >> "$GITHUB_PATH" - run: julia -e 'using Pkg; Pkg.add("Revise")' - shell: bash run: go test -C go -v -coverprofile=coverage.out -covermode=atomic diff --git a/go/julia_integration_test.go b/go/julia_integration_test.go index c8192a0..398267d 100644 --- a/go/julia_integration_test.go +++ b/go/julia_integration_test.go @@ -50,6 +50,7 @@ type streamChunk struct { } func TestJuliaWarmSession(t *testing.T) { + t.Parallel() socketPath := sharedDaemon(t) cwd := sharedJuliaCwd(t) @@ -321,6 +322,7 @@ func TestClientDisconnectInterruptsEval(t *testing.T) { } func TestRevisePicksUpPackageChanges(t *testing.T) { + t.Parallel() socketPath := sharedDaemon(t) pkgDir := sessionCwd(t) @@ -360,6 +362,7 @@ func TestRevisePicksUpPackageChanges(t *testing.T) { // frame; showing a result whose method was just defined (an @enum's namemap) must not // throw "method too new". Guards the Base.invokelatest wrap in runtime.jl. func TestJuliaWorldAgeDisplay(t *testing.T) { + t.Parallel() socketPath := sharedDaemon(t) pkgDir := sessionCwd(t) @@ -380,6 +383,7 @@ func TestJuliaWorldAgeDisplay(t *testing.T) { // hooks (flush buffers, finalizers) rather than SIGKILL the process. The hook // writes a marker file; its presence proves the process exited cleanly. func TestKillRunsAtexitHooks(t *testing.T) { + t.Parallel() cwd, err := os.Getwd() require.NoError(t, err) sess := newSession("julia", newSentinel(), nil, nil)