Skip to content

Merge to Master for 1.92#1415

Open
mborland wants to merge 121 commits into
masterfrom
develop
Open

Merge to Master for 1.92#1415
mborland wants to merge 121 commits into
masterfrom
develop

Conversation

@mborland

@mborland mborland commented Jul 1, 2026

Copy link
Copy Markdown
Member

Deadline is today, kind of slipped my mind

JacobHass8 and others added 22 commits June 2, 2026 10:05
Find degrees of freedom for `non_central_f` distribution
The degree of freedom finders can call the quantile with arguments which result in an infinite result, as far as our root finders are concerned, any large value as a result will do, but we need to not allow an exception to escape or the root finder terminates.
* Guard against intermediate x*x overflow in Student's t pdf/cdf
* Return exact tail values instead of raising overflow_error (review feedback)

---------

Co-authored-by: LeantionX <leontyevanton1995@gmail.com>
Co-authored-by: Matt Borland <matt@mattborland.com>
…ial_guess

ENH: add warm start for root finder in `find_degrees_of_freedom`
Make sure we throw the correct exceptions when the result is infinite.
Fixes #1404.
DOC: Include the use of the bootstrap script to build b2 in README.md
pFq: prevent spurious overflow.
<sstream> is not needed in exception free environment
@mborland

mborland commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

Strangely the macOS runs are starting to fail consistently with:

====== BEGIN OUTPUT ======
Error at cubic_roots_test.cpp:test_zero_coefficients:44
  Condition 'nan == -1' is not satisfied:
  Expected =  nan = nan = nan
  Computed =  -1.000000 = -1.000000e+00 = -0x1p+0
Error at cubic_roots_test.cpp:test_zero_coefficients:45
  The computed value should be a nan, but is instead -1.000000 = -1.000000e+00 = -0x1p+0
Error at cubic_roots_test.cpp:test_zero_coefficients:50
  Condition 'nan == 1' is not satisfied:
  Expected =  nan = nan = nan
  Computed =  1.000000 = 1.000000e+00 = 0x1p+0
Error at cubic_roots_test.cpp:test_zero_coefficients:51
  The computed value should be a nan, but is instead 1.000000 = 1.000000e+00 = 0x1p+0
libc++abi: terminating due to uncaught exception of type std::domain_error: Error in CHECK_ULP_CLOSE: Expected value cannot be a nan. Callsite: cubic_roots_test.cpp:test_zero_coefficients:57.

EXIT STATUS: 134
====== END OUTPUT ======

It's been >4 years since the last commit to the cubic roots code?

@mborland

mborland commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

Mac failures are fixed in #1417, so I will wait for that to be merged so that it can automatically be populated into master

@codecov

codecov Bot commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.10496% with 13 lines in your changes missing coverage. Please review.
✅ Project coverage is 95.39%. Comparing base (e6fb7d3) to head (600627d).
⚠️ Report is 16 commits behind head on master.

Files with missing lines Patch % Lines
include/boost/math/distributions/students_t.hpp 92.77% 6 Missing ⚠️
...tions/detail/hypergeometric_pFq_checked_series.hpp 87.50% 2 Missing ⚠️
test/git_issue_1412_pt_2.cpp 50.00% 2 Missing ⚠️
include/boost/math/distributions/find_location.hpp 83.33% 1 Missing ⚠️
include/boost/math/special_functions/beta.hpp 95.45% 1 Missing ⚠️
include/boost/math/tools/cubic_roots.hpp 87.50% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1415      +/-   ##
==========================================
+ Coverage   95.34%   95.39%   +0.05%     
==========================================
  Files         825      828       +3     
  Lines       68160    68931     +771     
==========================================
+ Hits        64986    65759     +773     
+ Misses       3174     3172       -2     
Files with missing lines Coverage Δ
include/boost/math/constants/constants.hpp 100.00% <100.00%> (ø)
include/boost/math/distributions/arcsine.hpp 100.00% <100.00%> (+8.67%) ⬆️
include/boost/math/distributions/binomial.hpp 98.00% <100.00%> (+11.44%) ⬆️
include/boost/math/distributions/cauchy.hpp 100.00% <100.00%> (+16.45%) ⬆️
include/boost/math/distributions/chi_squared.hpp 98.13% <100.00%> (+7.30%) ⬆️
include/boost/math/distributions/extreme_value.hpp 98.83% <ø> (+17.68%) ⬆️
...lude/boost/math/distributions/inverse_gaussian.hpp 85.33% <100.00%> (+1.19%) ⬆️
include/boost/math/distributions/non_central_f.hpp 90.73% <100.00%> (+2.76%) ⬆️
include/boost/math/interpolators/pchip.hpp 89.79% <100.00%> (+0.43%) ⬆️
include/boost/math/octonion.hpp 70.76% <ø> (ø)
... and 35 more

... and 15 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e6fb7d3...600627d. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

mborland added 3 commits July 1, 2026 10:34
Check all of special functions can be included under same conditions
Fix UB in sorting results with the cubic root finder
@mborland

mborland commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

#1417 ran green and #1416 better tests libc++'s integration issue so I think we are going to be good now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants