|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +nav-class: dark |
| 4 | +categories: joaquin |
| 5 | +title: Hub is here |
| 6 | +author-id: joaquin |
| 7 | +author-name: Joaquín M López Muñoz |
| 8 | +--- |
| 9 | + |
| 10 | +During Q2 2026, I've been working in the following areas: |
| 11 | + |
| 12 | +### `boost::container::hub` |
| 13 | + |
| 14 | +The Boost official review took place April 16-26. The library |
| 15 | +[was accepted](https://lists.boost.org/archives/list/boost@lists.boost.org/thread/7WZ7QTPE2YDYD5OYCKXKKV2N74JHJRZL/) |
| 16 | +as part of Boost.Container. Many thanks to the review manager, Ion Gaztañaga, and all the people who participated: |
| 17 | +Arnaud Becheler, Matt Bentley, Matt Borland, Dominique Devienne, Peter Dimov, Emil Dotchevski, |
| 18 | +Alexander Grund, Andrzej Krzemieński, Christian Mazakas, Peter Turcan. |
| 19 | +During April-June I implemented the feedback received ([PR#20](https://github.com/joaquintides/hub/pull/20)), |
| 20 | +and after that Ion took over and migrated the code and |
| 21 | +[documentation](https://www.boost.org/doc/libs/develop/doc/html/container/non_standard_containers.html#container.non_standard_containers.hub) |
| 22 | +to Boost.Container (including backporting to C++03 and some interesting performance improvements |
| 23 | +that I helped a bit with). `boost::container::hub` will be released in Boost 1.92 |
| 24 | +(August 2026), after which the [original repo](https://github.com/joaquintides/hub) will be |
| 25 | +deprecated or removed. |
| 26 | + |
| 27 | +### Boost.Unordered |
| 28 | + |
| 29 | +* Added interoperability with C++20 ranges to all the containers in the library |
| 30 | +([PR#355](https://github.com/boostorg/unordered/pull/355)). |
| 31 | +* Reviewed and merged [PR#348](https://github.com/boostorg/unordered/pull/348) |
| 32 | +from Daniel Král (performance issue with closed-addressing containers when rehashing |
| 33 | +at very large container sizes). |
| 34 | +* Written maintenance fixes |
| 35 | +[PR#346](https://github.com/boostorg/unordered/pull/346), |
| 36 | +[PR#351](https://github.com/boostorg/unordered/pull/351), |
| 37 | +[PR#352](https://github.com/boostorg/unordered/pull/352), |
| 38 | +[PR#353](https://github.com/boostorg/unordered/pull/353), |
| 39 | +[PR#354](https://github.com/boostorg/unordered/pull/354). |
| 40 | +* Addressed documentation issues |
| 41 | +[#349](https://github.com/boostorg/unordered/issues/349), |
| 42 | +[#350](https://github.com/boostorg/unordered/issues/350). |
| 43 | + |
| 44 | +### Boost.MultiIndex |
| 45 | + |
| 46 | +* Fancy pointer support has been extended so that `multi_index_container` |
| 47 | +iterators now store references to the elements through the allocator's pointer type |
| 48 | +([PR#100](https://github.com/boostorg/multi_index/pull/100)). |
| 49 | +In particular, this means that iterators can now be placed in shared memory using |
| 50 | +Boost.Interprocess allocators. |
| 51 | +* Reviewed and merged [PR#94](https://github.com/boostorg/multi_index/pull/94) |
| 52 | +from Daniel Král (performance issue when rehashing at very large container sizes). |
| 53 | +* Reviewed and merged [PR#98](https://github.com/boostorg/multi_index/pull/98) |
| 54 | +from Jonathan Wakely. |
| 55 | +* Written maintenance fixes |
| 56 | +[PR#97](https://github.com/boostorg/multi_index/pull/97), |
| 57 | +[PR#99](https://github.com/boostorg/multi_index/pull/99). |
| 58 | + |
| 59 | +### Boost.ICL |
| 60 | + |
| 61 | +As discussed in a [previous entry](https://cppalliance.org/joaquin/2026/04/02/Joaquins2026Q1Update.html#boosticl), |
| 62 | +recent changes in libc++ v2 broke this library. These changes are related to the fact |
| 63 | +that non-heterogeneous lookup for associative containers is poorly specified in |
| 64 | +the C++ standard. I filed a [LWG issue](https://cplusplus.github.io/LWG/issue4572) and |
| 65 | +defended a resolution with the LWEG that was consistent with the original semantic |
| 66 | +assumptions of Boost.ICL, but this resolution was not accepted (Brno, May 10). |
| 67 | +There was a fix on hold ([PR#54](https://github.com/boostorg/icl/pull/54)) pending |
| 68 | +acceptance from ICL's maintainer, but he's been unavailable and in the end I requested |
| 69 | +write permission to the repo and merged the PR so that it makes it in time for |
| 70 | +Boost 1.92. The PR includes some additional fixes not related to the core issue. |
| 71 | + |
| 72 | +### Boost.Bloom |
| 73 | + |
| 74 | +* Reviewed and merged [PR#46](https://github.com/boostorg/bloom/pull/46) |
| 75 | +from Jonathan Wakely. |
| 76 | +* Written maintenance fix |
| 77 | +[PR#47](https://github.com/boostorg/bloom/pull/47). |
| 78 | + |
| 79 | +### Boost.Graph |
| 80 | + |
| 81 | +I had the honor to participate remotely in the [Boost.Graph Workshop](https://github.com/boostorg/graph/discussions/466) |
| 82 | +held in Paris, May 6, where I presented some simple ideas towards |
| 83 | +[modernization of BGL API](https://github.com/user-attachments/files/28546328/JoaquinMunozLopez-BGL.API.pain.points.and.modernization.ideas.pdf). |
| 84 | + |
| 85 | +### Support to the community |
| 86 | + |
| 87 | +* I've been helping a bit with Mark Cooper's very successful |
| 88 | +[Boost Blueprint](https://x.com/search?q=%22Boost%20Blueprint%22&src=typed_query&f=live) |
| 89 | +series on X. |
| 90 | +* Supporting the community as a member of the Fiscal Sponsorship Committee (FSC). |
0 commit comments