Skip to content

Upgrade Boost from 1.78.0 to 1.87.0#176

Merged
timosachsenberg merged 1 commit intomasterfrom
upgrade-boost-1.87
Mar 19, 2026
Merged

Upgrade Boost from 1.78.0 to 1.87.0#176
timosachsenberg merged 1 commit intomasterfrom
upgrade-boost-1.87

Conversation

@timosachsenberg
Copy link
Contributor

@timosachsenberg timosachsenberg commented Mar 19, 2026

Summary

  • Upgrade Boost from 1.78.0 to 1.87.0
  • Fixes MSVC C++20 typename bug in boost::process headers (C7510, fixed upstream in Boost 1.82)
  • Boost.Process v1 compatibility shims still present in 1.87 (removed in 1.88+)
  • Remove hardcoded architecture=x86 from b2 build command to support ARM64 builds

Motivation

PR OpenMS/OpenMS#8939 replaces QProcess with boost::process. The old Boost 1.78 in contrib has a known typename bug that breaks MSVC C++20 strict mode. Upgrading to 1.87 fixes this without needing CI patches.

After merge

Trigger workflow_dispatch on the main.yml CI to rebuild and release contrib_build-*.tar.gz for all platforms.

Test plan

  • CI builds successfully on all 3 platforms (triggered by workflow_dispatch after merge)

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Upgraded Boost dependency from 1.81.0 to 1.87.0 and updated associated archive/checksum references.
  • Style
    • Minor formatting cleanup in build scripts affecting command layout on Linux/macOS.

- Fixes MSVC C++20 typename bug in boost::process headers (fixed upstream in 1.82)
- Boost.Process v1 shims still present in 1.87 (removed in 1.88+)
- Remove hardcoded architecture=x86 from b2 build to support ARM64

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@timosachsenberg timosachsenberg merged commit 50c3f4c into master Mar 19, 2026
1 check passed
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 19, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9f406b75-bb59-4a03-98c6-6e412451a05a

📥 Commits

Reviewing files that changed from the base of the PR and between 365d33b and c3b82fb.

📒 Files selected for processing (2)
  • CMakeLists.txt
  • libraries.cmake/boost.cmake

📝 Walkthrough

Walkthrough

This pull request updates the Boost dependency references in CMake from boost-1.81.0 to boost-1.87.0 and adjusts the Boost archive filename and SHA256 checksum; it also contains minor whitespace/formatting changes in the Boost build command invocation within CMake macros.

Changes

Cohort / File(s) Summary
Boost CMake refs
CMakeLists.txt
Bumped BOOST_DIR to boost-1.87.0; updated ARCHIVE_BOOST, ARCHIVE_BOOST_TAR and ARCHIVE_BOOST_SHA256 to the boost-1.87.0 tarball name and new SHA256 checksum.
Boost build macro formatting
libraries.cmake/boost.cmake
Whitespace/reformatting changes to the execute_process(COMMAND ./b2 ...) and set(BOOST_CMD ...) lines (reflowed arguments/removed blank line). No functional argument or control-flow changes.

Possibly related PRs

Poem

🐰
Hopping through CMake, I found a new tune,
Boost upgraded beneath the moon.
Tarball changed, checksum aligned,
A tidy whitespace hop left behind.
Carrots, versions, all in tune.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Upgrade Boost from 1.78.0 to 1.87.0' directly and clearly summarizes the primary change: upgrading the Boost dependency version, which is the main objective of the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch upgrade-boost-1.87
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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.

1 participant