* psycopg/cursor_type.c: executemany() propagates exceptions raised by the
iterable to the caller.
* lib/pool.py: dropped logging.basicConfig() call. It messes up with
projects using logging but where no handler is installed on the root
logger.
* psycopg/cursor_type.c: exceptions raised in the columns iterator of the
copy methods propagated to the caller.
* psycopg/typecast_datetime.c: Round seconds in historical timezones to
the nearest minute.
* lib/extras.py: register_tstz_w_secs() is now no-op.
Changes 2.2.1:
* Builds again on Windows.
Changes 2.2.0:
* typecast.c: Fixed problem related to receiving None from Python
when a string was expected.
* psycopg/adapter_datetime.c: Fixed TimestampFromTicks for second
values > 59.5.
* psycopg/adapter_datetime.c: Fixed same bug for TimeFromTicks.
* Added typecasters for arrays of specific MX/Py time-related types.
* psycopg/adapter_[mx]datetime.c: Explicit cast of the SQL representation
of time-related objects.
* psycopg/adapter_binary.c: Adapt buffer objects using an explicit cast on
the string literal
* lib/pqpath.c: Fixed reference leak in notify reception.
* Notifies are collected if available after every query execution.
* lib/extensions.py: DECIMAL typecaster imported from _psycopg.
* lib/extensions.py: PY* and MX* time typecaster imported from _psycopg.
* psycopg/connection_type.c: Correctly parse keywords in connect().
* psycopg/pqpath.c: Ensure running COPY in blocking mode.
* psycopg/pqpath.c: Free the GIL in blocking operations in V2 COPY FROM.
* psycopg/pqpath.c: Evaluate Python objects only once outside the COPY I/O
loops.
* Fixed problem with asynchronous NOTIFYs.
* Integrated async pacthes from Jan's git tree.
- support for UUIDs
- fix issues with non-blocking connections and lo_write
- support reset() on connections as faster alternative to open()/close()
- improved support for COPY TO and COPY FROM
- bugfixes
- assume that Python 2.4 and 2.5 are compatible and allow checking for
fallout.
- remove PYTHON_VERSIONS_COMPATIBLE that are obsoleted by the 2.3+
default. Modify the others to deal with the removals.
This is version 2, a complete rewrite of the original code to provide
new-style classes for connection and cursor objects and other
sweet candies. Like the original, psycopg 2 was written with the aim of
being very small and fast, and stable as a rock.