Here's another release candidate for libpqxx 8.0. With your feedback, contributions, and sometimes in-depth research, we have a lot of further improvements compared to the previous release candidate!
One big change is that you can now convert directly between simple one-dimensional SQL arrays and C++ containers such as std::vector<int> or std::list<std::string> etc. You can stream these values,read them from a pqxx::result using a field's as<...>() member function, and pass them as parameters.
(The conversion to string was already there but it wasn't working because of a small omission.)
Other important changes:
- You can now use
std::string_viewin more places that previously requiredpqxx::zview. - There's an
examples/directory with working, compiling example code. - We no longer support the JOHAB encoding. It's a deprecated encoding, and it doesn't look like the backend support was ever complete. Also... which variant of JOHAB? There's several.
- In general, the text handling got smaller, simpler, and more efficient.
- Compiler errors should be slightly clearer when you're writing your own string conversions and struggling to meet the API.
- Several
pqxx::resultmember functions now takepqxx::sl(i.e.std::source_location) rather thanpqxx::conversion_context. - MSVC 2022 didn't actually support multi-dimensional
operator[]in C++23 mode. The build now detects that problem.