Build and CI

PRPriorityReviewabilityReviewsAgreementSize
(+)#36267 fanquake [32.x] Backports for rc2
  • Backport fixes to the 32.x branch for the 32.0rc2 release candidate
  • Allow offline Windows signature validation in Guix and back off on dropped Tor control connections
P1 · platform fix
  • P1 after comparing with the other PRs here (assessed alone as P2): Raised to P1: rc2 backport bundle gating the 32.0 release candidate, including offline Guix codesign verification for Windows binaries — release-integrity blocker
  • P2 because it fixes Guix codesigning verification for Windows release binaries
  • Enables signature checks inside isolated Guix containers that lack network access
Ready
  • Ready to review now
  • Straightforward backport of two commits already merged to master with passing CI
0
  • No review verdicts recorded
Crickets
  • No reviews or comments yet on this newly opened backport PR
3,127 + 38 tests
  • 3,127 lines added or modified outside tests
  • 38 lines added or modified in tests
  • 35 lines removed in total
  • 4 files, 3 commits
(+)#36285 maflcko refactor: Use static const over inline const to work around ld64 bug
  • Fix build failures on macOS developer environments caused by a platform linker bug
  • Ensure affected macOS toolchains can successfully compile the project
P1 · platform fix
  • P1 after comparing with the other PRs here (assessed alone as P2): Raised to P1: an actual build break on a supported platform (macOS/ld64), milestoned 32.0 and tagged for backport
  • P2 because broken builds directly block macOS developers and automated tooling
  • Restores reliable compilation for the upcoming 32.0 release and backports
Ready
  • Ready for review, with a minimal diff and verified fixes on macOS
1
Positive
  • Verified by successfully building and running tests on Nix macOS (janb84)
  • Asked whether the bug affects all ld64 linkers or just Nix's patched version (fanquake)
  • Recommends merging the workaround for 32.0 to unblock affected users (maflcko)
+8/-8
  • 2 files
  • 1 commits
(+)#25573 fanquake guix: produce a `-static-pie` bitcoind
  • Make Linux release binaries run on any distribution without host glibc version dependencies
  • Enable bitcoind to run directly on Alpine Linux, NixOS, and minimal container environments
P2 · new feature
  • P2 because it removes runtime glibc version constraints for official Linux releases
  • Directly benefits node operators on non-glibc distributions and minimal container hosts
  • Unblocks long-sought static release packaging for Linux
Review #36272 first
0
Strong
  • Broad support for static PIE binaries as preferable to alternative libc approaches (theuni)
  • Approach approved and verified across multiple Linux distributions (willcl-ark, hebasto, jsarenik)
  • Verified reproducible Guix build hashes match (sedited, xrviv, willcl-ark)
  • Concept approval without reservation (dergoegge, w0xlt)
35 + 555 tests
  • 35 lines added or modified outside tests
  • 555 lines added or modified in tests
  • 281 lines removed in total
  • 13 files, 9 commits
(+)#35774 willcl-ark ci: test cross-built macos arm64 binaries
  • Run unit tests on native macOS arm64 hardware using release-like cross-built binaries
  • Catch platform-specific regressions and silent toolchain breakages before release
P2 · test coverage
  • P2 because it closes CI gaps for release-like builds to protect release integrity
  • Catches silent breakages and segfaults caused by the depends toolchain before release
Ready
  • Ready for review
  • Branch is rebased, CI is passing, and previous questions have been addressed
0
Strong
  • Strong concept support citing the need to test cross-built binaries natively (fanquake)
  • Nonblocking inquiry about caching strategy was resolved (maflcko)
127
  • 127 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 6 lines removed in total
  • 3 files, 3 commits
(+)#31507 hebasto build: Use clang-cl to build on Windows natively
  • Eliminate recurring MSVC compiler crashes and custom workarounds on native Windows builds
  • Produce faster Windows binaries and cut CI compilation times
P2 · platform fix
  • P2 because it resolves recurring MSVC compiler crashes and toolchain maintenance overhead
  • Significantly boosts Windows execution performance and cuts CI build times from ~20 to ~12 minutes
Ready
  • Ready for review, with CI passing and Concept ACKs on the current head commit
0
Mild
  • Strong support for switching native Windows builds to clang-cl and dropping MSVC (fanquake, hodlinator, maflcko)
  • Concept approval on the condition that MSVC support is dropped entirely (fanquake)
  • Supported merging early for the 32.0 release window (maflcko)
131
  • 131 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 94 lines removed in total
  • 10 files, 6 commits
(+)#36082 willcl-ark ci: add Guix builds to CI
  • Catch Guix build breakages and codesigning manifest errors continuously in CI
  • Prevent release-blocking surprises that maintainers currently discover only late in the cycle
P2 · test coverage
  • P2 because continuous verification of Guix environments protects against release-time regressions
  • Missing imports and broken signing dependencies are caught before release signing begins
Ready
  • Ready for review after earlier commits were restructured and CI passed
0
Positive
  • Concept approval without stated reasons (fanquake, sedited)
  • Concern over duplicate caching was resolved by dropping the overlapping commit (hebasto)
  • Open question remains on relying on third-party substitute servers
205 + 5 tests
  • 205 lines added or modified outside tests
  • 5 lines added or modified in tests
  • 2 lines removed in total
  • 3 files, 3 commits
(+)#35855 fanquake guix: update time-machine
  • Update the Guix time-machine snapshot to newer compiler toolchains.
  • Fix Guix build failures on non-x86 platforms like RISC-V and keep release builds current.
P2 · platform fix
  • P2 because it resolves Guix build breakages on architectures like RISC-V.
  • Bumps core toolchains and build tools to unblock ongoing build system improvements.
Ready
  • Ready for review and cross-platform verification, despite draft status.
0
  • No review verdicts recorded
Blocked
  • General consensus favors keeping the Guix environment updated.
  • Verified matching deterministic x86_64 build hashes (0xB10C, willcl-ark)
  • Helped diagnose and troubleshoot AArch64 cross-compilation failures (hebasto, janb84)
  • Suggested splitting some fixes into standalone PRs (maflcko)
0 + 47 tests
  • 0 lines added or modified outside tests
  • 47 lines added or modified in tests
  • 32 lines removed in total
  • 7 files, 11 commits
