Commit graph

60 commits

Author SHA1 Message Date
wiz
8a9cb53cf6 *: bump PKGREVISION for egg.mk users
They now have a tool dependency on py-setuptools instead of a DEPENDS
2022-01-04 20:52:30 +00:00
nia
acde260c8b 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-26 10:09:13 +00:00
nia
2946ea15ca databases: Remove SHA1 distfile hashes 2021-10-07 13:35:05 +00:00
adam
ad896c0876 py-psycopg2: updated to 2.8.6
What's new in psycopg 2.8.6
- Fixed memory leak changing connection encoding to the current one.
- Fixed search of mxDateTime headers in virtualenvs.
- Added missing values from errorcodes.
- `cursor.query` reports the query of the last :sql:`COPY` opearation too.
- `~psycopg2.errorcodes` map and `~psycopg2.errors` classes updated to
  PostgreSQL 13.
- Added wheel packages for ARM architecture.
- Wheel package compiled against OpenSSL 1.1.1g.

What's new in psycopg 2.8.5
- Fixed use of `!connection_factory` and `!cursor_factory` together.
- Added support for `~logging.LoggerAdapter` in
  `~psycopg2.extras.LoggingConnection`.
- `~psycopg2.extensions.Column` objects in `cursor.description` can be sliced.
- Added AIX support.
- Fixed `~copy.copy()` of `~psycopg2.extras.DictCursor` rows
2020-10-30 09:54:06 +00:00
adam
9d88249380 py-psycopg2: updated to 2.8.4
Psycopg 2.8.4

The release brings a few assorted bugfixes and adds support for Python 3.8 and PostgreSQL 12.

A more detailed changes list is
* Fixed building with Python 3.8.
* Don't swallow keyboard interrupts on connect when a password is specified in the connection string.
* Don't advance replication cursor when the message wasn't confirmed.
* Fixed inclusion of time.h on linux.
* Fixed int overflow for large values in Column.table_oid and Column.type_code.
* errorcodes map and errors classes updated to PostgreSQL 12.
* Wheel package compiled against OpenSSL 1.1.1d and PostgreSQL at least 11.4.
2019-10-21 11:31:22 +00:00
adam
22ac60bdba py-psycopg2: updated to 2.8.3
Psycopg 2.8.3 released

We have released Psycopg 2.8.3, which includes a slight change to the logical replication.

Choosing the right frequency to send replication feedback messages from the client to the server was previously the developer's responsibility, with too many feedback messages being a waste of bandwidth and server resources, too few slowing down WAL cleanup and possibly preventing a server graceful shutdown.

Psycopg will now make sure that feedback is only sent after a certain period of time from the previous one, so that the client can simply call send_feedback() at each message without the fear of overwhelming the server.

For completeness, the changes included in the release are:
* Added interval_status parameter to start_replication() method and other facilities to send automatic replication keepalives at periodic intervals
* Fixed namedtuples caching introduced in 2.8
2019-06-14 04:51:43 +00:00
adam
40ca1b9026 py-psycopg2: updated to 2.8.2
2.8.2:
Fixed "there's no async cursor" error polling a connection with no cursor.
Fixed RealDictCursor when there are repeated columns.
Fixed RealDictRow modifiability.
Binary packages built with OpenSSL 1.1.1b. Should fix concurrency problems.
2019-04-15 07:01:23 +00:00
adam
61db60fc94 py-psycopg2: updated to 2.8.1
What's new in psycopg 2.8.1
- Fixed RealDictRow modifiability
- Fixed "there's no async cursor" error polling a connection with no cursor
2019-04-07 16:09:10 +00:00
adam
472a408304 py-psycopg2: updated to 2.8
Psycopg 2.8 released

After about two years from the previous major release, psycopg 2.8 is finally
here!

Among the highlights, PostgreSQL errors are now mapped to Python exceptions for
a more idiomatic way to handle them. Several additions allow a better insight
of the connection status and query results.

Behind the scene, asynchronous communication and concurrency received several
improvements, and dropping support for older versions of Python gave the chance
to refactor and modernise the codebase (with the especial help from Jon
Dufresne who ruthlessly butchered our code into a streamlined pulp).
2019-04-05 09:14:41 +00:00
adam
88e9d46e8a py-psycopg2: updated to 2.7.7
What's new in psycopg 2.7.7
- Cleanup of the cursor results assignment code, which might have solved
  double free and inconsistencies in concurrent usage.
