2005-07-17 17:49  emarsden

	* README: Note that the current code has been tested against
	  PostgreSQL 8.0 (with both v2 and v3 protocol versions).

2005-07-17 17:48  emarsden

	* large-object.lisp, lowlevel.lisp, pg.lisp, v2-protocol.lisp,
	  v3-protocol.lisp: Make PGLO-READ a generic function, with
	  specializations on the v2 and v3 protocols. The difference is
	  necessary because the v2 protocol reads large-object data in
	  text, whereas the v3 protocol changed to use a binary format.

2005-07-17 17:46  emarsden

	* sysdep.lisp: Use the updated MD5 code, that operates on octet
	  arrays rather than strings.

2005-07-17 17:44  emarsden

	* defpackage.lisp, md5.lisp, pg.asd, stone-age-load.lisp: Update to
	  a more recent version of md5.lisp, taken from SBCL's SB-MD5
	  contrib. The change is motivated by the fact that SBCL generates
	  a runtime error "function declared not to return returned" with
	  the current code. Made a few changes to make the code compile in
	  other Common Lisp implementations.

2005-07-17 15:49  emarsden

	* pg-tests.lisp: Minor fix to tests for PostgreSQL 8.0: the MONEY
	  type is deprecated.

2005-07-17 15:46  emarsden

	* parsers.lisp, sysdep.lisp, v3-protocol.lisp: Three fixes from
	  Björn Lindberg <d95-bli@nada.kth.se>:

	     - Two trivial bugs with regards to use with Allegro

	     - Handling of the special timestamp values infinity and
	  -infinity. They
	       gave an error, but now returns the symbols :INFINITY and
	  :-INFINITY
	       respectively.

	     - A bug in the version 3 of the protocol, where it would
	  return NIL for
	       fields in the database containing the empty string, rather
	  than an
	       empty string.

2005-05-04 22:51  pvaneynde

	* sysdep.lisp: possible sbcl unicode fix

2004-09-20 00:32  pvaneynde

	* v3-protocol.lisp: Corrected wrong code for Close Complete

2004-09-20 00:14  pvaneynde

	* debian/changelog: new debian package

2004-09-20 00:13  pvaneynde

	* v3-protocol.lisp, debian/changelog: fixed extended queries for
	  newer versions of postgreSQL, they need the sync message

2004-09-07 14:52  emarsden

	* CREDITS, parsers.lisp, pg-tests.lisp: Add support for the SQL
	  NUMERIC type, thanks to Risto Sakari Laakso.	Was previously
	  being parsed as an integer, but is in fact a fix-precision
	  floating-point number.

2004-08-13 18:50  emarsden

	* large-object.lisp, pg-tests.lisp, v3-protocol.lisp: Implement
	  binary-mode transfers for large-object operations in the v3
	  protocol. The v2 protocol transfers arguments in binary mode, but
	  the v3 protocol requires the client to specify for each argument
	  of a FunctionCall whether it is encoded as binary or as text.

	    - add possibility to send (unsigned-byte 8) arguments to
	  function calls

	    - add a method READ-OCTETS-FROM-PACKET that reads raw octets

	    - make PG-IMPORT and PG-EXPORT use binary I/O

	    - PGLO-READ reads data in binary

	    - change the large-object tests to use binary I/O (fixes the
	  pglo test)

2004-08-13 18:45  emarsden

	* parsers.lisp: Trivial.

2004-08-11 15:27  emarsden

	* parsers.lisp, pg-tests.lisp, pg.asd, stone-age-load.lisp,
	  sysdep.lisp, v3-protocol.lisp: add a file that does a manual load
	  of pg

2004-08-11 15:26  emarsden

	* CREDITS, NEWS, TODO: layout of documentation

2004-08-10 13:09  pvaneynde

	* debian/changelog: added note about fixed bug

2004-08-10 13:00  pvaneynde

	* debian/rules: adapted the rules fire for  the extra files needed

2004-08-10 12:52  pvaneynde

	* debian/changelog: Changed to a version-less date-oriented
	  versioning system.

2004-04-22 19:00  emarsden

	* v3-protocol.lisp:
	  Comment-only patch: mark the places in the v3-protocol code where
	  charset encoding problems will have to be addressed.

	  It's probably not worth going through the v2-protocol code to fix
	  these issues, since it has too many places where READ-CSTRING is
	  confused with READ-OCTET-ARRAY.

2004-04-22 18:57  emarsden

	* defpackage.lisp:
	    - export the *PG-CLIENT-ENCODING* variable from the PG package

2004-04-21 21:27  emarsden

	* v3-protocol.lisp:
	  A provisional fix for large object support: the test case (whose
	  large-object component only runs on CMUCL) was resetting the
	  connection during the IMPORT/EXPORT test, due to an unexpected
	  #\V packet (FunctionCallResponse) in DO-FOLLOWUP-QUERY. It's
	  still not clear why a FunctionCallResponse should be received
	  anywhere other than in FN.  This test is currently failing due to
	  CR -> "\012" corruption that I haven't debugged.

2004-04-21 21:23  emarsden

	* parsers.lisp: From Sven Van Caekenberghe:

	    - fix to PARSE-TIMESTAMP when no milliseconds are present

	    - make use of :start and :end arguments to PARSE-INTEGER to
	  reduce consing