(+)#36272 fanquake guix: split Linux toolchain
  • Allow modular Linux toolchain configurations in Guix builds
  • Enables alternative setups like static release binaries and binary size tuning
P2 · unblocks #25573
  • P2 because it unblocks static release builds and toolchain tuning for binary size
  • Significantly improves maintainability of release binary build definitions
  • Ranking pass: Moved up to sit directly with the stack it unblocks (#25573, #36193); reviewing it first is what makes the others mergeable
Ready
  • Ready for review
  • Applies cleanly to master with passing CI
0
Positive
  • Positive initial reception with no objections raised
  • Concept approval without stated reasons (hebasto)
0 + 306 tests
  • 0 lines added or modified outside tests
  • 306 lines added or modified in tests
  • 275 lines removed in total
  • 5 files, 1 commits
(+)#32387 ryanofsky ipc: add windows support
  • Allow multiprocess node and GUI binaries to build and run on Windows
  • Enables Windows users and developers to utilize and test process separation
P3 · platform fix
  • P2 because it extends Windows build configurations and CI pipelines to support IPC
  • unblocks automated multiprocess testing on Windows
Needs rebase
  • Needs rebase due to merge conflicts with master
  • Carries temporary in-tree libmultiprocess changes while upstream PRs remain pending
0
Positive
  • Broad support for bringing IPC support to Windows with no objections
  • Concept approval without stated reasons (hebasto)
  • Feedback focused on testing strategies via Guix and bitcoin-mine (Sjors)
2,098 + 176 tests
  • 2,098 lines added or modified outside tests
  • 176 lines added or modified in tests
  • 775 lines removed in total
  • 90 files, 30 commits
(+)#36270 fanquake build: ensure release binaries don't contain `depends` references
  • Prevent release binaries from leaking build-host depends paths that do not exist on user systems
  • Automatically enforce in release checks that release binaries do not retain these path references
P3 · cleanup
  • P3 because it is a hygiene improvement for release binaries and build reproducibility
  • Automated release verification prevents future host path leaks
  • Ranking pass: Moved well up: it adds an automated release-binary assertion (symbol-check) against host path leakage, which is release-integrity work, the top concern in this category
Ready
  • Ready for review
  • Small patch that passes CI
0
  • No review verdicts recorded
Crickets
  • No feedback yet from reviewers
  • Recently opened without reviews or comments
4 + 7 tests
  • 4 lines added or modified outside tests
  • 7 lines added or modified in tests
  • 2 lines removed in total
  • 7 files, 4 commits
(+)#36233 hebasto guix: Update time-machine to `60f6956aeffa7f30285745bd0ea615e9acfc74f8`
  • Enable native reproducible Guix builds on RISC-V hardware
  • Bypass failing upstream tests and fix dependencies when building on riscv64 hosts
P3 · platform fix
  • P3 because it fixes native builds on RISC-V for developers running riscv64 hardware
  • Native RISC-V builds are not a tier-one release requirement
  • Updates the build commit cleanly without breaking reproducibility on other hosts
  • Ranking pass: Moved up: reproducible hashes confirmed by several reviewers and it fixes the same riscv64 Guix breakage as #35855; kept P3 because RISC-V native builds are not a release requirement
Ready
  • Ready for review
  • Deterministic build hashes match across testers on x86_64 and aarch64
1
Strong
  • Strong consensus with multiple contributors verifying matching outputs
  • Signed review approval on the latest commit (maflcko)
  • Verified identical Guix build hashes on x86_64 (fanquake, willcl-ark, Sjors)
  • Verified identical Guix build hashes on x86_64 and aarch64 (hebasto)
0 + 27 tests
  • 0 lines added or modified outside tests
  • 27 lines added or modified in tests
  • 5 lines removed in total
  • 3 files, 2 commits
(+)#35756 hebasto cmake: De-duplicate libraries where possible
  • Deduplicate link libraries to eliminate duplicate-library warnings from Apple's linker
  • Enable treating linker warnings as fatal errors in macOS Guix release builds
P3 · cleanup
  • P3 because it aligns macOS release builds with Linux and Windows by treating linker warnings as errors
  • Hardens Darwin releases against unexpected linker anomalies
  • Ranking pass: Moved up: enabling fatal linker warnings in macOS Guix builds is release hardening rather than plain de-duplication
Ready
  • Ready to review
  • Small patch with passing CI and reviewer feedback incorporated
0
  • No review verdicts recorded
Positive
  • Positive sentiment with no remaining objections
  • Suggested including the macOS Guix flag change directly, which author added (fanquake)
13 + 10 tests
  • 13 lines added or modified outside tests
  • 10 lines added or modified in tests
  • 2 lines removed in total
  • 3 files, 2 commits
(+)#36193 fanquake guix: pass `--disable-wchar_t` to (non-GUI) libstdc++
  • Reduce Linux release binary size by about 0.5 MB for bitcoind, bitcoin-cli, and other non-GUI utilities
  • Eliminate unused wide-character formatting and zoneinfo routines bundled into libstdc++
P3 · cleanup
  • P3 because it trims roughly 0.5 MB of dead code from Linux non-GUI binaries
  • Modest binary size savings that is clean but safe to defer
  • Ranking pass: Moved up: verified reproducible Guix output and part of the release-binary toolchain stack under #36272
Review #36272 first
  • Review #36272 first
  • Ready for review
0
Positive
  • Concept approval after verifying Boost macro compatibility and toolchain splitting (hebasto)
  • Verified reproducible Guix build outputs across multiple architectures (willcl-ark, rustaceanrob)
22 + 313 tests
  • 22 lines added or modified outside tests
  • 313 lines added or modified in tests
  • 275 lines removed in total
  • 7 files, 4 commits
(+)#35197 fanquake guix: add -Wl,--icf=safe to darwin build
  • Shrink macOS release binary sizes and disk footprint by eliminating duplicate code
P3 · speedup
  • P3 because shrinking macOS binaries by roughly 5% is a modest, deferrable optimization
  • The reduction saves download bandwidth and disk space for macOS users
  • It does not fix bugs, enhance security, or unblock other development
Waiting on author
  • Waiting on author to address missing compiler flags and probe ordering
  • Reviewing the current code is paused until the author updates the patch
0 (+1)
Disputed
  • Broad agreement on shrinking binary sizes with identical code folding
  • Verified roughly 5% size reduction in Darwin builds (davidgumberg)
  • Unaddressed objection: breaks function pointer uniqueness without extra flags (Sjors, 151henry151)
  • Probe order causes the linker to override safer settings (hebasto, 151henry151)
5
  • 5 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 0 lines removed in total
  • 1 files, 1 commits
(+)#36235 David-Uka ci, iwyu: fail job on compiler errors instead of silently logging them
  • Ensure CI fails when include-what-you-use encounters compiler errors
  • Prevents missing generated headers and unanalyzed files from silently passing CI checks
P3 · test coverage
  • P3 because compilation errors during IWYU analysis currently pass CI without failing the job
  • Prevents gaps in linter test coverage caused by hidden issues such as missing generated headers
  • Ranking pass: Moved up: a linter job that silently swallows compiler errors is a misleading CI signal, which this category ranks above hygiene cleanups
Ready
  • Ready to review now
  • Small, self-contained change with passing CI
0
Positive
  • Concept approval without stated reasons (hebasto)
  • No objections or alternative approaches raised
0 + 12 tests
  • 0 lines added or modified outside tests
  • 12 lines added or modified in tests
  • 0 lines removed in total
  • 1 files, 1 commits
(+)#35068 ryanofsky depends: fix cmake package discovery for depends-built packages
  • Ensure CMake packages built in depends find depends dependencies instead of host system libraries
  • Prevents host library pollution when developers have matching packages installed on their host system
P3 · bug fix
  • P3 because it fixes dependency search paths that erroneously pick up host libraries
  • Impact is narrow, primarily affecting developers building depends on hosts with matching packages
Author silent
  • Author has not responded to open review suggestions since April 2026
0
  • No review verdicts recorded
Mild
  • General agreement on fixing the variable used for package discovery
  • Unaddressed objection: appending external paths risks depends isolation, no reply (hebasto, purpleKarrot)
  • Suggested setting a clean override without inheriting host paths (purpleKarrot)
1
  • 1 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 1 lines removed in total
  • 1 files, 1 commits
(+)#35765 willcl-ark depends: hash local source contents
  • Prevent depends from building stale local packages when developers share a source cache across worktrees
  • Ensure depends reliably detects changes when files in local sources are modified or restored
P3 · bug fix
  • P3 because it prevents depends from reusing stale local package archives across git worktrees
  • Impact is minor because native_libmultiprocess is currently the only package affected
Needs rebase
  • Needs rebase before review because it currently has merge conflicts
  • Author has been inactive for almost two months
0
  • No review verdicts recorded
Crickets
  • No review feedback or concept votes have been posted yet
  • Only the author has commented to share build hashes and an open question on timestamps
38
  • 38 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 15 lines removed in total
  • 3 files, 1 commits
(+)#28690 sedited build: Introduce internal kernel library
  • Prevent the kernel library build definitions from diverging from core node builds
  • Stop the kernel from pulling in unwanted node utilities such as networking and process execution
P3 · cleanup
  • P3 because it organizes internal build targets without altering release outputs
  • Cleans up dependency tracking without fixing an active build breakage
Ready
  • Ready to review now
  • Branch is rebased with passing CI and incorporates the latest suggestions
2 (+2)Strong
  • Strong consensus on establishing explicit internal targets for the kernel
  • Verified on multiple platforms with Guix reproducible builds (janb84)
  • Verified compatibility with a downstream proof-of-concept iOS app (Sjors)
  • Debated library structure options and settled them without blocking objections (ryanofsky, ajtowns)
  • Re-approved after the latest push (yuvicc, w0xlt)
114 + 12 tests
  • 114 lines added or modified outside tests
  • 12 lines added or modified in tests
  • 122 lines removed in total
  • 6 files, 2 commits
(+)#36024 hebasto ci: Make `test_bitcoin-qt.exe` output visible
  • Make Qt unit test output and failure messages visible in Windows CI runs
  • Helps developers diagnose GUI test failures that are currently suppressed by the runner
P3 · CI fix
  • P3 because it restores missing failure logs in Windows CI environments
  • Improves build diagnostics when Windows automated test jobs fail silently
Ready
  • Ready for review
  • Small patch with passing CI
0
  • No review verdicts recorded
Crickets
  • No reviews or feedback yet
2
  • 2 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 0 lines removed in total
  • 2 files, 1 commits
(+)#36106 ryanofsky bitcoin wrapper: respect CMAKE_INSTALL_BINDIR/LIBEXECDIR
  • Allow distributions with custom install paths to run the bitcoin wrapper without execution errors
  • Fixes broken binary discovery when launching components on systems like Arch Linux
P3 · platform fix
  • P3 because it fixes packaging configuration for distributions that override standard install paths
  • Packaging maintainers get functioning installations without manual path workarounds
Ready
  • Ready to review
  • Code is clean, test suite issues are resolved, and CI is passing
0
Strong
  • Strong support across reviewers with all prior feedback addressed
  • Approach approved after testing with custom install prefixes (hebasto)
  • Verified by testing on Arch Linux directory layouts (cyb3ralbert)
42 + 71 tests
  • 42 lines added or modified outside tests
  • 71 lines added or modified in tests
  • 6 lines removed in total
  • 6 files, 2 commits
(+)#35957 hebasto ci: Enable Boost.MultiIndex invariant-checking mode
  • Catch subtle corruptions and container inconsistencies early during CI test runs
  • Helps developers detect indexing and memory pool bugs before changes merge
P3 · test coverage
  • P3 because early detection of data structure corruptions adds maintenance value
  • Provides useful debug-configuration hardening that can be safely deferred
Ready
  • Ready to review
  • Clean small change with all reviewer questions addressed
0
Strong
  • Positive feedback with earlier CI timeout concerns resolved
  • Excluding the slow fuzz job resolved runtime timeout concerns (fanquake)
  • Approach approval after independently reproducing job execution times (jeanpablojp)
0 + 5 tests
  • 0 lines added or modified outside tests
  • 5 lines added or modified in tests
  • 2 lines removed in total
  • 3 files, 1 commits
(+)#35454 ryanofsky cmake: skip missing example targets in libmultiprocess.cmake
  • Prevent CMake configuration errors when building against newer or external libmultiprocess versions
  • Keeps builds working if upstream libmultiprocess omits example targets
P3 · bug fix
  • P3 because it fixes CMake configuration failures when using external libmultiprocess trees
  • Default in-tree builds are unaffected but unblocks cross-repo CI and future subtree updates
  • Ranking pass: Moved up: it is the piece that lets Core build against updated/external libmultiprocess, so it gates subtree-update work
Author silent 103d
  • Author has been inactive for over 100 days
0
Positive
  • Concept approval for defensive CMake integration of subprojects (hebasto)
  • Suggested upstream subprojects should handle gating example targets directly (hebasto)
5
  • 5 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 1 lines removed in total
  • 1 files, 1 commits
(+)#31349 vasild ci: detect outbound internet traffic generated while running tests
  • Detect unexpected outbound network traffic and DNS lookups generated while running tests in CI
  • Prevent tests from violating test isolation and leaking developer IP addresses
P3 · test coverage
  • P3 because it improves CI signal and hermeticity by failing builds on outbound network leaks
  • Prevents future pull requests from introducing network-leaking tests without fixing a broken build
  • Ranking pass: Moved down: privacy/hermeticity value is real but it is preventive CI tightening, below the release-integrity and broken-signal items above
Author silent
  • Author has been silent for over 90 days with an unanswered technical comment
0 (+3)Mild
  • Broad concept agreement on catching unexpected network traffic in CI (laanwj, jonatack, sipa, Sjors)
  • Approvals on earlier revisions (ryanofsky, 0xB10C, fjahr)
  • Unaddressed technical comment: tcpdump direction flag is a no-op when reading capture files (fjahr)
  • Concern about false positives and failures when running CI scripts locally under Podman (fanquake, maflcko)
0 + 77 tests
  • 0 lines added or modified outside tests
  • 77 lines added or modified in tests
  • 2 lines removed in total
  • 6 files, 1 commits
(+)#36147 willcl-ark ci: add [free|open|net]BSD ci test jobs
  • Catch BSD-specific regressions in PR CI before code merges to master
  • Reduce reactive bug fixing for maintainers monitoring nightly BSD test runs
P3 · test coverage
  • P3 because catching secondary platform regressions pre-merge is helpful but deferrable
  • Benefits BSD platform maintainers but adds CI overhead for non-primary targets
  • Ranking pass: Moved up slightly: pre-merge coverage for secondary platforms currently caught only by external nightlies
Needs rebase
  • Needs rebase due to merge conflicts
  • Draft PR pending decision on whether to reduce scope to FreeBSD
0
Mild
  • Nonblocking objection: running three BSD VMs risks flaky tests and CI noise (maflcko)
  • Concept approval for adding a test job on at least FreeBSD (hebasto)
  • Author offered to narrow scope to FreeBSD or close the PR if VM CI is unwanted (willcl-ark)
117 + 105 tests
  • 117 lines added or modified outside tests
  • 105 lines added or modified in tests
  • 141 lines removed in total
  • 14 files, 4 commits
(+)#35356 maflcko ci: Test build dir with spaces
  • Run Windows CI builds from a directory containing spaces
  • Catch path-quoting and subprocess bugs before they reach developers using spaced paths
P3 · test coverage
  • P3 because it adds automated coverage for paths with spaces in developer environments
  • Windows CI is needed because Linux symlink resolution can bypass subprocess space-handling tests
  • Ranking pass: Moved down: useful coverage, but it depends on an unrelated path-handling bug fix before CI can be green
CI failing
  • CI is failing consistently because this test exposes an existing bug in external signer path handling
0
Positive
  • General agreement on testing spaced paths in CI once the exposed bug is resolved
  • Concept approval without stated reasons (hebasto)
  • Confirmed the Windows CI failure is expected and reproduces an underlying bug (fanquake, maflcko)
13
  • 13 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 4 lines removed in total
  • 1 files, 2 commits
(+)#33145 m3dwards CI: silent merge check
  • Automatically detect logical merge conflicts between open pull requests and master
  • Saves maintainers from tedious manual testing to catch PRs broken by newly merged code
P3 · new feature
  • P3 because it reduces maintainer toil by automating logical conflict detection across PRs
  • Does not affect release integrity, supported platform builds, or core CI reliability
  • Ranking pass: Moved down: maintainer-toil automation with no release or platform consequence, and dormant
Author silent
  • Author has been silent for over two months
0
Strong
  • Strong support to replace tedious manual searching for silent conflicts (maflcko)
  • Concept approval for automated conflict detection (fjahr)
  • Permissions and execution efficiency concerns were resolved (willcl-ark)
412
  • 412 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 0 lines removed in total
  • 3 files, 1 commits
(+)#34721 willcl-ark build: install shell completions via cmake
  • Automatically install bash and fish shell completions alongside binaries during CMake installation
  • Eliminates manual copying of completion scripts for source installers and package maintainers
P3 · new feature
  • P3 because this provides a minor usability improvement for Linux packagers and command-line users
  • Automates previously manual completion script installation with minimal ongoing maintenance
  • Does not affect release integrity, reproducible builds, or core platform support
  • Ranking pass: Moved down: packaging convenience only; ranks below CI-signal and depends correctness items
Ready
  • Ready for review now
  • Configure-time file checks were replaced with explicit flags and confirmed clean
1 (+3)Strong
  • Strong consensus on installing completions via CMake (BrandonOdiwuor, caesrcd, w0xlt, hebasto, ryanofsky)
  • Fragile configure-time file checks resolved by adding explicit target flags (purpleKarrot, ryanofsky)
  • Open preference to inline install rules instead of using a convenience wrapper (purpleKarrot, hebasto)
23
  • 23 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 8 lines removed in total
  • 4 files, 1 commits
(+)#36042 maflcko build: Bump g++ minimum supported version to 13
  • Bump minimum supported compiler to GCC 13.1, dropping unsupported GCC 12
  • Enables modern C++ features across the codebase such as std::format and eventual C++23 adoption
P3 · unblocks #36033
  • P3 because it unblocks C++20 std::format and future C++23 adoption across the codebase
  • Targeted for v33.x making the toolchain bump deferrable
  • Ranking pass: Moved down: the toolchain bump is a deadline-free transition targeted at a later release cycle
Needs rebase
  • Review #36052 first
  • Needs rebase due to merge conflicts with master
0
Strong
  • Concept approval and verified native GCC package behavior on NetBSD (hebasto)
  • No objections raised during discussion on compiler support (fanquake, maflcko)
23 + 127 tests
  • 23 lines added or modified outside tests
  • 127 lines added or modified in tests
  • 110 lines removed in total
  • 32 files, 8 commits
(+)#36036 maflcko build: Bump clang minimum supported version to 19
  • Raise the minimum supported Clang version to 19 to enable newer C++20 features
  • Removes workarounds needed for older compilers and simplifies future codebase modernization
P3 · cleanup
  • P3 because toolchain modernization benefits are deferred to a future release next year
  • Only enables C++20 CTAD for alias templates at this stage without immediate urgency
CI failing
  • CI is failing on the PR branch due to a workflow runner change
0
  • No review verdicts recorded
Crickets
  • No reviews or comments yet
  • Opened as a draft without feedback from other contributors
16 + 3 tests
  • 16 lines added or modified outside tests
  • 3 lines added or modified in tests
  • 19 lines removed in total
  • 6 files, 3 commits
(+)#36033 maflcko [wip,nomerge,rfc] build: Require C++23 compiler
  • Eliminate custom workarounds and polyfills by requiring C++23
  • Let developers use modern standard library features directly
P3 · decision needed
  • P3 because bumping to C++23 is a deferrable standard upgrade with modest changes over C++20
  • Reaching consensus on supported compiler baselines is needed before moving forward
  • Ranking pass: Placed after the two compiler-minimum bumps it depends on; it is an RFC whose direction should follow them
Needs rebase
  • Not ready for review because the PR has merge conflicts and CI is failing
0
Positive
  • Initial sentiment is positive on exploring the compiler upgrade
  • Concept approval without stated reasons (l0rinc)
  • Minor feedback on header include heuristics (hebasto)
69 + 43 tests
  • 69 lines added or modified outside tests
  • 43 lines added or modified in tests
  • 280 lines removed in total
  • 50 files, 8 commits
(+)#35762 willcl-ark test: optionally run functional tests via CTest
  • Allow developers to run functional tests alongside unit tests using standard CTest commands
  • Enables test filtering, rerun flags, and native IDE integration for functional test workflows
P3 · new feature
  • P3 because it standardizes test invocation under CMake without affecting release integrity
  • Improves developer build ergonomics rather than fixing platform build failures
  • Ranking pass: Moved down: developer ergonomics with an open complexity objection and no coverage gain
Ready
  • Ready to review: CI is passing and the branch is up to date with feedback
0
  • No review verdicts recorded
Mild
  • No approvals yet with reservations about the added complexity (maflcko)
  • Questioned whether adding CMake orchestration is justified over a Python alternative (maflcko)
  • Drawback: CTest execution does not support win64 cross-testing workflows (maflcko)
18 + 431 tests
  • 18 lines added or modified outside tests
  • 431 lines added or modified in tests
  • 45 lines removed in total
  • 9 files, 6 commits
(+)#35167 ajtowns Convert check-deps.sh to python
  • Automate library dependency boundary enforcement directly from documentation diagrams
  • Eliminate manual dependency tracking and fix macOS symbol parsing false passes
P3 · test coverage
  • P3 because it prevents false passes in CI library dependency checks on macOS
  • Does not fix build breakages, release integrity, or core CI reliability
Needs rebase
  • Needs rebase due to merge conflicts with master while author has been inactive
1Mild
  • Broad concept support for migrating dependency checks to Python (sedited, ryanofsky)
  • Verified symbol parsing fixes on macOS (janb84)
  • Nonblocking objection: moving init code breaks logging in auxiliary binaries (ryanofsky)
  • Nonblocking objection: prefers suppressions over adding undesirable dependency edges (ryanofsky)
5 + 291 tests
  • 5 lines added or modified outside tests
  • 291 lines added or modified in tests
  • 219 lines removed in total
  • 5 files, 4 commits
(+)#35072 hebasto cmake: Remove optional definitions from `bitcoin-build-config.h`
  • Prevent unnecessary full project rebuilds when developers reconfigure CMake build options
  • Scope configuration flags so changing one option only recompiles affected targets
P3 · speedup
  • P3 because it reduces rebuild times for developers toggling options like GUI or tracing
  • Provides iteration speedups but fine-tunes configuration without broader build improvements
  • Enables follow-up work in #29914
  • Ranking pass: Moved down: rebuild-time convenience only, and its approach is contested; comparable to other developer-iteration tweaks
Needs rebase
  • Needs rebase and has failing CI
  • Author converted to draft to rework design and has been inactive
0 (+1) -1
Disputed
  • Concept objection: config headers are intended to trigger rebuilds on configuration changes (fanquake)
  • Questioned whether scoping flags to targets makes sense without an overall design (fanquake)
  • Concern that auxiliary tools rely on the header as a single source of truth (151henry151)
  • Verified that enabling GUI options avoids rebuilding unrelated targets (BrandonOdiwuor)
11 + 1 tests
  • 11 lines added or modified outside tests
  • 1 lines added or modified in tests
  • 61 lines removed in total
  • 25 files, 5 commits
(+)#36271 fanquake Revert #36057 & document mingw-w64 requirement
  • Clean up redundant build checks now that Mingw-w64 12.0 is the baseline for Windows builds
  • Document the minimum toolchain requirement and remove obsolete cross-compilation configurations
P3 · cleanup
  • P3 because it cleans up temporary build checks and workarounds no longer needed on master
  • Clarifies minimum toolchain requirements for Windows cross-compilation with minor maintenance leverage
Ready
  • Ready to review with a clean diff, passing CI, and all review suggestions already incorporated
1
Strong
  • Strong consensus to complete the planned post-branch toolchain cleanup
  • Concept approval because it follows the agreed plan (hebasto)
  • Suggested dropping obsolete Nix MSVCRT references which was adopted (maflcko)
  • Code review approval on the updated revision (ViniciusCestarii)
4 + 1 tests
  • 4 lines added or modified outside tests
  • 1 lines added or modified in tests
  • 19 lines removed in total
  • 6 files, 3 commits
(+)#36060 151henry151 build: require KJ exception support for IPC
  • Prevent obscure build and link failures when building with IPC enabled
  • Catch missing library exception handling early during build configuration
P3 · platform fix
  • P3 because it diagnoses missing library exception support at configure time
  • Avoids obscure link-time failures for developers compiling with IPC support
  • Ranking pass: Moved down: configure-time diagnostics for experimental multiprocess builds, narrower than the depends/CI fixes above
Ready
  • Ready for review now with clean CI and complete commits
0
  • No review verdicts recorded
Crickets
  • No reviews or comments yet
  • Awaiting initial community feedback after being opened as draft
179
  • 179 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 0 lines removed in total
  • 12 files, 3 commits
(+)#35417 willcl-ark ci: isolate container test networks
  • Allow developers to run multiple local CI container jobs simultaneously without network address collisions
P3 · cleanup
  • P3 because it eliminates IP collisions when running concurrent local CI containers
  • Benefit is limited to developers running multiple local CI test runs at once
  • Ranking pass: Moved down: benefit is limited to developers running several local CI containers at once
CI failing
  • CI is failing and the author has been inactive for months
0
Strong
  • Strong overall approval across concept and code
  • Concept approval without detailed technical justification (fanquake)
  • Approved after nits on subnet command and environment variables were addressed (maflcko)
0 + 37 tests
  • 0 lines added or modified outside tests
  • 37 lines added or modified in tests
  • 8 lines removed in total
  • 3 files, 2 commits
(+)#36275 fanquake build: enable `-Wunused-const-variable`
  • Catch unused constant definitions in headers automatically with a dedicated compiler warning
  • Prevents dead code clutter and unneeded static variables across compilation units
P3 · cleanup
  • P3 because it improves developer hygiene by flagging dead constant definitions in headers
  • Helps incrementally unblock enabling broader unused compiler warnings across the codebase
  • Ranking pass: Placed ahead of #36167, which it is a stepping stone for
Review subtrees first
  • Review upstream subtree PRs in leveldb, minisketch, and crc32c first
  • Author is waiting for subtree changes to merge and flagged the commits as nomerge
0
  • No review verdicts recorded
Crickets
  • No reviews or feedback yet
  • Recently opened as a draft waiting on upstream subtree updates
31
  • 31 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 27 lines removed in total
  • 10 files, 5 commits
(+)#36167 fanquake [RFC] Enable `-Wunused`
  • Catch dead code, unused variables, and missed calls automatically during CI builds
  • Spare developers and maintainers from manual audits and ad-hoc dead code cleanups
P3 · cleanup
  • P3 because compiler warnings for dead code provide developer hygiene rather than fix active build bugs
  • It prevents subtle mistakes like forgotten calls, but remains deferrable work
  • Ranking pass: Moved down: broad warning enablement blocked on three upstream subtree changes and an unresolved scope question
CI failing
  • Not ready for full review because CI is failing with a compiler error
  • Marked RFC with temporary commits requiring upstream subtree changes first
0
  • No review verdicts recorded
Neutral
  • Receptive to enabling the warnings but suggested splitting them up (maflcko)
  • Suggested isolating fine-grained flags first to avoid massive tree-wide churn (maflcko)
  • Author split one warning flag out into a dedicated PR in response (fanquake)
536 + 58 tests
  • 536 lines added or modified outside tests
  • 58 lines added or modified in tests
  • 577 lines removed in total
  • 168 files, 7 commits
(+)#35911 fanquake Warn on and add missing [[noreturn]]
  • Prevent false-positive compiler warnings on unreachable code paths
  • Help compilers spot non-returning functions to improve diagnostics and optimizations
P3 · cleanup
  • P3 because it offers minor leverage for future code by catching missing attributes
  • Has no urgency or direct user-facing impact
Waiting on libmultiprocess
  • Paused by author until an upstream libmultiprocess subtree update
  • Windows CI is currently failing
0
Positive
  • Concept approval without stated reasons (hebasto, stickies-v)
  • Support with help diagnosing Clang and Windows warning issues (maflcko)
18 + 61 tests
  • 18 lines added or modified outside tests
  • 61 lines added or modified in tests
  • 65 lines removed in total
  • 20 files, 5 commits
(+)#36241 Ronin95 build, doc: Warn on unprivileged Guix daemon usage
  • Warn developers early when using an unprivileged Guix daemon before long builds fail
  • Prevent confusing late compilation errors and document how to switch to root mode
P3 · user request
  • P3 because it saves developers hours of wasted compilation time from late Guix build failures
  • Diagnoses broken unprivileged user namespace setups early when building without substitutes
Ready
  • Ready for review now with a small, self-contained diff and no technical blockers
0
  • No review verdicts recorded
Crickets
  • No substantive reviews or Concept ACKs yet
  • Suggested keeping as draft pending rough consensus in RFC #36239 (hebasto)
0 + 57 tests
  • 0 lines added or modified outside tests
  • 57 lines added or modified in tests
  • 0 lines removed in total
  • 2 files, 2 commits
(+)#35722 willcl-ark ci: cache BSD sdk sources separately
  • Avoid re-downloading BSD SDK archives from external mirrors when the container cache misses
  • Reduces wasted CI run time and avoids potential failures from unresponsive upstream mirrors
P3 · speedup
  • P3 because addresses an inefficiency rather than an active CI failure
  • Slightly speeds up CI and reduces external mirror bandwidth usage on container cache misses
Needs rebase
  • Needs rebase due to merge conflicts with master
0
  • No review verdicts recorded
Neutral
  • No reviews or approvals yet
  • Questioned whether download failures have actually occurred in CI (maflcko)
  • Suggested fallback mirrors as an alternative approach to caching (maflcko)
29 + 91 tests
  • 29 lines added or modified outside tests
  • 91 lines added or modified in tests
  • 69 lines removed in total
  • 6 files, 3 commits
(+)#36252 ryanofsky ci, iwyu: skip subtrees in compilation database
  • Stop Include What You Use CI checks from analyzing excluded subtree directories
  • Avoid misleading warnings in CI logs and save runner time on third-party code
P3 · cleanup
  • P3 because it reduces CI log noise and redundant processing on subtrees
  • Routine CI cleanup that does not fix a broken build or flaky test
Ready
  • Ready to review
  • Small 11-line CI script update with passing CI
0
  • No review verdicts recorded
Neutral
  • Neutral sentiment with no reviews or approvals yet
  • Asked why subtrees are not excluded via CMake instead of CI (hebasto)
  • Author explained CI filtering avoids breaking other tools like clang-tidy
0 + 11 tests
  • 0 lines added or modified outside tests
  • 11 lines added or modified in tests
  • 0 lines removed in total
  • 1 files, 1 commits
(+)#36121 maflcko fuzz: Corpus sharding in parallel runs
  • Parallelize individual fuzz targets across workers by splitting their corpora
  • Prevent single long-running fuzz targets from bottlenecking multi-core test runs
P3 · speedup
  • P3 because it speeds up heavy CI fuzz jobs by 7 to 15 minutes using ramdisks and tmpfs
  • Internal performance optimization for CI runs rather than a build reliability fix
Ready
  • Ready for review, CI passing and author addressed initial feedback
0
Strong
  • Concept approval and verified speedups on MSan and Windows (jeanpablojp)
  • Concern that sharding fragments libFuzzer output so coverage cannot be compared across runs (jeanpablojp)
  • Concern about storage thrashing and target instantiation overhead on slower disks (jeanpablojp)
0 + 70 tests
  • 0 lines added or modified outside tests
  • 70 lines added or modified in tests
  • 29 lines removed in total
  • 2 files, 2 commits
(+)#24773 hebasto Enable HW-accelerated implementations of SHA256 for MSVC builds
  • Bring hardware-accelerated SHA256 hashing to MSVC builds on Windows
  • Eliminate significant hashing performance penalties for native Windows developer builds
P4 · speedup
  • P4 after comparing with the other PRs here (assessed alone as P3): Lowered to P4: maintainers intend to drop MSVC in favour of clang-cl (#31507), so this optimises a toolchain on its way out — same reasoning already applied to #32409
  • P3 because official release binaries use MinGW and Guix rather than MSVC
  • Benefit is limited strictly to contributors compiling natively on Windows
Waiting on author
  • Paused while waiting on author response regarding a project decision to close it
  • Maintainers decided in a meeting to drop MSVC support in favor of clang-cl in #31507
0 (+1)
Blocked
  • Blocked by project decision to deprecate MSVC support in favor of #31507
  • Unaddressed objection: adds MSVC code conflicting with #31507, no author reply (fanquake)
  • Verified by testing five- to ten-fold hashing speedups on Windows (sipsorcery, m3dwards)
  • Concept approval while questioning the AVX2 choice (laanwj)
102
  • 102 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 61 lines removed in total
  • 4 files, 5 commits
(+)#35713 rustaceanrob Remove boost as a unit test runner
  • Eliminate Boost.Test to improve failure diagnostics and reduce build maintenance overhead for developers
  • Unblock future test runner concurrency and tailored testing tools for the project
P4 · cleanup
  • P3 because it simplifies build system scripts and depends configurations
  • It removes maintenance quirks without affecting production builds or binary release integrity
Ready
  • Ready to review
  • CI is passing and recent pushes have resolved prior review comments
0
Strong
  • Strong sentiment favoring the removal of Boost.Test for maintainability
  • Strong support citing customizability and future concurrent test execution needs (josibake)
  • Concept approval with extensive testing of runner flags, signals, and seed reproduction (jeanpablojp)
  • Feedback on stringification fallbacks and static assertions incorporated cleanly (maflcko)
3 + 1,693 tests
  • 3 lines added or modified outside tests
  • 1,693 lines added or modified in tests
  • 264 lines removed in total
  • 163 files, 12 commits
(+)#33828 151henry151 Check required interfaces before generating manpages
  • Prevents maintainers from accidentally generating incomplete manpages when build options are missing
  • Ensures release documentation does not silently drop wallet or ZMQ command-line options
P4 · bug fix
  • P4 because it only exposes an internal define for script inspection
  • It has no effect on runtime binary behavior, dependencies, or platform support
Author silent
  • Author has been silent for months awaiting build maintainer input on CMake conventions
0 (+1)
Mild
  • Concept approval and request for re-review (sedited)
  • Concern raised about mixing compile definitions and header defines (maflcko)
  • Awaiting feedback from build maintainers on CMake naming conventions
3 + 53 tests
  • 3 lines added or modified outside tests
  • 53 lines added or modified in tests
  • 0 lines removed in total
  • 2 files, 1 commits
(+)#36023 Sjors build: Always define HAVE_SYSTEM
  • Silence compiler warnings on platforms lacking std::system such as iOS
  • Clean up build logs for developers targeting platforms without std::system
P4 · platform fix
  • P4 because it only fixes minor compiler warnings on a non-primary platform like iOS
  • It does not fix any build failures on supported platforms
Ready
  • Ready to review
  • The patch is minimal and clean with no open blockers
0
  • No review verdicts recorded
Mild
  • Skeptical of ad-hoc macro changes without a project-wide convention (fanquake, hebasto, maflcko)
  • Suggested reverting check sites instead of altering cmake definitions (hebasto)
  • Suggested establishing and enforcing a global macro standard via linter (maflcko)
1
  • 1 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 1 lines removed in total
  • 1 files, 1 commits
(+)#36029 hebasto cmake: Detect and log MinGW-w64 version when cross-compiling for Windows
  • Log the MinGW-w64 version during Windows cross-compilation
  • Makes diagnosing toolchain-specific build issues easier for developers
P4 · cleanup
  • P4 because it only adds diagnostic configure logging
  • Provides minor debugging convenience without fixing bugs or altering build behavior
Ready
  • Ready for review
  • Small and self-contained with no blockers
1Strong
  • Uncontroversial diagnostic enhancement
  • Verified by cross-compiling on Arch Linux and checking output (ViniciusCestarii)
36
  • 36 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 0 lines removed in total
  • 2 files, 1 commits
(+)#35515 hebasto cmake: Use target file name for manpage installation
  • Allow manpage installation to locate the correct file when executable names differ from target names
  • Prevents failed or mismatched manpage installs when targets override their binary names
P4 · cleanup
  • P4 because no current targets override output names, causing zero behavioral change today
  • Serves only as speculative convenience for future or downstream target renaming
Author silent
  • Author has been silent for three months, but the PR is ready to review with no merge conflicts
2Positive w/ caveats
  • Supported as harmless future-proofing tested across build configurations (BrandonOdiwuor, 151henry151)
  • Nonblocking objection: adds complexity and invites inconsistent target naming (ryanofsky)
  • Concern that tracking build config postfixes could break manpage lookups (151henry151)
1
  • 1 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 1 lines removed in total
  • 1 files, 1 commits
(+)#36206 fanquake build: drop use of `OBJC_OLD_DISPATCH_PROTOTYPES`
  • Remove obsolete compiler flags from the macOS build configuration
  • Reduces maintenance clutter following the minimum SDK bump to macOS 14
P4 · cleanup
  • P4 because it is a minor cleanup of an obsolete compile definition with no functional impact
  • Does not fix a broken build or unblock other development
Ready
  • Worth reviewing now as a straightforward single-line deletion with passing CI
0
Positive
  • Positive sentiment with no objections
  • Concept approval confirming the flag is obsolete in modern macOS toolchains (hebasto)
0
  • 0 lines added or modified outside tests
  • 0 lines added or modified in tests
  • 1 lines removed in total
  • 1 files, 1 commits
(+)#36269 fanquake guix: build with `_GLIBCXX_USE_DEPRECATED=0`
  • Strip unused deprecated standard library features from Guix release builds
  • Slightly reduces debug symbol overhead in release binaries
P4 · cleanup
  • P4 because it is a minor build tweak that saves only a few bytes of debug symbols
  • Addresses no bugs or security concerns with negligible impact on build times
Review #36082 first
0
  • No review verdicts recorded
Crickets
  • No feedback or reviews yet
  • Recently opened as a draft with no discussion
205 + 9 tests
  • 205 lines added or modified outside tests
  • 9 lines added or modified in tests
  • 6 lines removed in total
  • 7 files, 4 commits
(+)#36268 fanquake refactor: prune unused semi-colons
  • Prevent compiler noise from redundant semicolons across the codebase
  • Enforce clean syntax automatically during builds
P4 · cleanup
  • P4 because it is a cosmetic compiler hygiene improvement
  • Enforcing this warning does not fix build breakages, CI reliability, or binary integrity
Waiting on subtree sync
  • Wait to review: author is waiting on a libmultiprocess subtree pull
  • CI is currently failing
0
  • No review verdicts recorded
Crickets
  • No reviews or comments yet
  • Opened recently as a draft without feedback
74 + 23 tests
  • 74 lines added or modified outside tests
  • 23 lines added or modified in tests
  • 95 lines removed in total
  • 62 files, 4 commits
(+)#36052 maflcko ci: Doc: Move all config comments right next to the option they explain
  • Place CI config comments directly next to the options they document
  • Avoids ShellCheck warnings and improves readability for CI maintainers
P4 · cleanup
  • P4 because it is a purely cosmetic cleanup for CI setup scripts
  • Avoids lint warnings without affecting build correctness or CI reliability
Needs rebase
  • Has merge conflicts with the base branch and needs a rebase before review
1
Positive
  • Uncontroversial cleanup with no objections raised
  • Approval ACK without detailed comments (hebasto)
0 + 101 tests
  • 0 lines added or modified outside tests
  • 101 lines added or modified in tests
  • 99 lines removed in total
  • 26 files, 2 commits
(+)#36074 maflcko scripted-diff: [test] Add util/check.h includes for assertions
  • Clarify assertion header usage across test and fuzz harnesses to prevent ambiguity around disabled checks
  • Make automated header analysis tooling easier to run across tests
P4 · cleanup
  • P4 because the build change is confined to a minor CI lint environment adjustment
  • Carries minimal impact beyond enabling clang-format for scripted diffs
Needs rebase
  • Needs rebase across many conflicting PRs, and author noted merge friction may prevent landing
0
  • No review verdicts recorded
Positive
  • General support for systematically cleaning up assertion headers in test files (l0rinc)
  • Assisted with scripted-diff regex matching and test runner paths (jeanpablojp)
12 + 329 tests
  • 12 lines added or modified outside tests
  • 329 lines added or modified in tests
  • 225 lines removed in total
  • 155 files, 3 commits
(+)#32409 hebasto test: Introduce `SUPPRESS_ABORT_MESSAGE` environment variable
  • Prevent MSVC debug test runs from hanging on assertion popup dialogs in automated setups
  • Helps developers and external automation running unattended Windows debug builds
P4 · platform fix
  • P4 because Bitcoin Core does not build with the MSVC debug runtime or set this variable in CI
  • The benefit is limited entirely to external out-of-tree nightly builds
  • Ranking pass: Moved to last: MSVC-debug-only, unused anywhere in tree, NACKed, and further undercut by the clang-cl migration
Author silent
  • Author has been silent for months with questions unanswered on whether the change is obsolete
0 -1
Blocked
  • Objection because the environment variable is undocumented and unused in the repository (fanquake)
  • Suggested suppressing aborts unconditionally rather than adding an unused variable (hodlinator, sedited)
  • Questioned if runtime transitions already made this obsolete, with no author reply (fanquake)
0 + 17 tests
  • 0 lines added or modified outside tests
  • 17 lines added or modified in tests
  • 0 lines removed in total
  • 1 files, 1 commits
Reviewability: ReadyStalePaused
Agreement: StrongPositivePositive w/ caveatsNeutralMildDisputedBlockedCrickets
Reviews: current code-review ACKs, then (+stale ACKs) and -NACKs; greener = more ACKs.
Size: lines added or modified outside tests, then in tests; greener = smaller.
Ranking pass (2026-09-17): all PRs here were compared with each other; 32 notes on review order, overlaps, and band changes.

Covers

How the project is built, tested, and released: the CMake build system, the depends system and its packages, Guix reproducible builds, CI configuration and scripts, compiler and platform support, and the tooling under contrib used for releases and development. Platform labels (Windows, macOS) point here when the change is about building or running on that platform rather than about a feature. The Build system label is a strong prior.

Not build: source changes that happen to fix a compiler warning as a side effect (they belong to their area).

What matters here

Release integrity first: reproducibility of Guix builds, correctness of dependency pinning and verification, and anything that could ship a wrong binary. Then supported-platform breakage: a platform that fails to build or run blocks users on it. Then CI reliability: flaky or misleading jobs waste every contributor's time and hide real failures. Then dependency transitions with deadlines (compiler or library minimum versions, deprecations upstream). Then build time and contributor friction.

Cosmetic CMake cleanups rank low unless they remove a recurring breakage.

generated 2026-09-17 21:55 UTC