Am 12.11.2019 um 14:09 schrieb D'Arcy Cain:
> Is the code ready now for a release?  Does anyone know of anything
> missing that should be in it?

That code is ready to be released as 5.1.1.

We had one big open question that still needs to be resolved: How to deal with new/optional functionality, e.g. the memsize() function new in PG 12. We actually wanted to add this into 5.1.1 as well, but it seems we should postpone it.

The problem here is that if we build the shared lib with these functions, they don't run on systems with older pqlib. This is particulary a problem when you distribute PyGreSQL as a binary (the usual way on Windows). Therefore we would need to ship binary packages not only for various Python versions, but also different Postgres versions (the whole matrix of combinations), which is awful.

Two related problems:
- The current way how build switches were implemented in setup.py is not really useful, because they can never be set to false. This needs to be changed. See https://github.com/Cito/PyGreSQL/issues/12 - Lazy binding would theoretically allow using functions of newer pqlibs, but somehow did not seem to work as expected in practice, this needs to be further investigated.

I suggest moving the solution of these problems to 5.2 since the new implementation of build switches can be considered a breaking change.

-- Christoph
_______________________________________________
PyGreSQL mailing list
PyGreSQL@Vex.Net
https://mail.vex.net/mailman/listinfo/pygresql

Reply via email to