Context
While updating the Arch Linux openmoonray AUR package to v2026.29.1, I've been maintaining a local patch to build cleanly on a modern toolchain (GCC 16, Boost 1.92, TBB 2023+, CMake 4, and a monolithic USD package). Cross-checking that patch against open PRs across the org, most of it turns out to already be proposed upstream — just sitting unreviewed, some for months. Listing them here in case it's useful to have them in one place.
I also checked each of these against the Rocky 9 build (GCC ~11, Boost 1.75, classic TBB 2020.3, non-monolithic USD, per building/Rocky9/install_packages.sh): none of them regress that build. The version/include fixes are backward-compatible no-ops there, and the two USD/TBB CMake changes are guarded (if(TARGET usd_ms), find_package(TBB CONFIG) falling through when not found) so they simply don't trigger on that toolchain.
Ready to merge (single PR each, exact fix)
arras_render #2 — missing <functional> include in OrbitCam.h
cmake_modules #2 — prefer modern system-provided TBB via find_package(TBB CONFIG) before falling back to the bundled find-module
hdMoonray #5 — support monolithic USD builds (interface polyfills for a combined usd_ms target)
moonray_sdr_plugins #1 — same monolithic-USD fix
moonshine_usd #1 — same monolithic-USD fix
moonray #12 — disable AVX512PF/AVX512ER cpuid checks removed from newer compiler headers
moonray_gui #3 — standardize on Q_EMIT/Q_SIGNALS/Q_SLOTS to avoid the Qt/TBB keyword collision (covers 7 files, supersedes older Welcome to MoonRay! #1/Moonray for windows ? #2)
moonshine #8 — DwaBase attribute lookup fix for stricter C++ standards
Same fix, multiple competing open PRs (worth picking one and closing the rest)
mcrt_dataio: #6, #7, #9 all add the same missing <cstdint> include in ClockDelta.h
scene_rdl2: #11 (narrow) and #13 (broader, also covers BinPacketDictionary.h and the python CMake Boost::system removal) overlap
Already merged
arras4_core #8 — Boost io_service→io_context, drop Boost::system 🎉
No PR yet, if anyone wants to pick these up
scene_rdl2/lib/render/util/IndexableArray.h — typename hasher::result_type → std::size_t (the former isn't guaranteed by std::hash in a way that compiles cleanly everywhere)
- top-level
arras/distributed/CMakeLists.txt — drop system from its Boost find_package COMPONENTS list (same class of fix as the merged arras4_core one)
Happy to help review/rebase any of the above if that's useful — just flagging since they'd remove a good chunk of what downstream packagers currently have to patch around.
Context
While updating the Arch Linux
openmoonrayAUR package to v2026.29.1, I've been maintaining a local patch to build cleanly on a modern toolchain (GCC 16, Boost 1.92, TBB 2023+, CMake 4, and a monolithic USD package). Cross-checking that patch against open PRs across the org, most of it turns out to already be proposed upstream — just sitting unreviewed, some for months. Listing them here in case it's useful to have them in one place.I also checked each of these against the Rocky 9 build (GCC ~11, Boost 1.75, classic TBB 2020.3, non-monolithic USD, per
building/Rocky9/install_packages.sh): none of them regress that build. The version/include fixes are backward-compatible no-ops there, and the two USD/TBB CMake changes are guarded (if(TARGET usd_ms),find_package(TBB CONFIG)falling through when not found) so they simply don't trigger on that toolchain.Ready to merge (single PR each, exact fix)
arras_render#2 — missing<functional>include inOrbitCam.hcmake_modules#2 — prefer modern system-provided TBB viafind_package(TBB CONFIG)before falling back to the bundled find-modulehdMoonray#5 — support monolithic USD builds (interface polyfills for a combinedusd_mstarget)moonray_sdr_plugins#1 — same monolithic-USD fixmoonshine_usd#1 — same monolithic-USD fixmoonray#12 — disable AVX512PF/AVX512ER cpuid checks removed from newer compiler headersmoonray_gui#3 — standardize onQ_EMIT/Q_SIGNALS/Q_SLOTSto avoid the Qt/TBB keyword collision (covers 7 files, supersedes older Welcome to MoonRay! #1/Moonray for windows ? #2)moonshine#8 —DwaBaseattribute lookup fix for stricter C++ standardsSame fix, multiple competing open PRs (worth picking one and closing the rest)
mcrt_dataio: #6, #7, #9 all add the same missing<cstdint>include inClockDelta.hscene_rdl2: #11 (narrow) and #13 (broader, also coversBinPacketDictionary.hand the python CMake Boost::system removal) overlapAlready merged
arras4_core#8 — Boostio_service→io_context, dropBoost::system🎉No PR yet, if anyone wants to pick these up
scene_rdl2/lib/render/util/IndexableArray.h—typename hasher::result_type→std::size_t(the former isn't guaranteed bystd::hashin a way that compiles cleanly everywhere)arras/distributed/CMakeLists.txt— dropsystemfrom its Boostfind_packageCOMPONENTS list (same class of fix as the merged arras4_core one)Happy to help review/rebase any of the above if that's useful — just flagging since they'd remove a good chunk of what downstream packagers currently have to patch around.