Throughout Q3 2024, my work was primarily focused on two projects: MrDocs, and Clang. MrDocs Most of my work in MrDocs was centered around fixing bugs and refactoring. To that end, I resolved numerous bugs, mostly relating to AST extraction. On the refactoring side of things, I (finally) removed the bitcode serialization component from MrDocs. This greatly simplifies the project architecture and eliminates most of the boilerplate that was needed when modifying the representation used by MrD...
During this quarter, I have continued to dedicate my efforts to the development of MrDocs, a tool aimed at revolutionizing the generation of reference documentation from C++ code and javadoc comments. My focus has been on expanding its capabilities to solidify its position as the future of documentation in C++. Advances in MrDocs Development This period has witnessed several significant improvements aimed at positioning MrDocs as a leading tool in documentation generation for C++. My key co...
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" ...