Skip to content

Commit 164b240

Browse files
authored
ci(github-actions): prevent re-resolve for downgrade testing (#1466)
* ci(github-actions): prevent re-resolve for downgrade testing * ci: dont downgrade stdlibs * ci: properly qualify versions * fix: bump min versions * fix: bump min versions * fix: bump min versions * fix: bump min cuda to 5.4 * ci: check for lts as well * test: skip persistent tasks testing * ci: disable caching for downgrade testing * ci: use specific branch for downgrade-testing * ci: re-enable caching
1 parent 84589f8 commit 164b240

File tree

17 files changed

+70
-71
lines changed

17 files changed

+70
-71
lines changed

.github/workflows/CI.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,6 @@ jobs:
5353
strategy:
5454
fail-fast: false
5555
matrix:
56-
version:
57-
- "1.10"
5856
test_group:
5957
- "core_layers"
6058
- "normalize_layers"
@@ -64,7 +62,7 @@ jobs:
6462
- "reactant"
6563
uses: ./.github/workflows/CommonCI.yml
6664
with:
67-
julia_version: "1.10"
65+
julia_version: "1.11"
6866
project: "."
6967
downgrade_testing: true
7068
test_args: "BACKEND_GROUP=CPU LUX_TEST_GROUP=${{ matrix.test_group }}"

.github/workflows/CI_LuxCUDA.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
downgrade:
2020
uses: ./.github/workflows/CommonCI.yml
2121
with:
22-
julia_version: "1.10"
22+
julia_version: "1.11"
2323
project: "lib/LuxCUDA"
2424
downgrade_testing: true
2525

.github/workflows/CI_LuxCore.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,16 @@ concurrency:
1717
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
1818

1919
jobs:
20-
downgrade:
20+
test:
2121
uses: ./.github/workflows/CommonCI.yml
2222
with:
23-
julia_version: "1.10"
23+
julia_version: "1"
2424
project: "lib/LuxCore"
25-
downgrade_testing: true
26-
local_test_dependencies: "lib/MLDataDevices"
2725

28-
test:
26+
downgrade:
2927
uses: ./.github/workflows/CommonCI.yml
3028
with:
31-
julia_version: "1"
29+
julia_version: "1.11"
3230
project: "lib/LuxCore"
31+
downgrade_testing: true
32+
local_test_dependencies: "lib/MLDataDevices"

.github/workflows/CI_LuxLib.yml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,23 +19,6 @@ concurrency:
1919
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
2020

2121
jobs:
22-
downgrade:
23-
strategy:
24-
fail-fast: false
25-
matrix:
26-
test_group:
27-
- "common"
28-
- "normalization"
29-
- "misc"
30-
uses: ./.github/workflows/CommonCI.yml
31-
with:
32-
julia_version: "1.10"
33-
project: "lib/LuxLib"
34-
downgrade_testing: true
35-
local_dependencies: "lib/LuxCore,lib/MLDataDevices"
36-
local_test_dependencies: "lib/LuxTestUtils,lib/MLDataDevices"
37-
test_args: "BACKEND_GROUP=cpu LUXLIB_TEST_GROUP=${{ matrix.test_group }} LUXLIB_BLAS_BACKEND=default LUXLIB_LOAD_LOOPVEC=true"
38-
3922
test:
4023
strategy:
4124
fail-fast: false
@@ -60,3 +43,20 @@ jobs:
6043
julia_version: "1"
6144
project: "lib/LuxLib"
6245
test_args: "BACKEND_GROUP=cpu LUXLIB_TEST_GROUP=${{ matrix.test_group }} LUXLIB_BLAS_BACKEND=${{ matrix.blas_backend }} LUXLIB_LOAD_LOOPVEC=${{ matrix.loopvec }}"
46+
47+
downgrade:
48+
strategy:
49+
fail-fast: false
50+
matrix:
51+
test_group:
52+
- "common"
53+
- "normalization"
54+
- "misc"
55+
uses: ./.github/workflows/CommonCI.yml
56+
with:
57+
julia_version: "1.11"
58+
project: "lib/LuxLib"
59+
downgrade_testing: true
60+
local_dependencies: "lib/LuxCore,lib/MLDataDevices"
61+
local_test_dependencies: "lib/LuxTestUtils,lib/MLDataDevices"
62+
test_args: "BACKEND_GROUP=cpu LUXLIB_TEST_GROUP=${{ matrix.test_group }} LUXLIB_BLAS_BACKEND=default LUXLIB_LOAD_LOOPVEC=true"

.github/workflows/CI_LuxTestUtils.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,6 @@ concurrency:
1616
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
1717

1818
jobs:
19-
downgrade:
20-
uses: ./.github/workflows/CommonCI.yml
21-
with:
22-
julia_version: "1.10"
23-
project: "lib/LuxTestUtils"
24-
downgrade_testing: true
25-
local_dependencies: "lib/MLDataDevices"
26-
2719
test:
2820
uses: ./.github/workflows/CommonCI.yml
2921
with:

.github/workflows/CI_MLDataDevices.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
- reactant
4444
uses: ./.github/workflows/CommonCI.yml
4545
with:
46-
julia_version: "1.10"
46+
julia_version: "1.11"
4747
project: "lib/MLDataDevices"
4848
downgrade_testing: true
4949
test_args: "BACKEND_GROUP=${{ matrix.group }}"

.github/workflows/CI_WeightInitializers.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
downgrade:
2727
uses: ./.github/workflows/CommonCI.yml
2828
with:
29-
julia_version: "1.10"
29+
julia_version: "1.11"
3030
project: "lib/WeightInitializers"
3131
downgrade_testing: true
3232
test_args: "BACKEND_GROUP=cpu"

.github/workflows/CommonCI.yml

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -59,22 +59,14 @@ jobs:
5959
with:
6060
version: ${{ inputs.julia_version }}
6161
- uses: julia-actions/cache@v2
62-
- uses: julia-actions/julia-downgrade-compat@v2
62+
# - uses: julia-actions/julia-downgrade-compat@v2
63+
# FIXME: update to julia-actions/julia-downgrade-compat@v2 when it is fixed
64+
- uses: avik-pal/julia-downgrade-compat@patch-1
6365
if: ${{ inputs.downgrade_testing }}
6466
with:
6567
projects: ${{ inputs.project }}
66-
67-
# For 1.11 and beyond we can use sources. For older versions we need to
68-
# manually develop the packages.
69-
- uses: julia-actions/julia-buildpkg@v1
70-
with:
71-
project: ${{ inputs.project }}
72-
if: ${{ inputs.julia_version != '1.10' }}
73-
- uses: julia-actions/julia-runtest@v1
74-
with:
75-
project: ${{ inputs.project }}
76-
test_args: ${{ inputs.test_args }}
77-
if: ${{ inputs.julia_version != '1.10' }}
68+
julia_version: ${{ inputs.julia_version }}
69+
skip: Pkg, TOML, Statistics, LinearAlgebra, Random, Serialization, Test
7870

7971
# For 1.10 we need to manually develop the packages.
8072
- name: "Develop Dependencies"
@@ -87,10 +79,18 @@ jobs:
8779
end
8880
length(dev_pkgs) > 0 && Pkg.develop(dev_pkgs)
8981
shell: julia --color=yes --threads=auto {0}
90-
if: ${{ inputs.julia_version == '1.10' }}
82+
if: ${{ (inputs.julia_version == '1.10' || inputs.julia_version == 'lts') && inputs.local_dependencies != '' }}
9183
env:
9284
PROJECT: ${{ inputs.project }}
9385
DEV_DEPS: ${{ inputs.local_dependencies }}
86+
87+
# For 1.11 and beyond we can use sources. For older versions we need to
88+
# manually develop the packages.
89+
- uses: julia-actions/julia-buildpkg@v1
90+
with:
91+
project: ${{ inputs.project }}
92+
if: ${{ (inputs.julia_version != '1.10' && inputs.julia_version != 'lts') || inputs.local_dependencies == '' }}
93+
9494
- name: "Develop Test Dependencies"
9595
run: |
9696
import Pkg
@@ -102,7 +102,7 @@ jobs:
102102
end
103103
length(dev_pkgs) > 0 && Pkg.develop(dev_pkgs)
104104
shell: julia --color=yes --threads=auto {0}
105-
if: ${{ inputs.julia_version == '1.10' }}
105+
if: ${{ (inputs.julia_version == '1.10' || inputs.julia_version == 'lts') && inputs.local_test_dependencies != '' }}
106106
env:
107107
PROJECT: ${{ inputs.project }}
108108
TEST_DEPS: ${{ inputs.local_test_dependencies }}
@@ -114,11 +114,18 @@ jobs:
114114
const TEST_ARGS = filter(!isempty, split(get(ENV, "TEST_ARGS", "")))
115115
include(joinpath(project, "test", "runtests.jl"))
116116
shell: julia --color=yes --code-coverage=user --depwarn=yes --threads=auto --check-bounds=yes {0}
117-
if: ${{ inputs.julia_version == '1.10' }}
117+
if: ${{ (inputs.julia_version == '1.10' || inputs.julia_version == 'lts') && inputs.local_test_dependencies != '' }}
118118
env:
119119
PROJECT: ${{ inputs.project }}
120120
TEST_ARGS: ${{ inputs.test_args }}
121121

122+
- uses: julia-actions/julia-runtest@v1
123+
with:
124+
project: ${{ inputs.project }}
125+
test_args: ${{ inputs.test_args }}
126+
allow_reresolve: ${{ !(inputs.downgrade_testing) }}
127+
if: ${{ (inputs.julia_version != '1.10' && inputs.julia_version != 'lts') || inputs.local_test_dependencies == '' }}
128+
122129
- name: "Upload MLIR modules"
123130
uses: actions/upload-artifact@v4
124131
timeout-minutes: 10

Project.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "Lux"
22
uuid = "b2108857-7c20-44ae-9111-449ecde12c47"
33
authors = ["Avik Pal <[email protected]> and contributors"]
4-
version = "1.21.0"
4+
version = "1.21.1"
55

66
[deps]
77
ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b"
@@ -80,15 +80,15 @@ ADTypes = "1.15"
8080
Adapt = "4.1"
8181
ArgCheck = "2.3"
8282
ArrayInterface = "7.17.1"
83-
CUDA = "5.3.2"
83+
CUDA = "5.8"
8484
ChainRulesCore = "1.25"
8585
Compat = "4.16"
8686
ComponentArrays = "0.15.28"
8787
ConcreteStructs = "0.2.3"
8888
DiffResults = "1.1"
8989
DispatchDoctor = "0.4.26"
9090
Enzyme = "0.13.49"
91-
EnzymeCore = "0.8.11"
91+
EnzymeCore = "0.8.12"
9292
FastClosures = "0.3.2"
9393
Flux = "0.16.3"
9494
ForwardDiff = "0.10.36, 1"

lib/LuxCUDA/Project.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
name = "LuxCUDA"
22
uuid = "d0bbae9a-e099-4d5b-a835-1c6931763bda"
33
authors = ["Avik Pal <[email protected]> and contributors"]
4-
version = "0.3.3"
4+
version = "0.3.4"
55

66
[deps]
77
CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba"
88
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
99
cuDNN = "02a925ec-e4fe-4b08-9a7e-0d78e3d38ccd"
1010

1111
[compat]
12-
CUDA = "5.3.2"
12+
CUDA = "5.8"
1313
Reexport = "1"
1414
cuDNN = "1.3"
1515
julia = "1.10"

0 commit comments

Comments
 (0)