To: vim_dev@googlegroups.com Subject: Patch 8.2.4377 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.4377 Problem: CI steps for Windows are a bit unorganized. Solution: Organize CI test steps on Windows. (Ozaki Kiichi, closes #9764) Files: .github/workflows/ci.yml *** ../vim-8.2.4376/.github/workflows/ci.yml 2022-02-12 10:53:00.341857471 +0000 --- .github/workflows/ci.yml 2022-02-14 11:33:26.291059947 +0000 *************** *** 347,353 **** runs-on: windows-2019 env: - VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat # Interfaces # Lua LUA_VER: 54 --- 347,352 ---- *************** *** 392,397 **** --- 391,400 ---- msystem: MINGW32 cygreg: registry32 pyreg: "-32" + - toolchain: mingw + arch: x64 + features: HUGE + coverage: yes exclude: - toolchain: msvc arch: x64 *************** *** 406,418 **** shell: bash run: | git config --global core.autocrlf input python_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON_VER_DOT}/InstallPath/@") python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@") echo "PYTHON_DIR=$python_dir" >> $GITHUB_ENV echo "PYTHON3_DIR=$python3_dir" >> $GITHUB_ENV - if ${{ matrix.toolchain == 'mingw' && matrix.arch == 'x64' && matrix.features == 'HUGE' }}; then - echo "COVERAGE=yes" >> $GITHUB_ENV - fi - uses: msys2/setup-msys2@v2 if: matrix.toolchain == 'mingw' --- 409,419 ---- shell: bash run: | git config --global core.autocrlf input + echo "VCVARSALL=$(vswhere -products \* -latest -property installationPath)\\VC\\Auxiliary\\Build\\vcvarsall.bat" >> $GITHUB_ENV python_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON_VER_DOT}/InstallPath/@") python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@") echo "PYTHON_DIR=$python_dir" >> $GITHUB_ENV echo "PYTHON3_DIR=$python3_dir" >> $GITHUB_ENV - uses: msys2/setup-msys2@v2 if: matrix.toolchain == 'mingw' *************** *** 466,473 **** - name: Copy src directory to src2 shell: cmd ! run: | ! xcopy src src2\ /E > nul - name: Build (MSVC) if: matrix.toolchain == 'msvc' --- 467,473 ---- - name: Copy src directory to src2 shell: cmd ! run: xcopy src src2\ /E > nul - name: Build (MSVC) if: matrix.toolchain == 'msvc' *************** *** 504,510 **** DYNAMIC_LUA=yes LUA=${LUA_DIR} \ DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \ DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \ ! STATIC_STDCPLUS=yes COVERAGE=${COVERAGE} else mingw32-make -f Make_ming.mak -j2 \ FEATURES=${{ matrix.features }} \ --- 504,510 ---- DYNAMIC_LUA=yes LUA=${LUA_DIR} \ DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \ DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \ ! STATIC_STDCPLUS=yes COVERAGE=${{ matrix.coverage }} else mingw32-make -f Make_ming.mak -j2 \ FEATURES=${{ matrix.features }} \ *************** *** 512,517 **** --- 512,521 ---- STATIC_STDCPLUS=yes fi + - name: Check version + shell: cmd + run: src\vim --version || exit 1 + #- name: Prepare Artifact # shell: cmd # run: | *************** *** 526,559 **** # path: ./artifacts - name: Copy gcov data files to src2 ! if: env.COVERAGE shell: msys2 {0} ! run: | ! find src -name '*.gcno' | tar -c -T - | tar -x -C src2 --strip-components 1 ! - name: Test shell: cmd timeout-minutes: 20 run: | PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR% call "%VCVARSALL%" ${{ matrix.vcarch }} - cd src - echo. - echo ::group::%COL_GREEN%Vim version:%COL_RESET% - .\vim --version || exit 1 - echo ::endgroup:: ! echo %COL_GREEN%Start testing vim in background.%COL_RESET% ! start cmd /c "cd ..\src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt" ! echo ::group::%COL_GREEN%Test gvim:%COL_RESET% ! cd testdir nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1 - cd .. - echo ::endgroup:: ! echo %COL_GREEN%Wait for vim tests to finish.%COL_RESET% ! cd ..\src2\testdir :: Wait about 10 minutes. for /L %%i in (1,1,60) do ( if exist done.txt goto exitloop --- 530,562 ---- # path: ./artifacts - name: Copy gcov data files to src2 ! if: matrix.coverage shell: msys2 {0} ! run: find src -name '*.gcno' | tar -c -T - | tar -x -C src2 --strip-components 1 ! - name: Test and show the result of testing gVim shell: cmd timeout-minutes: 20 run: | PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR% call "%VCVARSALL%" ${{ matrix.vcarch }} ! echo %COL_GREEN%Start testing Vim in background.%COL_RESET% ! start cmd /c "cd src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt" ! echo %COL_GREEN%Test gVim:%COL_RESET% ! cd src\testdir nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1 ! - name: Show the result of testing Vim ! shell: cmd ! timeout-minutes: 20 ! run: | ! PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR% ! call "%VCVARSALL%" ${{ matrix.vcarch }} ! ! echo %COL_GREEN%Wait for Vim tests to finish.%COL_RESET% ! cd src2\testdir :: Wait about 10 minutes. for /L %%i in (1,1,60) do ( if exist done.txt goto exitloop *************** *** 563,579 **** set timeout=1 :exitloop ! echo ::group::%COL_GREEN%Test results of vim:%COL_RESET% if exist messages type messages nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1 if "%timeout%"=="1" ( echo %COL_RED%Timed out.%COL_RESET% exit 1 ) - echo ::endgroup:: - name: Generate gcov files ! if: env.COVERAGE shell: msys2 {0} run: | cd src --- 566,583 ---- set timeout=1 :exitloop ! echo %COL_GREEN%The result of testing Vim:%COL_RESET% ! cd src2\testdir if exist messages type messages nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1 + if "%timeout%"=="1" ( echo %COL_RED%Timed out.%COL_RESET% exit 1 ) - name: Generate gcov files ! if: matrix.coverage shell: msys2 {0} run: | cd src *************** *** 581,595 **** cd ../src2 find . -type f -name '*.gcno' -exec gcov -pb {} + || true ! - name: Codecov (gvim) ! if: env.COVERAGE uses: codecov/codecov-action@v2 with: directory: src flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}-gui ! - name: Codecov (vim) ! if: env.COVERAGE uses: codecov/codecov-action@v2 with: directory: src2 --- 585,599 ---- cd ../src2 find . -type f -name '*.gcno' -exec gcov -pb {} + || true ! - name: Codecov (gVim) ! if: matrix.coverage uses: codecov/codecov-action@v2 with: directory: src flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}-gui ! - name: Codecov (Vim) ! if: matrix.coverage uses: codecov/codecov-action@v2 with: directory: src2 *** ../vim-8.2.4376/src/version.c 2022-02-14 11:10:54.365486323 +0000 --- src/version.c 2022-02-14 11:35:03.903517893 +0000 *************** *** 752,753 **** --- 752,755 ---- { /* Add new patch number below this line */ + /**/ + 4377, /**/ -- It is hard to understand how a cemetery raised its burial cost and blamed it on the cost of living. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// \\\ \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///