diff --git a/.github/workflows/linux_ci.yml b/.github/workflows/linux_ci.yml index d64097d447..e171a4dccb 100644 --- a/.github/workflows/linux_ci.yml +++ b/.github/workflows/linux_ci.yml @@ -29,83 +29,83 @@ jobs: steps: - uses: actions/checkout@v4 - name: Build v + run: make -j4 && ./v symlink -githubci + - name: Build v with -prealloc run: | - echo $VFLAGS - make -j4 && ./v symlink -githubci - ./v -d debug_malloc -d debug_realloc -o v cmd/v - ./v -cg -cstrict -o v cmd/v + v -d debug_malloc -d debug_realloc -o v cmd/v + v -cg -cstrict -o v cmd/v # Test v -realloc arena allocation - ./v -o vrealloc -prealloc cmd/v && ./vrealloc -o v3 cmd/v && ./v3 -o v4 cmd/v + v -o vrealloc -prealloc cmd/v && ./vrealloc -o v3 cmd/v && ./v3 -o v4 cmd/v - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Install dependencies for examples and tools run: | - ./v retry -- sudo apt update - ./v retry -- sudo apt install --quiet -y libssl-dev sqlite3 libsqlite3-dev valgrind - ./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev + v retry -- sudo apt update + v retry -- sudo apt install --quiet -y libssl-dev sqlite3 libsqlite3-dev valgrind + v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev # The following is needed for examples/wkhtmltopdf.v - ./v retry -- wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb - ./v retry -- sudo apt install --quiet -y xfonts-75dpi xfonts-base - ./v retry -- sudo apt install --quiet -y expect - ./v retry -- sudo dpkg -i wkhtmltox_0.12.6-1.focal_amd64.deb + v retry -- wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb + v retry -- sudo apt install --quiet -y xfonts-75dpi xfonts-base + v retry -- sudo apt install --quiet -y expect + v retry -- sudo dpkg -i wkhtmltox_0.12.6-1.focal_amd64.deb - name: Test v->c run: | thirdparty/tcc/tcc.exe -version - ./v -cg -o v cmd/v # Make sure vtcc can build itself twice - # ./v test-all + v -cg -o v cmd/v # Make sure vtcc can build itself twice + # v test-all - name: v self compilation - run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v + run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v - name: v self compilation with -skip-unused - run: ./v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v + run: v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v - name: v doctor - run: ./v doctor + run: v doctor - name: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: ./v test-self vlib + run: v test-self vlib # - name: Self tests (-cstrict) - # run: V_CI_CSTRICT=1 ./v -cstrict test-self vlib + # run: V_CI_CSTRICT=1 v -cstrict test-self vlib - name: Build examples - run: ./v -N -W build-examples + run: v -N -W build-examples - name: Run the submodule example, using a relative path - run: ./v -W run examples/submodule + run: v -W run examples/submodule - name: Build v tools - run: ./v -N -W build-tools + run: v -N -W build-tools - name: Build v binaries - run: ./v -N -W build-vbinaries + run: v -N -W build-vbinaries - name: Build benches - run: ./v should-compile-all vlib/v/tests/bench/ + run: v should-compile-all vlib/v/tests/bench/ - name: Run a VSH script - run: ./v run examples/v_script.vsh + run: v run examples/v_script.vsh - name: Test v tutorials - run: ./v tutorials/building_a_simple_web_blog_with_vweb/code/blog + run: v tutorials/building_a_simple_web_blog_with_vweb/code/blog - name: Build cmd/tools/fast - run: cd cmd/tools/fast && ../../../v fast.v && ./fast + run: cd cmd/tools/fast && v fast.v && ./fast - name: V self compilation with -usecache run: | unset VFLAGS - ./v -usecache examples/hello_world.v && examples/hello_world - ./v -o v2 -usecache cmd/v + v -usecache examples/hello_world.v && examples/hello_world + v -o v2 -usecache cmd/v ./v2 -o v3 -usecache cmd/v ./v3 version ./v3 -o tetris -usecache examples/tetris/tetris.v - name: Test password input - run: ./v test examples/password/ + run: v test examples/password/ - name: Test readline - run: ./v test examples/readline/ + run: v test examples/readline/ - name: Test leak detector run: | - ./v -gc boehm_leak -o testcase_leak vlib/v/tests/testcase_leak.vv + v -gc boehm_leak -o testcase_leak vlib/v/tests/testcase_leak.vv ./testcase_leak 2>leaks.txt grep "Found 1 leaked object" leaks.txt && grep -P ", sz=\s?1000," leaks.txt - name: Test leak detector not being active for normal compile run: | - ./v -o testcase_leak vlib/v/tests/testcase_leak.vv + v -o testcase_leak vlib/v/tests/testcase_leak.vv ./testcase_leak 2>leaks.txt [ "$(stat -c %s leaks.txt)" = "0" ] @@ -117,84 +117,84 @@ jobs: - name: Build V run: make -j4 && ./v symlink -githubci - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Install dependencies for examples and tools run: | - ./v retry -- sudo apt update - ./v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind - ./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev + v retry -- sudo apt update + v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind + v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev - name: Recompile V with -cstrict and gcc run: v -cc gcc -cg -cstrict -o v cmd/v - name: Valgrind v.c - run: valgrind --error-exitcode=1 ./v -o v.c cmd/v + run: valgrind --error-exitcode=1 v -o v.c cmd/v - name: Run sanitizers run: | - ./v -o v2 cmd/v -cflags -fsanitize=thread - ./v -o v3 cmd/v -cflags "-fsanitize=undefined -fno-sanitize=alignment" + v -o v2 cmd/v -cflags -fsanitize=thread + v -o v3 cmd/v -cflags "-fsanitize=undefined -fno-sanitize=alignment" UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v3 -o v.c cmd/v # - name: Test V - # run: ./v test-all + # run: v test-all # - name: Test v binaries - # run: ./v -N -W build-vbinaries + # run: v -N -W build-vbinaries # - 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: Build Vorum - # run: ./v retry -- git clone --depth 1 https://github.com/vlang/vorum && cd vorum && ../v . && cd .. + # run: v retry -- git clone --depth 1 https://github.com/vlang/vorum && cd vorum && v . && cd .. - name: Freestanding - run: ./v -freestanding run vlib/os/bare/bare_example_linux.v + run: v -freestanding run vlib/os/bare/bare_example_linux.v - name: V self compilation - run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v + run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v - name: V self compilation with -usecache run: | unset VFLAGS - ./v -usecache examples/hello_world.v && examples/hello_world - ./v -o v2 -usecache cmd/v + v -usecache examples/hello_world.v && examples/hello_world + v -o v2 -usecache cmd/v ./v2 -o v3 -usecache cmd/v ./v3 version ./v3 -o tetris -usecache examples/tetris/tetris.v - name: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: ./v test-self vlib + run: v test-self vlib - name: Self tests (-prod) - run: ./v -o vprod -prod cmd/v && ./vprod test-self vlib + run: v -o vprod -prod cmd/v && ./vprod test-self vlib - name: Self tests (-cstrict) - run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 ./v -cc gcc -cstrict test-self vlib + run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 v -cc gcc -cstrict test-self vlib - name: Build examples - run: ./v -N -W build-examples + run: v -N -W build-examples - name: Build tetris with -autofree - run: ./v -autofree -o tetris examples/tetris/tetris.v + run: v -autofree -o tetris examples/tetris/tetris.v - name: Build blog tutorial with -autofree - run: ./v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog + run: v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog - name: Build option_test.c.v with -autofree - run: ./v -autofree vlib/v/tests/option_test.c.v + run: v -autofree vlib/v/tests/option_test.c.v - name: V self compilation with -parallel-cc run: | - ./v -o v2 -parallel-cc cmd/v + v -o v2 -parallel-cc cmd/v - name: Build modules run: | - ./v build-module vlib/os - ./v build-module vlib/builtin - ./v build-module vlib/strconv - ./v build-module vlib/time - ./v build-module vlib/term - ./v build-module vlib/math - ./v build-module vlib/strings - ./v build-module vlib/v/token - ./v build-module vlib/v/ast - ./v build-module vlib/v/parser - ./v build-module vlib/v/gen/c - ./v build-module vlib/v/depgraph - ./v build-module vlib/os/cmdline + v build-module vlib/os + v build-module vlib/builtin + v build-module vlib/strconv + v build-module vlib/time + v build-module vlib/term + v build-module vlib/math + v build-module vlib/strings + v build-module vlib/v/token + v build-module vlib/v/ast + v build-module vlib/v/parser + v build-module vlib/v/gen/c + v build-module vlib/v/depgraph + v build-module vlib/os/cmdline - name: native machine code generation run: | - ./v -o vprod -prod cmd/v + v -o vprod -prod cmd/v cd cmd/tools echo "Generating a 1m line V file..." ../../vprod gen1m.v @@ -205,11 +205,11 @@ jobs: ./1m ls - name: compile vdoctor.v with -skip-unused and -prod - run: ./v -showcc -skip-unused -cc gcc -prod cmd/tools/vdoctor.v + run: v -showcc -skip-unused -cc gcc -prod cmd/tools/vdoctor.v - name: compile vup.v with -skip-unused and -prod - run: ./v -showcc -skip-unused -cc gcc -prod cmd/tools/vup.v + run: v -showcc -skip-unused -cc gcc -prod cmd/tools/vup.v - # - run: cd examples/native && ../../v -native hello_world.v && ./hello_world + # - run: cd examples/native && v -native hello_world.v && ./hello_world # - name: Coveralls GitHub Action # uses: coverallsapp/github-action@v1.0.1 # with: @@ -225,75 +225,75 @@ jobs: - name: Build V run: make -j4 && ./v symlink -githubci - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Install dependencies for examples and tools run: | - ./v retry -- sudo apt update - ./v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind - ./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev - ./v retry -- sudo apt install --quiet -y clang + v retry -- sudo apt update + v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind + v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev + v retry -- sudo apt install --quiet -y clang - name: Recompile V with -cstrict and clang run: v -cc clang -cg -cstrict -o v cmd/v - name: Valgrind - run: valgrind --error-exitcode=1 ./v -o v.c cmd/v + run: valgrind --error-exitcode=1 v -o v.c cmd/v - name: Run sanitizers run: | - ./v -o v2 cmd/v -cflags -fsanitize=memory - ./v -o v3 cmd/v -cflags -fsanitize=thread - ./v -o v4 cmd/v -cflags -fsanitize=undefined - ./v -o v5 cmd/v -cflags -fsanitize=address,pointer-compare,pointer-subtract + v -o v2 cmd/v -cflags -fsanitize=memory + v -o v3 cmd/v -cflags -fsanitize=thread + v -o v4 cmd/v -cflags -fsanitize=undefined + v -o v5 cmd/v -cflags -fsanitize=address,pointer-compare,pointer-subtract UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v3 -o v.c cmd/v UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v4 -o v.c cmd/v ASAN_OPTIONS=detect_leaks=0 UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v5 -o v.c cmd/v - name: v self compilation - run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v + run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v - name: v self compilation with -usecache run: | unset VFLAGS - ./v -usecache examples/hello_world.v && examples/hello_world - ./v -o v2 -usecache cmd/v + v -usecache examples/hello_world.v && examples/hello_world + v -o v2 -usecache cmd/v ./v2 -o v3 -usecache cmd/v ./v3 version ./v3 -o tetris -usecache examples/tetris/tetris.v - name: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: ./v test-self vlib + run: v test-self vlib - name: Self tests (vprod) - run: ./v -o vprod -prod cmd/v && ./vprod test-self vlib + run: v -o vprod -prod cmd/v && ./vprod test-self vlib - name: Self tests (-cstrict) run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 ./vprod -cstrict test-self vlib - name: Build examples - run: ./v -N -W build-examples + run: v -N -W build-examples - name: Build examples with -autofree run: | - ./v -autofree -experimental -o tetris examples/tetris/tetris.v + v -autofree -experimental -o tetris examples/tetris/tetris.v - name: Build modules run: | - ./v build-module vlib/os - ./v build-module vlib/builtin - ./v build-module vlib/strconv - ./v build-module vlib/time - ./v build-module vlib/term - ./v build-module vlib/math - ./v build-module vlib/strings - ./v build-module vlib/v/token - ./v build-module vlib/v/ast - ./v build-module vlib/v/parser - ./v build-module vlib/v/gen/c - ./v build-module vlib/v/depgraph - ./v build-module vlib/os/cmdline + v build-module vlib/os + v build-module vlib/builtin + v build-module vlib/strconv + v build-module vlib/time + v build-module vlib/term + v build-module vlib/math + v build-module vlib/strings + v build-module vlib/v/token + v build-module vlib/v/ast + v build-module vlib/v/parser + v build-module vlib/v/gen/c + v build-module vlib/v/depgraph + v build-module vlib/os/cmdline - name: native machine code generation run: | - ./v -o vprod -prod cmd/v + v -o vprod -prod cmd/v cd cmd/tools echo "Generating a 1m line V file..." ../../vprod gen1m.v @@ -315,7 +315,7 @@ jobs: # - name: Build V # run: make -j4 # - 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 # musl: # runs-on: ubuntu-20.04 @@ -329,14 +329,14 @@ jobs: # run: echo $VFLAGS && make -j4 && ./v symlink -githubci # - uses: actions/checkout@v4 # - name: Install dependencies for examples and tools - # run: ./v retry -- sudo apt install --quiet -y musl musl-tools libssl-dev sqlite3 libsqlite3-dev valgrind + # run: v retry -- sudo apt install --quiet -y musl musl-tools libssl-dev sqlite3 libsqlite3-dev valgrind # - name: Recompile V with -cg - # run: ./v -cg -o v cmd/v + # run: v -cg -o v cmd/v # # - name: Test v binaries - # # run: ./v -N -W build-vbinaries + # # run: v -N -W build-vbinaries # # - 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: quick debug - # run: ./v -stats vlib/strconv/format_test.v + # run: v -stats vlib/strconv/format_test.v # - name: Self tests - # run: ./v test-self vlib + # run: v test-self vlib diff --git a/.github/workflows/macos_ci.yml b/.github/workflows/macos_ci.yml index 836ec2fd88..9e4e7d7255 100644 --- a/.github/workflows/macos_ci.yml +++ b/.github/workflows/macos_ci.yml @@ -34,23 +34,25 @@ jobs: steps: - uses: actions/checkout@v4 - name: Build V - run: make -j4 && ./v symlink -githubci && ./v -cg -cstrict -o v cmd/v + run: make -j4 && ./v symlink -githubci + - name: Build V with -cstrict + run: v -cg -cstrict -o v cmd/v - name: All code is formatted - run: VJOBS=1 ./v test-cleancode + run: VJOBS=1 v test-cleancode - name: Install dependencies run: | echo "PKG_CONFIG_PATH is '$PKG_CONFIG_PATH'" - ./v retry -- brew install libpq openssl mercurial + v retry -- brew install libpq openssl mercurial export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/opt/openssl/lib/" echo "LIBRARY_PATH is '$LIBRARY_PATH'" - name: Run sanitizers run: | - ./v -o v2 cmd/v -cflags -fsanitize=undefined + v -o v2 cmd/v -cflags -fsanitize=undefined UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v - name: Build V using V - run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v + run: v -o v2 cmd/v && ./v2 -o v3 cmd/v - name: Test symlink - run: ./v symlink + run: v symlink # - name: Set up pg database # run: | # pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start @@ -58,42 +60,42 @@ jobs: # psql -d postgres -c 'create database customerdb;' # psql -d customerdb -f examples/database/pg/mydb.sql # - name: Test v->c - # run: ./v test-all + # run: v test-all # - name: Test v binaries - # run: ./v build-vbinaries + # run: v build-vbinaries # - 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: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: VJOBS=1 ./v test-self vlib + run: VJOBS=1 v test-self vlib - name: Build examples - run: ./v build-examples + run: v build-examples - name: Build tetris with -autofree - run: ./v -autofree -o tetris examples/tetris/tetris.v + run: v -autofree -o tetris examples/tetris/tetris.v - name: Build blog tutorial with -autofree - run: ./v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog + run: v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog - name: Build examples with -prod run: | - ./v -prod examples/news_fetcher.v + v -prod examples/news_fetcher.v - name: v doctor run: | - ./v doctor + v doctor - name: Test ved run: | - ./v retry -- git clone --depth 1 https://github.com/vlang/ved + v retry -- git clone --depth 1 https://github.com/vlang/ved cd ved && ../v -o ved . ../v -autofree . ../v -prod . cd .. - name: Build V UI examples run: | - ./v retry -- git clone --depth 1 https://github.com/vlang/ui + v retry -- git clone --depth 1 https://github.com/vlang/ui cd ui mkdir -p ~/.vmodules ln -s $(pwd) ~/.vmodules/ui @@ -103,15 +105,15 @@ jobs: - name: V self compilation with -usecache run: | unset VFLAGS - ./v -usecache examples/hello_world.v && examples/hello_world - ./v -o v2 -usecache cmd/v + v -usecache examples/hello_world.v && examples/hello_world + v -o v2 -usecache cmd/v ./v2 -o v3 -usecache cmd/v ./v3 version ./v3 -o tetris -usecache examples/tetris/tetris.v - name: V self compilation with -parallel-cc run: | - ./v -o v2 -parallel-cc cmd/v + v -o v2 -parallel-cc cmd/v - name: Test password input - run: ./v test examples/password/ + run: v test examples/password/ - name: Test readline - run: ./v test examples/readline/ + run: v test examples/readline/ diff --git a/.github/workflows/windows_ci.yml b/.github/workflows/windows_ci.yml index fb50a5f876..f96b82aa5c 100644 --- a/.github/workflows/windows_ci.yml +++ b/.github/workflows/windows_ci.yml @@ -33,44 +33,45 @@ jobs: run: | gcc --version .\make.bat -gcc + .\v.exe symlink -githubci - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Test new v.c run: | - .\v.exe -o v.c cmd/v + v -o v.c cmd/v gcc -Werror -municode -w v.c -lws2_32 - name: Install dependencies run: | - .\v.exe setup-freetype + v setup-freetype .\.github\workflows\windows-install-sqlite.bat - name: v doctor run: | - ./v doctor + v doctor - name: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: .\v.exe test-self vlib + run: v test-self vlib # - name: Test - # run: .\v.exe test-all + # run: v test-all - name: Build option_test.c.v with -autofree - run: .\v.exe -autofree vlib/v/tests/option_test.c.v + run: v -autofree vlib/v/tests/option_test.c.v - 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 - run: ./v build-vbinaries + run: v build-vbinaries - name: Build examples - run: ./v build-examples + run: v build-examples - name: v2 self compilation - run: ./v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v + run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v - name: compile vdoctor.v with -skip-unused and -prod - run: ./v -showcc -skip-unused -prod cmd/tools/vdoctor.v + run: v -showcc -skip-unused -prod cmd/tools/vdoctor.v - name: compile vup.v with -skip-unused and -prod - run: ./v -showcc -skip-unused -prod cmd/tools/vup.v + run: v -showcc -skip-unused -prod cmd/tools/vup.v msvc: runs-on: windows-2019 @@ -85,37 +86,39 @@ jobs: echo %VFLAGS% echo $VFLAGS .\make.bat -msvc - .\v.exe -cflags /WX self + .\v.exe symlink -githubci + - name: Build V with WX + run: v -cflags /WX self - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Install dependencies run: | - .\v.exe setup-freetype + v setup-freetype .\.github\workflows\windows-install-sqlite.bat - name: v doctor run: | - ./v doctor + v doctor - name: Verify `v test` works run: | echo $VFLAGS - ./v cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v ./cmd/tools/test_if_v_test_system_works - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests run: | - ./v -cg cmd\tools\vtest-self.v - ./v test-self vlib + v -cg cmd\tools\vtest-self.v + v test-self vlib # - name: Test - # run: .\v.exe test-all + # run: v test-all - 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 - run: ./v build-vbinaries + run: v build-vbinaries - name: Build examples - run: ./v build-examples + run: v build-examples - name: v2 self compilation - run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v + run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v tcc: runs-on: windows-2019 @@ -130,82 +133,83 @@ jobs: - name: Build with make.bat -tcc run: | .\make.bat -tcc + .\v.exe symlink -githubci - name: All code is formatted - run: ./v test-cleancode + run: v test-cleancode - name: Test new v.c run: | - .\v.exe -o v.c cmd/v + v -o v.c cmd/v .\thirdparty\tcc\tcc.exe -Werror -w -ladvapi32 -lws2_32 -bt10 v.c - name: Install dependencies run: | - .\v.exe setup-freetype + v setup-freetype .\.github\workflows\windows-install-sqlite.bat - name: v doctor run: | - ./v doctor + v doctor - name: Verify `v test` works run: | - .\v.exe cmd/tools/test_if_v_test_system_works.v + v cmd/tools/test_if_v_test_system_works.v .\cmd\tools\test_if_v_test_system_works.exe - name: Verify `v vlib/v/gen/c/coutput_test.v` works - run: .\v.exe vlib/v/gen/c/coutput_test.v + run: v vlib/v/gen/c/coutput_test.v - name: Make sure running TCC64 instead of TCC32 - run: ./v test .github\workflows\make_sure_ci_run_with_64bit_compiler_test.v + run: v test .github\workflows\make_sure_ci_run_with_64bit_compiler_test.v - name: Test ./v doc -v clipboard *BEFORE building tools* - run: ./v doc -v clipboard + run: v doc -v clipboard - name: Test v build-tools - run: ./v -W build-tools + run: v -W build-tools - name: Test pure V math module - run: ./v -exclude @vlib/math/*.c.v test vlib/math/ + run: v -exclude @vlib/math/*.c.v test vlib/math/ - name: Self tests - run: ./v test-self vlib + run: v test-self vlib - 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 - run: ./v build-vbinaries + run: v build-vbinaries - name: Build examples - run: ./v build-examples + run: v build-examples - name: v2 self compilation - run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v && .\v3.exe -o v4.exe cmd/v + run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v && .\v3.exe -o v4.exe cmd/v - name: v2 self compilation with -gc boehm - run: .\v.exe -o v2.exe -gc boehm cmd/v && .\v2.exe -o v3.exe -gc boehm cmd/v && .\v3.exe -o v4.exe -gc boehm cmd/v + run: v -o v2.exe -gc boehm cmd/v && .\v2.exe -o v3.exe -gc boehm cmd/v && .\v3.exe -o v4.exe -gc boehm cmd/v ## tcc32 # - name: Build with make.bat -tcc32 # run: | # Remove-Item -Recurse -Force .\thirdparty\tcc - # .\v.exe wipe-cache + # v wipe-cache # .\make.bat -tcc32 # - name: Test new v.c - # run: .\v.exe -o v.c cmd/v && .\thirdparty\tcc\tcc.exe -Werror -g -w -ladvapi32 -lws2_32 -bt10 v.c + # run: v -o v.c cmd/v && .\thirdparty\tcc\tcc.exe -Werror -g -w -ladvapi32 -lws2_32 -bt10 v.c # - name: v doctor - # run: ./v doctor + # run: v doctor # # - name: Verify `v test` works # run: | - # .\v.exe cmd/tools/test_if_v_test_system_works.v + # v cmd/tools/test_if_v_test_system_works.v # .\cmd\tools\test_if_v_test_system_works.exe # # - name: Verify `v vlib/v/gen/c/coutput_test.v` works # run: | - # .\v.exe vlib/v/gen/c/coutput_test.v + # v vlib/v/gen/c/coutput_test.v # # - name: Make sure running TCC32 instead of TCC64 - # run: ./v -stats .github\workflows\make_sure_ci_run_with_32bit_compiler_test.v + # run: v -stats .github\workflows\make_sure_ci_run_with_32bit_compiler_test.v # # - name: Test v build-tools - # run: ./v -W build-tools + # run: v -W build-tools # # - name: Test ./v doc clipboard - # run: ./v doc clipboard + # run: v doc clipboard # # - name: Self tests - # run: ./v test-self vlib + # run: v test-self vlib # - 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 - # run: ./v build-vbinaries + # run: v build-vbinaries # - name: Build examples - # run: ./v build-examples + # run: v build-examples # - name: v2 self compilation - # run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v + # run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v