Boost release process boostorg/release-tools In the previous quarter, publish_release.py included features to support the Fastly CDN at archives.boost.io. This quarter, that functionality was put into action with the release of Boost 1.86.0, and it was a chance to fine-tune and improve the script. More error checking. Adding a preflight phase to test SSH. Adjusting the publish_release.py script to stage windows executables for Tom Kent, so they are relocated to a publicly visible folder duri...
Once again it has been a busy few months working on libraries in different stages of the boost lifecycle: Libraries for Proposal Decimal Decimal (https://github.com/cppalliance/decimal) is a ground-up implementation of the IEEE 754 Decimal Floating Point types in C++14, and is co-authored by Chris Kormanyos. The past few months we have worked hard to squeeze more performance out of the library, and we believe we have successfully accomplished that. By request we have also added functions ...
Easy client-side SQL using with_params In previous posts, we had seen how Boost.MySQL client-side SQL formatting can be used to implement a wide variety of use cases. It was originally created for complex cases, like batch inserts, but it can also be applied for simple ones. Up to Boost 1.86, to retrieve a user by ID with client-side SQL, you could write this: void lookup(mysql::any_connection& conn, int id) { // Compose the query. May generate "SELECT * FROM user WHERE id = 10" ...
The Safe C++ Saga I’ve spent the last quarter developing a successor to the C++ stdlib in Safe C++, the proposal from Sean Baxter to add borrow-checking semantics to C++. I’ve been an avid Rust fan since I started messing around with it in my spare time a few years ago so hopping on this project was an incredibly exciting opportunity. Getting to evolve a standard library in tandem with a language that attempts to do the nigh-on-impossible is a once-in-a-lifetime opportunity, really. Public...
During Q3 2024, I’ve been working in the following areas: Boost.Unordered Made visitation exclusive-locked within certain boost::concurrent_flat_set operations to allow for safe mutable modification of elements (PR#265, to be released in Boost 1.87.0). This is relevant for the work on Boost.Flyweight discussed below. Added new concurrent, node-based containers boost::concurrent_node_map and boost::concurrent_node_set (PR#271, to be released in Boost 1.87.0). These containers are, expec...