Hello list!
There is currently a flurry of activities around the Psycopg 3 repository, motivated especially by the PostgreSQL 17 feature freeze, whose libpq exposes a set of features which turned out very useful.
Therefore, after a round of merging and some scheduled refactoring [1], we should be able to merge a version 3.2. We have gathered a considerable list of features [2] and we are looking forward to releasing them. Some of the highlights are:
- support for numpy scalars,
- an easier to use notifications generator,
- support for asynchronous and safe cancel,
- prepared statements compatible with PgBouncer.
One notable absent from the list of features scheduled for release is the numpy arrays adaptation. I have always thought that it would be natural to have such feature... but fundamentally nobody ever voiced a need for it. Therefore I prefer to postpone it to a later time [3] and not delay the release further.
In order to reduce the maintenance chore, we have developed a system to generate the synchronous code from the AST of the async code. If anyone has a similar need, maintaining a codebase in both sync and async variants, they are welcome to take a look [4] and lift whatever useful.
Feedback about the upcoming release is welcome! In the meantime I'd like to thank our <
https://www.psycopg.org/sponsors/> and everyone who has contributed ideas, reports, code, in particular Denis "@dlax" Laxalde who has brought plenty of ideas and good code.
I am looking forward to get back with news of a final 3.2 release in a few weeks time. In the meantime, happy hacking!
-- Daniele