Skip to content

Boost 1.80.0 for iOS

Choose a tag to compare

@github-actions github-actions released this 18 Aug 11:48

Boost is a large, peer-reviewed collection of portable C++ libraries that both fills gaps in the standard library and serves as a proving ground for features—many of which (like smart pointers, regex, and filesystem) later get adopted into the C++ standard itself.

Precompiled Boost 1.80.0 XCFramework for arm64 iOS devices and arm64/x86_64 iOS Simulator. Includes all headers, compiled-component inventories, CMake and pkg-config metadata.

Included compiled libraries

  • boost_chrono — Compiled date and time duration support.
  • boost_date_time — Compiled date/time library retained for build compatibility.
  • boost_filesystem — Compiled Filesystem supports v3 and the opt-in v4 API; existing v4 path regression coverage is retained.
  • boost_graph — Compiled Graph algorithms.
  • boost_locale — Localization backends available without optional ICU packaging; C++20 compatibility fixes are included.
  • boost_random — Compiled random_device implementation.
  • boost_system — Error-code support required by several compiled libraries; C++20 result conversions remain covered.
  • boost_thread — Portable threading primitives.
  • boost_context — Architecture-specific fcontext implementation carried forward from the validated configuration.
  • boost_nowide — Compiled UTF-8 adapters with generic conversion and fopen coverage.
  • boost_json — Compiled parser and DOM support; mutable value access and string subviews are covered.
  • boost_serialization — Binary archive round-trip and shared-pointer identity are covered in memory.

All Boost headers are included. Header-only facilities remain available even
when their related compiled library is not part of the combined static binary.

Release features and exclusions

Boost 1.80.0 was released on August 10, 2022. This package moves to C++20 and
carries forward the compiled Context, Nowide, JSON, and Serialization
configuration. Boost 1.80 adds no new libraries.

New and updated coverage

  • Asio exercises the new buffer() overload for std::span.
  • JSON exercises mutable value::at and string::subview().
  • Optional exercises the new standard hash specialization.
  • Utility exercises the new string_view::contains and no-argument
    substr() operations.
  • Atomic and C++20 exercise ARM atomic_ref wait/notify, concepts,
    consteval, and bit_cast.
  • System, Unordered, LEAF, and Math exercise standard-error round trips,
    final hash/equality functors, exception transport, FMA, and Chatterjee
    correlation.

All Boost headers are packaged, and the complete existing Context, Coroutine2,
Nowide, JSON, Serialization, and compiled-library regression suite remains
enabled. Three-slice compile/link and SwiftPM packaging checks pass; the arm64
Simulator and physical arm64 iOS device runtime suites both passed. Runtime
tests execute sequentially, one per main-run-loop frame.

Device and Simulator validation

Validation date: 2026-08-15

Current target status:

  • three-slice compile/link validation: passed;
  • SwiftPM packaging validation: passed for arm64 and x86_64 Simulator;
  • arm64 iOS Simulator runtime suite: ALL TESTS PASSED;
  • physical arm64 iOS device runtime suite: ALL TESTS PASSED.

Coverage on both runtime targets includes the complete prior regression
suite, compiled Context, Nowide, JSON and Serialization, header-only Regex and
Coroutine2, plus Boost 1.80 Asio std::span buffers, mutable JSON access and
string subviews, Optional hashing, Utility string-view operations, Atomic
atomic_ref wait/notify, C++20 concepts, consteval and bit_cast, System
standard-error round trips, Unordered final functors, LEAF exception transport,
and Math FMA and Chatterjee correlation. Runtime tests execute sequentially,
one per main-run-loop frame, to keep Simulator and device runs responsive.

Boost 1.80.0 begins the C++20 release range. The arm64 Simulator runtime suite
and physical arm64 iOS device runtime suite both passed.

Boost.Fiber and deprecated Boost.Coroutine remain excluded pending their own
dedicated device and Simulator runtime validation.