NEWS for Guile-PG


- 0.16 | 2003-08-13

  - New (database postgres) proc: `pg-print'
  - New (database postgres) proc: `pg-make-print-options'

	These are documented in the manual.

  - "make check" now passes for PostgreSQL 7.3.3

	As of PostgreSQL 7.2, the output representation of arrays has
	changed to conditionally use double-quotes (only when "needed").
	Here is a short table using type `text[]':

	                   needed               unneeded
        prior to 7.2       {",a","{}","c'c"}    {"d","e","f"}
        7.2 and later      {",a","{}","c'c"}    {d,e,f}

	Although the module (database postgres-types) has been able to
	handle these cases all along, one of the "make check" tests was
	previously failing because it checked the representation before
	the conversion to scheme objects.  This has now been corrected
	and verified to work against a stock-install PostgreSQL 7.3.3.

  - Script to share the good news publicized

	The README now mentions the test/show-platform script.


- 0.15 | 2003-01-15

  - New (database postgres) proc: `pg-connection?'

  - Extension to (database postgres-table) proc: `pgtable-manager'

	The first arg of this proc used to be a string naming the
	database to use.  Now it can additionally be an empty string,
	a string of space-separated "var=val" pairs, or an already
	existing connection object (satisfying `pg-connection?').

  - New (database postgres-meta) proc: `infer-defs'

  - New module: (database postgres-col-defs)
  - New module: (database postgres-resx)

	These provide procedures to handle column definitions and to
	transform result objects in various ways, respectively.

  - WARNING: column definition procs have moved

	The following procedures continue to be exported from (database
	postgres-table), but are now in (database postgres-col-defs):

                bye-bye                 hello
                -------                 -----
                def:col-name            column-name
                def:type-name           type-name
                def:type-options        type-options

	Sometime before 1.0 release they will no longer be exported from
	the (database postgres-table) module.


- 0.14 | 2002-12-27

  - Configuration bugfix: twerp2texi invocation conditionalized

	The configure script, when --enable-maintainer-mode, now checks
	if "guile-tools twerp2texi" is available and displays a warning
	if not.

  - New (database postgres) proc: `pg-result?'

  - New (database postgres-types) built-in type converters

	name
	aclitem
	aclitem[]

  - New experimental module: (database postgres-meta)

	This module provides some table introspection capabilities,
	currently exported as procedure `describe-table!', q.v.
	Interface design ideas welcome (post to mailing lists).


- 0.13 | 2002-12-24

  - `terminating' slack

	The heuristic fallback when lacking `scm_terminating' has been
	replaced w/ a configure.in check for `terminating' in libguile.
	If neither is available, on lob flush error, guile-pg writes to
	stderr unconditionally.  This is safer than unconditionally
	calling scm_syserror (the previous approach), which may crash
	guile in some circumstances.

  - New (database postgres-types) proc: oid-type-name-cache CONN [FRESH?]

	Documented in the manual, which now sports full extracted
	docstrings (cheesy Commentary snapshots removed, too).


- 0.12 | 2002-12-21

  - PATH/configure where PATH != "./" supported

	This is known as "vpath build" or "srcdir!=builddir build".
	Previously, "make check" failed for such situations due to not
	being able to find test/testing.scm.

  - New module: (database postgres-types)
  - New module: (database postgres-table)

	These scheme modules are documented in their respective chapters
	(for now, see code for detailed documentation on each proc).


- 0.11 | 2002-12-17

  - `InvalidOid' declaration slack

	This variable is expected to be declared by libpq-fe.h (or one
	of its sub-#include files).  PostgreSQL 7.0.3, in particular,
	fails to do this, but provides `InvalidOid' in another header.
	Configuration now attempts to include the appropriate additional
	header.

  - `scm_terminating' declaration slack

	This variable is expected to be declared by libguile.h (or one
	of its sub-#include files).  Some versions of Guile provide
	"terminating" but not "scm_terminating".  Configuration now
	detects lack of scm_terminating and arranges (heuristically) for
	the latter to be an alias of the former.

  - New file: THANKS

	A good place to find fellow guile-pg users!


- 0.10 | 2002-12-14

  - Bugfix: pg-lo-tell

	This procedure, which does the equivalent of "seek 0 SEEK_CUR",
	was not taking into account guile's port buffering conventions,
	resulting in an incorrect value being returned (the position
	indicated by the end of the port's read-buffer instead of the
	actual position).  For example:

	  (pg-lo-tell port)	=> 0	; ok
	  (pg-lo-read 4 2 port)         ; read two objects of four bytes
          (pg-lo-tell port)     => 100	; wrong, should be 8

	Test coverage for pg-lo-tell is still rather low.  Additional
	interesting test cases are always welcome.


- 0.09 | 2002-12-12

	Docs spiffing: Info page organization now flattened.

	As a convenience for existing code, the vars:
		PGRES_EMPTY_QUERY
		PGRES_COMMAND_OK
		PGRES_TUPLES_OK
		PGRES_COPY_OUT
		PGRES_COPY_IN
		PGRES_BAD_RESPONSE
		PGRES_NONFATAL_ERROR
		PGRES_FATAL_ERROR
	are now added back, but w/ symbolic values rather than
	numerical.  However, this is temporary; these vars will go away
	(and stay gone) as 1.0 release nears.  New code should use
	symbols directly (see manual for examples).


- 0.08 | 2002-12-11

	Maintenance for guile-pg has passed from Ian Grant (original
	author) to Thien-Thi Nguyen.  Thanks Ian!

	This release differs from 0.07 in that `pg-result-status' values
	are symbolic (rather than numerical), the guile-pg integrated
	interpreter is no longer included (neither built nor installed),
	the "rcsid"-related procs/vars are no longer included, and "make
	check" now works pre-install.

	See http://www.glug.org/alt/ for latest anoncvs access info.


- 0.07 | 2000-07-08

	Released Version 0.07.  The primnary reason for this release is
	to fix a bug where 0.06 wouldn't build with the newly-released
	guile-1.4 Also added pg-oid-value function.


- 0.06 | 2000-06-02

	Released Version 0.06.  Builds with guile-1.3.4 and pre-release
	guile-1.4.  Function names changed from pg:xxx to the more
	schemely pg-xxx.  Minor documentation and bug fixes.


- 0.05 | 1999-06-03

	Second alpha release. Version 0.05


- 0.04 | 1999-12-24

	First alpha release.  Called guile-pg-0.04.


- 1998-12-03

	Initial build


- etc

	Local Variables:
	mode: outline
	outline-regexp: "\\([ ][ ]\\)*- "
	fill-column: 72
	fill-prefix: "\t"
	End:
