On Mar 19, 2024, at 10:46 AM, Ruben Perez via Boost
wrote: Hi all,
I've been thinking of writing a base64 encoder/decoder library for some time. I first found the need when writing ServerTech chat (https://github.com/anarthal/servertech-chat), and I couldn't find a library that suited my needs. All the libraries I could find were either forgotten one-day projects with no tests, or private parts of something bigger.
From this issue from Beast (https://github.com/boostorg/beast/issues/1710) it looks like this could be useful to people.
My idea would be writing something that is: * Boost quality - extensive testing and fuzzing. * Configurable. My use case in ServerTech required me to not output padding chars, for instance. * Support for a streaming API. * Support for calling in a constexpr context. * I'd prefer to focus on doing base64 only and doing it well, rather than targeting arbitrary bases.
I don't have any sample code yet. Following our recommendations, I'm only determining interest. My questions are: * Do you think a library like this could be useful to the C++ community? * If the answer to the above is yes, do you think it could belong to Boost, or would be better as a standalone library?
I wrote something like this back in the day: https://github.com/mclow/snippets/blob/master/Base64.hpp If you look in that repo, you can find tests, and fuzzing tests. No docs, though. I’d be interested in hearing why (or why not) it fits your needs. — Marshall