9
9
jobs :
10
10
build :
11
11
env :
12
- OPAMJOBS : 2
13
- OPAMYES : true
14
12
WASM_OF_OCAML : true
15
13
16
14
strategy :
@@ -19,45 +17,44 @@ jobs:
19
17
os :
20
18
- ubuntu-latest
21
19
ocaml-compiler :
22
- - 4.14.x
23
- - 5.0.x
24
- - 5.1.x
25
- - 5.2.x
20
+ - " 4.14"
21
+ - " 5.0"
22
+ - " 5.1"
23
+ - " 5.2"
26
24
- ocaml-compiler.5.3.0~beta2
27
25
separate_compilation :
28
26
- true
29
27
include :
30
28
- os : macos-latest
31
- ocaml-compiler : 5.2.x
29
+ ocaml-compiler : " 5.2"
32
30
separate_compilation : true
33
31
- os : ubuntu-latest
34
- ocaml-compiler : 4.14.x
32
+ ocaml-compiler : " 4.14"
35
33
separate_compilation : false
36
34
37
35
runs-on : ${{ matrix.os }}
38
36
39
37
steps :
40
- - name : Set git to use LF
41
- run : |
42
- git config --global core.autocrlf false
43
- git config --global core.eol lf
44
- git config --global core.ignorecase false
38
+ - name : Checkout tree
39
+ uses : actions/checkout@v4
45
40
46
- - name : Install node
41
+ - name : Checkout Jane Street opam repository
42
+ uses : actions/checkout@v4
43
+ with :
44
+ repository : janestreet/opam-repository
45
+ ref : feaf8f831051fd5f316963b28efd728cf0b0eca1
46
+ path : janestreet/opam-repository
47
+
48
+ - name : Set-up Node.js
47
49
uses : actions/setup-node@v4
48
50
with :
49
- node-version : 23
51
+ node-version : latest
50
52
51
- - name : Install OCaml ${{ matrix.ocaml-compiler }}
53
+ - name : Set-up OCaml ${{ matrix.ocaml-compiler }}
52
54
uses : ocaml/setup-ocaml@v3
53
55
with :
54
56
ocaml-compiler : ${{ matrix.ocaml-compiler }}
55
57
56
- - name : Checkout code
57
- uses : actions/checkout@v4
58
- with :
59
- path : wasm_of_ocaml
60
-
61
58
- name : Set-up Binaryen
62
59
63
60
with :
@@ -67,84 +64,68 @@ jobs:
67
64
# It's faster to use a cached version
68
65
run : opam install --fake binaryen-bin
69
66
70
- - name : Checkout Jane Street opam repository
71
- uses : actions/checkout@v4
72
- with :
73
- repository : janestreet/opam-repository
74
- ref : feaf8f831051fd5f316963b28efd728cf0b0eca1
75
- path : jane-street/opam-repository
76
-
77
- - name : Pin wasm_of_ocaml
78
- working-directory : ./wasm_of_ocaml
79
- run : opam pin -n --with-version `< VERSION` .
80
-
81
- - name : Install some needed packages
82
- run : opam install opam-format ocamlfind dune graphics cmdliner sexplib0.v0.16.0
83
-
84
67
- name : Checkout Jane Street packages
85
- run : opam exec -- ocaml wasm_of_ocaml/tools/ci_setup.ml
86
-
87
- - name : Install wasm_of_ocaml and its test dependencies
88
- working-directory : ./wasm_of_ocaml
89
68
run : |
90
- opam install `basename -s .opam *.opam` num cohttp-lwt-unix ppx_expect cstruct
69
+ opam install opam-format ocamlfind dune graphics cmdliner sexplib0.v0.16.0
70
+ opam exec -- ocaml tools/ci_setup.ml
71
+
72
+ - name : Install dependencies
73
+ run : opam install . --deps-only --with-test
91
74
92
75
- name : Run tests
93
76
if : ${{ matrix.separate_compilation }}
94
- working-directory : ./wasm_of_ocaml
95
77
run : opam exec -- dune build @runtest-wasm
96
78
97
79
- name : Run tests with CPS effects
98
80
if : ${{ matrix.ocaml-compiler >= '5.' && matrix.separate_compilation }}
99
- working-directory : ./wasm_of_ocaml
100
81
run : opam exec -- dune build @runtest-wasm --profile with-effects
101
82
102
83
- name : Run Base tests
103
84
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
104
- working-directory : ./jane-street /lib/base
85
+ working-directory : ./janestreet /lib/base
105
86
run : opam exec -- dune runtest
106
87
107
88
- name : Run Base bigstring tests
108
89
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
109
- working-directory : ./jane-street /lib/base_bigstring
90
+ working-directory : ./janestreet /lib/base_bigstring
110
91
run : opam exec -- dune runtest
111
92
112
93
- name : Run Core tests
113
94
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
114
- working-directory : ./jane-street /lib/core
95
+ working-directory : ./janestreet /lib/core
115
96
run : opam exec -- dune runtest
116
97
117
98
- name : Run Bignum tests
118
99
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
119
- working-directory : ./jane-street /lib/bignum
100
+ working-directory : ./janestreet /lib/bignum
120
101
run : opam exec -- dune runtest
121
102
122
103
- name : Run Bin_prot tests
123
104
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
124
- working-directory : ./jane-street /lib/bin_prot
105
+ working-directory : ./janestreet /lib/bin_prot
125
106
run : opam exec -- dune runtest
126
107
127
108
- name : Run String_dict tests
128
109
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
129
- working-directory : ./jane-street /lib/string_dict
110
+ working-directory : ./janestreet /lib/string_dict
130
111
run : opam exec -- dune runtest
131
112
132
113
- name : Run Zarith tests
133
114
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
134
- working-directory : ./jane-street /lib/zarith_stubs_js
115
+ working-directory : ./janestreet /lib/zarith_stubs_js
135
116
run : opam exec -- dune runtest
136
117
137
118
- name : Run Virtual_dom tests
138
119
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
139
- working-directory : ./jane-street /lib/virtual_dom
120
+ working-directory : ./janestreet /lib/virtual_dom
140
121
run : opam exec -- dune runtest
141
122
142
123
- name : Run Bonsai tests
143
124
if : ${{ matrix.ocaml-compiler < '5.' && matrix.separate_compilation }}
144
- working-directory : ./jane-street /lib/bonsai
125
+ working-directory : ./janestreet /lib/bonsai
145
126
run : opam exec -- dune runtest
146
127
147
128
- name : Run Bonsai tests (release profile)
148
129
if : ${{ ! matrix.separate_compilation }}
149
- working-directory : ./jane-street /lib/bonsai
130
+ working-directory : ./janestreet /lib/bonsai
150
131
run : opam exec -- dune runtest --profile release
0 commit comments