Am 16.07.2011 15:29 schrieb Maxim Yegorushkin:
This patch extends float handling by supporting nan and inf values along
with a new unit test. It basically always quotes floats to avoid isinf()
and isnan() checks for each and every float value.

Hm, this may work with older Postgres versions, but it's a bit unclean since it puts quotes arounds normal floats where they do not belong, and since it relies on the string representation of NaN and Inf in Python which may differ for different Python versions and is definitely different from their official representation in Postgres (e.g. 'inf' instead of 'Infinity' and 'nan' instead of 'NaN'). Newer Postgres versions may not be so sloppy concerning the input, and indeed Postgres 9.0 does not allow writing 'inf' insted of 'Infinity'. We should better produce the proper SQL, i.e. the official names with proper case even though Postgres currently is case-insensitive on input, and we should not put quotes around numbers.

With regards to date support, I am thinking of handling date and
datetime similar to decimal, that is, to convert strings to date and
datetime when reading rowsets, so that user code does not have to
convert strings to dates. Does it make sense?

This is http://trac.vex.net:8000/pgtracker/ticket/28

But I think we should make it configurable so that old code will not be broken. The default could be strings in 4.x, and then dates in 5.x.

-- Christoph
_______________________________________________
PyGreSQL mailing list
[email protected]
http://mailman.vex.net/mailman/listinfo/pygresql

Reply via email to