Repository navigation
Conversation
std::abs<CT>(x) with an explicit template argument is rejected as ambiguous by newer libc++ (e.g. the macOS 26 SDK), which brings the integer abs overloads into scope. s1var/validsVar are already CT, so drop the argument and let std::abs resolve the <cmath> overload.
Normalize the existing source, test, and example formatting with clang-format 15. Preserve the cast table with formatting guards.
Build documentation with Ubuntu packages and align Windows vcpkg with the manifest baseline. Use explicit tool paths, propagate failures, and build before running CPU tests.
Pin the compatible runner and fetch the complete version registry before invoking vcpkg. Update the binary cache action to its supported runtime.
Test the workflow repairs with the formatting baseline. Merge the separate formatting PR first so the workflow PR retains its own changes.
melonakos
marked this pull request as draft
October 24, 2026 03:55
Use a current vcpkg tool checkout for available MSYS2 packages while keeping the manifest baseline. Use CMake 3.28.6 on Linux and macOS for IntelLLVM support.
Reuse complete cached matrices before invoking the downloader and save them after configuration. Stop before repeated fixture requests when SuiteSparse declares an outage, while keeping matrix tests enabled.
Bundle the retained SuiteSparse fixtures with their source metadata and checksums. Validate archive contents before restoring the cache so matrix tests run without the offline provider.
Show compiler failures directly and stop before testing missing binaries. Keep dashboard uploads optional so its outage does not override build and test results.
Enable the provided MinGW Fortran toolchain in the custom Windows triplet so LAPACK can configure with current vcpkg tools.
Add Homebrew's library directory to the test runtime search path so dynamically loaded FreeImage is available on Apple Silicon runners.
Save validated vcpkg binaries after configuration so subsequent builds can reuse them even if compilation or tests fail.
Let the BLAS port own its pkg-config files. Save vcpkg's completed ABI-keyed archives on failed configurations and restore compatible binaries across retries.
Reset a NaN correction term so infinities retain normal sum behavior. Cover real and complex infinities and NaNs through all-element, dimension, and keyed reductions; the regression fails without the guard and the reduction and variance suites pass with it.
Install the wrapper and find module where the LAPACK meta-port consumes them. Give the reference package its own pkg-config metadata so the meta-port can own the public LAPACK files.
Keep the modified overlay as LF text so patch whitespace checks remain clean.
Reset infinite correction terms as well as NaNs so finite overflow retains IEEE sum behavior. Extend the real and complex API regression; the reduction and variance suites pass.
This was referenced Oct 24, 2026
melonakos
marked this pull request as ready for review
October 24, 2026 17:27
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Retired runners, stale tools, unavailable fixtures, and LAPACK packaging errors prevented CI from completing. Use supported runners, CMake 3.28.6 on Unix, vcpkg 2026.10.16 tools, provided Windows Fortran, and Homebrew runtime paths. Restore verified public SuiteSparse fixtures and cache dependencies while keeping pinned library versions; expose compiler errors and make dashboard uploads optional. All configured CPU checks, documentation, formatting, integrity tests, and Actionlint pass; the existing Windows pinverse exclusion remains. The CPU summation commit from #3687 fixes variance precision, with guards and regressions for infinities, NaNs, and finite overflow. Merge #3736 and #3710 first; #3731's overlapping reduction must retain the nonfinite guard.