Skip to content

Commit 1a7be5d

Browse files
authored
Merge pull request #999 from boostorg/develop
Merge develop for 1.83
2 parents c56f334 + 8bb0d16 commit 1a7be5d

File tree

200 files changed

+5924
-1993
lines changed

Some content is hidden

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

200 files changed

+5924
-1993
lines changed

.drone.star

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,15 @@ windowsglobalimage="cppalliance/dronevs2019"
1616
def main(ctx):
1717

1818
things_to_test = [ "special_fun", "distribution_tests", "mp", "misc", "interpolators", "quadrature", "autodiff", "long-running-tests", "float128_tests" ]
19+
gcc13_things_to_test = [ "special_fun", "distribution_tests", "mp", "misc", "interpolators", "quadrature", "autodiff", "long-running-tests", "float128_tests", "new_floats" ]
1920
sanitizer_test = [ "special_fun", "distribution_tests", "misc", "interpolators", "quadrature", "float128_tests" ]
2021
gnu_5_stds = [ "gnu++14", "c++14" ]
2122
gnu_6_stds = [ "gnu++14", "c++14", "gnu++17", "c++17" ]
2223
clang_6_stds = [ "c++14", "c++17" ]
2324
gnu_9_stds = [ "gnu++14", "c++14", "gnu++17", "c++17", "gnu++2a", "c++2a" ]
2425
clang_10_stds = [ "c++14", "c++17", "c++2a" ]
2526
gnu_non_native = [ "gnu++17" ]
27+
gcc13_stds = [ "c++23" ]
2628

2729
result = []
2830

@@ -59,6 +61,9 @@ def main(ctx):
5961
result.append(linux_cxx("Ubuntu g++ ARM64" + cxx + " " + suite, "g++", packages="g++", buildtype="boost", image="cppalliance/droneubuntu2204:multiarch", arch="arm64", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++', 'CXXSTD': cxx, 'TEST_SUITE': suite, }, globalenv=globalenv))
6062
for cxx in gnu_non_native:
6163
result.append(osx_cxx("M1 Clang " + cxx + " " + suite, "clang++", buildscript="drone", buildtype="boost", xcode_version="14.1", environment={'TOOLSET': 'clang', 'CXXSTD': cxx, 'TEST_SUITE': suite, 'DEFINE': 'BOOST_MATH_NO_REAL_CONCEPT_TESTS,BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS,BOOST_MATH_MULTI_ARCH_CI_RUN', }, globalenv=globalenv))
64+
for suite in gcc13_things_to_test:
65+
for cxx in gcc13_stds:
66+
result.append(linux_cxx("Ubuntu g++-13 " + cxx + " " + suite, "g++-13", packages="g++-13", buildtype="boost", image="cppalliance/droneubuntu2304:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-13', 'CXXSTD': cxx, 'TEST_SUITE': suite, }, globalenv=globalenv))
6267

6368
return result
6469

.github/workflows/ci.yml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
branches:
1010
- master
1111
- develop
12+
- feature/**
1213
pull_request:
1314
release:
1415
types: [published, created, edited]
@@ -47,7 +48,7 @@ jobs:
4748
if: steps.retry1.outcome=='failure'
4849
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
4950
- name: Install packages
50-
run: sudo apt install g++-12 clang-14 libgmp-dev libmpfr-dev libfftw3-dev
51+
run: sudo apt-get install -y g++-12 clang-14 libgmp-dev libmpfr-dev libfftw3-dev
5152
- name: Checkout main boost
5253
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
5354
- name: Update tools/boostdep
@@ -75,7 +76,7 @@ jobs:
7576
run: ./config_info_travis
7677
working-directory: ../boost-root/libs/config/test
7778
- name: Test
78-
run: ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER
79+
run: ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER define=BOOST_MATH_RUN_MP_TESTS
7980
working-directory: ../boost-root/libs/math/test
8081
ubuntu-focal-no-eh:
8182
runs-on: ubuntu-20.04
@@ -105,7 +106,7 @@ jobs:
105106
if: steps.retry1.outcome=='failure'
106107
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
107108
- name: Install packages
108-
run: sudo apt install g++-9 g++-11 clang-9 clang-10 libgmp-dev libmpfr-dev libfftw3-dev
109+
run: sudo apt-get install -y g++-9 g++-11 clang-9 clang-10 libgmp-dev libmpfr-dev libfftw3-dev
109110
- name: Checkout main boost
110111
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
111112
- name: Update tools/boostdep
@@ -214,7 +215,7 @@ jobs:
214215
run: config_info_travis
215216
working-directory: ../boost-root/libs/config/test
216217
- name: Test
217-
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES debug-symbols=off ${{ matrix.suite }}
218+
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES debug-symbols=off ${{ matrix.suite }} pch=off
218219
working-directory: ../boost-root/libs/math/test
219220
windows_gcc:
220221
runs-on: windows-2019
@@ -299,7 +300,7 @@ jobs:
299300
run: config_info_travis
300301
working-directory: ../boost-root/libs/config/test
301302
- name: Test
302-
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES ${{ matrix.suite }}
303+
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES ${{ matrix.suite }} pch=off
303304
working-directory: ../boost-root/libs/math/test
304305
cygwin:
305306
runs-on: windows-latest
@@ -364,7 +365,7 @@ jobs:
364365
if: steps.retry1.outcome=='failure'
365366
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
366367
- name: Install packages
367-
run: sudo apt install g++-10 libgmp-dev libmpfr-dev libfftw3-dev
368+
run: sudo apt-get install -y g++-10 libgmp-dev libmpfr-dev libfftw3-dev
368369
- name: Checkout main boost
369370
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
370371
- name: Update tools/boostdep
@@ -404,7 +405,7 @@ jobs:
404405
if: steps.retry1.outcome=='failure'
405406
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
406407
- name: Install packages
407-
run: sudo apt install clang-10 libgmp-dev libmpfr-dev libfftw3-dev
408+
run: sudo apt-get install -y clang-10 libgmp-dev libmpfr-dev libfftw3-dev libtbb-dev
408409
- name: Checkout main boost
409410
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
410411
- name: Update tools/boostdep
@@ -448,7 +449,7 @@ jobs:
448449
if: steps.retry1.outcome=='failure'
449450
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
450451
- name: Install packages
451-
run: sudo apt install g++-10 libgmp-dev libmpfr-dev libfftw3-dev
452+
run: sudo apt-get install -y g++-10 libgmp-dev libmpfr-dev libfftw3-dev
452453
- name: Checkout main boost
453454
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
454455
- name: Update tools/boostdep

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ Boost Math Library
22
[![Build Status](https://drone.cpp.al/api/badges/boostorg/math/status.svg)](https://drone.cpp.al/boostorg/math)[![Build Status](https://github.com/boostorg/math/workflows/CI/badge.svg?branch=develop)](https://github.com/boostorg/math/actions)
33
==================
44

5-
>ANNOUNCEMENT: Support for C++11 will be deprecated in this library starting in July 2023 (Boost 1.82).
6-
>New features will require *at least* C++14, as will existing features starting with the deprecation release.
5+
>ANNOUNCEMENT: This library now requires a compliant C++14 compiler.
76
87
This library is divided into several interconnected parts:
98

doc/background/references.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ The Wolfram Research Documentation Center is a collection of online reference ma
3434
Statistical Distributions (Wiley Series in Probability & Statistics) (Paperback)
3535
by N.A.J. Hastings, Brian Peacock, Merran Evans, ISBN: 0471371246, Wiley 2000.
3636

37-
[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications]
37+
[@https://www.google.com/books/edition/Extreme_Value_Distributions/GwBqDQAAQBAJ?hl=en&gbpv=0 Extreme Value Distributions, Theory and Applications]
3838
Samuel Kotz & Saralees Nadarajah, ISBN 978-1-86094-224-2 & 1-86094-224-5 Oct 2000,
3939
Chapter 1.2 discusses the various extreme value distributions.
4040

doc/distributions/exponential.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ In the following table [lambda] is the parameter lambda of the distribution,
9393
(See also the reference documentation for the related __extreme_distrib.)
9494

9595
*
96-
[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
96+
[@https://www.google.com/books/edition/Extreme_Value_Distributions/GwBqDQAAQBAJ?hl=en&gbpv=0 Extreme Value Distributions, Theory and Applications
9797
Samuel Kotz & Saralees Nadarajah]
9898
discuss the relationship of the types of extreme value distributions.
9999

doc/distributions/extreme_value.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ websites.
3838

3939
The relationship of the types of extreme value distributions, of which this is but one, is
4040
discussed by
41-
[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
41+
[@https://www.google.com/books/edition/Extreme_Value_Distributions/GwBqDQAAQBAJ?hl=en&gbpv=0 Extreme Value Distributions, Theory and Applications
4242
Samuel Kotz & Saralees Nadarajah].
4343

4444
The distribution has a PDF given by:

doc/distributions/hypergeometric.qbk

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
typedef RealType value_type;
1616
typedef Policy policy_type;
1717
// Construct:
18-
hypergeometric_distribution(unsigned r, unsigned n, unsigned N); // r=defective/failures/success, n=trials/draws, N=total population.
18+
hypergeometric_distribution(uint64_t r, uint64_t n, uint64_t N); // r=defective/failures/success, n=trials/draws, N=total population.
1919
// Accessors:
20-
unsigned total()const;
21-
unsigned defective()const;
22-
unsigned sample_count()const;
20+
uint64_t total()const;
21+
uint64_t defective()const;
22+
uint64_t sample_count()const;
2323
};
2424

2525
typedef hypergeometric_distribution<> hypergeometric;
@@ -56,20 +56,20 @@ then we obtain basically the same graphs:
5656

5757
[h4 Member Functions]
5858

59-
hypergeometric_distribution(unsigned r, unsigned n, unsigned N);
59+
hypergeometric_distribution(uint64_t r, uint64_t n, uint64_t N);
6060

6161
Constructs a hypergeometric distribution with a population of /N/ objects,
6262
of which /r/ are defective, and from which /n/ are sampled.
6363

64-
unsigned total()const;
64+
uint64_t total()const;
6565

6666
Returns the total number of objects /N/.
6767

68-
unsigned defective()const;
68+
uint64_t defective()const;
6969

7070
Returns the number of objects /r/ in population /N/ which are defective.
7171

72-
unsigned sample_count()const;
72+
uint64_t sample_count()const;
7373

7474
Returns the number of objects /n/ which are sampled from the population /N/.
7575

@@ -87,7 +87,7 @@ and Python
8787
All the [link math_toolkit.dist_ref.nmp usual non-member accessor functions]
8888
that are generic to all distributions are supported: __usual_accessors.
8989

90-
The domain of the random variable is the unsigned integers in the range
90+
The domain of the random variable are the 64-bit unsigned integers in the range
9191
\[max(0, n + r - N), min(n, r)\]. A __domain_error is raised if the
9292
random variable is outside this range, or is not an integral value.
9393

doc/distributions/triangular.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ The triangular distribution is often used where the distribution is only vaguely
3838
but, like the [@http://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29 uniform distribution],
3939
upper and limits are 'known', but a 'best guess', the mode or center point, is also added.
4040
It has been recommended as a
41-
[@http://www.worldscibooks.com/mathematics/etextbook/5720/5720_chap1.pdf proxy for the beta distribution.]
41+
[@https://www.jstor.org/stable/2988573 proxy for the beta distribution.]
4242
The distribution is used in business decision making and project planning.
4343

4444
The [@http://en.wikipedia.org/wiki/Triangular_distribution triangular distribution]

doc/distributions/weibull.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ When ['[alpha]] = 1, the Weibull distribution reduces to the
5959
[@http://en.wikipedia.org/wiki/Exponential_distribution exponential distribution].
6060
The relationship of the types of extreme value distributions, of which the Weibull is but one, is
6161
discussed by
62-
[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
62+
[@https://www.google.com/books/edition/Extreme_Value_Distributions/GwBqDQAAQBAJ?hl=en&gbpv=0 Extreme Value Distributions, Theory and Applications
6363
Samuel Kotz & Saralees Nadarajah].
6464

6565

451 KB
Loading

0 commit comments

Comments
 (0)