Skip to content

Commit 3258ebc

Browse files
committed
Merge branch 'QPR-11763' into 'master'
QPR-11763 merge QL 1.30 tag into our fork Closes QPR-11763 See merge request qs/quantlib!53
2 parents e57914e + 61bbeaa commit 3258ebc

375 files changed

Lines changed: 11584 additions & 6496 deletions

File tree

Some content is hidden

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

.clang-tidy

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,23 @@
22
Checks: >
33
-*,
44
bugprone-*,
5+
-bugprone-assignment-in-if-condition,
56
-bugprone-branch-clone,
67
-bugprone-easily-swappable-parameters,
78
-bugprone-implicit-widening-of-multiplication-result,
89
-bugprone-macro-parentheses,
910
-bugprone-narrowing-conversions,
11+
-bugprone-suspicious-include,
1012
clang-analyzer-*,
1113
-clang-analyzer-core.UndefinedBinaryOperatorResult,
1214
-clang-analyzer-core.uninitialized.Assign,
1315
-clang-analyzer-optin.cplusplus.UninitializedObject,
14-
-clang-analyzer-optin.cplusplus.VirtualCall,
1516
-clang-analyzer-optin.performance.Padding,
1617
-clang-analyzer-security.FloatLoopCounter,
1718
cppcoreguidelines-*,
1819
-cppcoreguidelines-avoid-c-arrays,
20+
-cppcoreguidelines-avoid-const-or-ref-data-members,
21+
-cppcoreguidelines-avoid-do-while,
1922
-cppcoreguidelines-avoid-goto,
2023
-cppcoreguidelines-avoid-magic-numbers,
2124
-cppcoreguidelines-avoid-non-const-global-variables,
@@ -33,26 +36,34 @@ Checks: >
3336
-cppcoreguidelines-pro-type-vararg,
3437
-cppcoreguidelines-special-member-functions,
3538
misc-*,
39+
-misc-confusable-identifiers,
40+
-misc-const-correctness,
3641
-misc-no-recursion,
3742
-misc-non-private-member-variables-in-classes,
43+
-misc-use-anonymous-namespace,
3844
-misc-unused-parameters,
3945
modernize-*,
4046
-modernize-avoid-c-arrays,
47+
-modernize-macro-to-enum,
4148
-modernize-make-shared,
4249
-modernize-return-braced-init-list,
50+
-modernize-use-emplace,
4351
-modernize-use-trailing-return-type,
4452
-modernize-use-using,
4553
performance-*,
4654
readability-*,
4755
-readability-braces-around-statements,
56+
-readability-const-return-type,
4857
-readability-convert-member-functions-to-static,
4958
-readability-else-after-return,
5059
-readability-function-cognitive-complexity,
5160
-readability-identifier-length,
5261
-readability-inconsistent-declaration-parameter-name,
5362
-readability-isolate-declaration,
5463
-readability-magic-numbers,
64+
-readability-make-member-function-const,
5565
-readability-named-parameter,
66+
-readability-redundant-declaration,
5667
-readability-simplify-boolean-expr,
5768
-readability-suspicious-call-argument,
5869
-readability-use-anyofallof,

.github/workflows/cmake.yml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ jobs:
2121
run: |
2222
mkdir build
2323
cd build
24-
cmake .. -GNinja -DBOOST_ROOT=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
25-
cmake --build .
24+
cmake .. -GNinja -DBOOST_ROOT=/usr -DCMAKE_BUILD_TYPE=Release -DQL_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -L
25+
cmake --build . --verbose
2626
- name: Test
2727
run: |
2828
cd build
@@ -45,8 +45,8 @@ jobs:
4545
cmake-linux-ci-opts-
4646
- name: Compile
4747
run: |
48-
cmake --preset linux-ci-build-with-nonstandard-options
49-
cmake --build --preset linux-ci-build-with-nonstandard-options
48+
cmake --preset linux-ci-build-with-nonstandard-options -L
49+
cmake --build --preset linux-ci-build-with-nonstandard-options --verbose
5050
- name: Test
5151
run: |
5252
cd build
@@ -66,7 +66,7 @@ jobs:
6666
variant: sccache
6767
- name: Setup
6868
run: |
69-
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/binaries/boost_1_81_0-msvc-14.3-64.exe"
69+
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.82.0/binaries/boost_1_82_0-msvc-14.3-64.exe"
7070
(New-Object System.Net.WebClient).DownloadFile($Url, "$env:TEMP\boost.exe")
7171
Start-Process -Wait -FilePath "$env:TEMP\boost.exe" "/SILENT","/SP-","/SUPPRESSMSGBOXES","/DIR=C:\local\boost"
7272
choco install -y ninja
@@ -78,7 +78,7 @@ jobs:
7878
mkdir build
7979
cd build
8080
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Vc\Auxiliary\Build\vcvarsall.bat" amd64 -vcvars_ver=14.3 || exit 1
81-
cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
81+
cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DQL_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -L
8282
cmake --build . --verbose
8383
dir ql\*.lib
8484
- name: Test
@@ -100,7 +100,7 @@ jobs:
100100
variant: sccache
101101
- name: Setup
102102
run: |
103-
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/binaries/boost_1_81_0-msvc-14.3-64.exe"
103+
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.82.0/binaries/boost_1_82_0-msvc-14.3-64.exe"
104104
(New-Object System.Net.WebClient).DownloadFile($Url, "$env:TEMP\boost.exe")
105105
Start-Process -Wait -FilePath "$env:TEMP\boost.exe" "/SILENT","/SP-","/SUPPRESSMSGBOXES","/DIR=C:\local\boost"
106106
choco install -y ninja
@@ -112,7 +112,7 @@ jobs:
112112
mkdir build
113113
cd build
114114
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Vc\Auxiliary\Build\vcvarsall.bat" amd64 -vcvars_ver=14.3 || exit 1
115-
cmake .. -GNinja -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDLL -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
115+
cmake .. -GNinja -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDLL -DCMAKE_BUILD_TYPE=Release -DQL_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -L
116116
cmake --build . --verbose
117117
dir ql\*.lib
118118
- name: Test
@@ -134,7 +134,7 @@ jobs:
134134
variant: sccache
135135
- name: Setup
136136
run: |
137-
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/binaries/boost_1_81_0-msvc-14.3-64.exe"
137+
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.82.0/binaries/boost_1_82_0-msvc-14.3-64.exe"
138138
(New-Object System.Net.WebClient).DownloadFile($Url, "$env:TEMP\boost.exe")
139139
Start-Process -Wait -FilePath "$env:TEMP\boost.exe" "/SILENT","/SP-","/SUPPRESSMSGBOXES","/DIR=C:\local\boost"
140140
choco install -y ninja
@@ -144,8 +144,8 @@ jobs:
144144
shell: cmd
145145
run: |
146146
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Vc\Auxiliary\Build\vcvarsall.bat" amd64 -vcvars_ver=14.3 || exit 1
147-
cmake --preset windows-ci-build-with-nonstandard-options
148-
cmake --build --preset windows-ci-build-with-nonstandard-options
147+
cmake --preset windows-ci-build-with-nonstandard-options -L
148+
cmake --build --preset windows-ci-build-with-nonstandard-options --verbose
149149
- name: Test
150150
run: |
151151
cd build
@@ -171,8 +171,8 @@ jobs:
171171
run: |
172172
mkdir build
173173
cd build
174-
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -GNinja
175-
cmake --build .
174+
cmake .. -DCMAKE_BUILD_TYPE=Release -DQL_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -GNinja -L
175+
cmake --build . --verbose
176176
- name: Test
177177
run: |
178178
cd build

.github/workflows/copyrights.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ jobs:
1111
- name: Check
1212
run: |
1313
./tools/check_copyrights.sh
14-
- uses: peter-evans/create-pull-request@v4
14+
- uses: peter-evans/create-pull-request@v5
1515
with:
1616
token: ${{ secrets.GITHUB_TOKEN }}
17-
branch: update-copyright-list-${{ github.ref }}
17+
branch: update-copyright-list-${{ github.ref_name }}
1818
delete-branch: true
1919
commit-message: 'Update copyright list in license'
2020
title: 'Update copyright list in license'

