./databases/libpqxx, C++ interface to postgresql-lib

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 7.8.1, Package name: libpqxx-7.8.1, Maintainer: is

C++ client API for PostgreSQL. The standard front-end (in the sense
of "language binding") for writing C++ programs that use PostgreSQL.
Supersedes older libpq++ interface.


Required to run:
[databases/postgresql14-client]

Required to build:
[lang/python310]

Master sites:

Filesize: 758.143 KB

Version history: (Expand)


CVS history: (Expand)


   2024-01-04 22:35:41 by Patrick Welche | Files touched by this commit (3) | Package updated
Log message:
Update libpqxx to 7.8.1

Note: given the previous choice to use
USE_CXX_FEATURES+=      c++17
don't attempt to use with a program using e.g. -std=c++20

7.8.1
 - Regenerate build files. Should fix ARM Mac build. (#715)
 - Reinstate `<ciso646>` that MSVC can't live with or without. (#713)
7.8.0
 - Streaming large data sets now benchmarks faster than similar C/libpq code!
 - New `array` class for easier parsing of SQL arrays.
 - Deprecating `stream_from`.  Use `transaction_base::stream()`.
 - Use `array_parser` only on comma-separated types, i.e. most of them. (#590)
 - Bumping requirements versions: need postgres 10.
 - Fix `array_parser` bug when parsing semicolon in an unquoted string.
 - Make some `zview` constructors `noexcept` if `string_view` does it.
 - Handle result status code for starting streaming replication.  (#631)
 - Faster text decoding and escaping in data streaming.  (#601)
 - Deprecate `basic_fieldstream` and `fieldstream`.
 - Deprecate `<<` operator inserting a field into an `ostream`.
 - New string conversion fields: `converts_to_string` & `converts_from_string`.
 - Ran `autoupdate` (because the autotools told me to).
 - Documentation tweak. (#584)
 - Typo in README.md. (#586)
 - Support `std::optional<std::string_view>` etc. in `stream_to`. (#596)
 - Remove support for single-quoted array/composite elements.  No such thing!
 - Optimise out a kink in composite field parser.
 - Work around build warning in MinGW: include `winsock2.h` before `windows.h`.
 - Drop some redundant encoding groups.
 - If CMake can't find libpq, fall back to pkg-config. (#664)
 - Work around spurious compile error on g++ pre-gcc-10. (#665)
 - Include `<pqxx/range>` and `<pqxx/time>` headers in \ 
`<pqxx/pqxx>`. (#667)
 - Don't use `std::function` as deleter for smart pointers.
 - Work around gcc compile error with regex + address sanitizer + analyzers.
 - Fix "double free" on exit when built as shared library on Debian. (#681)
 - Stop including `<ciso646>`; should be built into compilers. (#680)
 - New `broken_connection` exception subclass: `protocol_violation`. (#686)
 - Retired unused `blob_already_exists` exception class. (#686)
 - Support for `PQinitOpenSSL()`. (#678)
 - Slightly more helpful error for unsupported conversions. (#695)
 - Replace some C++ feature tests with C++20 feature macros.
 - Support moving of `stream_to`. (#706)
 - Incorporate `source_location` in exceptions.
   2023-09-21 11:22:28 by Paolo Vincenzo Olivo | Files touched by this commit (1)
Log message:
databases/libpqxx: force C++17 standard to fix build.
   2023-09-01 12:49:07 by Nia Alarie | Files touched by this commit (2)
Log message:
libpqxx: Convert to USE_CXX_FEATURES.
   2023-08-14 07:25:36 by Thomas Klausner | Files touched by this commit (1247)
Log message:
*: recursive bump for Python 3.11 as new default
   2022-12-29 23:24:48 by Patrick Welche | Files touched by this commit (4)
Log message:
Update libpqx to 7.7.4

You now have three basic ways to query data, all through methods on your \ 
transaction object:

 - "query" methods execute the query, load the full result set,
    and then let you iterate the rows. They convert each row to a
   tuple of values of your chosen types.

 - "stream" methods do the same thing, except they run the query
   in a different way that's slower to start up, but starts giving
   you rows right away without waiting for the full result to come
   in. The rows also come in faster.

 - "exec" methods execute the query, load the full result set,
   and return a pqxx::result object. It contains both the result
   data and metadata such as how many rows there are in the result.

Highlights:
 - Build docs in `doc/html/`, no longer in `doc/html/Reference/`.
 - New `result::for_stream()`: simple iteration and conversion of rows.
 - New `transaction_base::for_query()` is similar, but non-streaming. (#580)
 - Query data and iterate directly as client-side types: `query()`. (#580)
 - New ways to query a single row!  `query01()` and `query1()`. (#580)
 - We now have 3 kinds of execution: "exec", "query", and \ 
"stream" functions.
 - Use C++23 `std::unreachable()` where available.
 - New class, `connecting` for nonblocking connection to the database.  (#487)
 - New class, `range` for SQL range types.  (#490)
 - Support `result::at(row_num, col_num)`.
 - Support `result[row_num, col_num]` if the compiler allows it.
 - `result::iter()` return value now keeps its `result` alive.
 - Add C++20 concepts: `binary`, `char_string`, `char_strings`.
 - New helper: `pqxx::value_type<CONTAINER>`.
 - New helper: `pqxx::binary_cast`. (#450)
 - Helper for generating parameter placeholders `$1`, `$2`, etc.  (#443)
 - Now requires `std::variant` support!  No longer works with gcc7.
 - New `blob::read()` using `std::span`.  (#429)
 - New, simpler API for large objects: `blob` ("binary large object").

For full changelog, see https://github.com/jtv/libpqxx/blob/7.7.4/NEWS
   2021-10-26 12:10:08 by Nia Alarie | Files touched by this commit (417)
Log message:
databases: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

The following distfiles could not be fetched (some may be only fetched
conditionally):

./databases/cstore/distinfo D6.data.ros.gz
./databases/cstore/distinfo cstore0.2.tar.gz
./databases/cstore/distinfo data4.tar.gz
   2021-10-07 15:35:53 by Nia Alarie | Files touched by this commit (417)
Log message:
databases: Remove SHA1 distfile hashes
   2021-01-07 17:29:30 by Patrick Welche | Files touched by this commit (4)
Log message:
Update libpqxx to 7.3.0

7.3.0
 - `stream_to` now quotes and escapes its table name.
 - Removed `transaction_base::classname()`.  Did anyone ever use it?
 - Internal reorg of the `transaction` and `transactionfocus` hierarchies.
 - Removed the only case of virtual inheritance, related to `namedclass`.
 - Internal `concat()` for faster, simpler string concatentation.
 - Fix compile omission in string conversions for `nullptr_t`.
 - `pqxx::size_buffer()` can now size multiple values at once.
 - `multi_to_string()` to convert multiple values into one `std::string`.
 - Implicit `zview` constructor from `char const *`. (#389)
 - Many `std::string&` parameters are now `zview` or `std::string_view`.
 - Now checking statement parameter lengths for overflow.
 - `#include <array>` in connection.cxx.  (#394)
7.2.1
 - Fix infinite loop in converting `char *` to string. (#377)
 - Deprecated `namedclass`.
 - Convert an entire row using `row::as<type...>()`.
 - Internal rework of `field::to()` and `field::as()` functions.
 - Some more warning options in maintainer mode.
 - Removed the old, DocBook-based tutorial.
 - Fixed wrong `query` and SQLSTATE params to some exceptions. (#378)