ci: run `code-formatting` job before everything else (try 2) (#14379)
parent
8ef9dc6247
commit
0972e67f72
|
@ -14,6 +14,7 @@ concurrency:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ubuntu-tcc:
|
ubuntu-tcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -90,6 +91,7 @@ jobs:
|
||||||
./v3 -o tetris -usecache examples/tetris/tetris.v
|
./v3 -o tetris -usecache examples/tetris/tetris.v
|
||||||
|
|
||||||
ubuntu-tcc-boehm-gc:
|
ubuntu-tcc-boehm-gc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -144,6 +146,7 @@ jobs:
|
||||||
[ "$(stat -c %s leaks.txt)" = "0" ]
|
[ "$(stat -c %s leaks.txt)" = "0" ]
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: macOS-latest
|
runs-on: macOS-latest
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -205,14 +208,14 @@ jobs:
|
||||||
cd ved && ../v -o ved .
|
cd ved && ../v -o ved .
|
||||||
../v -autofree .
|
../v -autofree .
|
||||||
cd ..
|
cd ..
|
||||||
# - name: Test c2v
|
# - name: Test c2v
|
||||||
# run: |
|
# run: |
|
||||||
# git clone --depth 1 https://github.com/vlang/c2v
|
# git clone --depth 1 https://github.com/vlang/c2v
|
||||||
# cd c2v && ../v -o c2v .
|
# cd c2v && ../v -o c2v .
|
||||||
# ../v .
|
# ../v .
|
||||||
# ../v run tests/run_tests.vsh
|
# ../v run tests/run_tests.vsh
|
||||||
# ../v -experimental -w c2v_test.v
|
# ../v -experimental -w c2v_test.v
|
||||||
# cd ..
|
# cd ..
|
||||||
- name: Build V UI examples
|
- name: Build V UI examples
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 https://github.com/vlang/ui
|
git clone --depth 1 https://github.com/vlang/ui
|
||||||
|
@ -231,6 +234,7 @@ jobs:
|
||||||
./v3 -o tetris -usecache examples/tetris/tetris.v
|
./v3 -o tetris -usecache examples/tetris/tetris.v
|
||||||
|
|
||||||
ubuntu:
|
ubuntu:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
steps:
|
steps:
|
||||||
|
@ -328,6 +332,7 @@ jobs:
|
||||||
# github-token: ${{ secrets.GITHUB_TOKEN }}
|
# github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
ubuntu-clang:
|
ubuntu-clang:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -412,6 +417,7 @@ jobs:
|
||||||
ls
|
ls
|
||||||
|
|
||||||
windows-gcc:
|
windows-gcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -472,6 +478,7 @@ jobs:
|
||||||
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
||||||
|
|
||||||
windows-msvc:
|
windows-msvc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -504,8 +511,8 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
./v -cg cmd\tools\vtest-self.v
|
./v -cg cmd\tools\vtest-self.v
|
||||||
./v test-self
|
./v test-self
|
||||||
# - name: Test
|
# - name: Test
|
||||||
# run: .\v.exe test-all
|
# run: .\v.exe test-all
|
||||||
- name: Test v->js
|
- name: Test v->js
|
||||||
run: ./v -o hi.js examples/hello_v_js.v && node hi.js
|
run: ./v -o hi.js examples/hello_v_js.v && node hi.js
|
||||||
- name: Test v binaries
|
- name: Test v binaries
|
||||||
|
@ -516,6 +523,7 @@ jobs:
|
||||||
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
||||||
|
|
||||||
windows-tcc:
|
windows-tcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -608,7 +616,6 @@ jobs:
|
||||||
## - name: v2 self compilation
|
## - name: v2 self compilation
|
||||||
## run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
## run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
|
||||||
|
|
||||||
|
|
||||||
# ubuntu-autofree-selfcompile:
|
# ubuntu-autofree-selfcompile:
|
||||||
# runs-on: ubuntu-20.04
|
# runs-on: ubuntu-20.04
|
||||||
# timeout-minutes: 121
|
# timeout-minutes: 121
|
||||||
|
@ -621,7 +628,6 @@ jobs:
|
||||||
# - name: V self compilation with -autofree
|
# - name: V self compilation with -autofree
|
||||||
# run: ./v -o v2 -autofree cmd/v && ./v2 -o v3 -autofree cmd/v && ./v3 -o v4 -autofree cmd/v
|
# run: ./v -o v2 -autofree cmd/v && ./v2 -o v3 -autofree cmd/v && ./v3 -o v4 -autofree cmd/v
|
||||||
|
|
||||||
|
|
||||||
# ubuntu-musl:
|
# ubuntu-musl:
|
||||||
# runs-on: ubuntu-20.04
|
# runs-on: ubuntu-20.04
|
||||||
# timeout-minutes: 121
|
# timeout-minutes: 121
|
||||||
|
|
|
@ -10,6 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ubuntu:
|
ubuntu:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
|
@ -48,6 +49,7 @@ jobs:
|
||||||
./v2 -o v3 cmd/v
|
./v2 -o v3 cmd/v
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: macos-11
|
runs-on: macos-11
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
|
|
|
@ -9,8 +9,8 @@ on:
|
||||||
- "**.md"
|
- "**.md"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
macos-cross:
|
macos-cross:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: macOS-latest
|
runs-on: macOS-latest
|
||||||
timeout-minutes: 25
|
timeout-minutes: 25
|
||||||
env:
|
env:
|
||||||
|
@ -47,6 +47,7 @@ jobs:
|
||||||
./v -os android examples/toml.v
|
./v -os android examples/toml.v
|
||||||
|
|
||||||
linux-cross:
|
linux-cross:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 25
|
timeout-minutes: 25
|
||||||
env:
|
env:
|
||||||
|
@ -98,8 +99,8 @@ jobs:
|
||||||
# Test that V can compile non-graphic app to Android compatible code *without* using the -apk flag
|
# Test that V can compile non-graphic app to Android compatible code *without* using the -apk flag
|
||||||
./v -os android examples/toml.v
|
./v -os android examples/toml.v
|
||||||
|
|
||||||
|
|
||||||
windows-cross:
|
windows-cross:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 25
|
timeout-minutes: 25
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -14,58 +14,58 @@ name: Sanitized CI
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
paths:
|
paths:
|
||||||
- '!**'
|
- "!**"
|
||||||
- 'cmd/tools/vtest*'
|
- "cmd/tools/vtest*"
|
||||||
- 'cmd/tools/builders/**.v'
|
- "cmd/tools/builders/**.v"
|
||||||
- 'vlib/builtin/**.v'
|
- "vlib/builtin/**.v"
|
||||||
- 'vlib/strconv/**.v'
|
- "vlib/strconv/**.v"
|
||||||
- 'vlib/strings/**.v'
|
- "vlib/strings/**.v"
|
||||||
- 'vlib/math/**.v'
|
- "vlib/math/**.v"
|
||||||
- 'vlib/math/big/**.v'
|
- "vlib/math/big/**.v"
|
||||||
- 'vlib/arrays/**.v'
|
- "vlib/arrays/**.v"
|
||||||
- 'vlib/datatypes/**.v'
|
- "vlib/datatypes/**.v"
|
||||||
- 'vlib/os/**.v'
|
- "vlib/os/**.v"
|
||||||
- 'vlib/sync/**.v'
|
- "vlib/sync/**.v"
|
||||||
- 'vlib/v/tests/**.v'
|
- "vlib/v/tests/**.v"
|
||||||
- 'vlib/v/ast/**.v'
|
- "vlib/v/ast/**.v"
|
||||||
- 'vlib/v/scanner/**.v'
|
- "vlib/v/scanner/**.v"
|
||||||
- 'vlib/v/parser/**.v'
|
- "vlib/v/parser/**.v"
|
||||||
- 'vlib/v/checker/**.v'
|
- "vlib/v/checker/**.v"
|
||||||
- 'vlib/v/gen/c/**.v'
|
- "vlib/v/gen/c/**.v"
|
||||||
- 'vlib/v/builder/**.v'
|
- "vlib/v/builder/**.v"
|
||||||
- 'vlib/v/cflag/**.v'
|
- "vlib/v/cflag/**.v"
|
||||||
- 'vlib/v/live/**.v'
|
- "vlib/v/live/**.v"
|
||||||
- 'vlib/v/util/**.v'
|
- "vlib/v/util/**.v"
|
||||||
- 'vlib/v/markused/**.v'
|
- "vlib/v/markused/**.v"
|
||||||
- 'vlib/v/preludes/**.v'
|
- "vlib/v/preludes/**.v"
|
||||||
- 'vlib/v/embed_file/**.v'
|
- "vlib/v/embed_file/**.v"
|
||||||
pull_request:
|
pull_request:
|
||||||
paths:
|
paths:
|
||||||
- '!**'
|
- "!**"
|
||||||
- 'cmd/tools/vtest*'
|
- "cmd/tools/vtest*"
|
||||||
- 'cmd/tools/builders/**.v'
|
- "cmd/tools/builders/**.v"
|
||||||
- 'vlib/builtin/**.v'
|
- "vlib/builtin/**.v"
|
||||||
- 'vlib/strconv/**.v'
|
- "vlib/strconv/**.v"
|
||||||
- 'vlib/strings/**.v'
|
- "vlib/strings/**.v"
|
||||||
- 'vlib/math/**.v'
|
- "vlib/math/**.v"
|
||||||
- 'vlib/math/big/**.v'
|
- "vlib/math/big/**.v"
|
||||||
- 'vlib/arrays/**.v'
|
- "vlib/arrays/**.v"
|
||||||
- 'vlib/datatypes/**.v'
|
- "vlib/datatypes/**.v"
|
||||||
- 'vlib/os/**.v'
|
- "vlib/os/**.v"
|
||||||
- 'vlib/sync/**.v'
|
- "vlib/sync/**.v"
|
||||||
- 'vlib/v/tests/**.v'
|
- "vlib/v/tests/**.v"
|
||||||
- 'vlib/v/ast/**.v'
|
- "vlib/v/ast/**.v"
|
||||||
- 'vlib/v/scanner/**.v'
|
- "vlib/v/scanner/**.v"
|
||||||
- 'vlib/v/parser/**.v'
|
- "vlib/v/parser/**.v"
|
||||||
- 'vlib/v/checker/**.v'
|
- "vlib/v/checker/**.v"
|
||||||
- 'vlib/v/gen/c/**.v'
|
- "vlib/v/gen/c/**.v"
|
||||||
- 'vlib/v/builder/**.v'
|
- "vlib/v/builder/**.v"
|
||||||
- 'vlib/v/cflag/**.v'
|
- "vlib/v/cflag/**.v"
|
||||||
- 'vlib/v/live/**.v'
|
- "vlib/v/live/**.v"
|
||||||
- 'vlib/v/util/**.v'
|
- "vlib/v/util/**.v"
|
||||||
- 'vlib/v/markused/**.v'
|
- "vlib/v/markused/**.v"
|
||||||
- 'vlib/v/preludes/**.v'
|
- "vlib/v/preludes/**.v"
|
||||||
- 'vlib/v/embed_file/**.v'
|
- "vlib/v/embed_file/**.v"
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
group: build-sanitized-${{ github.event.pull_request.number || github.sha }}
|
group: build-sanitized-${{ github.event.pull_request.number || github.sha }}
|
||||||
|
@ -73,6 +73,7 @@ concurrency:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
tests-sanitize-undefined-clang:
|
tests-sanitize-undefined-clang:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -98,6 +99,7 @@ jobs:
|
||||||
run: ./v2 build-examples
|
run: ./v2 build-examples
|
||||||
|
|
||||||
tests-sanitize-undefined-gcc:
|
tests-sanitize-undefined-gcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -122,6 +124,7 @@ jobs:
|
||||||
run: ./v2 build-examples
|
run: ./v2 build-examples
|
||||||
|
|
||||||
tests-sanitize-address-clang:
|
tests-sanitize-address-clang:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -144,13 +147,13 @@ jobs:
|
||||||
- name: Self tests (-fsanitize=address)
|
- name: Self tests (-fsanitize=address)
|
||||||
run: ASAN_OPTIONS=detect_leaks=0 ./v -cflags "-fsanitize=address,pointer-compare,pointer-subtract" test-self
|
run: ASAN_OPTIONS=detect_leaks=0 ./v -cflags "-fsanitize=address,pointer-compare,pointer-subtract" test-self
|
||||||
- name: Self tests (V compiled with -fsanitize=address)
|
- name: Self tests (V compiled with -fsanitize=address)
|
||||||
run:
|
run: ./v -cflags -fsanitize=address -o v cmd/v &&
|
||||||
./v -cflags -fsanitize=address -o v cmd/v &&
|
|
||||||
ASAN_OPTIONS=detect_leaks=0 ./v -cc tcc test-self -asan-compiler
|
ASAN_OPTIONS=detect_leaks=0 ./v -cc tcc test-self -asan-compiler
|
||||||
- name: Build examples (V compiled with -fsanitize=address)
|
- name: Build examples (V compiled with -fsanitize=address)
|
||||||
run: ASAN_OPTIONS=detect_leaks=0 ./v build-examples
|
run: ASAN_OPTIONS=detect_leaks=0 ./v build-examples
|
||||||
|
|
||||||
tests-sanitize-address-msvc:
|
tests-sanitize-address-msvc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -177,6 +180,7 @@ jobs:
|
||||||
## .\v.exe -cflags "/fsanitize=address" test-self
|
## .\v.exe -cflags "/fsanitize=address" test-self
|
||||||
|
|
||||||
tests-sanitize-address-gcc:
|
tests-sanitize-address-gcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -206,6 +210,7 @@ jobs:
|
||||||
run: ASAN_OPTIONS=detect_leaks=0 ./v build-examples
|
run: ASAN_OPTIONS=detect_leaks=0 ./v build-examples
|
||||||
|
|
||||||
tests-sanitize-memory-clang:
|
tests-sanitize-memory-clang:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 180
|
timeout-minutes: 180
|
||||||
env:
|
env:
|
||||||
|
@ -228,7 +233,6 @@ jobs:
|
||||||
- name: Self tests (-fsanitize=memory)
|
- name: Self tests (-fsanitize=memory)
|
||||||
run: ./v -cflags -fsanitize=memory test-self
|
run: ./v -cflags -fsanitize=memory test-self
|
||||||
- name: Self tests (V compiled with -fsanitize=memory)
|
- name: Self tests (V compiled with -fsanitize=memory)
|
||||||
run:
|
run: ./v -cflags -fsanitize=memory -o v cmd/v && ./v -cc tcc test-self -msan-compiler
|
||||||
./v -cflags -fsanitize=memory -o v cmd/v && ./v -cc tcc test-self -msan-compiler
|
|
||||||
- name: Build examples (V compiled with -fsanitize=memory)
|
- name: Build examples (V compiled with -fsanitize=memory)
|
||||||
run: ./v build-examples
|
run: ./v build-examples
|
||||||
|
|
|
@ -10,26 +10,27 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
run:
|
run:
|
||||||
|
needs: [code-formatting]
|
||||||
name: Run
|
name: Run
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
- name: Install google benchmark
|
- name: Install google benchmark
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/google/benchmark.git
|
git clone https://github.com/google/benchmark.git
|
||||||
cd benchmark
|
cd benchmark
|
||||||
cmake -E make_directory "build"
|
cmake -E make_directory "build"
|
||||||
cmake -E chdir "build" cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release ../
|
cmake -E chdir "build" cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release ../
|
||||||
sudo cmake --build "build" --config Release --target install
|
sudo cmake --build "build" --config Release --target install
|
||||||
- name: Run V benchmark
|
- name: Run V benchmark
|
||||||
run: |
|
run: |
|
||||||
make
|
make
|
||||||
sudo ./v symlink
|
sudo ./v symlink
|
||||||
git clone https://github.com/vincenzopalazzo/benchmarks.git
|
git clone https://github.com/vincenzopalazzo/benchmarks.git
|
||||||
cd benchmarks
|
cd benchmarks
|
||||||
make vdep && make v
|
make vdep && make v
|
||||||
- uses: actions/upload-artifact@v3
|
- uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: vlang-benchmark
|
name: vlang-benchmark
|
||||||
path: benchmarks/vlang/*.json
|
path: benchmarks/vlang/*.json
|
||||||
|
|
|
@ -13,8 +13,8 @@ concurrency:
|
||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
alpine-docker-musl-gcc:
|
alpine-docker-musl-gcc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
container:
|
container:
|
||||||
|
@ -46,6 +46,7 @@ jobs:
|
||||||
run: ./v test-self
|
run: ./v test-self
|
||||||
|
|
||||||
ubuntu-docker-musl:
|
ubuntu-docker-musl:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
container:
|
container:
|
||||||
|
|
|
@ -3,8 +3,8 @@ name: Debug CI
|
||||||
on: [workflow_dispatch]
|
on: [workflow_dispatch]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
debug-msvc:
|
debug-msvc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
|
|
@ -6,6 +6,7 @@ on: [push, pull_request]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check-markdown:
|
check-markdown:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 5
|
timeout-minutes: 5
|
||||||
steps:
|
steps:
|
||||||
|
@ -18,6 +19,7 @@ jobs:
|
||||||
## thus real errors are easier to spot.
|
## thus real errors are easier to spot.
|
||||||
|
|
||||||
report-missing-fn-doc:
|
report-missing-fn-doc:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 5
|
timeout-minutes: 5
|
||||||
env:
|
env:
|
||||||
|
|
|
@ -10,6 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
gg-regressions:
|
gg-regressions:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
timeout-minutes: 10
|
timeout-minutes: 10
|
||||||
env:
|
env:
|
||||||
|
|
|
@ -8,6 +8,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-module-docs:
|
build-module-docs:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
|
@ -14,6 +14,7 @@ concurrency:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
no-gpl-by-accident:
|
no-gpl-by-accident:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
steps:
|
steps:
|
||||||
|
@ -23,7 +24,9 @@ jobs:
|
||||||
! grep -r --exclude="*.yml" "a GPL license" .
|
! grep -r --exclude="*.yml" "a GPL license" .
|
||||||
|
|
||||||
code-formatting:
|
code-formatting:
|
||||||
runs-on: ubuntu-20.04
|
### NOTE: code-formatting is run *BEFORE* everything else, to detect formatting problems earlier.
|
||||||
|
### It uses a separate runner to minimize the chance of bottlenecking all the rest of the jobs.
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
env:
|
env:
|
||||||
VFLAGS: -cc gcc
|
VFLAGS: -cc gcc
|
||||||
|
@ -39,6 +42,7 @@ jobs:
|
||||||
run: ./v test-fmt
|
run: ./v test-fmt
|
||||||
|
|
||||||
performance-regressions:
|
performance-regressions:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
env:
|
env:
|
||||||
|
@ -63,6 +67,7 @@ jobs:
|
||||||
run: cmd/tools/repeat --max_time 1501 --series 3 --count 20 --nmins 2 --nmaxs 5 --warmup 3 --fail_percent 10 -t 'cd {T} ; ./v -show-timings -o v.c cmd/v' . ./vmaster
|
run: cmd/tools/repeat --max_time 1501 --series 3 --count 20 --nmins 2 --nmaxs 5 --warmup 3 --fail_percent 10 -t 'cd {T} ; ./v -show-timings -o v.c cmd/v' . ./vmaster
|
||||||
|
|
||||||
misc-tooling:
|
misc-tooling:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -90,7 +95,8 @@ jobs:
|
||||||
## run: ./v -cc g++-9 test-self
|
## run: ./v -cc g++-9 test-self
|
||||||
|
|
||||||
- name: Ensure V can be compiled with -autofree
|
- name: Ensure V can be compiled with -autofree
|
||||||
run: ./v -autofree -o v2 cmd/v ## NB: this does not mean it runs, but at least keeps it from regressing
|
## NB: this does not mean it runs, but at least keeps it from regressing
|
||||||
|
run: ./v -autofree -o v2 cmd/v
|
||||||
|
|
||||||
- name: Shader examples can be build
|
- name: Shader examples can be build
|
||||||
run: |
|
run: |
|
||||||
|
@ -109,6 +115,7 @@ jobs:
|
||||||
./v should-compile-all examples/sokol/*.v examples/sokol/0?*/*.v
|
./v should-compile-all examples/sokol/*.v examples/sokol/0?*/*.v
|
||||||
|
|
||||||
parser-silent:
|
parser-silent:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
steps:
|
steps:
|
||||||
|
@ -147,6 +154,7 @@ jobs:
|
||||||
./v test-parser -S examples/2048/2048_fuzz.v
|
./v test-parser -S examples/2048/2048_fuzz.v
|
||||||
|
|
||||||
v-apps-compile:
|
v-apps-compile:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
steps:
|
steps:
|
||||||
|
@ -230,7 +238,6 @@ jobs:
|
||||||
- name: Test libsodium
|
- name: Test libsodium
|
||||||
run: VJOBS=1 ./v -stats test ~/.vmodules/libsodium
|
run: VJOBS=1 ./v -stats test ~/.vmodules/libsodium
|
||||||
|
|
||||||
|
|
||||||
## vex
|
## vex
|
||||||
- name: Install Vex dependencies
|
- name: Install Vex dependencies
|
||||||
run: sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev
|
run: sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev
|
||||||
|
|
|
@ -13,12 +13,12 @@ concurrency:
|
||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
space-paths-linux:
|
space-paths-linux:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
MY_V_PATH: '你好 my $path, @с интервали'
|
MY_V_PATH: "你好 my $path, @с интервали"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
|
@ -40,10 +40,11 @@ jobs:
|
||||||
./v test vlib/builtin vlib/os
|
./v test vlib/builtin vlib/os
|
||||||
|
|
||||||
space-paths-macos:
|
space-paths-macos:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: macOS-latest
|
runs-on: macOS-latest
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
MY_V_PATH: '你好 my $path, @с интервали'
|
MY_V_PATH: "你好 my $path, @с интервали"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
|
@ -68,10 +69,11 @@ jobs:
|
||||||
./v test vlib/builtin vlib/os
|
./v test vlib/builtin vlib/os
|
||||||
|
|
||||||
space-paths-windows:
|
space-paths-windows:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: windows-2022
|
runs-on: windows-2022
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
MY_V_PATH: 'path with some $punctuation, and some spaces'
|
MY_V_PATH: "path with some $punctuation, and some spaces"
|
||||||
|
|
||||||
## NB: the following paths do not work for now:
|
## NB: the following paths do not work for now:
|
||||||
##### MY_V_PATH: '你好 my $path, @с интервали'
|
##### MY_V_PATH: '你好 my $path, @с интервали'
|
||||||
|
|
|
@ -10,6 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
v-compiles-sdl-examples:
|
v-compiles-sdl-examples:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
|
|
|
@ -10,6 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
toml-module-pass-external-test-suites:
|
toml-module-pass-external-test-suites:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
env:
|
env:
|
||||||
|
@ -22,7 +23,6 @@ jobs:
|
||||||
VTEST_TOML_DO_LARGE_FILES: 1
|
VTEST_TOML_DO_LARGE_FILES: 1
|
||||||
VTEST_TOML_DO_YAML_CONVERSION: 1
|
VTEST_TOML_DO_YAML_CONVERSION: 1
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -10,46 +10,47 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
vab-compiles-v-examples:
|
vab-compiles-v-examples:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
VAB_FLAGS: --api 30 --build-tools 29.0.0 -v 3
|
VAB_FLAGS: --api 30 --build-tools 29.0.0 -v 3
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/setup-java@v2
|
- uses: actions/setup-java@v2
|
||||||
with:
|
with:
|
||||||
distribution: 'adopt'
|
distribution: "adopt"
|
||||||
java-version: 8
|
java-version: 8
|
||||||
|
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Build V
|
- name: Build V
|
||||||
run: make && sudo ./v symlink
|
run: make && sudo ./v symlink
|
||||||
|
|
||||||
- name: Checkout vab
|
- name: Checkout vab
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
repository: vlang/vab
|
repository: vlang/vab
|
||||||
path: vab
|
path: vab
|
||||||
|
|
||||||
- name: Build vab
|
- name: Build vab
|
||||||
run: |
|
run: |
|
||||||
cd vab
|
cd vab
|
||||||
v -g vab.v
|
v -g vab.v
|
||||||
sudo ln -s $(pwd)/vab /usr/local/bin/vab
|
sudo ln -s $(pwd)/vab /usr/local/bin/vab
|
||||||
|
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
run: v test vab
|
run: v test vab
|
||||||
|
|
||||||
- name: Run vab --help
|
- name: Run vab --help
|
||||||
run: vab --help
|
run: vab --help
|
||||||
|
|
||||||
- name: Run vab doctor
|
- name: Run vab doctor
|
||||||
run: vab doctor
|
run: vab doctor
|
||||||
|
|
||||||
- name: Build graphical V examples as APK
|
- name: Build graphical V examples as APK
|
||||||
run: |
|
run: |
|
||||||
declare -a v_examples=('flappylearning' '2048' 'fireworks' 'tetris' 'sokol/particles' 'sokol/drawing.v' 'sokol/freetype_raven.v' 'gg/polygons.v' 'gg/raven_text_rendering.v' 'gg/rectangles.v' 'gg/stars.v' 'gg/worker_thread.v')
|
declare -a v_examples=('flappylearning' '2048' 'fireworks' 'tetris' 'sokol/particles' 'sokol/drawing.v' 'sokol/freetype_raven.v' 'gg/polygons.v' 'gg/raven_text_rendering.v' 'gg/rectangles.v' 'gg/stars.v' 'gg/worker_thread.v')
|
||||||
mkdir apks
|
mkdir apks
|
||||||
for example in "${v_examples[@]}"; do
|
for example in "${v_examples[@]}"; do
|
||||||
safe_name=$(echo "$example" | sed 's%/%-%' | sed 's%\.%-%' )
|
safe_name=$(echo "$example" | sed 's%/%-%' | sed 's%\.%-%' )
|
||||||
vab examples/$example -o apks/$safe_name.apk
|
vab examples/$example -o apks/$safe_name.apk
|
||||||
done
|
done
|
||||||
|
|
|
@ -12,6 +12,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
vinix-build:
|
vinix-build:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
|
@ -10,6 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
websocket_tests:
|
websocket_tests:
|
||||||
|
needs: [code-formatting]
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
timeout-minutes: 121
|
timeout-minutes: 121
|
||||||
env:
|
env:
|
||||||
|
@ -29,7 +30,7 @@ jobs:
|
||||||
- name: Run websockets tests
|
- name: Run websockets tests
|
||||||
run: ./v -g test vlib/net/websocket/
|
run: ./v -g test vlib/net/websocket/
|
||||||
|
|
||||||
## Autobahn integrations tests
|
## Autobahn integrations tests
|
||||||
- name: Run autobahn services
|
- name: Run autobahn services
|
||||||
run: docker-compose -f ${{github.workspace}}/vlib/net/websocket/tests/autobahn/docker-compose.yml up -d
|
run: docker-compose -f ${{github.workspace}}/vlib/net/websocket/tests/autobahn/docker-compose.yml up -d
|
||||||
|
|
||||||
|
@ -87,4 +88,3 @@ jobs:
|
||||||
with:
|
with:
|
||||||
name: client wss
|
name: client wss
|
||||||
path: ${{github.workspace}}/reports_wss/clients/index.html
|
path: ${{github.workspace}}/reports_wss/clients/index.html
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue