chore: bump version to 9.11.2 #9904
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Linux / Valgrind | |
| on: | |
| pull_request: | |
| branches: | |
| - '*' | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.sha }} | |
| cancel-in-progress: true | |
| jobs: | |
| build-valgrind: | |
| name: ubuntu2004.amd64.valgrind-build | |
| container: | |
| image: vowpalwabbit/ubuntu2004-build:latest | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| submodules: false | |
| - name: Init submodules with retry | |
| shell: bash | |
| run: | | |
| git config --global --add safe.directory "$(pwd)" | |
| for attempt in 1 2 3 4 5; do | |
| if git submodule update --init --recursive; then | |
| echo "Submodule init succeeded on attempt $attempt" | |
| exit 0 | |
| fi | |
| echo "Attempt $attempt failed, retrying in 15s..." | |
| sleep 15 | |
| done | |
| echo "Submodule init failed after 5 attempts" | |
| exit 1 | |
| - name: Build C++ VW binary | |
| run: | | |
| cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DBUILD_EXPERIMENTAL_BINDING=On -DVW_FEAT_FLATBUFFERS=On -DVW_FEAT_CSV=On -DVW_FEAT_CB_GRAPH_FEEDBACK=On -DVW_SIMD_INV_SQRT=OFF | |
| cmake --build build | |
| - name: Upload vw binary | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: vw | |
| path: build/vowpalwabbit/cli/vw | |
| if-no-files-found: error | |
| - name: Upload spanning_tree binary | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: spanning_tree | |
| path: build/vowpalwabbit/spanning_tree_bin/spanning_tree | |
| if-no-files-found: error | |
| - name: Upload to_flatbuff binary | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: to_flatbuff | |
| path: build/utl/flatbuffer/to_flatbuff | |
| if-no-files-found: error | |
| - name: Package build tree for unit tests | |
| run: tar czf valgrind-build.tar.gz --exclude='*.o' build/ | |
| - name: Upload build tree | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: valgrind-build | |
| path: valgrind-build.tar.gz | |
| if-no-files-found: error | |
| valgrind-unit-tests: | |
| name: ubuntu2004.amd64.valgrind-unit-tests.[${{ matrix.segment }}] | |
| needs: build-valgrind | |
| strategy: | |
| matrix: | |
| segment: [1, 2, 3, 4] | |
| container: | |
| image: vowpalwabbit/ubuntu2004-build:latest | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| submodules: false | |
| - name: Init submodules with retry | |
| shell: bash | |
| run: | | |
| git config --global --add safe.directory "$(pwd)" | |
| for attempt in 1 2 3 4 5; do | |
| if git submodule update --init --recursive; then | |
| echo "Submodule init succeeded on attempt $attempt" | |
| exit 0 | |
| fi | |
| echo "Attempt $attempt failed, retrying in 15s..." | |
| sleep 15 | |
| done | |
| echo "Submodule init failed after 5 attempts" | |
| exit 1 | |
| - name: Download build tree | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: valgrind-build | |
| - name: Extract build tree | |
| run: tar xzf valgrind-build.tar.gz | |
| - name: Run unit tests with Valgrind | |
| working-directory: build | |
| run: | | |
| if ! ctest --output-on-failure --exclude-regex "WIterations" --label-regex VWTestList --timeout 10 -T memcheck --overwrite MemoryCheckCommandOptions="--leak-check=full --error-exitcode=100" --parallel 2 -I ${{ matrix.segment }},,4; then | |
| find Testing/Temporary -name "MemoryChecker.*.log" -exec cat {} + | |
| exit 1 | |
| fi | |
| run-valgrind-tests: | |
| name: ubuntu2004.amd64.valgrind-test.[${{ matrix.test-segment }}] | |
| needs: build-valgrind | |
| strategy: | |
| matrix: | |
| test-segment: ["..391", "392.."] | |
| container: | |
| image: vowpalwabbit/ubuntu2004-build:latest | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| submodules: false | |
| - name: Init submodules with retry | |
| shell: bash | |
| run: | | |
| git config --global --add safe.directory "$(pwd)" | |
| for attempt in 1 2 3 4 5; do | |
| if git submodule update --init --recursive; then | |
| echo "Submodule init succeeded on attempt $attempt" | |
| exit 0 | |
| fi | |
| echo "Attempt $attempt failed, retrying in 15s..." | |
| sleep 15 | |
| done | |
| echo "Submodule init failed after 5 attempts" | |
| exit 1 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: vw | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: spanning_tree | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: to_flatbuff | |
| - name: run tests | |
| run: | | |
| chmod +x vw | |
| chmod +x spanning_tree | |
| chmod +x to_flatbuff | |
| python3 test/run_tests.py -f --epsilon 1e-3 --include_flatbuffers --valgrind -t "${{ matrix.test-segment }}" --vw_bin_path=./vw --spanning_tree_bin_path=./spanning_tree --to_flatbuff_path=./to_flatbuff --timeout 150 |