Skip to content

Commit a89a2e7

Browse files
authored
Merge pull request #1301 from cppalliance/develop
Merge to Master for v6.0.0
2 parents a600e83 + a1f81d9 commit a89a2e7

File tree

1,188 files changed

+36761
-17729
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,188 files changed

+36761
-17729
lines changed

.drone.jsonnet

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ local linux_pipeline(name, image, environment, packages = "", sources = [], arch
3737
commands:
3838
[
3939
'set -e',
40-
'wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -',
40+
'echo $DRONE_STAGE_MACHINE',
41+
'uname -a',
42+
'curl -sSL --retry 5 https://apt.llvm.org/llvm-snapshot.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/llvm-snapshot.gpg',
4143
] +
4244
(if sources != [] then [ ('apt-add-repository "' + source + '"') for source in sources ] else []) +
4345
(if packages != "" then [ 'apt-get update', 'apt-get -y install ' + packages ] else []) +
@@ -68,6 +70,9 @@ local macos_pipeline(name, environment, xcode_version = "12.2", osx_version = "c
6870
environment: environment + { "DEVELOPER_DIR": "/Applications/Xcode-" + xcode_version + ".app/Contents/Developer" },
6971
commands:
7072
[
73+
'echo $DRONE_STAGE_MACHINE',
74+
'sw_vers',
75+
'uname -a',
7176
'export LIBRARY=' + library,
7277
'./.drone/drone.sh',
7378
]
@@ -94,6 +99,7 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
9499
environment: environment,
95100
commands:
96101
[
102+
'echo $env:DRONE_STAGE_MACHINE',
97103
'cmd /C .drone\\\\drone.bat ' + library,
98104
]
99105
}

.drone/drone.bat

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
set LIBRARY=%1
88
set DRONE_BUILD_DIR=%CD%
99

10-
echo $env:DRONE_STAGE_MACHINE
11-
1210
set BOOST_BRANCH=develop
1311
if "%DRONE_BRANCH%" == "master" set BOOST_BRANCH=master
1412
cd ..

.drone/drone.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66

77
set -ex
88
export PATH=~/.local/bin:/usr/local/bin:$PATH
9-
uname -a
10-
echo $DRONE_STAGE_MACHINE
119

1210
DRONE_BUILD_DIR=$(pwd)
1311

.github/dependabot.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Copyright 2025 Matt Borland
2+
# Distributed under the Boost Software License, Version 1.0.
3+
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
4+
5+
version: 2
6+
updates:
7+
- package-ecosystem: "npm"
8+
directory: "/doc"
9+
schedule:
10+
interval: "weekly"
11+
groups:
12+
all-dependencies:
13+
# Groups all updates into a single PR
14+
patterns:
15+
- "*"

.github/workflows/ci.yml

Lines changed: 131 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ jobs:
246246
linkflags: -stdlib=libc++
247247
- toolset: clang
248248
compiler: clang++-16
249-
cxxstd: "03,11,14,17,20,2b"
249+
cxxstd: "03,11,14,17,20"
250250
os: ubuntu-latest
251251
container: ubuntu:22.04
252252
install:
@@ -286,10 +286,27 @@ jobs:
286286
- "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main"
287287
source_keys:
288288
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
289-
290289
- toolset: clang
290+
compiler: clang++-20
291291
cxxstd: "03,11,14,17,20,2b"
292-
os: macos-13
292+
os: ubuntu-24.04
293+
install:
294+
- clang-20
295+
sources:
296+
- "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main"
297+
source_keys:
298+
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
299+
- toolset: clang
300+
compiler: clang++-21
301+
cxxstd: "03,11,14,17,20,2b"
302+
os: ubuntu-24.04
303+
install:
304+
- clang-21
305+
sources:
306+
- "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-21 main"
307+
source_keys:
308+
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
309+
293310
- toolset: clang
294311
cxxstd: "03,11,14,17,20,2b"
295312
os: macos-14
@@ -392,6 +409,8 @@ jobs:
392409
sudo apt-get -o Acquire::Retries=$NET_RETRY_COUNT update
393410
sudo apt-get -o Acquire::Retries=$NET_RETRY_COUNT install -y ${{join(matrix.install, ' ')}} locales libfmt-dev
394411
sudo locale-gen de_DE.UTF-8
412+
sudo locale-gen en_US.UTF-8
413+
sudo locale-gen fr_FR.UTF-8
395414
sudo update-locale
396415
- name: Setup GCC Toolchain
397416
if: matrix.gcc_toolchain
@@ -532,6 +551,10 @@ jobs:
532551
cxxstd: "03,11,14,17" # 20 has ICE
533552
addrmd: "64"
534553
os: windows-latest
554+
- toolset: msvc-14.3
555+
cxxstd: "14,17,20,latest"
556+
addrmd: "64"
557+
os: windows-11-arm
535558

536559
runs-on: ${{matrix.os}}
537560

@@ -572,7 +595,6 @@ jobs:
572595
matrix:
573596
include:
574597
- os: ubuntu-24.04
575-
- os: macos-13
576598
- os: macos-14
577599
- os: macos-15
578600

@@ -620,7 +642,6 @@ jobs:
620642
matrix:
621643
include:
622644
- os: ubuntu-24.04
623-
- os: macos-13
624645
- os: macos-14
625646
- os: macos-15
626647

@@ -678,7 +699,6 @@ jobs:
678699
matrix:
679700
include:
680701
- os: ubuntu-24.04
681-
- os: macos-13
682702
- os: macos-14
683703
- os: macos-15
684704

@@ -728,13 +748,70 @@ jobs:
728748
cd ../boost-root/__build__
729749
ctest --output-on-failure --no-tests=error
730750
751+
posix-cmake-test-dectest:
752+
strategy:
753+
fail-fast: false
754+
matrix:
755+
include:
756+
- os: ubuntu-24.04
757+
- os: macos-14
758+
- os: macos-15
759+
760+
runs-on: ${{matrix.os}}
761+
762+
steps:
763+
- uses: actions/checkout@v4
764+
765+
- name: Install packages
766+
if: matrix.install
767+
run: sudo apt install ${{matrix.install}}
768+
769+
- name: Setup Boost
770+
run: |
771+
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
772+
LIBRARY=${GITHUB_REPOSITORY#*/}
773+
echo LIBRARY: $LIBRARY
774+
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
775+
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
776+
echo GITHUB_REF: $GITHUB_REF
777+
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
778+
REF=${REF#refs/heads/}
779+
echo REF: $REF
780+
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
781+
echo BOOST_BRANCH: $BOOST_BRANCH
782+
cd ..
783+
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
784+
cd boost-root
785+
mkdir -p libs/$LIBRARY
786+
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
787+
cd libs/$LIBRARY/test
788+
git clone https://github.com/cppalliance/decimal-dectest
789+
cd ../../../
790+
git submodule update --init tools/boostdep
791+
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
792+
793+
- name: Configure
794+
run: |
795+
cd ../boost-root
796+
mkdir __build__ && cd __build__
797+
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON -DBUILD_DECTEST_TESTING=ON ..
798+
799+
- name: Build tests
800+
run: |
801+
cd ../boost-root/__build__
802+
cmake --build . --target tests
803+
804+
- name: Run tests
805+
run: |
806+
cd ../boost-root/__build__
807+
ctest --output-on-failure --no-tests=error
808+
731809
posix-standalone-test:
732810
strategy:
733811
fail-fast: false
734812
matrix:
735813
include:
736814
- os: ubuntu-24.04
737-
- os: macos-13
738815
- os: macos-14
739816
- os: macos-15
740817

@@ -930,52 +1007,53 @@ jobs:
9301007
g++ main.cpp $(pkg-config --cflags --libs boost_decimal) -o test_pkgconfig
9311008
./test_pkgconfig
9321009

933-
MSYS2:
934-
defaults:
935-
run:
936-
shell: msys2 {0}
937-
strategy:
938-
fail-fast: false
939-
matrix:
940-
include:
941-
- { sys: MINGW32, compiler: gcc, cxxstd: '03,11,17,20' }
942-
- { sys: MINGW64, compiler: gcc, cxxstd: '03,11,17,20' }
943-
944-
runs-on: windows-latest
945-
946-
steps:
947-
- uses: actions/checkout@v4
948-
949-
- name: Setup MSYS2 environment
950-
uses: msys2/setup-msys2@v2
951-
with:
952-
msystem: ${{matrix.sys}}
953-
update: true
954-
install: git python
955-
pacboy: gcc:p cmake:p ninja:p
956-
957-
- name: Fetch Boost.CI
958-
uses: actions/checkout@v4
959-
with:
960-
repository: boostorg/boost-ci
961-
ref: master
962-
path: boost-ci-cloned
963-
- name: Get CI scripts folder
964-
run: |
965-
# Copy ci folder if not testing Boost.CI
966-
[[ "$GITHUB_REPOSITORY" =~ "boost-ci" ]] || cp -r boost-ci-cloned/ci .
967-
rm -rf boost-ci-cloned
968-
969-
- name: Setup Boost
970-
env:
971-
B2_COMPILER: ${{matrix.compiler}}
972-
B2_CXXSTD: ${{matrix.cxxstd}}
973-
B2_SANITIZE: ${{matrix.sanitize}}
974-
B2_STDLIB: ${{matrix.stdlib}}
975-
run: ci/github/install.sh
976-
977-
- name: Run tests
978-
run: ci/build.sh
1010+
# Symlink in docs folder breaks these runs
1011+
# MSYS2:
1012+
# defaults:
1013+
# run:
1014+
# shell: msys2 {0}
1015+
# strategy:
1016+
# fail-fast: false
1017+
# matrix:
1018+
# include:
1019+
# - { sys: MINGW32, compiler: gcc, cxxstd: '03,11,17,20' }
1020+
# - { sys: MINGW64, compiler: gcc, cxxstd: '03,11,17,20' }
1021+
#
1022+
# runs-on: windows-latest
1023+
#
1024+
# steps:
1025+
# - uses: actions/checkout@v4
1026+
#
1027+
# - name: Setup MSYS2 environment
1028+
# uses: msys2/setup-msys2@v2
1029+
# with:
1030+
# msystem: ${{matrix.sys}}
1031+
# update: true
1032+
# install: git python
1033+
# pacboy: gcc:p cmake:p ninja:p
1034+
#
1035+
# - name: Fetch Boost.CI
1036+
# uses: actions/checkout@v4
1037+
# with:
1038+
# repository: boostorg/boost-ci
1039+
# ref: master
1040+
# path: boost-ci-cloned
1041+
# - name: Get CI scripts folder
1042+
# run: |
1043+
# # Copy ci folder if not testing Boost.CI
1044+
# [[ "$GITHUB_REPOSITORY" =~ "boost-ci" ]] || cp -r boost-ci-cloned/ci .
1045+
# rm -rf boost-ci-cloned
1046+
#
1047+
# - name: Setup Boost
1048+
# env:
1049+
# B2_COMPILER: ${{matrix.compiler}}
1050+
# B2_CXXSTD: ${{matrix.cxxstd}}
1051+
# B2_SANITIZE: ${{matrix.sanitize}}
1052+
# B2_STDLIB: ${{matrix.stdlib}}
1053+
# run: ci/github/install.sh
1054+
#
1055+
# - name: Run tests
1056+
# run: ci/build.sh
9791057

9801058
intel:
9811059
runs-on: ubuntu-latest

.github/workflows/codecov.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# ------------------------------------------------------------------------------
1+
# ------------------------------------------------------------------------------
22
# Copyright Matt Borland 2023 - 2024.
33
# Copyright Christopher Kormanyos 2023 - 2024.
44
# Distributed under the Boost Software License,
@@ -17,14 +17,14 @@ on:
1717
types: [opened, synchronize, reopened]
1818
jobs:
1919
gcc-gcov-native:
20-
runs-on: ubuntu-latest
20+
runs-on: ubuntu-22.04
2121
defaults:
2222
run:
2323
shell: bash
2424
strategy:
2525
fail-fast: false
2626
matrix:
27-
standard: [ c++20 ]
27+
standard: [ c++2a ]
2828
compiler: [ g++ ]
2929
steps:
3030
- uses: actions/checkout@v4
@@ -50,6 +50,7 @@ jobs:
5050
git submodule update --init libs/static_assert
5151
git submodule update --init libs/test
5252
git submodule update --init libs/random
53+
git submodule update --init libs/charconv
5354
./bootstrap.sh
5455
./b2 headers
5556
- name: gcc-gcov-native

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,14 @@ test/tidy/err/
3939
test/tidy/tmp/
4040
cmake-build-debug/
4141
test/metal/bin/
42+
test/decimal-dectest/
4243

4344
# Modules
4445
*.gcm
4546
gcm.cache/
4647

4748
# Mac option
4849
*.DS_Store
50+
51+
# Pretty Printers
52+
*.pyc

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.10...3.20)
66

77
# Set version explicitly if not part of Boost superproject
88
if(NOT BOOST_SUPERPROJECT_VERSION)
9-
set(BOOST_DECIMAL_VERSION 5.2.0)
9+
set(BOOST_DECIMAL_VERSION 6.0.0)
1010
else()
1111
set(BOOST_DECIMAL_VERSION ${BOOST_SUPERPROJECT_VERSION})
1212
endif()

0 commit comments

Comments
 (0)