slachiewicz opened a new pull request, #3975: URL: https://github.com/apache/thrift/pull/3975
Replaces the eight remaining Boost uses in `lib/cpp/src` with C++11 code (the table in the ticket lists each one) and drops `REQUIRE_BOOST_HEADERS()` from the CMake build of the library and the tutorials. The opt-in `TUuid(const boost::uuids::uuid&)` constructor stays. The unit tests and the autotools build still need Boost. `THeaderTransport`'s checked cast replaces `boost::numeric_cast`, which THRIFT-5660 tried before and reverted because `0UL` to `int32_t` threw. New tests cover UUID parsing, JSON `\u` escapes and case-insensitive HTTP header matching; they pass against the Boost code too. Verified: differential check of each replacement against the Boost call it replaces (all `THeaderTransport` conversions at their limits, exhaustive short inputs for the tokenizer and header matching, UUID string mutations, UTF-16 sequences up to 3 units) → 212,707 comparisons, 0 differences, at C++11 and C++17. Verified: Ubuntu 24.04 arm64, GCC 13, Release → ctest 60/60 at C++11 and at C++17; `-DBUILD_TESTING=ON` off, in a container with no Boost installed, the library and tutorials build. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