- Wheel package compiled against OpenSSL 1.0.2q.
2019-02-05 11:39:19 +00:00
adam
4a008d0004 py-psycopg2: updated to 2.7.6
Psycopg 2.7.6:

Summary of changes:
- Close named cursors if exist, even if execute() wasn't called.
- Fixed building on modern FreeBSD versions with Python 3.7.
- Fixed hang trying to COPY via execute() in asynchronous connections.
- Fixed adaptation of arrays of empty arrays.
- Fixed segfault accessing the connection.readonly and connection.deferrable attributes repeatedly.
- execute_values() accepts sql.Composable objects.
- errorcodes map updated to PostgreSQL 11.
- Wheel package compiled against PostgreSQL 10.5 libpq and OpenSSL 1.0.2p.
2018-11-09 21:26:29 +00:00
adam
62478c391f py-psycopg2: do not install tests (fix for Python 3.7) 2018-07-03 03:57:16 +00:00
adam
48de64df13 py-psycopg2: updated to 2.7.5
What's new in psycopg 2.7.5:
- Allow non-ascii chars in namedtuple fields
- Fixed adaptation of arrays of arrays of nulls
- Fixed building on Solaris 11 and derivatives such as SmartOS and illumos
- Maybe fixed building on MSYS2
- Allow string subclasses in connection and other places
- Don't raise an exception closing an unused named cursor
- Wheel package compiled against PostgreSQL 10.4 libpq and OpenSSL 1.0.2o
2018-06-18 07:46:16 +00:00
jperkin
bb46802b9f py-psycopg2: Only supply timer funcs if they are missing. 2018-04-05 09:45:13 +00:00
adam
447d0e61f4 py-psycopg2: updated to 2.7.4
What's new in psycopg 2.7.4
- Moving away from installing the wheel package by default.
  Packages installed from wheel raise a warning on import. Added package
  psycopg2-binary to install from wheel instead.
- Convert fields names into valid Python identifiers in
  ~psycopg2.extras.NamedTupleCursor.
- Fixed Solaris 10 support.
- cursor.mogrify() can be called on closed cursors.
- Fixed setting session characteristics in corner cases on autocommit
  connections.
- Fixed ~psycopg2.extras.MinTimeLoggingCursor on Python 3.
- Fixed parsing of array of points as floats.
- Fixed ~psycopg2.__libpq_version__ building with libpq >= 10.1.
- Fixed ~cursor.rowcount after ~cursor.executemany() with :sql:RETURNING
  statements.
- Fixed compatibility problem with pypy3.
- Wheel packages compiled against PostgreSQL 10.1 libpq and OpenSSL 1.0.2n.
- Wheel packages for Python 2.6 no more available (support dropped from
  wheel building infrastructure).