.github/workflows/generated-headers.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ jobs:
2121
find ql -name *.am | xargs touch
2222
make dist
2323
rm QuantLib-*.tar.gz
24-
- uses: peter-evans/create-pull-request@v4
24+
- uses: peter-evans/create-pull-request@v5
2525
with:
2626
token: ${{ secrets.GITHUB_TOKEN }}
27-
branch: update-generated-headers-${{ github.ref }}
27+
branch: update-generated-headers-${{ github.ref_name }}
2828
delete-branch: true
2929
commit-message: 'Update generated headers'
3030
title: 'Update generated headers'

.github/workflows/headers.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,17 @@ jobs:
88
- name: Setup
99
run: |
1010
sudo apt update
11-
sudo apt install -y libboost-dev
11+
sudo apt install -y libboost-dev ccache
12+
- name: Cache
13+
uses: hendrikmuhs/ccache-action@v1.2
14+
with:
15+
key: single-headers-${{ github.ref }}
16+
restore-keys: |
17+
single-headers-${{ github.ref }}
18+
single-headers-refs/heads/master
19+
single-headers-
1220
- name: Check
21+
env:
22+
CXX: ccache g++
1323
run: |
1424
./tools/check_all_headers.sh

.github/workflows/linux-full-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ jobs:
141141
tag: rolling
142142
cc: gcc
143143
cxx: g++
144-
configureflags: --enable-std-classes
144+
configureflags: --enable-std-classes --enable-std-any --enable-std-optional
145145
- name: "Thread-safe observer enabled"
146146
shortname: threadsafe
147147
tag: rolling

.github/workflows/linux-nondefault.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ jobs:
130130
cc: gcc
131131
cxx: g++
132132
cxxflags: "-std=c++17"
133-
configureflags: --enable-std-classes
133+
configureflags: --enable-std-classes --enable-std-any --enable-std-optional
134134
- name: "OpenMP enabled"
135135
shortname: openmp
136136
tag: rolling

.github/workflows/linux.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ jobs:
144144
tag: rolling
145145
cc: gcc
146146
cxx: g++
147-
configureflags: --enable-std-classes
147+
configureflags: --enable-std-classes --enable-std-any --enable-std-optional
148148
tests: true
149149
- name: "Thread-safe observer enabled"
150150
shortname: threadsafe

.github/workflows/macos-nondefault.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ jobs:
1515
- os: [macos-11]
1616
shortname: stdclasses-11
1717
cxxflags: "-std=c++17"
18-
configureflags: --enable-std-classes
18+
configureflags: --enable-std-classes --enable-std-optional
1919
- os: [macos-12]
2020
shortname: default-12
2121
- os: [macos-12]
2222
shortname: stdclasses-12
2323
cxxflags: "-std=c++17"
24-
configureflags: --enable-std-classes
24+
configureflags: --enable-std-classes --enable-std-optional
2525
steps:
2626
- uses: actions/checkout@v3
2727
- name: Setup
@@ -31,7 +31,7 @@ jobs:
3131
run: |
3232
./autogen.sh
3333
./configure --disable-shared --enable-error-lines --enable-error-functions --enable-tracing --enable-indexed-coupons --enable-extra-safety-checks --enable-sessions --enable-thread-safe-observer-pattern --enable-intraday --enable-null-as-functions ${{ matrix.configureflags }} CC="clang" CXX="clang++" CXXFLAGS="-O2 -g0 -Wall -Werror -stdlib=libc++ -mmacosx-version-min=10.9 ${{ matrix.cxxflags }}" LDFLAGS="-stdlib=libc++ -mmacosx-version-min=10.9"
34-
make -j 2
34+
make -j 3
3535
- name: Run tests
3636
run: |
3737
./test-suite/quantlib-test-suite --log_level=message

.github/workflows/macos.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
run: |
2929
./autogen.sh
3030
./configure --disable-shared ${{ matrix.configureflags }} CC="ccache clang" CXX="ccache clang++" CXXFLAGS="-O2 -g0 -Wall -Werror -stdlib=libc++ -mmacosx-version-min=10.9 ${{ matrix.cxxflags }}" LDFLAGS="-stdlib=libc++ -mmacosx-version-min=10.9"
31-
make -j 2
31+
make -j 3
3232
- name: Run tests
3333
run: |
3434
./test-suite/quantlib-test-suite --log_level=message

0 commit comments

Comments
 (0)