2004-04-20 14:59  emarsden

	* md5.lisp:
	    - imported file, with some minor changes to Pierre Mai's
	  original code
	      to improve portability (mostly adding EVAL-WHEN clauses).

2004-04-01 20:35  emarsden

	* README, pg.asd, sysdep.lisp, v2-protocol.lisp, v3-protocol.lisp:
	    - add md5 authentication (thanks to Brian Mastenbrook). Uses
	  Pierre Mai's
	      portable md5.lisp library, that has been added to the project
	  (with extra
	      EVAL-WHENness to please OpenMCL and ACL).

	      Tested with CMUCL, SBCL, OpenMCL, CLISP, ACL 6.1. ABCL does
	  not compile
	      md5.lisp, probably for more EVAL-WHEN reasons. Only tested
	  with PostgreSQL
	      version 7.4.

2004-03-20 22:48  pvaneynde

	* pg-tests.lisp, v3-protocol.lisp: now COPY IN/OUT actually works,
	  also created test-case

2004-03-17 19:15  emarsden

	* v3-protocol.lisp:
	   - fix bogus type declaration

	   - remove bogus use of CMUCL's finalization (can't reference
	  dying
	     object from the finalizer)

2004-03-17 19:13  emarsden

	* sysdep.lisp:	- changes for Armed Bear Lisp: change to new API
	  for binary socket
	     streams; autoload a working FORMAT

2004-03-09 17:27  pvaneynde

	* defpackage.lisp, v3-protocol.lisp: untested COPY IN/OUT code. I
	  am not happy about how this looks...

2004-03-09 17:25  pvaneynde

	* debian/: changelog, control, copyright, dirs, links, postinst,
	  prerm, rules: debian directory import

2004-03-08 19:12  emarsden

	* lowlevel.lisp, sysdep.lisp, v2-protocol.lisp, v3-protocol.lisp:
	  - improvements to the system-dependent functionality: OpenMCL is
	      able to use a local connection to the backend; most
	      implementations resignal connection errors as a
	  postgres-error.

	    - fixes to the lowlevel code

2004-03-08 17:45  emarsden

	* lowlevel.lisp, pg-tests.lisp, v3-protocol.lisp:
	   - fix to the lowlevel factorization

	   - modify parameter handling in v3 protocol to add parameters to
	  the
	     connection object, instead of issuing a warning

2004-03-08 16:01  emarsden

	* CREDITS, NEWS, README, lowlevel.lisp, pg-tests.lisp, pg.asd,
	  pg.lisp, v2-protocol.lisp, v3-protocol.lisp: More factorization
	  of lowlevel functions between v2 and v3 protocols.

2004-03-08 15:38  pvaneynde

	* defpackage.lisp: added pbe functions

2004-03-08 15:37  pvaneynde

	* pg-tests.lisp: added pbe test

2004-03-08 15:37  pvaneynde

	* parsers.lisp: added type-to-oid table and lookup-type function to
	  aid in bpe operations

2004-03-08 15:37  pvaneynde

	* pg.lisp, v3-protocol.lisp: pg.lisp:  - make print-object more
	  robust  - added documentation to the defgenerics  - added some
	  declarations v3-protocol.lisp:  - make errors restartable as we
	  hope to     sync again with the db  - return errors from
	  read-packet because	 sometimes it is the only clue we get
	  that there is no more output	- replaced arefs with the faster
	  elt  - unified query followup into do-followup-query	- added pbe
	  (prepare bind execute) support

2004-03-06 23:59  pvaneynde

	* pg.asd: the crypt library actually is loaded in sysdep.lisp

2004-03-05 19:08  emarsden

	* CREDITS, TODO, large-object.lisp, meta-queries.lisp,
	  parsers.lisp, pg-tests.lisp, pg.asd, pg.lisp, sysdep.lisp,
	  utility.lisp, v2-protocol.lisp, v3-protocol.lisp:
	  Integrate Peter Van Eynde's v3 protocol support:

	     - create PGCON-V2 and PGCON-V3 classes
	     - PG-CONNECT attempts to connect using v3 protocol, and falls
	  back
	       to v2 protocol for older backends; return a PGCON-V2 or
	  PGCON-V3
	       object
	     - PG-EXEC and FN and PG-DISCONNECT are generic functions that
	       dispatch on the connection type
	     - protocol code split into v2-protocol.lisp and
	  v3-protocol.lisp

	  TBD: cleaning up the notification & error reporting support, and
	  factorizing more code between the two protocol versions.

	  Also split code out into multiple files:

	     - large-object support
	     - metainformation about databases
	     - parsing and type coercion support
	     - utility functions and macros

2004-03-03 14:11  emarsden

	* NEWS, README, cmucl-install-subsystem.lisp, defpackage.lisp,
	  pg-tests.lisp, pg.asd, pg.lisp, sysdep.lisp: Initial revision

2004-03-03 14:11  emarsden

	* NEWS, README, cmucl-install-subsystem.lisp, defpackage.lisp,
	  pg-tests.lisp, pg.asd, pg.lisp, sysdep.lisp: initial import