2018-02-12 08:15:37 +00:00
adam
7bd1746b08 py-psycopg2: update to 2.7.3.2
What's new in psycopg 2.7.3.2
- Wheel package compiled against PostgreSQL 10.0 libpq and OpenSSL 1.0.2l
2017-10-24 17:27:44 +00:00
wiz
1c38aed154 Updated py-psycopg2 to 2.7.3.1.
What's new in psycopg 2.7.3.1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Dropped libresolv from wheel package to avoid incompatibility with
  glibc 2.26 (wheels ticket #2)
2017-09-04 14:46:03 +00:00
adam
f6fa8604e8 psycopg 2.7.3
- Restored default :sql:`timestamptz[]` typecasting to Python `!datetime`.
  Regression introduced in Psycopg 2.7.2
2017-07-25 10:14:27 +00:00
adam
924579b5a2 What's new in psycopg 2.7.2
- Fixed inconsistent state in externally closed connections
  Was fixed in 2.6.2 but not included in 2.7 by mistake.
- Fixed Python exceptions propagation in green callback
- Don't display the password in `connection.dsn` when the connection
  string is specified as an URI
- Return objects with timezone parsing "infinity" :sql:`timestamptz`
- Dropped dependency on VC9 runtime on Windows binary packages
- Fixed segfault in `~connection.lobject()` when *mode*\=\ `!None`
- Fixed `~connection.lobject()` keyword argument *lobject_factory*
- Fixed `~psycopg2.extras.ReplicationCursor.consume_stream()`
  *keepalive_interval* argument
- Maybe fixed random import error on Python 3.6 in multiprocess
  environment
- Fixed random `!SystemError` upon receiving abort signal
- Accept `~psycopg2.sql.Composable` objects in
  `~psycopg2.extras.ReplicationCursor.start_replication_expert()`
- Parse intervals returned as microseconds from Redshift
- Added `~psycopg2.extras.Json` `!prepare()` method to consider connection
  params when adapting
- `~psycopg2.errorcodes` map updated to PostgreSQL 10 beta 1.
2017-07-23 18:02:15 +00:00
wiz
c1b1c46d05 Updated py-psycopg2 to 2.7.1.
What's new in psycopg 2.7.1
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Ignore `!None` arguments passed to `~psycopg2.connect()` and
  `~psycopg2.extensions.make_dsn()` (🎫`#517`).
- OpenSSL upgraded from major version 0.9.8 to 1.0.2 in the Linux wheel
  packages (🎫`#518`).
- Fixed build with libpq versions < 9.3 (🎫`#520`).
2017-03-20 13:51:55 +00:00
wiz
3d4a28f304 Updated py-psycopg2 to 2.7.
What's new in psycopg 2.7
-------------------------

New features:

- Added `~psycopg2.sql` module to generate SQL dynamically (🎫`#308`).
- Added :ref:`replication-support` (🎫`#322`). Main authors are
  Oleksandr Shulgin and Craig Ringer, who deserve a huge thank you.
- Added `~psycopg2.extensions.parse_dsn()` and
  `~psycopg2.extensions.make_dsn()` functions (🎟️`#321, #363`).
  `~psycopg2.connect()` now can take both *dsn* and keyword arguments, merging
  them together.
- Added `~psycopg2.__libpq_version__` and
  `~psycopg2.extensions.libpq_version()` to inspect the version of the
  ``libpq`` library the module was compiled/loaded with
  (🎟️`#35, #323`).
- The attributes `~connection.notices` and `~connection.notifies` can be
  customized replacing them with any object exposing an `!append()` method
  (🎫`#326`).
- Adapt network types to `ipaddress` objects when available. When not
  enabled, convert arrays of network types to lists by default. The old `!Inet`
  adapter is deprecated (🎟️`#317, #343, #387`).
- Added `~psycopg2.extensions.quote_ident()` function (🎫`#359`).
- Added `~connection.get_dsn_parameters()` connection method (🎫`#364`).
- `~cursor.callproc()` now accepts a dictionary of parameters (🎫`#381`).
- Give precedence to `!__conform__()` over superclasses to choose an object
  adapter (🎫`#456`).
- Using Python C API decoding functions and codecs caching for faster
  unicode encoding/decoding (🎫`#473`).
- `~cursor.executemany()` slowness addressed by
  `~psycopg2.extras.execute_batch()` and `~psycopg2.extras.execute_values()`
  (🎫`#491`).
- Added ``async_`` as an alias for ``async`` to support Python 3.7 where
  ``async`` will become a keyword (🎫`#495`).
- Unless in autocommit, do not use :sql:`default_transaction_*` settings to
  control the session characteristics as it may create problems with external
  connection pools such as pgbouncer; use :sql:`BEGIN` options instead
  (🎫`#503`).
- `~connection.isolation_level` is now writable and entirely separated from
  `~connection.autocommit`; added `~connection.readonly`,
  `~connection.deferrable` writable attributes.

Bug fixes:

- Fixed error caused by missing decoding `~psycopg2.extras.LoggingConnection`
  (🎫`#483`).
- Fixed integer overflow in :sql:`interval` seconds (🎫`#512`).

Other changes:

- Dropped support for Python 2.5 and 3.1.
- Dropped support for client library older than PostgreSQL 9.1 (but older
  server versions are still supported).
- `~connection.isolation_level` doesn't read from the database but will return
  `~psycopg2.extensions.ISOLATION_LEVEL_DEFAULT` if no value was set on the
  connection.
- Empty arrays no more converted into lists if they don't have a type attached
  (🎫`#506`)
2017-03-05 14:19:07 +00:00
wiz
982c8f22e9 Recursive bump for all users of pgsql now that the default is 95. 2016-10-09 21:41:55 +00:00
wiz
888ca762c1 Convert to egg.mk. Bump PKGREVISION. 2016-07-24 19:44:16 +00:00
wiz
da6472e715 Updated py-psycopg2 to 2.6.2.
What's new in psycopg 2.6.2
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed inconsistent state in externally closed connections
  (🎟️`#263, #311, #443`).
- Report the server response status on errors (such as 🎫`#281`).
- Raise `!NotSupportedError` on unhandled server response status
  (🎫`#352`).
- Allow overriding string adapter encoding with no connection (🎫`#331`).
- The `~psycopg2.extras.wait_select` callback allows interrupting a
  long-running query in an interactive shell using :kbd:`Ctrl-C`
  (🎫`#333`).
- Fixed `!PersistentConnectionPool` on Python 3 (🎫`#348`).
- Fixed segfault on `repr()` of an unitialized connection (🎫`#361`).
- Allow adapting bytes using `~psycopg2.extensions.QuotedString` on Python 3
  (🎫`#365`).
- Added support for setuptools/wheel (🎫`#370`).
- Fix build on Windows with Python 3.5, VS 2015 (🎫`#380`).
- Fixed `!errorcodes.lookup` initialization thread-safety (🎫`#382`).
- Fixed `!read()` exception propagation in copy_from (🎫`#412`).
- Fixed possible NULL TZ decref  (🎫`#424`).
- `~psycopg2.errorcodes` map updated to PostgreSQL 9.5.
2016-07-21 12:53:20 +00:00
agc
d549bff9a5 Add SHA512 digests for distfiles for databases category
Problems found with existing distfiles:
	distfiles/D6.data.ros.gz
	distfiles/cstore0.2.tar.gz
	distfiles/data4.tar.gz
	distfiles/sphinx-2.2.7-release.tar.gz
No changes made to the cstore or mariadb55-client distinfo files.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 01:56:09 +00:00
wiz
c44347dc8e Update to 2.6.1:
What's new in psycopg 2.6.1
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Lists consisting of only `None` are escaped correctly (🎫`#285`).
- Fixed deadlock in multithread programs using OpenSSL (🎫`#290`).
- Correctly unlock the connection after error in flush (🎫`#294`).
- Fixed ``MinTimeLoggingCursor.callproc()`` (🎫`#309`).
2015-07-01 09:59:06 +00:00
wiz
032b9e2d81 Update to 2.6:
What's new in psycopg 2.6
-------------------------

New features:

- Added support for large objects larger than 2GB. Many thanks to Blake Rouse
  and the MAAS Team for the feature development.
- Python `time` objects with a tzinfo specified and PostgreSQL :sql:`timetz`
  data are converted into each other (🎫`#272`).

Bug fixes:

- Json apapter's `!str()` returns the adapted content instead of the `!repr()`
  (🎫`#191`).
2015-02-17 14:01:56 +00:00
wiz
03e0dcbc42 Update to 2.5.4:
What's new in psycopg 2.5.4
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Added :sql:`jsonb` support for PostgreSQL 9.4 (🎫`#226`).
- Fixed segfault if COPY statements are passed to `~cursor.execute()` instead
  of using the proper methods (🎫`#219`).
- Force conversion of pool arguments to integer to avoid potentially unbounded
  pools (🎫`#220`).
- Cursors :sql:`WITH HOLD` don't begin a new transaction upon move/fetch/close
  (🎫`#228`).
- Cursors :sql:`WITH HOLD` can be used in autocommit (🎫`#229`).
- `~cursor.callproc()` doesn't silently ignore an argument without a length.
- Fixed memory leak with large objects (🎫`#256`).
- Make sure the internal ``_psycopg.so`` module can be imported stand-alone (to
  allow modules juggling such as the one described in 🎫`#201`).
2014-08-31 21:34:23 +00:00
wiz
fedd09bb43 Update to 2.5.3:
What's new in psycopg 2.5.3
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Work around `pip issue #1630 <https://github.com/pypa/pip/issues/1630>`__
  making installation via ``pip -e git+url`` impossible (🎫`#18`).
- Copy operations correctly set the `cursor.rowcount` attribute
  (🎫`#180`).
- It is now possible to call `get_transaction_status()` on closed connections.
- Fixed unsafe access to object names causing assertion failures in
  Python 3 debug builds (🎫`#188`).
- Mark the connection closed if found broken on `poll()` (from 🎫`#192`
  discussion)
- Fixed handling of dsn and closed attributes in connection subclasses
  failing to connect (from 🎫`#192` discussion).
- Added arbitrary but stable order to `Range` objects, thanks to
  Chris Withers (🎫`#193`).
- Avoid blocking async connections on connect (🎫`#194`). Thanks to
  Adam Petrovich for the bug report and diagnosis.
- Don't segfault using poorly defined cursor subclasses which forgot to call
  the superclass init (🎫`#195`).
- Mark the connection closed when a Socket connection is broken, as it
  happens for TCP connections instead (🎫`#196`).
- Fixed overflow opening a lobject with an oid not fitting in a signed int
  (🎫`#203`).
- Fixed handling of explicit default ``cursor_factory=None`` in
  `connection.cursor()` (🎫`#210`).
- Fixed possible segfault in named cursors creation.
- Fixed debug build on Windows, thanks to James Emerton.
2014-05-20 08:35:09 +00:00
wiz
e293eca79d Update to 2.5.2:
What's new in psycopg 2.5.2
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed segfault pickling the exception raised on connection error
  (🎫`#170`).
- Meaningful connection errors report a meaningful message, thanks to
  Alexey Borzenkov (🎫`#173`).
- Manually creating `lobject` with the wrong parameter doesn't segfault
  (🎫`#187`).
2014-01-27 19:45:45 +00:00
wiz
aa67e11089 Mark packages as not ready for python-3.x where applicable;
either because they themselves are not ready or because a
dependency isn't. This is annotated by
PYTHON_VERSIONS_INCOMPATIBLE=  33 # not yet ported as of x.y.z
or
PYTHON_VERSIONS_INCOMPATIBLE=  33 # py-foo, py-bar
respectively, please use the same style for other packages,
and check during updates.

Use versioned_dependencies.mk where applicable.
Use REPLACE_PYTHON instead of handcoded alternatives, where applicable.
Reorder Makefile sections into standard order, where applicable.

Remove PYTHON_VERSIONS_INCLUDE_3X lines since that will be default
with the next commit.

Whitespace cleanups and other nits corrected, where necessary.
2014-01-25 10:29:56 +00:00
wiz
4240f0fa38 Update to 2.5.1:
What's new in psycopg 2.5.1
---------------------------

- Fixed build on Solaris 10 and 11 where the round() function is already
  declared (🎫`#146`).
- Fixed comparison of `Range` with non-range objects (🎫`#164`).
  Thanks to Chris Withers for the patch.
- Fixed double-free on connection dealloc (🎫`#166`). Thanks to
  Gangadharan S.A. for the report and fix suggestion.
2013-07-04 13:01:36 +00:00
wiz
f0d40dd06a Update to 2.5:
What's new in psycopg 2.5
-------------------------

New features:

- Added :ref:`JSON adaptation <adapt-json>`.
- Added :ref:`support for PostgreSQL 9.2 range types <adapt-range>`.
- `connection` and `cursor` objects can be used in ``with`` statements
  as context managers as specified by recent |DBAPI|_ extension.
- Added `~psycopg2.extensions.Diagnostics` object to get extended info
  from a database error.  Many thanks to Matthew Woodcraft for the
  implementation (🎫`#149`).
- Added `connection.cursor_factory` attribute to customize the default
  object returned by `~connection.cursor()`.
- Added support for backward scrollable cursors. Thanks to Jon Nelson
  for the initial patch (🎫`#108`).
- Added a simple way to :ref:`customize casting of composite types
  <adapt-composite>` into Python objects other than namedtuples.
  Many thanks to Ronan Dunklau and Tobias Oberstein for the feature
  development.
- `connection.reset()` implemented using :sql:`DISCARD ALL` on server
  versions supporting it.

Bug fixes:

- Properly cleanup memory of broken connections (🎫`#148`).
- Fixed bad interaction of ``setup.py`` with other dependencies in
  Distribute projects on Python 3 (🎫`#153`).

Other changes:

- Added support for Python 3.3.
- Dropped support for Python 2.4. Please use Psycopg 2.4.x if you need it.
- `~psycopg2.errorcodes` map updated to PostgreSQL 9.2.
- Dropped Zope adapter from source repository. ZPsycopgDA now has its own
  project at <http://github.com/psycopg/ZPsycopgDA>.
2013-05-04 23:52:45 +00:00
wiz
5522d094d8 Update to 2.4.6. Fix python interpreter in installed files.
What's new in psycopg 2.4.6
---------------------------

  - Fixed 'cursor()' arguments propagation in connection subclasses
    and overriding of the 'cursor_factory' argument.  Thanks to
    Corry Haines for the report and the initial patch (ticket #105).
  - Dropped GIL release during string adaptation around a function call
    invoking a Python API function, which could cause interpreter crash.
    Thanks to Manu Cupcic for the report (ticket #110).
  - Close a green connection if there is an error in the callback.
    Maybe a harsh solution but it leaves the program responsive
    (ticket #113).
  - 'register_hstore()', 'register_composite()', 'tpc_recover()' work with
    RealDictConnection and Cursor (ticket #114).
  - Fixed broken pool for Zope and connections re-init across ZSQL methods
    in the same request (tickets #123, #125, #142).
  - connect() raises an exception instead of swallowing keyword arguments
    when a connection string is specified as well (ticket #131).
  - Discard any result produced by 'executemany()' (ticket #133).
  - Fixed pickling of FixedOffsetTimezone objects (ticket #135).
  - Release the GIL around PQgetResult calls after COPY (ticket #140).
  - Fixed empty strings handling in composite caster (ticket #141).
  - Fixed pickling of DictRow and RealDictRow objects.
2012-12-16 16:04:12 +00:00
asau
354ee694fd Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-02 21:25:15 +00:00
obache
ab4e71d90b Bump PKGREVISION for change of PostgreSQL default version to 9.1. 2012-08-05 10:02:09 +00:00
adam
42479c2286 Changes 2.4.5:
* The close() methods on connections and cursors don't raise exceptions if
  called on already closed objects.
* Fixed fetchmany() with no argument in cursor subclasses.
* Use lo_creat() instead of lo_create() when possible for better interaction
  with pgpool-II.
* Error and its subclasses are picklable, useful for multiprocessing interaction
* Better efficiency and formatting of timezone offset objects thanks to Menno
  Smits.
* Fixed rownumber during iteration on cursor subclasses. Regression introduced
  in 2.4.4.
* Added support for inet arrays.
* Fixed commit() concurrency problem.
* Codebase cleaned up using the GCC Python plugin's static analysis tool, which
  has revealed several unchecked return values, possible NULL dereferences,
  reference counting problems.
2012-04-17 15:44:22 +00:00
wiz
c595076396 All supported python versions in pkgsrc support eggs, so remove
${PLIST.eggfile} from PLISTs and support code from lang/python.
2012-04-08 20:21:41 +00:00
fhajny
4ca4014a1d Avoid double definition of double on SunOS. 2012-03-12 11:52:28 +00:00
obache
4e92f23799 Update py-psycopg2 to 2.4.4.
While here, let to register egg-info.

What's new in psycopg 2.4.4
---------------------------

  - 'register_composite()' also works with the types implicitly defined
    after a table row, not only with the ones created by 'CREATE TYPE'.
  - Values for the isolation level symbolic constants restored to what
    they were before release 2.4.2 to avoid breaking apps using the
    values instead of the constants.
  - Named DictCursor/RealDictCursor honour itersize (ticket #80).
  - Fixed rollback on error on Zope (ticket #73).
  - Raise 'DatabaseError' instead of 'Error' with empty libpq errors,
    consistently with other disconnection-related errors: regression
    introduced in release 2.4.1 (ticket #82).


What's new in psycopg 2.4.3
---------------------------

  - connect() supports all the keyword arguments supported by the
    database
  - Added 'new_array_type()' function for easy creation of array
    typecasters.
  - Added support for arrays of hstores and composite types (ticket #66).
  - Fixed segfault in case of transaction started with connection lost
    (and possibly other events).
  - Fixed adaptation of Decimal type in sub-interpreters, such as in
    certain mod_wsgi configurations (ticket #52).
  - Rollback connections in transaction or in error before putting them
    back into a pool. Also discard broken connections (ticket #62).
  - Lazy import of the slow uuid module, thanks to Marko Kreen.
  - Fixed NamedTupleCursor.executemany() (ticket #65).
  - Fixed --static-libpq setup option (ticket #64).
  - Fixed interaction between RealDictCursor and named cursors
    (ticket #67).
  - Dropped limit on the columns length in COPY operations (ticket #68).
  - Fixed reference leak with arguments referenced more than once
    in queries (ticket #81).
  - Fixed typecasting of arrays containing consecutive backslashes.
  - 'errorcodes' map updated to PostgreSQL 9.1.
2012-01-26 10:49:41 +00:00
joerg
9a0666357e Tag the 28 locations that result in a Python 3.1 package as supporting so.
Remove it from the default list for the rest.
2011-12-03 00:02:14 +00:00
adam
bffd19730f Changes 2.4.2:
* Added 'set_session()' method and 'autocommit' property to the
  connection. Added support for read-only sessions and, for PostgreSQL
  9.1, for the "repeatable read" isolation level and the "deferrable"
  transaction property.
* Psycopg doesn't execute queries at connection time to find the
  default isolation level.
* Fixed bug with multithread code potentially causing loss of sync
  with the server communication or lock of the client.
* Don't fail import if mx.DateTime module can't be found, even if its
  support was built.
* Fixed escape for negative numbers prefixed by minus operator.
* Fixed refcount issue during copy.
* Trying to execute concurrent operations on the same connection
  through concurrent green thread results in an error instead of a
  deadlock.
2011-06-16 09:03:11 +00:00
adam
f4e043af46 Changes 2.4.1:
* Use own parser for bytea output, not requiring anymore the libpq 9.0 to parse
  the hex format.
* Don't fail connection if the client encoding is a non-normalized variant.
* Correctly detect an empty query sent to the backend.
* Fixed a SystemError clobbering libpq errors raised without SQLSTATE.
* Fixed interaction between NamedTuple and server-side cursors.
* Allow to specify --static-libpq on setup.py command line instead of just in
  'setup.cfg'.
2011-05-17 06:14:01 +00:00
adam
c5f9ea51d1 Changes 2.4:
* New features and changes:
  - Added support for Python 3.1 and 3.2. The conversion has also
    brought several improvements:
    - Added 'b' and 't' mode to large objects: write can deal with both
      bytes strings and unicode; read can return either bytes strings
      or decoded unicode.
    - COPY sends Unicode data to files implementing 'io.TextIOBase'.
    - Improved PostgreSQL-Python encodings mapping.
    - Added a few missing encodings: EUC_CN, EUC_JIS_2004, ISO885910,
      ISO885916, LATIN10, SHIFT_JIS_2004.
    - Dropped repeated dictionary lookups with unicode query/parameters.
  - Improvements to the named cusors:
    - More efficient iteration on named cursors, fetching 'itersize'
      records at time from the backend.
    - The named cursors name can be an invalid identifier.
  - Improvements in data handling:
    - Added 'register_composite()' function to cast PostgreSQL
      composite types into Python tuples/namedtuples.
    - Adapt types 'bytearray' (from Python 2.6), 'memoryview' (from
      Python 2.7) and other objects implementing the "Revised Buffer
      Protocol" to 'bytea' data type.
    - The 'hstore' adapter can work even when the data type is not
      installed in the 'public' namespace.
    - Raise a clean exception instead of returning bad data when
      receiving bytea in 'hex' format and the client libpq can't parse
      them.
    - Empty lists correctly roundtrip Python -> PostgreSQL -> Python.
  - Other changes:
    - 'cursor.description' is provided as named tuples if available.
    - The build script refuses to guess values if 'pg_config' is not
      found.
    - Connections and cursors are weakly referenceable.
* Bug fixes
2011-04-15 13:28:26 +00:00
adam
23da5eb6da Changes 2.3.2:
* Fixed segfault with middleware not passing DateStyle to the client

Changes 2.3.1:
* Fixed build problem on CentOS 5.5 x86_64

Changes 2.3.0:
psycopg 2.3 aims to expose some new features introduced in PostgreSQL 9.0.
* Main new features:
  - `dict` to `hstore` adapter and `hstore` to `dict` typecaster, using both
    9.0 and pre-9.0 syntax.
  - Two-phase commit protocol support as per DBAPI specification.
  - Support for payload in notifications received from the backed.
  - `namedtuple`-returning cursor.
  - Query execution cancel.
2011-01-20 09:55:30 +00:00
adam
e87b9b3477 MASTER_SITES and HOMEPAGE have changed 2010-09-09 14:32:26 +00:00
adam
9b26fe4a5d Changes 2.2.2:
* 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.
2010-09-07 06:13:12 +00:00
joerg
3b5d2041bb Bump revision for change of PostgreSQL default version. 2010-02-10 19:34:05 +00:00
joerg
ba6d1257b9 psycopg 2.0.13:
- 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
2009-10-19 10:54:47 +00:00
joerg
0268c554bd Remove @dirrm entries from PLISTs 2009-06-14 17:38:38 +00:00