On Fri, Mar 22, 2024 at 8:14 AM Daniele Lupo via Boost
...maybe it's better to stop a think a bit about a more general solution, a single library that embrace them all.
If I were to write such a library, I would start by cloning the SOCI repository: https://github.com/SOCI/soci Then I would make the following changes: * Support boost::system::error_code in addition to the current use of exceptions * Use the boost idioms like source_location and BOOST_ASSERT * Modernize the customization point interface ("exchange" in soci parlance) * Export backends using run-time dependency injection to make linking easier * Adjust the APIs as needed to make writing insecure queries less likely This would bring about the following benefits: * 13 years of SOCI development for free: bugs, design, features * Very little effort required compared to writing a lib from scratch * Existing users of soci already know the API * Multiple backends are supported, with the possibility for adding more Thanks