mirror of
https://github.com/psycopg/psycopg2.git
synced 2024-11-27 03:13:43 +03:00
1745 lines
55 KiB
Plaintext
1745 lines
55 KiB
Plaintext
2003-07-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.7.
|
||
|
||
* ZPsycopgDA/db.py: added _cursor method that checks for self.db
|
||
before returning a new cursor. Should fix problem reported with
|
||
Zope 2.7.
|
||
|
||
2003-07-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c: applied notify and fileno patch from Vsevolod Lobko.
|
||
|
||
2003-07-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_dict): applied (slightly modofied) patch from
|
||
Tobias Sargeant: now .execute() accept not only dictionaries but
|
||
every type that has a __getitem__ method.
|
||
|
||
2003-07-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.6.
|
||
|
||
* cursor.c (psyco_curs_scroll): added scroll method, patch from
|
||
Jason D.Hildebrand.
|
||
|
||
* typemod.c (new_psyco_quotedstringobject): discard NUL characters
|
||
(\0) in quoted strings (fix problem reported by Richard Taylor.)
|
||
|
||
2003-07-10 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Added python-taylor.txt in doc directory: very nice introduction
|
||
to DBAPI programming by Richard Taylor.
|
||
|
||
2003-07-09 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_psyco_curs_execute): another MT problem exposed and
|
||
fixed by Sebastien Bigaret (self->keeper->status still LOCKED
|
||
after a fatal error during PQexec call.)
|
||
|
||
2003-06-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.5.1.
|
||
|
||
* ZPsycopgDA/db.py (DB.query): stupid error making ZPsycopgDA
|
||
unusable fixed (else->except).
|
||
|
||
2003-06-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.5 candidate.
|
||
|
||
* cursor.c (psyco_curs_copy_to): now any object with the write
|
||
method can be used as a copy_to target.
|
||
|
||
2003-06-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_copy_from): applied patch to allow copy_to
|
||
from any object having a "readline" attribute (patch from Lex
|
||
Berezhny.) (psyco_curs_copy_from): another patch from Lex to make
|
||
psycopg raise an error on COPY FROM errors.
|
||
|
||
* ZPsycopgDA/db.py (DB.query): if a query raise an exception,
|
||
first self._abort() is called to rollback current
|
||
"sub-transaction". this is a backward-compatible change for
|
||
people that think continuing to work in the same zope transaction
|
||
after an exception is a Good Thing (TM).
|
||
|
||
* finally updated check_types.expected. checked by hand the
|
||
conversions work the right way.
|
||
|
||
* doc/examples/work.py: fixed example. note that it is a long time
|
||
(at least two releases) that psycopg does not END a transaction
|
||
initiated explicitly by the user while in autocommit mode.
|
||
|
||
2003-06-19 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_dict): fixed dictionary mogrification (patch
|
||
by Vsevolod Lobko.) (_psyco_curs_execute): fixed keeper status
|
||
trashing problem by letting only one thread at time play with
|
||
keeper->status (as suggested by Sebastien Bigaret.)
|
||
|
||
2003-05-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.4.
|
||
|
||
* cursor.c: Added "statusmessage" attribute that holds the backend
|
||
message (modified lots of functions, look for self->status).
|
||
|
||
2003-05-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typemod.c (new_psyco_datetimeobject): moved Py_INCREF into
|
||
XXX_FromMx functions, to fix memory leak reported by Jim Crumpler.
|
||
|
||
2003-04-11 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* module.h (PyObject_TypeCheck): fixed leak in python 2.1
|
||
(Guido van Rossum).
|
||
|
||
2003-04-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* buildtypes.py (basic_types): removed LXTEXT (never user, does
|
||
not exists anymore.)
|
||
|
||
2003-04-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* setup.py: added very lame setup.py script.
|
||
|
||
2003-04-02 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.3.
|
||
|
||
* psycopg.spec: Added (but modified) spec file by William
|
||
K. Volkman (again, this change was lost somewhere in time...)
|
||
|
||
2003-04-01 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_psyco_curs_execute): psycopg was reporting everything
|
||
as IntegrityError; reported and fix suggested by Amin Abdulghani.
|
||
|
||
2003-03-21 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_fetchone): debug statements sometimes made
|
||
psycopg segfault: fixed by a patch by Ken Simpson.
|
||
|
||
2003-03-18 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (alloc_keeper): patch from Dieter Maurer to unlock GIL
|
||
whaile calling PQconnectdb().
|
||
|
||
2003-03-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.2.
|
||
|
||
* Applied cygwin patch from Hajime Nakagami.
|
||
|
||
2003-02-25 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.1.2pre1.
|
||
|
||
* cursor.c: added .lastrowid attribute to cursors (lastoid is
|
||
deprecated and will be removed sometime in the future.)
|
||
|
||
* cursor.c (begin_pgconn): implemented various isolation levels
|
||
(also, in abort_pgconn, commit_pgconn.)
|
||
|
||
* Added keyword parameters to psycopg.connect(): all take strings
|
||
(even port): database, host, port, user, password.
|
||
|
||
* configure.in: fixed test for postgres version > 7.2.
|
||
|
||
* cursor.c (_psyco_curs_execute): removed if on pgerr in default
|
||
case (if we enter default pgerr can't be one of the cased ones.)
|
||
Also applied slightly modified patch from William K. Volkman.
|
||
|
||
2003-02-24 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Merged in changes from 1.0.15.1 (see below for merged
|
||
ChangeLog.)
|
||
|
||
2003-02-14 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.15.1.
|
||
|
||
* cursor.c (_mogrify_fmt): in some cases we where removing one
|
||
character too much from the format string, resulting in BIG BAD
|
||
BUG. <g> Fixed.
|
||
|
||
2003-02-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.15. <g>
|
||
|
||
* connection.c (_psyco_conn_close): now call dispose_pgconn on all
|
||
cursors, to make sure all phisical connections to the db are
|
||
closed (problem first reported by Amin Abdulghani.)
|
||
|
||
* DBAPI-2.0 fixed mainly due to Stuart Bishop:
|
||
- cursor.c (psyco_curs_setinputsizes): removed PARSEARGS, as
|
||
this method does nothing.
|
||
- cursor.c (psyco_curs_setoutputsize): .setoutputsize was
|
||
spelled .setoutputsizes! fixed. Also removed PARSEARGS, as this
|
||
method does nothing.
|
||
|
||
2003-02-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* module.h (Dprintf): check on __APPLE__ to avoid variadic macros
|
||
on macos x (as reported by Stuart Bishop, btw, why gcc seems to
|
||
not support them on macos?)
|
||
|
||
* cursor.c (_mogrify_fmt): non-alphabetic characters are dropped
|
||
after the closing ")" until a real alphabetic, formatting one is
|
||
found. (Fix bug reported by Randall Randall.)
|
||
|
||
2003-02-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): patched again to take into
|
||
account leading zeroes.
|
||
|
||
2003-02-02 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in: applied patch from Albert Chin-A-Young to
|
||
define BLDSHARED.
|
||
|
||
* README: added explicit permission to link with OpenSSL.
|
||
|
||
2003-01-30 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* config.h.in: applied patch from Albert Chin-A-Young to fix
|
||
asprintf prototype.
|
||
|
||
2003-01-29 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_seq): fixed little refcount leak, as
|
||
suggested by Yves Bastide.
|
||
|
||
2003-01-24 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Merged-in changes from 1.0.14.2 (emacs diff mode is great..)
|
||
|
||
* Release 1.0.14.2.
|
||
|
||
* ZPsycopgDA/db.py (DB.query): back to allowing up to 1000 db
|
||
errors before trying to reopen the connection by ourselves.
|
||
|
||
* ZPsycopgDA/db.py: a false (None preferred, 0 allowed) max_rows
|
||
value now means "fetch all results".
|
||
|
||
2003-01-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_fetchone): fixed little memory leak
|
||
reported by Dieter Maurer.
|
||
|
||
2003-01-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB.tables/columns): added registration with
|
||
Zope's transaction machinery.
|
||
|
||
* Release 1.0.14.1.
|
||
|
||
* ZPsycopgDA/db.py: applied some fixes and cleanups by Dieter
|
||
Maurer (serialization problem were no more correctly detected!)
|
||
|
||
* Release 1.0.14.
|
||
|
||
* Merged in 1.0.14.
|
||
|
||
* Import of 1.1.1 done.
|
||
|
||
* Moved everything to cvs HEAD.
|
||
|
||
2003-01-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/connectionAdd.dtml: fixed typo (thanks to Andrew
|
||
Veitch.)
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): applied patch from Karl Putland
|
||
to fix problems with fractional seconds.
|
||
|
||
2002-12-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.14-pre2.
|
||
|
||
* module.h: added macro for PyObject_TypeCheck if python version <2.2.
|
||
|
||
* typeobj.c (psyco_DBAPITypeObject_coerce): added error message to
|
||
coercion errors.
|
||
|
||
2002-12-02 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.14-pre1.
|
||
|
||
* ZPsycopgDA/db.py (DB.sortKey): added sortKey().
|
||
|
||
* ZPsycopgDA/DA.py: applied a patch that was lost on hard disk
|
||
(sic), if you sent me a patch names psycopg-1.0.13.diff modifying
|
||
DA.py imports and want your name here, send me an email. :)
|
||
[btw, the patch fix the ImageFile import, getting it from Globals
|
||
as it is right.]
|
||
|
||
* typeobj.c (psyco_DBAPITypeObject_coerce): Fixed coerce segfault
|
||
by checking explicitly for all the allowed types.
|
||
|
||
2002-11-25 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* doc/examples/*.py: added .rollback() to all exceptions before
|
||
deleteing the old table.
|
||
|
||
* cursor.c: Apllied patch from John Goerzen (fix memory leak in
|
||
executemany).
|
||
|
||
2002-10-25 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.13.
|
||
|
||
* connection.c (_psyco_conn_close): remove cursors from the list
|
||
starting from last and moving backward (as suggested by Jeremy
|
||
Hylton; this is not such a big gain because python lists are
|
||
*linked* lists, but not removing the element 0 makes the code a
|
||
little bit clear.)
|
||
|
||
* cursor.c (_psyco_curs_execute): now IntegrityError is raised
|
||
instead of ProgrammingError when adding NULL values to a non-NULL
|
||
column (suggested by Edmund Lian) and on referential integrity
|
||
violation (as per debian bug #165791.)
|
||
|
||
* typeobj.c (psyco_DATE_cast): now we use 999999 instead of
|
||
5867440 for very large (both signs) dates. This allow to re-insert
|
||
the DateTime object into postgresql (suggested by Zahid Malik.)
|
||
|
||
2002-09-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.12.
|
||
|
||
* Removed code to support COPY FROM/TO, will be added to new 1.1
|
||
branch to be released next week.
|
||
|
||
* cursor.c (_mogrify_seq): Fixed memory leak reported by Menno
|
||
Smits (values obtained by calling PySequence_GetItem are *new*
|
||
references!)
|
||
|
||
2002-09-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_psyco_curs_execute): Added skeleton to support COPY
|
||
FROM/TO.
|
||
|
||
2002-09-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: if libcrypt can't be found we probably are on
|
||
MacOS X: check for libcrypto, as suggested by Aparajita Fishman.
|
||
|
||
2002-09-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB.columns): Applied patch from Dieter Maurer
|
||
to allow the DA-browser to work with mixed case table names.
|
||
|
||
2002-08-30 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (cast_DateTime): Applied patch from Yury to fix
|
||
timestamps (before they were returned with time always set to 0.)
|
||
|
||
2002-08-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.11.1 (to fix a %&<26>$"! bug in ZPsycopgDA not
|
||
accepting psycopg 1.0.11 as a valid version.
|
||
|
||
* Release 1.0.11.
|
||
|
||
2002-08-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.11pre2.
|
||
|
||
* cursor.c (_psyco_curs_execute): fixed IntegrityError as reported
|
||
by Andy Dustman. (psyco_curs_execute): converting TypeError to
|
||
ProgrammingError on wrong number of % and/or aeguments.
|
||
|
||
* doc/examples/integrity.py: added example and check for
|
||
IntegrityError.
|
||
|
||
2002-08-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.11pre1.
|
||
|
||
2002-08-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (cast_DateTime): patched as suggested by Tom
|
||
Jenkins; now it shouldwork with time zones too.
|
||
|
||
2002-08-01 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (cast_DateTime): fixed problem with missing
|
||
AM/PM, as reported by Tom Jenkins.
|
||
|
||
2002-07-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Fixed buglets reported by Mike Coleman.
|
||
|
||
2002-07-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.10.
|
||
|
||
2002-07-14 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.10pre2.
|
||
|
||
* typeobj.c (psyco_LONGINTEGER_cast): fixed bad segfault by
|
||
INCREFfing Py_None when it is the result of a NULL conversion.
|
||
|
||
2002-07-04 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.10pre1.
|
||
|
||
* buildtypes.py (basic_types): added TIMESTAMPTZ to the types
|
||
converted by the DATE builtin.
|
||
|
||
* ZPsycopgDA/DA.py (Connection.connect): Added version check.
|
||
|
||
2002-07-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_XXX_cast): fixed bug reported by multiple users
|
||
by appliying Matt patch.
|
||
|
||
2002-06-30 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (Connection.set_type_casts): applied patch from
|
||
Tom Jenkins to parse dates with TZ.
|
||
|
||
2002-06-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Preparing for release 1.0.9.
|
||
|
||
* Makefile.pre.in (dist): now we really include psycopg.spec.
|
||
|
||
2002-06-17 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (_finish, _abort): fixed problem with
|
||
connection left in invalid state by applying Tom Jenkins patch.
|
||
|
||
2002-06-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB._abort): fixed exception raising after an
|
||
error in execute triggerer deletion of self.db.
|
||
|
||
2002-05-16 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_fetchone): None values passed to the
|
||
internal typecasters.
|
||
|
||
* typeobj.c: added management of None to all the builtin
|
||
typecasters.
|
||
|
||
2002-04-29 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (cast_Time): applied 'seconds as a float' patch
|
||
from Jelle.
|
||
|
||
2002-04-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.8.
|
||
|
||
* Makefile.pre.in: we now include win32 related files in the
|
||
distribution.
|
||
|
||
* connection.c (psyco_conn_destroy): fixed segfault reported by
|
||
Scott Leerssen (we were double calling _psyco_conn_close().)
|
||
|
||
* typemod.c (new_psyco_quotedstringobject): fixed memory stomping
|
||
catched by assert(); thanks to Matt Hoskins for reporting this
|
||
one.
|
||
|
||
2002-04-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: grmpf. we need a VERSION file for windows, we'll
|
||
use it for configue and debian/rules too.
|
||
|
||
* Integrated win32 changes from Jason Erickson. Moved his
|
||
Readme.txt to README.win32, removed VERSION and DATE, patched
|
||
source where required. Renamed HISTORY to ChangeLog.win32, hoping
|
||
Jason will start adding changes to the real ChangeLog file.
|
||
|
||
2002-04-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.7.1.
|
||
|
||
* configure.in: fixed little bug as reported by ron.
|
||
|
||
2002-04-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.7?
|
||
|
||
* typemod.c (new_psyco_bufferobject): fixed encoding problem (0xff
|
||
now encoded as \377 and not \777.) Also encoding *all* chars as
|
||
quoted octal values to prevent "Invalid UNICODE character sequence
|
||
found" errors.
|
||
|
||
* Release 1.0.7. (Real this time.) (Ok, it was a joke....)
|
||
|
||
2002-04-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: fixed problem with postgres versions in the format
|
||
7.2.x (sic.)
|
||
|
||
* connection.c (psyco_conn_destroy): moved most of the destroy
|
||
stuff into its own function (_psyco_conn_close) and added a call
|
||
to it from psyco_conn_close. This should fix the "psycopg does not
|
||
release postgres connections on .close()" problem.
|
||
|
||
2002-03-29 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.7. Delayed.
|
||
|
||
* buildtypes.py (basic_types): added TIMESTAMPTZ postgres type to
|
||
the list of valid DATETIME types (incredible luck, no changes to
|
||
the parse are needed!)
|
||
|
||
* typeobj.c (psyco_DATE_cast): fixed wrong managment of sign in
|
||
infinity.
|
||
|
||
2002-03-27 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in (INSTALLOPTS): added AC_PROG_CPP test, now uses
|
||
AC_TRY_CPP to test for _all_ required mx includes.
|
||
|
||
2002-03-19 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: added check for both pg_config.h and config.h to
|
||
detect postgres version.
|
||
|
||
* cursor.c: now None values are correctly handled when the format
|
||
string is not %s but %d, etc.
|
||
|
||
2002-03-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py: added MessageDialog import suggested by
|
||
Guido.
|
||
|
||
2002-03-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* psycopg.spec: added RPM specs by William K. Volkman.
|
||
|
||
* Release 1.0.6.
|
||
|
||
* configure.in: imported changes to allow postgres 7.2 builds from
|
||
unstable branch.
|
||
|
||
2002-03-04 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.5.
|
||
|
||
* applied table browser patch from Andy Dustman.
|
||
|
||
2002-02-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_DATE_cast): added management of infinity
|
||
values, this can be done in a better way, by accessing the
|
||
MaxDateTime and MinDateTime constants of the mx.DateTime module.
|
||
|
||
2002-02-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: Release 1.0.4.
|
||
|
||
2002-02-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB.columns): fixed select to reenable column
|
||
expansion in table browsing.
|
||
|
||
* ZPsycopgDA/__init__.py: removed code that made psycopg think
|
||
double.
|
||
|
||
2002-02-11 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_dict): removed Py_DECREF of Py_None,
|
||
references returned by PyDict_Next() are borrowed (thanks to
|
||
Michael Lausch for this one.)
|
||
|
||
2002-02-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* A little bug slipped in ZPsycopgDA, releasing 1.0.3 immediately.
|
||
|
||
* Release 1.0.2.
|
||
|
||
* tests/check_types.py (TYPES): added check for hundredths of a
|
||
second.
|
||
|
||
2002-02-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): patched to correct wrong
|
||
interpretation of hundredths of a second (patch from
|
||
A. R. Beresford, kudos!)
|
||
|
||
2002-01-31 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* FAQ: added.
|
||
|
||
2002-01-16 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Preparing for release 1.0.1.
|
||
|
||
* cursor.c (alloc_keeper): removed ALLOW_THREADS wrapper around
|
||
PQconnectdb: libpq calls crypt() that is *not* reentrant.
|
||
|
||
2001-12-19 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_DBAPITypeObject_cmp): added check to simply
|
||
return false when two type objects are compared (type objects are
|
||
meaned to be compared to integers!)
|
||
|
||
* typeobj.c: fixed the memory leak reported by the guys at
|
||
racemi, for real this time. (added about 5 DECREFS and 2 INCREFS,
|
||
ouch!)
|
||
|
||
2001-12-17 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_DBAPITypeObject_cmp): fixed memory leak by
|
||
using PyTuple_GET_ITEM (we are sure the tuple has at least one
|
||
element, we built it, after all...) (many thanks to Scott Leerssen
|
||
for reporting the *exact line* for this one.)
|
||
|
||
2001-12-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c: fixed memory leak due to extra strdup (thanks
|
||
to Leonardo Rochael Almeida.)
|
||
|
||
2001-11-14 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 1.0.
|
||
|
||
* doc/README: added explanation about guide work in progess but
|
||
examples working.
|
||
|
||
* debian/*: lots of changes to release 1.0 in debian too.
|
||
|
||
2001-11-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* RELEASE-1.0: added release file, to celebrate 1.0.
|
||
|
||
* tests/zope/typecheck.zexp: regression test on types for zope.
|
||
|
||
2001-11-11 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (cast_Interval): removed typecast of interval
|
||
into zope DateTime. intervals are reported as strings when using
|
||
zope DateTime and as DateTimeDeltas when using mx.
|
||
|
||
2001-11-09 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): complete rewrite of the
|
||
interval parsing code. now we don't use sscanf anymore and all is
|
||
done with custom code in a very tight and fast loop.
|
||
|
||
2001-11-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/DA.py (Connection.set_type_casts): added mx INTERVAL
|
||
type restore.
|
||
|
||
* ZPsycopgDA/db.py (DB.query): now we return column names even if
|
||
there are no rows in the result set. also, cleaned up a little bit
|
||
the code.
|
||
|
||
2001-11-7 Federico Di Gregorio, <fog@debian.org>
|
||
|
||
* Makefile.pre.in: fixed small problem with zcat on True64
|
||
(thank you stefan.)
|
||
|
||
2001-11-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB.query): added fix for concurrent update
|
||
from Chris Kratz.
|
||
|
||
2001-11-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c: now we include postgres.h if InvalidOid is still
|
||
undefined after all other #includes.
|
||
|
||
* README: clarified use of configure args related to python
|
||
versions.
|
||
|
||
* aclocal.m4: patched to work with symlinks installations (thanks
|
||
to Stuart Bishop.)
|
||
|
||
* cursor.c (_psyco_curs_execute): now reset the keeper's status to
|
||
the old value and not to BEGIN (solve problem with autocommit not
|
||
switching back.)
|
||
|
||
2001-11-01 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* doc/examples/dt.py: added example on how to use the date and
|
||
time constructors.
|
||
|
||
* Makefile.pre.in (dist-zope): removed dependencies on GNU install
|
||
and tar commands. Also a little general cleanup on various targets.
|
||
|
||
* ZPsycopgDA/DA.py: fixed mx.DateTime importing.
|
||
|
||
2001-10-31 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typemod.c (psyco_xxxFromMx): fixed bug in argument parsing (we
|
||
weren't usigng the right type object.)
|
||
|
||
* aclocal.m4: now builds OPT and LDFLAGS on the values of the env
|
||
variables instead of overwriting them.
|
||
|
||
* Makefile.pre.in (CFLAGS): removed -Wall, you can add it back at
|
||
compile time with OPT="-Wall" ./configure ...
|
||
|
||
* Setup.in (OPT): removed -Wall.
|
||
|
||
2001-10-30 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.h: ANSI C compatibility patch from Daniel Plagge.
|
||
|
||
2001-10-30 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* README: added common building problems and solutions.
|
||
|
||
* configure.in: removed check for install command, already done by
|
||
james's aclocal.m4 for python. removed install-sh. removed -s from
|
||
INSTALLOPTS.
|
||
|
||
2001-10-29 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in (dist): removed examples/ directory from
|
||
distribution.
|
||
|
||
* merge with cvs head. preparing to fork again on PSYCOPG-1-0 (i
|
||
admit BRANCH_1_0 was quite a silly name.)
|
||
|
||
* doc/examples/usercast.py: now works.
|
||
|
||
* connection.c (curs_rollbackall): fixed little bug (exposed by
|
||
the deadlock below) by changing KEEPER_READY to KEEPER_READY.
|
||
|
||
* doc/examples/commit.py: deadlock problem solved, was the
|
||
example script, _not_ psycopg. pew... :)
|
||
|
||
* examples/*: removed the examples moved to doc/examples/.
|
||
|
||
* doc/examples/commit.py,dictfetch.py: moved from examples/ and
|
||
changed to work for 1.0. unfortunately commit.py locks psycopg!!!
|
||
|
||
2001-10-24 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* modified all files neede for the 1.0 release.
|
||
|
||
* configure.in (MXFLAGS): removed electric fence support.
|
||
|
||
* Makefile.pre.in (dist): now we remove CVS working files before
|
||
packing the tarball.
|
||
|
||
* tests: files in this directory are not coding examples, but
|
||
regression tests. we need a sufficient number of tests to follow
|
||
every single code path in psycopg at least once. first test is
|
||
about datatypes.
|
||
|
||
* doc/examples: moved new example code to examples directory, old
|
||
tests and code samples will stay in examples/ until the manual will
|
||
be finished.
|
||
|
||
2001-10-16 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): completely revised interval
|
||
casting code. (psyco_TIME_cast): we use the unix epoch when the
|
||
date is undefined.
|
||
|
||
* cursor.c (psyco_curs_executemany): modified sanity check to
|
||
accept sequences of tuples too and not just dictionaries.
|
||
|
||
2001-10-15 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): fixed bug caused by wrong
|
||
parsing on '1 day' (no hours, minutes and seconds.)
|
||
|
||
2001-10-15 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (_execute): use the correct cast functions even on
|
||
retrival of binary cursors.
|
||
|
||
2001-10-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typemod.c (new_psyco_bufferobject): space not quoted anymore,
|
||
smarter formula to calculate realloc size.
|
||
|
||
* cursor.c (psyco_curs_fetchone): removed static tuple (using
|
||
static variable in multithreaded code is *crazy*, why did i do it?
|
||
who knows...)
|
||
|
||
* typeobj.c (psyco_init_types): exports the binary converter (will
|
||
be used in cursor.c:_execute.)
|
||
|
||
* typeobj.h: added export of psyco_binary_cast object.
|
||
|
||
2001-10-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_psyco_curs_execute): added missing Py_XDECREF on
|
||
casts list.
|
||
|
||
* Makefile.pre.in (dist): added install-sh file to the
|
||
distribution.
|
||
|
||
* replaced PyMem_DEL with PyObject_Del where necessary.
|
||
|
||
* connection.c (psyco_conn_destroy): added missing
|
||
pthread_mutex_destroy on keeper lock.
|
||
|
||
2001-10-01 Michele Comitini <mcm@initd.net>
|
||
|
||
* typemod.c(new_psyco_bufferobject()): using unsigned char for
|
||
binary objects to avoid too many chars escaped. A quick and
|
||
simple formula to avoid memory wasting and too much reallocating
|
||
for the converted object. Needs _testing_, but it is faster.
|
||
|
||
* cursor.c: #include <postgres.h>
|
||
|
||
* module.h: now debugging should be active only when asked by
|
||
./configure --enable-devel
|
||
|
||
2001-09-29 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (new_psyco_cursobject): added locking of connection,
|
||
still unsure if necessary.
|
||
|
||
2001-09-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: changed DEBUG into PSYCOTIC_DEBUG, to allow other
|
||
includes (postgres.h) to use the former. better compiler checks:
|
||
inline, ansi, gcc specific extensions. removed MXMODULE: we don't
|
||
need it anymore.
|
||
|
||
* general #include cleanup, should compile on MacOS X too.
|
||
|
||
* typeobj.c (psyco_DATE_cast): uses sscanf. should be faster too.
|
||
(psyco_TIME_cast): dixit.
|
||
|
||
* applied patch from Daniel Plagge (SUN cc changes.)
|
||
|
||
2001-09-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py (DB._finish, DB._begin): fix for the
|
||
self.db == None problem.
|
||
|
||
2001-09-19 Michele Comitini <mcm@initd.net>
|
||
|
||
* typemod.c (new_psyco_bufferobject): better memory managment
|
||
(now it allocates only needed space dinamically).
|
||
|
||
* typeobj.c (psyco_BINARY_cast): ripped a useless check, now
|
||
it assumes that binary streams come out from the db correctly
|
||
escaped. Should be a lot faster.
|
||
|
||
2001-09-18 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): fixed interval conversion
|
||
(hours were incorrectly converted into seconds.)
|
||
|
||
2001-09-17 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_seq, _mogrify_dict): added check for None
|
||
value and conversion of None -> NULL (fixes bug reported by Hamish
|
||
Lawson.)
|
||
|
||
2001-09-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* module.c: added handles to new date and time conversion
|
||
functions (see below.)
|
||
|
||
* typemod.c (psyco_XXXFromMx): added conversion functions that
|
||
simply wrap the mxDateTime objects instead of creating
|
||
them. DBAPI-2.0 extension, off-curse.
|
||
|
||
2001-09-10 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* buildtypes.py: solved hidden bug by changing from dictionary to
|
||
list, to maintain ordering of types. sometimes (and just
|
||
sometimes) the type definitions were printed unsorted, resulting
|
||
is psycopg initializing the type system using the type objects in
|
||
the wrong order. you were getting float values from an int4
|
||
column? be happy, this is now fixed...
|
||
|
||
* cursor.c (psyco_curs_lastoid): added method to get oid of the
|
||
last inserted row (it was sooo easy, it even works...)
|
||
|
||
2001-09-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_INTERVAL_cast): added casting function for the
|
||
postgres INTERVAL and TINTERVAL types (create a DateTimeDelta
|
||
object.)
|
||
|
||
2001-09-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c: moved all calls to begin_pgconn to a single call in
|
||
_psyco_curs_execute, to leave the connection in a not-idle status
|
||
after a commit or a rollback. this should free a lot of resources
|
||
on the backend side. kudos to the webware-discuss mailing list
|
||
members and to Clark C. Evans who suggested a nice solution.
|
||
|
||
* connection.c (curs_rollbackall, curs_commitall): removed calls
|
||
to begin_pgconn, see above.
|
||
|
||
* module.c (initpsycopg): cleaned up mxDateTime importing; we now
|
||
use the right function from mxDateTime.h. Is not necessary anymore
|
||
to include our own mx headers. This makes psycopg to depend on
|
||
mxDateTime >= 2.0.0.
|
||
|
||
2001-09-04 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* doc/*.tex: added documentation directory and skeleton of the
|
||
psycopg guide.
|
||
|
||
2001-09-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* merged in changes from HEAD (mostly mcm fixes to binary
|
||
objects.)
|
||
|
||
* preparing for release 0.99.6.
|
||
|
||
2001-09-03 Michele Comitini <mcm@initd.net>
|
||
|
||
* typemod.c: much faster Binary encoding routine.
|
||
|
||
* typeobj.c: much faster Binary decoding routine.
|
||
|
||
2001-08-28 Michele Comitini <mcm@initd.net>
|
||
|
||
* typemod.c: Working binary object to feed data to bytea type
|
||
fields.
|
||
|
||
* typeobj.c: Added BINARY typecast to extract data from
|
||
bytea type fields.
|
||
|
||
* cursor.c: Added handling for SQL binary cursors.
|
||
|
||
2001-08-3 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: fixed DATESTYLE problem thanx to Steve Drees.
|
||
|
||
2001-07-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in: applied change suggested by Stefan H. Holek to
|
||
clobber and distclean targets.
|
||
|
||
2001-07-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py: fixed little bugs exposed by multiple select
|
||
changes, not we correctly import ListType and we don't override
|
||
the type() function with a variable.
|
||
|
||
2001-07-17 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: Release 0.99.5.
|
||
|
||
2001-07-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* debian/* fixed some little packaging problems.
|
||
|
||
2001-07-11 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c, typeobj.c: removed some Py_INCREF on PyDict_SetItem
|
||
keys and values to avoid memory leaks.
|
||
|
||
2001-07-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_mogrify_dict): added dictionary mogrification: all
|
||
Strings in the dictionary are translated into QuotedStrings. it
|
||
even works... (_mogrify_seq): added sequence mogrification and
|
||
code to automagically mogrify all strings passed to .execute().
|
||
|
||
2001-07-02 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.99.4.
|
||
|
||
* typemod.c: added QuotedString class and methods.
|
||
|
||
* module.c: added QuotedString method to module psycopg.
|
||
|
||
* typemod.c: changed Binary objects into something usefull. now
|
||
the buffer object quotes the input by translatin every char into
|
||
its octal representation. this consumes 4x memory but guarantees
|
||
that even binary data containing '\0' can go into the Binary
|
||
object.
|
||
|
||
* typemod.h: added definition of QuotedString object.
|
||
|
||
2001-06-28 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py, ZPsycopgDA/DABase.py: applied patch sent by
|
||
yury to fix little buglet.
|
||
|
||
2001-06-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.99.3.
|
||
|
||
* connection.c (new_psyco_connobject): now we strdup dsn, as a fix
|
||
for the problem reported by Jack Moffitt.
|
||
|
||
* Ok, this will be the stable branch from now on...
|
||
|
||
* Merged in stuff from 0.99.3. About to re-branch with a better
|
||
name (BRANCH_1_0)
|
||
|
||
2001-06-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.99.3. Showstoppers for 1.0 are:
|
||
- documentation
|
||
- mxDateTime module loading
|
||
- bug reported by Yury.
|
||
|
||
* Integrated patches from Michele:
|
||
- searching for libcrypt in configure now works
|
||
- removed memory leak in asprintf.c
|
||
|
||
2001-06-15 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/__init__.py (initialize): applied patch from Jelle to
|
||
resolve problem with Zope 2.4.0a1.
|
||
|
||
2001-06-14 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: added code to check for missing functions (only
|
||
asprintf at now.)
|
||
|
||
* asprintf.c: added compatibility code for oses that does not have
|
||
the asprintf() function.
|
||
|
||
2001-06-10 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Branched PSYCOPG_0_99_3. Development will continue on the cvs
|
||
HEAD, final adjustements and bugfixing should go to this newly
|
||
created branch.
|
||
|
||
2001-06-08 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA/DA.py: DateTime casts simplified and corrected
|
||
as suggested by Yury.
|
||
|
||
2001-06-05 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.99.2.
|
||
|
||
* Makefile.pre.in (dist): added typemod.h and typemod.c to
|
||
distribution.
|
||
|
||
* cursor.c (commit_pgconn, abort_pgconn, begin_pgconn): resolved
|
||
segfault reported by Andre by changing PyErr_SetString invokations
|
||
into pgconn_set_critical. the problem was that the python
|
||
interpreter simply segfaults when we touch its internal data (like
|
||
exception message) inside an ALLOW_THREADS wrapper.
|
||
|
||
* now that we are 100% DBAPI-2.0 compliant is time for the
|
||
one-dot-o release (at last!) Para-pa-pa! This one is tagged
|
||
PSYCOPG_0_99_1 but you can call it 1.0pre1, if you better like.
|
||
(A very long text just to say 'Release 0.99.1')
|
||
|
||
* typemod.[ch]: to reach complete DBAPI-2.0 compliance we
|
||
introduce some new objects returned by the constructors Date(),
|
||
Time(), Binary(), etc. Those objects are module-to-database only,
|
||
the type system still takes care of the database-to-python
|
||
conversion.
|
||
|
||
2001-06-01 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.5.5.
|
||
|
||
* module.h: better error message when trying to commit on a
|
||
cursor derived from serialized connection.
|
||
|
||
* ZPsycopgDA/db.py (DB.close): now self.cursor is set to None when
|
||
the connection is closed.
|
||
|
||
* module.c (initpsycopg): added missing (sic) DBAPI module
|
||
parameters (paramstyle, apilevel, threadsafety, etc...)
|
||
|
||
2001-05-24 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA: Support for Zope's internal DateTime, option
|
||
to leave mxDateTime is available on the management interface so
|
||
to switch with little effort :).
|
||
|
||
* cursor.c: more aggressive cleanup of postgres results
|
||
to avoid the risk of memory leaking.
|
||
|
||
* typeobj.c, connection.c: deleted some Py_INCREF which
|
||
wasted memory.
|
||
|
||
2001-05-18 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.5.4.
|
||
|
||
2001-05-17 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA/db.py: The connection closed by the management
|
||
interface of zope now raises error instead of reopening itself.
|
||
|
||
* cursor.c (psyco_curs_close): does not try to free the cursor
|
||
list, as it caused a segfault on subsequent operations on the same
|
||
cursor.
|
||
|
||
2001-05-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.5.3.
|
||
|
||
* Merged in changes from me and mcm.
|
||
|
||
2001-05-06 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA/db.py (DB.close): Fixes a bug report by Andre
|
||
Shubert, which was still open since there was a tiny typo in
|
||
method definition.
|
||
|
||
* ZPsycopgDA/DA.py (Connection.sql_quote__): overriding standard
|
||
sql_quote__ method to provide correct quoting (thank to Philip
|
||
Mayers and Casey Duncan for this bug report).
|
||
|
||
2001-05-04 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* ZPsycopgDA/db.py: added .close() method (as suffested by Andre
|
||
Schubert.)
|
||
|
||
2001-05-04 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.h: working on a closed object now raises an
|
||
InterfaceError.
|
||
|
||
* ZPsycopgDA/db.py: fixed problems with dead connections detection.
|
||
|
||
* ZPsycopgDA/__init__.py: corrected SOFTWARE_HOME bug for zope
|
||
icon.
|
||
|
||
2001-05-04 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* examples/thread_test.py: now that the serialization bug is
|
||
fixed, it is clear that thread_test.py is bugged! added a commit()
|
||
after the creation of the first table to avoid loosing it on the
|
||
exception raised by the CREATE of an existing table_b.
|
||
|
||
2001-05-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* connection.c (psyco_conn_cursor): reverted to old locking
|
||
policy, the new caused a nasty deadlock. apparently the multiple
|
||
connection problem has been solved as a side-effect of the other
|
||
fixes... (?!)
|
||
|
||
* module.h: removes stdkeeper field from connobject, we don't need
|
||
it anymore.
|
||
|
||
* cursor.c (dispose_pgconn): now sets self->keeper to NULL to
|
||
avoid decrementing the keeper refcnt two times when the cursor is
|
||
first closed and then destroyed.
|
||
|
||
* connection.c (psyco_conn_cursor): fixed little bug in cursor
|
||
creation: now the connection is locked for the entire duration of
|
||
the cursor creation, to avoid a new cursor to be created with a
|
||
new keeper due to a delay in assigning the stdmanager cursor.
|
||
|
||
* cursor.c: added calls to pgconn_set_critical() and to
|
||
EXC_IFCRITICAL() where we expect problems. Still segfaults but at
|
||
least raise an exception...
|
||
|
||
* cursor.c (psyco_curs_autocommit): added exception if the
|
||
cursor's keeper is shared between more than 1 cursor.
|
||
|
||
* module.h (EXC_IFCRITICAL): added this macro that call
|
||
pgconn_resolve_critical) on critical errors.
|
||
|
||
* cursor.c (alloc_keeper): added check for pgres == NULL.
|
||
|
||
* cursor.c (psyco_curs_destroy): merged psyco_curs_destroy() and
|
||
psyco_curs_close(): now both call _psyco_curs_close() and destroy
|
||
does only some extra cleanup.
|
||
|
||
2001-05-03 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA/db.py: Some cleanup to bring the zope product up to
|
||
date with the python module. Some bugs found thanks to Andre
|
||
Schubert. Now the ZDA should rely on the new serialized version
|
||
of psycopg.
|
||
|
||
* cursor.c: while looking for problems in the ZDA some come out
|
||
here, with the inability to handle dropping connection correctly.
|
||
This leads to segfaults and is not fixed yet for lack of time.
|
||
Some problems found in cursors not willing to share the same
|
||
connection even if they should. Hopefully it should be fixed
|
||
soon.
|
||
|
||
2001-04-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* fixed bug reported by Andre Schubert by adding a new cast
|
||
function for long integers (int8 postgresql type.) at now they are
|
||
converted to python LongIntegers: not sure f simply convert to
|
||
floats.
|
||
|
||
* michele applied patch from Ivo van der Wijk to make zpsycopgda
|
||
behave better when INSTANCE_HOME != SOFTWARE_HOME.
|
||
|
||
* cursor.c (_psyco_curs_execute): also fill the 'columns' field.
|
||
|
||
* module.h: added a 'columns' field to cursobject, to better
|
||
support the new dictionary fetch functions (dictfetchone(),
|
||
dictfetchmany(), dictfetchall().)
|
||
|
||
* cursor.c: added the afore-mentioned functions (function names
|
||
are not definitive, they will follow decisions on the DBAPI SIG.)
|
||
|
||
2001-04-03 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.5.1.
|
||
|
||
* mcm fixed a nasty bug by correcting a typo in module.h.
|
||
|
||
2001-03-30 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* module.c (psyco_connect): added `serialized' named argument to
|
||
the .connect() method (takes 1 or 0 and initialize the connection
|
||
to the right serialization state.)
|
||
|
||
* Makefile.pre.in (dist): fixed little bug, a missing -f argument
|
||
to rm.
|
||
|
||
* examples/thread_test.py: removed all extension cruft.
|
||
|
||
* examples/thread_test_x.py: this one uses extensions like the
|
||
per-cursor commit, autocommit, etc.
|
||
|
||
* README (psycopg): added explanation on how .serialize() works.
|
||
|
||
* connection.c (psyco_conn_serialize): added cursor serialization
|
||
and .serialize() method on the connection object. now we are
|
||
definitely DBAPI-2.0 compliant.
|
||
|
||
2001-03-20 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (_psyco_curs_execute): replaced some fields in
|
||
description with None, as suggested on the DB-SIG ML.
|
||
|
||
* something like one hundred of little changes to allow cursors
|
||
share the same postgres connection. added connkeeper object and
|
||
pthread mutexes (both in connobject and connkeeper.) apparently it
|
||
works. this one will be 0.5.0, i think.
|
||
|
||
2001-03-19 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: added mutexes, they do not interact well with python
|
||
threads :(.
|
||
|
||
2001-03-16 Michele Comitini <mcm@initd.net>
|
||
|
||
* ZPsycopgDA/db.py (ZDA): some fixes in table browsing.
|
||
|
||
2001-03-16 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* suite/tables.postgresql (TABLE_DESCRIPTIONS): fixed some typos
|
||
introduced by copying by hand the type values from pg_type.h.
|
||
|
||
* suite/*: added some (badly) structured code to test for
|
||
DBAPI-2.0 compliance.
|
||
|
||
* cursor.c (pgconn_notice_callback): now the NOTICE processor only
|
||
prints NOTICEs when psycopg has been compiled with the
|
||
--enable-devel switch.
|
||
|
||
* connection.c: removed 'autocommit' attribute, now is a method as
|
||
specified in the DBAPI-2.0 document.
|
||
|
||
2001-03-15 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* connection.c (curs_commitall): splitted for cycle in two to
|
||
avoid the "bad snapshot" problem.
|
||
|
||
2001-03-14 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.4.6.
|
||
|
||
* cursor.c (_psyco_curs_execute): fixed nasty bug, there was an
|
||
free(query) left from before the execute/callproc split.
|
||
|
||
* Preparing for 0.4.6.
|
||
|
||
2001-03-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_execute): fixed some memory leaks in
|
||
argument parsing (the query string was not free()ed.)
|
||
(psyco_curs_callproc): implemented callproc() method on cursors.
|
||
(_psyco_curs_execute): this is the function that does the real
|
||
stuff for callproc() and execute().
|
||
(pgconn_notice_*): added translation of notices into python
|
||
exceptions (do we really want that?)
|
||
|
||
* configure.in: removed some cruft (old comments and strncasecmp()
|
||
check)
|
||
|
||
2001-03-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* examples/thread_test.py: added moronic argument parsing: now you
|
||
can give the dsn string on the command line... :(
|
||
|
||
* Release 0.4.5.
|
||
|
||
2001-03-10 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (request_pgconn): added code to set datestyle to ISO on
|
||
new connections (many thanks to Yury <yura@vpcit.ru> for the code,
|
||
i changed it just a little bit to raise an exception on error.)
|
||
|
||
2001-03-09 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.4.4.
|
||
|
||
* ZPsycopgDA/db.py: michele fixed a nasty bug here.
|
||
|
||
2001-03-08 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.4.3.
|
||
|
||
2001-03-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in (dist): typeobj_builtins.c included for people
|
||
without pg_type.h. if you encounter type-casting problems like
|
||
results cast to the wrong type, simply "rm typeobj_builtins.c" and
|
||
rebuild.
|
||
|
||
* typeobj.c (psyco_*_cast): removed RETURNIFNULL() macro from all
|
||
the builtin casting functions. (psyco_STRING_cast) does not create
|
||
a new string anymore, simply Py_INCREF its argument and return it.
|
||
|
||
* cursor.c (psyco_curs_fetchone): removed strdup() call. added
|
||
PQgetisnull() test to differentiate between real NULLs and empty
|
||
strings.
|
||
|
||
* Removed cursor.py (mcm, put tests in examples) and fixed some
|
||
typos in the dtml code.
|
||
|
||
2001-03-04 Michele Comitini <mcm@initd.net>
|
||
|
||
* examples/commit_test.py: Modifications to test argument passing
|
||
and string substitution to cursor functions, nothing more.
|
||
|
||
* ZPsycopgDA/db.py: now it exploits some of the good features of
|
||
the psycopg driver, such as connection reusage and type
|
||
comparison. Code is smaller although it handles (and
|
||
reports) errors much better.
|
||
|
||
* cursor.c: corrected a bug that left a closed cursor in the
|
||
cursor list of the connection. Now cursors are removed from the
|
||
lists either when they are close or when they are destroyed.
|
||
Better connection (TCP) error reporting and handling.
|
||
|
||
|
||
2001-03-02 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* examples commit_test.py: added code to test autocommit.
|
||
|
||
* examples/thread_test.py (ab_select): modified select thread to
|
||
test autocommit mode.
|
||
|
||
* Release 0.4.1.
|
||
|
||
* module.h, connection.c, cursor.c: added autocommit support.
|
||
|
||
2001-02-28 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Release 0.4.
|
||
|
||
2001-02-27 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.py: cut some unuseful code in psyco_curs_fetchmany() and
|
||
psyco_curs_fetchall() inserted an assert in case someting goes
|
||
wrong.
|
||
|
||
2001-02-27 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* debian/*: various changes to build both the python module and
|
||
the zope db adapter in different packages (respectively
|
||
python-psycopg and zope-psycopgda.)
|
||
|
||
* examples/type_test.py: better and more modular tests.
|
||
|
||
* typeobj.c: added DATE, TIME, DATETIME, BOOLEAN, BINARY and ROWID
|
||
types. (RETURNIFNULL) added NULL-test to builtin conversion
|
||
functions (using the RETURNIFNULL macro.)
|
||
|
||
2001-02-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* releasing 0.3 (added NEWS file.)
|
||
|
||
2001-02-26 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: fetchmany() some cleanup done.
|
||
|
||
* ZPsycopgDA/db.py, ZPsycopgDA/__init__.py, : fixes to make the
|
||
ZDA work some way. WARNING WARNING WARNING the zda is still
|
||
alpha code, but we need some feed back on it so please give it
|
||
a try.
|
||
|
||
2001-02-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c (psyco_STRING_cast): fixed bad bad bad bug. we
|
||
returned the string without coping it and the type-system was more
|
||
than happy to Py_DECREF() it and trash the whole system. fixed at
|
||
last!
|
||
|
||
* module.h (Dprintf): added pid to every Dprintf() call, to
|
||
facilitate multi-threaded debug.
|
||
|
||
2001-02-26 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c: added code so that DateTime package need not to be
|
||
loaded to have mxDateTime. This should avoid clashing with
|
||
DateTime from the zope distribution.
|
||
|
||
* cursor.c: setting error message in fetchmany when no more tuples
|
||
are left. This has to be fixed in fetch and fetchall to.
|
||
|
||
2001-02-26 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: stepped up version to 0.3, ready to release
|
||
tomorrow morning. added check for path to DateTime module.
|
||
|
||
* examples/usercast_test.py: generate some random boxes and
|
||
points, select the boxes with at least one point inside and print
|
||
them converting the PostgeSQL output using a user-specified cast
|
||
object. nice.
|
||
|
||
2001-02-24 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (psyco_curs_fetchone): now an error in the python
|
||
callback when typecasting results raise the correct exception.
|
||
|
||
* typeobj.c (psyco_DBAPITypeObject_call): removed extra Py_INCREF().
|
||
|
||
2001-02-23 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* replaced every single instance of the string 'pgpy' with 'psyco'
|
||
(this was part of the general cleanup.)
|
||
|
||
* type_test.py: added this little test program to the distribution
|
||
(use the new_type() method to create new instances of the type
|
||
objects.)
|
||
|
||
* typeobj.c: general cleanup. fixed some bugs related to
|
||
refcounting (again!)
|
||
|
||
* cursor.c: general cleanup. (request_pgconn) simplified by adding
|
||
a support function (_extract_pgconn.)
|
||
|
||
* connection.c: general cleanup. replaced some ifs with asserts()
|
||
in utility functions when errors depend on programming errors and
|
||
not on runtime exceptions. (pgpy_conn_destroy) fixed little bug
|
||
when deleting available connections from the list.
|
||
|
||
* module.h: general cleanup.
|
||
|
||
* typeobj.h: general cleanup, better comments, made some function
|
||
declarations extern.
|
||
|
||
* module.c: general cleanup, double-checked every function for
|
||
memory leaks. (pgpy_connect) removed unused variable 'connection'.
|
||
|
||
2001-02-22 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c: fixed lots of bugs, added NUMBER type object. now the
|
||
basic tests in type_test.py work pretty well.
|
||
|
||
* cursor.c (pgpy_curs_fetchmany): fixed little bug, fetchmany()
|
||
reported one less row than available.
|
||
|
||
* fixed lots of bugs in typeobj.c, typeobj.h, cursor.c. apparently
|
||
now the type system works. it is time to clean up things a little
|
||
bit.
|
||
|
||
2001-02-21 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* typeobj.c: separated type objects stuff from module.c
|
||
|
||
* typeobj.h: separated type objects stuff from module.h
|
||
|
||
2001-02-19 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* cursor.c (pgpy_curs_fetchmany): now check size and adjust it to
|
||
be lesser or equal than the nuber of available rows.
|
||
|
||
2001-02-18 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c, module.h: added optional args maxconn and minconn to
|
||
connection functions
|
||
|
||
* cursor.c: better error checking in request_pgconn.
|
||
|
||
* connection.c: changed new_connect_obj to take as optional args
|
||
maxconn and minconn. Added the corresponding ro attributes to
|
||
connection objects.
|
||
|
||
* cursor.py: added some code to stress test cursor reusage.
|
||
|
||
* cursor.c: some fixes on closed cursors.
|
||
|
||
* connection.c: corrections on some assert calls.
|
||
|
||
2001-02-16 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* configure.in: added --enable-priofile sqitch. changed VERSION to
|
||
0.2: preparing for a new release.
|
||
|
||
* cursor.c: added a couple of asserts.
|
||
|
||
2001-02-16 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c, connection.c: fixed the assert problem: assert must
|
||
take just the value to be tested! no assignemente must be done in
|
||
the argument of assert() otherwise is wiped when NDEBUG is set.
|
||
|
||
* module.h: some syntax error fixed. Error in allocating a tuple
|
||
corrected in macro DBAPITypeObject_NEW().
|
||
|
||
* module.c: pgpy_DBAPITypeObject_init() is not declared static anymore.
|
||
|
||
* cursor.c: executemany() now does not create and destroy tuples
|
||
for each list item, so it is much faster.
|
||
|
||
2001-02-14 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: added again Py_DECREF on the cpcon after disposing
|
||
it. assert() with -DNDEBUG makes the driver segfault while it
|
||
should not.
|
||
|
||
|
||
2001-02-13 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* some of the memory leak were memprof errors, bleah. resumed some
|
||
old code, fixed segfault, fixed other bugs, improved speed. almost
|
||
ready for a new release.
|
||
|
||
* connection.c (pgpy_conn_destroy): replaced some impossible ifs
|
||
with aseert()s.
|
||
|
||
* cursor.c (pgpy_curs_close): added Py_DECREF() to
|
||
self->descritpion to prevent a memory leak after an execute().
|
||
|
||
* connection.c (pgpy_conn_destroy): always access first element of
|
||
lists inside for cycles because removing items from the list makes
|
||
higher indices invalid.
|
||
|
||
* cursor.c (dispose_pgconn): fixed memory leak, there was a
|
||
missing Py_DECREF() after the addition of the C object wrapping
|
||
the postgresql connection to the list of available connections.
|
||
|
||
* cursor.c (dispose_pgconn): fixed another memory leak: an
|
||
orphaned cursor should call PQfinish() on its postgresql
|
||
connection because it has no python connection to give the
|
||
postgresql ine back.
|
||
|
||
* cursor.c (pgpy_curs_execute): added Py_DECREF() of description
|
||
tuple after adding it to self->description. this one fixes the
|
||
execute() memory leak.
|
||
|
||
* cursor.c (pgpy_curs_fetchall): added missing Py_DECREF() on row
|
||
data (obtained from fetchone().) this fixes the last memory leak.
|
||
(thread_test.py now runs without leaking memory!)
|
||
|
||
2001-02-12 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* INSTALL: removed wok cruft from head of this file.
|
||
|
||
* debian/rules: debianized the sources. python-psycopg is about to
|
||
enter debian. mxDateTime header locally included until the
|
||
maintainer of python-mxdatetime includes them in his package
|
||
(where they do belong.)
|
||
|
||
* autogen.sh: added option --dont-run-configure.
|
||
|
||
2001-02-09 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* module.c (initpsycopg): changed name of init function to match
|
||
new module name (also changed all the exception definitions.)
|
||
|
||
* README: updated psycopg description (we have a new name!)
|
||
|
||
* Ready for 0.1 release.
|
||
|
||
2001-02-07 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: now executemany takes sequences and not just
|
||
tuples
|
||
|
||
2001-02-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in: now dist target includes test programs
|
||
(thread_test.py) and README and INSTALL files.
|
||
|
||
* configure.in: changed --with-devel to --enable-devel. little
|
||
cosmetical fixes to the option management.
|
||
|
||
* connection.c, module.c, cursor.c, module.h: removed 'postgres/'
|
||
from #include directive. it is ./configure task to find the right
|
||
directory.
|
||
|
||
* thread_test.py: added thread testing program.
|
||
|
||
2001-02-07 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c: added code to allow threads during PQexec() calls.
|
||
|
||
* cursor.c: added begin_pgconn to rollback() and commit()
|
||
so that the cursror is not in autocommit mode.
|
||
|
||
* cursor.c: added rollback() and commit() methods to cursor
|
||
objects.
|
||
|
||
|
||
2001-02-07 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* connection.c (pgpy_conn_destroy): always delete item at index
|
||
0 and not i (because items shift in the list while deleting and
|
||
accessing items at len(list)/2 segfaults.)
|
||
|
||
2001-02-07 Michele Comitini <mcm@initd.net>
|
||
|
||
* connection.c: added some more checking to avoid
|
||
clearing of already cleared pgresults. Calling curs_closall()
|
||
in conn_destroy() since cursors have to live even without
|
||
their parent connection, otherwise explicit deletion of
|
||
object referencing to those cursors can cause arbitrary code
|
||
to be executed.
|
||
|
||
* cursor.c: some more checking to avoid trying to close
|
||
already close pgconnections.
|
||
|
||
2001-02-06 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* Makefile.pre.in (CFLAGS): added -Wall to catch bad programming
|
||
habits.
|
||
|
||
* cursor.c, connection.c: lots of fixes to the destroy stuff. now
|
||
all the cursor are destroyed *before* the connection goes away.
|
||
|
||
* cursor.c (request_pgconn): another idiot error done by not
|
||
replacing dsn with owner_conn->dsn. fixed.
|
||
(dispose_pgconn): commented if to guarantee that the connection is
|
||
returned to the pool of available connections.
|
||
|
||
* merged changes done by mcm.
|
||
|
||
* cursor.c: general cleanup and better debugging/error
|
||
messages. changed xxx_conn into xxx_pgconn where still
|
||
missing. some pretty big changes to the way pgconn_request()
|
||
allocates new connections.
|
||
|
||
* connection.c: removed all 'register' integers. obsolete, gcc
|
||
does a much better job optimizing cycles than a programmer
|
||
specifying how to use registers.
|
||
|
||
* module.h: some general cleanup and better definition of DPrintf
|
||
macro. now the DEBUG variable can be specified at configure time by
|
||
the --with-devel switch to ./configure.
|
||
|
||
2001-02-02 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): Added functions for managing a connection
|
||
pool. Segfaults.
|
||
|
||
* configure.in (Repository): removed check for mxdatetime headers.
|
||
|
||
2001-01-24 Federico Di Gregorio <fog@debian.org>
|
||
|
||
* first checkout from shinning new init.d cvs.
|
||
|
||
* autotoolized build system. note that the mx headers are missing
|
||
from the cvs, you should get them someplace else (this is the
|
||
right way to do it, just require the headers in the configure
|
||
script.)
|
||
|
||
2001-01-21 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): commit, abort, begin functions now check
|
||
the right exit status of the command.
|
||
|
||
* connection.c (Repository): working commit() and rollback()
|
||
methods.
|
||
|
||
2001-01-20 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.h (Repository): added member to cursor struct to handle
|
||
queries without output tuples.
|
||
|
||
* cursor.c (Repository): new working methods: executemany,
|
||
fetchone, fetchmany, fetchall.
|
||
|
||
2001-01-18 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): close working. destroy calling close.
|
||
close frees pg structures correctly.
|
||
|
||
* connection.c (Repository): close method working. destroy seems
|
||
working.
|
||
|
||
2001-01-17 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): now each python cursor has its own
|
||
connection. Each cursor works in a transaction block.
|
||
|
||
* connection.c (Repository): added cursor list to connection
|
||
object
|
||
|
||
2001-01-14 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): Beginning of code to implement cursor
|
||
functionalities as specified in DBA API 2.0, through the use of
|
||
transactions not cursors.
|
||
|
||
* connection.c (Repository): Added some error checking code for pg
|
||
connection (will be moved to cursor?).
|
||
|
||
2001-01-13 Michele Comitini <mcm@initd.net>
|
||
|
||
* connection.c (Repository): Added error checking in connection
|
||
code to fail if connection to the db could not be opened.
|
||
|
||
* module.h (Repository): New macro to help creating
|
||
DBAPITypeObjects.
|
||
|
||
* module.c (Repository): DBAPITypeObject __cmp__ function is now
|
||
very simplified using recursion.
|
||
|
||
* module.h (Repository): "DBAPIObject" changed to
|
||
"DBAPITypeObject".
|
||
|
||
* module.c (Repository): Fixes for coerce function of DBAPIObjects
|
||
by Federico Di Gregorio <fog@initd.net>.
|
||
(Repository): Clean up and better naming for DBAPITypeObjects.
|
||
|
||
2001-01-08 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c (Repository): Corrected the exception hierarcy
|
||
|
||
* connection.c (Repository): Begun to use the connection objects
|
||
of libpq
|
||
|
||
2001-01-07 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c (Repository): Added the Date/Time functions.
|
||
|
||
2001-01-06 Michele Comitini <mcm@initd.net>
|
||
|
||
* cursor.c (Repository): Skeleton of cursor interface. All
|
||
methods and attributes of cursor objects are now available
|
||
in python. They do nothing now.
|
||
|
||
2001-01-05 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c (Repository): Test version; module loaded with
|
||
exception defined.
|
||
|
||
2001-01-05 Michele Comitini <mcm@initd.net>
|
||
|
||
* Setup.in (Repository): Setup file.
|
||
|
||
* Makefile.pre.in (Repository): from the python source.
|
||
|
||
2001-01-05 Michele Comitini <mcm@initd.net>
|
||
|
||
* module.c: Written some code for defining exceptions.
|
||
|
||
* module.h: Static variable for exceptions.
|
||
|
||
2001-01-04 Michele Comitini <mcm@initd.net>
|
||
|
||
* Changelog: pre-release just a few prototypes to get started.
|
||
|
||
|