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]

Reply via email to