mirror of
https://github.com/boostorg/regex.git
synced 2026-06-11 19:51:14 +02:00
Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7e23c2b43c | |||
| c898c51ea1 | |||
| 9ddfbd2923 | |||
| 456bf7756d | |||
| 27a5bcb1f4 | |||
| 3d46d5158b | |||
| a12c3c2c14 | |||
| d2bfcaf146 | |||
| 736f0de18d | |||
| cc60bce275 | |||
| 2c0058a902 | |||
| fbfdda66fd | |||
| b4f600e910 | |||
| 02f8f3119e | |||
| e91fac8614 | |||
| 6e502179f1 | |||
| cf2a60c88b | |||
| 19931d87bd | |||
| 7c460d93cf | |||
| 9e36a0b67e | |||
| d347b0d979 | |||
| ba61613eff | |||
| 15acbd5117 | |||
| 66389f6e21 |
+143
-168
@@ -10,14 +10,9 @@ on:
|
||||
- master
|
||||
- develop
|
||||
- feature/**
|
||||
- cve-*
|
||||
pull_request:
|
||||
release:
|
||||
types: [published, created, edited]
|
||||
|
||||
env:
|
||||
UBSAN_OPTIONS: print_stacktrace=1
|
||||
|
||||
jobs:
|
||||
ubuntu-jammy:
|
||||
runs-on: ubuntu-22.04
|
||||
@@ -27,9 +22,14 @@ jobs:
|
||||
compiler: [ g++-11, g++-12, g++-13 ]
|
||||
standard: [ c++11, c++14, c++17, c++2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -60,7 +60,7 @@ jobs:
|
||||
run: ../../../b2 print_config_info toolset=$TOOLSET
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ../../../b2 toolset=$TOOLSET variant=debug,release ${{ startsWith(matrix.compiler, 'g++-13') && 'address-sanitizer=norecover undefined-sanitizer=norecover' || '' }}
|
||||
run: ../../../b2 toolset=$TOOLSET
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
ubuntu-jammy-standalone:
|
||||
runs-on: ubuntu-22.04
|
||||
@@ -70,9 +70,14 @@ jobs:
|
||||
compiler: [ g++ ]
|
||||
standard: [ c++11, c++14, c++17, c++2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -90,9 +95,14 @@ jobs:
|
||||
compiler: [ clang++-15 ]
|
||||
standard: [ c++11, c++14, c++17 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -128,9 +138,14 @@ jobs:
|
||||
ubuntu-jammy-clang-18-modules:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Grab install script
|
||||
run: wget https://apt.llvm.org/llvm.sh && chmod u+x llvm.sh
|
||||
- name: Install clang 18 packages
|
||||
@@ -155,49 +170,6 @@ jobs:
|
||||
- name: Test
|
||||
run: CXX=clang++-18 LIBRARIES="-licuuc -licudata -licui18n" ./test_clang.sh
|
||||
working-directory: ../boost-root/libs/regex/test/module
|
||||
ubuntu-noble-clang:
|
||||
runs-on: ubuntu-24.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
compiler: [ clang++-16, clang++-17, clang++-18 ]
|
||||
standard: [ c++11, c++14, c++17, c++20 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
|
||||
- name: Install packages
|
||||
run: sudo apt install clang-16 clang-17 clang-18
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
run: git submodule update --init tools/boostdep
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/regex
|
||||
working-directory: ../boost-root
|
||||
- name: Install deps
|
||||
run: python tools/boostdep/depinst/depinst.py -I example -g "--jobs 3" regex
|
||||
working-directory: ../boost-root
|
||||
- name: Bootstrap
|
||||
run: ./bootstrap.sh
|
||||
working-directory: ../boost-root
|
||||
- name: Generate headers
|
||||
run: ./b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: Generate user config
|
||||
run: 'echo "using $TOOLSET : : ${{ matrix.compiler }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam'
|
||||
working-directory: ../boost-root
|
||||
- name: Config info
|
||||
run: ../../../b2 print_config_info toolset=$TOOLSET
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ../../../b2 toolset=$TOOLSET define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER variant=debug,release ${{ startsWith(matrix.compiler, 'clang++-18') && 'address-sanitizer=norecover undefined-sanitizer=norecover' || '' }}
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
macos:
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
@@ -206,9 +178,14 @@ jobs:
|
||||
toolset: [ clang ]
|
||||
standard: [ 11, 14, 17, 2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
@@ -236,7 +213,7 @@ jobs:
|
||||
run: ../../../b2 toolset=${{ matrix.toolset }} cxxstd=${{ matrix.standard }}
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
windows_gcc:
|
||||
runs-on: windows-latest
|
||||
runs-on: windows-2019
|
||||
defaults:
|
||||
run:
|
||||
shell: cmd
|
||||
@@ -248,9 +225,108 @@ jobs:
|
||||
toolset: [ gcc ]
|
||||
standard: [ 11, 14, 17, 2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
run: git submodule update --init tools/boostdep
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\regex
|
||||
working-directory: ../boost-root
|
||||
- name: Install deps
|
||||
run: python tools/boostdep/depinst/depinst.py -I example -g "--jobs 3" regex
|
||||
working-directory: ../boost-root
|
||||
- name: Bootstrap
|
||||
run: bootstrap
|
||||
working-directory: ../boost-root
|
||||
- name: Generate headers
|
||||
run: b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: Config info install
|
||||
run: ..\..\..\b2 config_info_travis_install %ARGS%
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config info
|
||||
run: config_info_travis
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ..\..\..\b2 --hash %ARGS%
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
windows_msvc_14_0:
|
||||
runs-on: windows-2019
|
||||
defaults:
|
||||
run:
|
||||
shell: cmd
|
||||
env:
|
||||
ARGS: toolset=${{ matrix.toolset }} address-model=64 cxxstd=${{ matrix.standard }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
toolset: [ msvc-14.0 ]
|
||||
standard: [ 14, 17 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
run: git submodule update --init tools/boostdep
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\regex
|
||||
working-directory: ../boost-root
|
||||
- name: Install deps
|
||||
run: python tools/boostdep/depinst/depinst.py -I example -g "--jobs 3" regex
|
||||
working-directory: ../boost-root
|
||||
- name: Bootstrap
|
||||
run: bootstrap
|
||||
working-directory: ../boost-root
|
||||
- name: Generate headers
|
||||
run: b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: Config info install
|
||||
run: ..\..\..\b2 config_info_travis_install %ARGS%
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config info
|
||||
run: config_info_travis
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ..\..\..\b2 --hash %ARGS%
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
windows_msvc_14_2:
|
||||
runs-on: windows-2019
|
||||
defaults:
|
||||
run:
|
||||
shell: cmd
|
||||
env:
|
||||
ARGS: toolset=${{ matrix.toolset }} address-model=64 cxxstd=${{ matrix.standard }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
toolset: [ msvc-14.2 ]
|
||||
standard: [ 14, 17, latest ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
@@ -278,7 +354,7 @@ jobs:
|
||||
run: ..\..\..\b2 --hash %ARGS%
|
||||
working-directory: ../boost-root/libs/regex/test
|
||||
windows_msvc_14_3:
|
||||
runs-on: windows-2025
|
||||
runs-on: windows-2022
|
||||
defaults:
|
||||
run:
|
||||
shell: cmd
|
||||
@@ -290,9 +366,14 @@ jobs:
|
||||
toolset: [ msvc-14.3 ]
|
||||
standard: [ 14, 17, 20, latest ]
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- uses: TheMrMilchmann/setup-msvc-dev@v3
|
||||
with:
|
||||
arch: x64
|
||||
@@ -326,11 +407,11 @@ jobs:
|
||||
run: msvc_test.bat
|
||||
working-directory: ../boost-root/libs/regex/test/module
|
||||
ubuntu-cmake-install:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- name: Checkout main boost
|
||||
@@ -358,11 +439,11 @@ jobs:
|
||||
cmake --build .
|
||||
cmake --build . --target check
|
||||
ubuntu-cmake-check:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- name: Install packages
|
||||
@@ -402,109 +483,3 @@ jobs:
|
||||
cmake -DBOOST_REGEX_STANDALONE=on ..
|
||||
cmake --build .
|
||||
cmake --build . --target check
|
||||
|
||||
posix-cmake-use:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
- os: macos-latest
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Install packages
|
||||
if: matrix.install
|
||||
run: sudo apt-get -y install ${{matrix.install}}
|
||||
|
||||
- name: Setup Boost
|
||||
run: |
|
||||
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
|
||||
LIBRARY=${GITHUB_REPOSITORY#*/}
|
||||
echo LIBRARY: $LIBRARY
|
||||
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
|
||||
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
|
||||
echo GITHUB_REF: $GITHUB_REF
|
||||
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
|
||||
REF=${REF#refs/heads/}
|
||||
echo REF: $REF
|
||||
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
|
||||
echo BOOST_BRANCH: $BOOST_BRANCH
|
||||
cd ..
|
||||
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
|
||||
git submodule update --init tools/boostdep
|
||||
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
|
||||
./bootstrap.sh
|
||||
./b2 -d0 headers
|
||||
|
||||
- name: Install Boost --with-library
|
||||
run: |
|
||||
cd ../boost-root
|
||||
./b2 -j3 --with-$LIBRARY --prefix=$HOME/.local install
|
||||
|
||||
- name: Use the installed library
|
||||
run: |
|
||||
cd ../boost-root/libs/$LIBRARY/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
cmake --build .
|
||||
ctest --output-on-failure --no-tests=error
|
||||
|
||||
windows-cmake-use:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: windows-latest
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Setup Boost
|
||||
shell: cmd
|
||||
run: |
|
||||
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
|
||||
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
|
||||
echo LIBRARY: %LIBRARY%
|
||||
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
|
||||
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
|
||||
echo GITHUB_REF: %GITHUB_REF%
|
||||
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
|
||||
set BOOST_BRANCH=develop
|
||||
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
|
||||
echo BOOST_BRANCH: %BOOST_BRANCH%
|
||||
cd ..
|
||||
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
|
||||
git submodule update --init tools/boostdep
|
||||
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
|
||||
cmd /c bootstrap
|
||||
b2 -d0 headers
|
||||
|
||||
- name: Install Boost --with-library
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root
|
||||
b2 -j3 --with-%LIBRARY% install
|
||||
|
||||
- name: Use the installed library (Debug)
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
cmake -DBoost_ROOT=C:/Boost ..
|
||||
cmake --build . --config Debug
|
||||
ctest --output-on-failure --no-tests=error -C Debug
|
||||
|
||||
- name: Use the installed library (Release)
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test/__build__
|
||||
cmake --build . --config Release
|
||||
ctest --output-on-failure --no-tests=error -C Release
|
||||
|
||||
@@ -1,133 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2026 Sam Darwin
|
||||
# Copyright (c) 2026 Alexander Grund
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
#
|
||||
|
||||
# Instructions
|
||||
#
|
||||
# After running this workflow successfully, go to https://github.com/ORGANIZATION/REPO/settings/pages
|
||||
# and enable github pages on the code-coverage branch.
|
||||
# The pages will be hosted at https://ORGANIZATION.github.io/REPO
|
||||
#
|
||||
|
||||
name: Code Coverage
|
||||
|
||||
permissions:
|
||||
contents:
|
||||
write
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- 'src/**'
|
||||
- 'include/**'
|
||||
- 'build/**'
|
||||
- '.github/workflows/code-coverage.yml'
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: code-coverage-pages
|
||||
cancel-in-progress: false
|
||||
|
||||
env:
|
||||
GIT_FETCH_JOBS: 8
|
||||
NET_RETRY_COUNT: 5
|
||||
# Commit title of the automatically created commits
|
||||
GCOVR_COMMIT_MSG: "Update coverage data"
|
||||
# Should branch coverage be reported? Default to no.
|
||||
BOOST_BRANCH_COVERAGE: 0
|
||||
# Dependencies:
|
||||
# EXTRA_BOOST_LIBRARIES: "myorg/myrepo other/repo3"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- runs-on: "ubuntu-24.04"
|
||||
name: Coverage
|
||||
cxxstd: "20"
|
||||
gcovr_script: './ci-automation/scripts/lcov-jenkins-gcc-13.sh --only-gcovr'
|
||||
|
||||
name: ${{ matrix.name }}
|
||||
runs-on: ${{ matrix.runs-on }}
|
||||
timeout-minutes: 120
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Check for code-coverage Branch
|
||||
run: |
|
||||
set -xe
|
||||
git config --global user.name cppalliance-bot
|
||||
git config --global user.email cppalliance-bot@example.com
|
||||
git fetch origin
|
||||
if git branch -r | grep origin/code-coverage; then
|
||||
echo "The code-coverage branch exists. Continuing."
|
||||
else
|
||||
echo "The code-coverage branch does not exist. Creating it."
|
||||
git switch --orphan code-coverage
|
||||
git commit --allow-empty -m "$GCOVR_COMMIT_MSG"
|
||||
git push origin code-coverage
|
||||
git checkout "$GITHUB_REF_NAME"
|
||||
fi
|
||||
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.13'
|
||||
|
||||
- name: Install Python packages
|
||||
run: pip install gcovr
|
||||
|
||||
- name: Checkout ci-automation
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
repository: cppalliance/ci-automation
|
||||
path: ci-automation
|
||||
|
||||
- name: Build and run tests & collect coverage data
|
||||
run: |
|
||||
set -xe
|
||||
ls -al
|
||||
export ORGANIZATION=${GITHUB_REPOSITORY_OWNER}
|
||||
export REPONAME=$(basename ${GITHUB_REPOSITORY})
|
||||
export B2_CXXSTD=${{matrix.cxxstd}}
|
||||
${{matrix.gcovr_script}}
|
||||
|
||||
- name: Checkout GitHub pages branch
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
ref: code-coverage
|
||||
path: gh_pages_dir
|
||||
|
||||
- name: Copy gcovr results
|
||||
run: |
|
||||
set -xe
|
||||
pwd
|
||||
ls -al
|
||||
touch gh_pages_dir/.nojekyll # Prevent GH pages from treating these files as Jekyll pages.
|
||||
mkdir -p gh_pages_dir/develop
|
||||
mkdir -p gh_pages_dir/master
|
||||
rm -rf "gh_pages_dir/${GITHUB_REF_NAME}/gcovr"
|
||||
cp -rp gcovr "gh_pages_dir/${GITHUB_REF_NAME}/"
|
||||
echo -e "<html>\n<head>\n</head>\n<body>\n<a href=\"develop/index.html\">develop</a><br>\n<a href=\"master/index.html\">master</a><br>\n</body>\n</html>\n" > gh_pages_dir/index.html
|
||||
# In the future: echo -e "<html>\n<head>\n</head>\n<body>\n<a href=gcovr/index.html>gcovr</a><br>\n</body>\n</html>\n" > gh_pages_dir/develop/index.html
|
||||
echo -e "<html>\n<head>\n<meta http-equiv=\"refresh\" content=\"0; url=./gcovr/index.html\">\n</head>\n<body>\n</body>\n</html>\n" > gh_pages_dir/develop/index.html
|
||||
cp gh_pages_dir/develop/index.html gh_pages_dir/master/index.html
|
||||
cd gh_pages_dir
|
||||
git add .
|
||||
git commit --amend -m "$GCOVR_COMMIT_MSG"
|
||||
git push -f origin code-coverage
|
||||
@@ -10,6 +10,7 @@ constant boost_dependencies :
|
||||
/boost/concept_check//boost_concept_check
|
||||
/boost/config//boost_config
|
||||
/boost/predef//boost_predef
|
||||
/boost/static_assert//boost_static_assert
|
||||
/boost/throw_exception//boost_throw_exception
|
||||
/boost/type_traits//boost_type_traits ;
|
||||
|
||||
@@ -19,11 +20,11 @@ project /boost/regex
|
||||
;
|
||||
|
||||
explicit
|
||||
[ alias boost_regex : : : : <library>$(boost_dependencies) ]
|
||||
[ alias boost_regex_old : build//boost_regex ]
|
||||
[ alias all : boost_regex boost_regex_old example test ]
|
||||
[ alias boost_regex : build//boost_regex ]
|
||||
[ alias all : boost_regex example test ]
|
||||
;
|
||||
|
||||
call-if : boost-library regex
|
||||
: install boost_regex boost_regex_old
|
||||
: install boost_regex
|
||||
;
|
||||
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@
|
||||
|
||||
project
|
||||
: requirements
|
||||
<library>/boost/regex//boost_regex_old
|
||||
<library>/boost/regex//boost_regex
|
||||
<library>/boost/timer//boost_timer
|
||||
<threading>multi
|
||||
<link>shared:<define>BOOST_REGEX_DYN_LINK=1
|
||||
|
||||
@@ -898,11 +898,6 @@ escape_type_class_jump:
|
||||
}
|
||||
const charT* pc = m_position;
|
||||
std::intmax_t i = this->m_traits.toi(pc, m_end, 10);
|
||||
if(i < 0 && !syn_end)
|
||||
{
|
||||
fail(regex_constants::error_backref, m_position - m_base);
|
||||
return false;
|
||||
}
|
||||
if((i < 0) && syn_end)
|
||||
{
|
||||
// Check for a named capture, get the leftmost one if there is more than one:
|
||||
@@ -1002,7 +997,7 @@ bool basic_regex_parser<charT, traits>::parse_repeat(std::size_t low, std::size_
|
||||
if((m_position != m_end)
|
||||
&& (0 == (this->flags() & regbase::main_option_type))
|
||||
&& (this->m_traits.syntax_type(*m_position) == regex_constants::syntax_plus))
|
||||
{
|
||||
{
|
||||
possessive = true;
|
||||
++m_position;
|
||||
}
|
||||
@@ -1119,13 +1114,6 @@ bool basic_regex_parser<charT, traits>::parse_repeat(std::size_t low, std::size_
|
||||
else
|
||||
contin = false;
|
||||
break;
|
||||
case regex_constants::syntax_hash:
|
||||
if (this->flags() & regex_constants::mod_x) {
|
||||
while((m_position != m_end) && !is_separator(*m_position++)){}
|
||||
contin = true;
|
||||
break;
|
||||
}
|
||||
BOOST_REGEX_FALLTHROUGH;
|
||||
default:
|
||||
contin = false;
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ BOOST_REGEX_MODULE_EXPORT inline match_flags operator|(match_flags m1, match_fla
|
||||
BOOST_REGEX_MODULE_EXPORT inline match_flags operator^(match_flags m1, match_flags m2)
|
||||
{ return static_cast<match_flags>(static_cast<std::int32_t>(m1) ^ static_cast<std::int32_t>(m2)); }
|
||||
BOOST_REGEX_MODULE_EXPORT inline match_flags operator~(match_flags m1)
|
||||
{ return static_cast<match_flags>(~static_cast<std::int32_t>(m1) & static_cast<std::int32_t>(match_not_any)); }
|
||||
{ return static_cast<match_flags>(~static_cast<std::int32_t>(m1)); }
|
||||
BOOST_REGEX_MODULE_EXPORT inline match_flags& operator&=(match_flags& m1, match_flags m2)
|
||||
{ m1 = m1&m2; return m1; }
|
||||
BOOST_REGEX_MODULE_EXPORT inline match_flags& operator|=(match_flags& m1, match_flags m2)
|
||||
|
||||
@@ -227,10 +227,6 @@ public:
|
||||
{
|
||||
if(m_is_singular && m_subs.empty())
|
||||
raise_logic_error();
|
||||
|
||||
if (sub >= INT_MAX - 2 )
|
||||
return m_null;
|
||||
|
||||
sub += 2;
|
||||
if(sub < (int)m_subs.size() && (sub >= 0))
|
||||
{
|
||||
|
||||
@@ -237,8 +237,8 @@ void perl_matcher<BidiIterator, Allocator, traits>::extend_stack()
|
||||
saved_state* backup_state;
|
||||
stack_base = static_cast<saved_state*>(get_mem_block());
|
||||
backup_state = reinterpret_cast<saved_state*>(reinterpret_cast<char*>(stack_base)+BOOST_REGEX_BLOCKSIZE);
|
||||
saved_extra_block* block = reinterpret_cast<saved_extra_block*>(
|
||||
reinterpret_cast<std::uintptr_t>(backup_state) - sizeof(saved_extra_block));
|
||||
saved_extra_block* block = static_cast<saved_extra_block*>(backup_state);
|
||||
--block;
|
||||
(void) new (block) saved_extra_block(m_stack_base, m_backup_state);
|
||||
m_stack_base = stack_base;
|
||||
m_backup_state = block;
|
||||
|
||||
@@ -19,8 +19,6 @@
|
||||
#ifndef BOOST_REGEX_V5_REGBASE_HPP
|
||||
#define BOOST_REGEX_V5_REGBASE_HPP
|
||||
|
||||
#include <boost/regex/config.hpp>
|
||||
|
||||
namespace boost{
|
||||
//
|
||||
// class regbase
|
||||
|
||||
@@ -19,8 +19,6 @@
|
||||
#ifndef BOOST_REGEX_SYNTAX_TYPE_HPP
|
||||
#define BOOST_REGEX_SYNTAX_TYPE_HPP
|
||||
|
||||
#include <boost/regex/config.hpp>
|
||||
|
||||
namespace boost{
|
||||
namespace regex_constants{
|
||||
|
||||
|
||||
+1
-4
@@ -5,7 +5,7 @@
|
||||
|
||||
project
|
||||
: requirements
|
||||
<library>/boost/regex//boost_regex_old
|
||||
<library>/boost/regex//boost_regex
|
||||
<library>/boost/detail//boost_detail
|
||||
<threading>multi
|
||||
<link>shared:<define>BOOST_REGEX_DYN_LINK=1
|
||||
@@ -137,8 +137,5 @@ compile test_windows_defs_4.cpp ;
|
||||
run issue153.cpp : : : "<toolset>msvc:<linkflags>-STACK:2097152" ;
|
||||
run issue227.cpp ;
|
||||
run issue232.cpp ;
|
||||
run issue244.cpp ;
|
||||
run issue245.cpp ;
|
||||
run lookbehind_recursion_stress_test.cpp ;
|
||||
run regex_replace_overflow.cpp ;
|
||||
|
||||
|
||||
@@ -2,14 +2,15 @@
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
cmake_minimum_required(VERSION 3.5...3.31)
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
|
||||
project(cmake_install_test LANGUAGES CXX)
|
||||
|
||||
find_package(Boost COMPONENTS regex REQUIRED)
|
||||
find_package(boost_regex REQUIRED)
|
||||
find_package(boost_core REQUIRED)
|
||||
|
||||
add_executable(quick ../quick.cpp)
|
||||
target_link_libraries(quick Boost::regex)
|
||||
target_link_libraries(quick Boost::regex Boost::core)
|
||||
|
||||
enable_testing()
|
||||
add_test(quick quick)
|
||||
|
||||
@@ -10,6 +10,7 @@ add_subdirectory(../.. boostorg/reegx)
|
||||
add_subdirectory(../../../config boostorg/config)
|
||||
add_subdirectory(../../../core boostorg/core)
|
||||
add_subdirectory(../../../assert boostorg/assert)
|
||||
add_subdirectory(../../../static_assert boostorg/static_assert)
|
||||
add_subdirectory(../../../throw_exception boostorg/throw_exception)
|
||||
add_subdirectory(../../../predef boostorg/predef)
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
|
||||
Z(((((((a+)+)+)+)+)+)+)+|Y(((((((a+)+)+)+)+)+)+)+|X(((((((a+)+)+)+)+)+)+)+|W(((((((a+)+)+)+)+)+)+)+|V(((((((a+)+)+)+)+)+)+)+|CZ(((((((a+)+)+)+)+)+)+)+|CY(((((((a+)+)+)+)+)+)+;+|CX(((((((a+)+)+)+)+)+)+)+|CW(((((((a+)+)+)+)+)+)+)+|CV(((((((a+)+)+)+)+)+)+)+|(a+)+b)
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
|
||||
Z(((((((a+)+)+)+)+ßÔÖÔ)+|Y(((((((a+)+)+)+)+)++)+)|X(((((((a+)+)+)+)+)+)+)+|W((Ú×(((a+)+)+)+)+)+)+)+;|V((()++)+)+|CW(((((((a+)+)+)+((((a+)+)+)+)+)+)+)+|CZ(((((((a+)+)+)+)+)+)+)+|CY(((((((a+)+)+)+)+)+)+)+|CX(((((((a+)+)+)+)+)+)+)+|CW(((((((a+)+)+)+)+)+)+)+|CV,((((((a+)+)+)+)+)+)+)+|(a+)+bc
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
|
||||
8^\l*(?:((.Ô*?)\W*(?1)\§*\2[abc]| |((.)\)W*(?1)\W*\4|\ZZZZZZZZZZZZZZZZZZZZZZ˙˙˙˙˙˙˙˙˙ŔŔŔŔŔŔŔŔŔŔŔŔŔŔŔŔŔŔ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙\pd\)W*(?1)\W*\4|\ZZZZZZZZZZZZZZZZZZZZZZ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙\pd˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙\pdquick brown )ox
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user