2013-03-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.45 (tag v0.45)

	* configure.ac (AC_INIT): Bump version to "0.45" for release.

2013-03-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Synch node layout w/ sectioning.

	This avoids a warning from Texinfo 5.0.

	* doc/ref.texh (Query Construction): Add "Strings" to menu.
	(qcons quoting): Move sections "Standard Conforming Strings"
	and "string external representation"...
	(qcons strings): New node, a section named "Strings".
	(std strings): ...here, as a new node/subsection.
	(string xrep): ...and here, as a new node/subsection.

2013-03-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc slog] Add blank lines around @tsin directives.

	Apparently, makeinfo 5.0 doesn't automagically add blank
	lines around @deftypefun et al, like makeinfo 4.13 used to do.
	<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00129.html>

	* doc/ref.texh: ...here.

2013-03-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v int] Make sure "tests" are run serially.

	* configure.ac (AM_INIT_AUTOMAKE): Add option ‘serial-tests’.

2013-03-08  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Bump Automake min vers to 1.12.2.

	* configure.ac (AM_INIT_AUTOMAKE): ...here.

2012-11-07  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Use ‘AM_PROG_AR’.

	Suggested by autoreconf.

	* configure.ac (AM_PROG_AR): New.

2012-04-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.44 (tag v0.44)

	* configure.ac (AC_INIT): Bump version to "0.44" for release.

2012-04-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[dist] Create .xz tarball instead of .gz on "make dist".

	* configure.ac (AM_INIT_AUTOMAKE): Add options ‘no-dist-gzip’, ‘dist-xz’.

2012-02-06  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.43 (tag v0.43)

	* configure.ac (AC_INIT): Bump version to "0.43" for release.

2012-02-05  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres-qcons) proc: string-xrep

	* doc/ref.texh (qcons quoting): Add @tsin for
	"string external representation" and ‘string-xrep’.

2011-10-04  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.42 (tag v0.42)

	* configure.ac (AC_INIT): Bump version to "0.42" for release.

2011-10-04  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v] Fix bug: Make sure ‘GUILE_LIBSITE’ is properly re-prefixed.

	This is tagged ‘v’ because the bug manifests as a side-effect
	of "make check", clobbering the install-dir file.  Argh!

	* build-aux/snuggle.m4: Sync w/ upstream serial 5.

2011-09-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.41 (tag v0.41)

	* configure.ac (AC_INIT): Bump version to "0.41" for release.

2011-09-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Use "PostgreSQL 8.2" as ‘standard_conforming_strings’ inception.

	* doc/ref.texh (qcons quoting): For ‘standard_conforming_strings’
	inception and blurb, change imprecise "8.x" to "8.2" throughout.

2011-09-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Index type converters; include array variants.

	* doc/Makefile.am (coltypes.texi): Output ‘@converter NAME’
	for each line; reformat the table into four columns; generate
	blurb for array variants; output list of array variants as well.
	* doc/guile-pg.texi (converter): New @macro.
	* doc/ref.texh (Consulting Existing Type Converters):
	Remove superfluous @example / @end example.

2011-09-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Combine indices; spiff ‘er’ entries.

	* doc/guile-pg.texi (er): Use ‘@defindex’,
	not ‘@defcodeindex’; combine into concept index.
	(vr, fn): Combine into concept index.
	(bummer): New @macro.
	(Top): Combine index menu entries into simply "Index".
	(Procedure Index, Error Index): Delete.
	(Index): New node/unnumbered.
	* doc/ref.texh: Do ‘s/@erindex/@bummer/g’.
	(Large Objects): Add ‘@code’ around ‘fport_write’ @bummer;
	omit now-redundant "error" from "memory" @bummer.
	(qcons quoting): Use ‘@vindex’ for ‘sql-quote-auto-E?’.

2011-09-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Document builtin type converters.

	* doc/Makefile.am (guile_pg_TEXINFOS): Add coltypes.texi.
	(EXTRA_DIST): Likewise.
	(coltypes.texi): New target.
	* doc/ref.texh (Consulting Existing Type Converters):
	Add heading "Builtin Converters" and blurb;
	@include coltypes.texi in a @example block.

2011-09-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Use INSTALL.UTF-8 from gnulib for INSTALL.

	* autogen.sh (actually): New func; use it
	to copy INSTALL.UTF-8 from gnulib to INSTALL.

2011-09-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres-qcons) fluid: sql-quote-auto-E?

	* doc/ref.texh (qcons quoting): Add section "Standard Conforming
	Strings"; add intro text; add @tsin for ‘sql-quote-auto-E?’.

2011-09-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Check for ‘alloca’ support at configure time.

	* configure.ac (AC_FUNC_ALLOCA): New macro call.

2011-09-23  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Re-enable dependency tracking support in Automake.

	This undoes 2011-07-21, "Disable dependency tracking support in
	Automake by default", a misguided premature optimization.

	* configure.ac (AM_INIT_AUTOMAKE): Remove ‘no-dependencies’.

2011-08-12  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Use snuggle.m4 more.

	* build-aux/snuggle.m4: New file.
	* configure.ac: Do ‘s/GUILE_PROGS/SNUGGLE_PROGS/’,
	‘s/GUILE_FLAGS/SNUGGLE_FLAGS/’,
	‘s/DETERMINE_GUILE_LIBSITE_DIR/SNUGGLE_GUILE_LIBSITE_DIR/’,
	‘s/GUILE_TOOLS_EXISTSP/SNUGGLE_GUILE_TOOLS_EXISTSP/’.
	* build-aux/determine-guile-libsite-dir.m4: Delete file.
	* build-aux/guile-tools-existsp.m4: Likewise.

2011-07-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Bump Automake required version to 1.11.1.

	* configure.ac (AM_INIT_AUTOMAKE): Specify "1.11.1".

2011-08-05  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc int] Use @uref more.

	* doc/guile-pg.texi (Top): Use @uref instead of @url.

2011-07-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot] Disable dependency tracking support in Automake by default.

	* configure.ac (AM_INIT_AUTOMAKE): Add ‘no-dependencies’.

2011-07-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot int] Use ‘GUILE_TOOLS_EXISTSP’.

	* build-aux/guile-tools-existsp.m4: New file.
	* configure.ac: Use ‘GUILE_TOOLS_EXISTSP’.

2011-07-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[boot int] Use ‘DETERMINE_GUILE_LIBSITE_DIR’.

	* build-aux/determine-guile-libsite-dir.m4: New file.
	* configure.ac: Use ‘DETERMINE_GUILE_LIBSITE_DIR’.

2011-07-09  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc int] Portability fix: Avoid ‘string-append’ on symbols.

	* doc/mkinc (fln): Delete proc; import ‘write-line’ as alias, instead.
	(pp-ls): Convert the blurb to a string before passing to ‘fln’.

2011-06-05  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.40 (tag v0.40)

	* configure.ac (AC_INIT): Bump version to "0.40" for release.

2011-06-05  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Use Guile-BAUX to compute ‘GUILE_LIBSITE’.

	* autogen.sh: Import Guile-BAUX module ‘re-prefixed-site-dirs’.
	* configure.ac (GUILE_LIBSITE_DIR): Delete macro call.
	(pg_cv_minstroot): New var, via ‘AC_CACHE_CHECK’.
	(GUILE_LIBSITE): New AC_SUBST.

2011-06-04  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Use <postgresql/foo> for checking decls.

	Omission from 2011-06-02, "Prefer libpq headers
	in $(includedir)/postgresql, if available".

	* configure.ac (pg_encoding_to_char, pg_char_to_encoding):
	In this AC_CHECK_DECLS, use <postgresql/libpq-fe.h> if available.

2011-06-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Prefer libpq headers in $(includedir)/postgresql, if available.

	* configure.ac (AC_CHECK_HEADERS_ONCE): New macro call
	for <postgresql/libpq-fe.h> and <postgresql/libpq/libpq-fs.h>;
	if found and not overriden by env vars ‘PQ_CPPFLAGS’ and
	‘PQ_LDFLAGS’, check for libpq.a as well, and set those vars.

2011-06-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Decruft: Don't check some standard headers twice.

	* configure.ac (AC_CHECK_HEADERS): Don't explicitly
	check for string.h, stdio.h, stdlib.h, malloc.h, unistd.h.

2011-06-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build boot] Add sofix files to repo.

	* build-aux/sofix: New file.
	* build-aux/sofix.m4: New file.
	* build-aux/uninstall-sofixed: New file.
	* autogen.sh: Don't symlink sofix files from ../.common.

2011-06-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[scheme] Use ‘cons*’, not ‘list*’.

	Apparently, ‘list*’ is not cool enough for some Guile versions.

	* doc/mkinc (symbol->texi): Use ‘cons*’, not ‘list*’.

2011-05-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Don't clobber Makefile "user vars" ‘CPPFLAGS’, ‘LDFLAGS’.

	* configure.ac: Don't compose ‘CPPFLAGS’, ‘LDFLAGS’;
	instead, compose ‘SUBCPPFLAGS’, ‘SUBLDFLAGS’.

2011-05-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Rewrite --with-libpq{,-includes,-lib} handling.

	* configure.ac (pq-rpath): New AC_ARG_ENABLE.
	(PG_CHECK_DIR): New AC_DEFUN.
	(libpq, libpq-includes, libpq-lib): New AC_ARG_WITHs.
	(PG_PQ_NOT_YET): New AC_DEFUN.
	<top-level>: Rewrite ‘--with-libpq’ handling; combine
	handling of ‘--with-libpq-includes’ and ‘--with-libpq-lib’;
	simplify failure message; use ‘AC_MSG_FAILURE’; simplify
	‘--enable-pq-rpath’ handling; append " -lpq" as the last step.
	* build-aux/guile-pg.m4: Delete file.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Fix bug: #include <libpq-fe.h> to look for some pg_ funcs.

	Omission from 2008-07-11, "Conditionalize
	‘pg_encoding_to_char’ decl; make its retval ‘const’";
	and 2009-06-18, "New (database postgres) proc: pg-mblen".

	* configure.ac (pg_encoding_to_char, pg_char_to_encoding):
	Specify #include <libpq-fe.h> to AC_CHECK_DECLS.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Decruft: Don't check for "Guile site dir".

	* configure.ac (GUILE_SITE_DIR): Delete macro call.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Don't chmod +x test/{runtest,show-platform}.

	* configure.ac (AC_CONFIG_FILES):
	Add test/runtest, test/show-platform.
	(test/show-platform): Delete AC_GUILE_PG_CONFIG_SCRIPT.
	(test/runtest): Likewise.
	* build-aux/guile-pg.m4 (AC_GUILE_PG_CONFIG_SCRIPT): Delete AC_DEFUN.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Decruft: Don't check for ‘scm_ptob_descriptor.fill_input’.

	* configure.ac: Remove obsolete/unused check for
	‘struct scm_ptob_descriptor’ member ‘fill_input’.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Make checks for <guile/FOO.h> more precise.

	* configure.ac (PG_CHECK_GUILE_HEADER): New AC_DEFUN.
	(HAVE_GUILE_GH_H): New PG_CHECK_GUILE_HEADER.
	(HAVE_GUILE_MODSUP_H): Likewise.
	(GUILE_MODSUP_H): Delete macro call.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Conditionalize check for ‘terminating’.

	* configure.ac: Don't bother checking for
	‘terminating’ if ‘scm_terminating’ is available.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Decruft: Don't bother with ‘scm_gc_protect_object’.

	* configure.ac (scm_gc_protect_object): Delete AC_CHECK_DECL.
	(HAVE_SCM_GC_PROTECT_OBJECT): Delete AC_DEFINE.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Use ‘AC_CHECK_DECLS’ for ‘scm_terminating’.

	* configure.ac (HAVE_SCM_TERMINATING): Delete AC_DEFINE.
	(scm_terminating): Use ‘AC_CHECK_DECLS’.

2011-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Inline AC_GUILE_PG_[BB]COMPAT into configure.ac.

	* build-aux/guile-pg.m4 (AC_GUILE_PG_BCOMPAT)
	(AC_GUILE_PG_FCOMPAT): Incorporate these AC_DEFUNs from here...
	* configure.ac: ...to here, at top-level.

2011-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Upgrade m4 to avoid obsolete constructs; use autoreconf.

	* build-aux/guile-pg.m4
	(PQ_FLAGS): Use ‘AS_HELP_STRING’, ‘AC_MSG_ERROR’.
	(AC_GUILE_PG_BCOMPAT): Use ‘AC_COMPILE_IFELSE’, ‘AC_LANG_PROGRAM’.
	* configure.ac (AM_CONFIG_HEADER): Replace with ‘AC_CONFIG_HEADERS’.
	(AC_STDC_HEADERS): Replace with ‘AC_HEADER_STDC’.
	(AC_HAVE_HEADERS): Replace with ‘AC_CHECK_HEADERS’.
	* autogen.sh: Do ‘set -e’; replace libtoolize, aclocal, autoheader,
	autoconf, and automake invocations with one autoreconf invocation.

2011-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Instantiate test/show-platform at configure-time.

	* configure.ac (test/show-platform): New AC_GUILE_PG_CONFIG_SCRIPT.
	* Makefile.am (dist-hook): Delete target.

2011-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build install] Installed punified Scheme, sans ".scm" extension.

	* autogen.sh: Import Guile-BAUX module ‘punify’.

2011-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[uninstall] Fix bug: Make sure everything is properly deleted.

	* autogen.sh: Import uninstall-sofixed.
	* Makefile.am (EXTRA_DIST): Add build-aux/uninstall-sofixed.

2011-05-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Use U+2018, U+2019 in example.

	* doc/guile-pg.texi: Add ‘coding’ cookie for Emacs;
	declare document encoding to be ‘UTF-8’.
	* ref.texh: Add ‘coding’ local variable at eof.
	(Easy Interaction): Use U+2018, U+2019 in example.

2011-05-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build maint] Don't bundle modsup.h; copy 3 macros from it, instead.

	* autogen.sh: Don't maintain modsup.h, modsup.h.snap.

2011-05-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build inst] Add support for "no C module" mode.

	* autogen.sh: Import Guile-BAUX module ‘gen-scheme-wrapper’.
	* configure.ac (cmod): New AC_ARG_ENABLE.
	(mkmodcat): Delete GUILE_TOOLS_PROG.
	(pg_cv_mkmodcat): New AC_CACHE_CHECK.
	(USE_CMOD): New AM_CONDITIONAL.
	(USE_CMOD): New AC_DEFINE.

2011-05-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v] Do a partial install under test/; point ‘%load-path’ there.

	* Makefile.am (noinst_DATA): Delete var.
	(.module-catalog): Delete target.
	(CLEANFILES): Delete var.
	* configure.ac (mkpimmc): Delete GUILE_TOOLS_PROG.
	(GUILE_MODULE_CATALOG_PREP): Delete macro call.

2011-05-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[inst int] Move $(mkmodcat) invocation from top dir to src/.

	* Makefile.am (install-data-hook): Delete target.

2011-05-07  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Fix bug: Distribute build-aux/guile-baux/*, too!

	Omission from 2011-05-03, "Import
	Guile-BAUX modules for doc snarfing".

	* Makefile.am (EXTRA_DIST): Add build-aux/guile-baux.

2011-05-07  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Use Guile-BAUX for init snarfing.

	* autogen.sh: Import Guile-BAUX module ‘c2x’.
	* build-aux/guile-pg.m4 (AC_GUILE_PG_BCOMPAT):
	Delete call to ‘GUILE_C2X_METHOD’.

2011-05-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Decruft: Remove obsolete makefile target.

	* Makefile.am (destroy-nonmodule-guile-pg-prior-install):
	Delete target.

2011-05-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Use Guile-BAUX for doc snarfing.

	* build-aux/common.mk: New file.

	* doc/Makefile.am: include .../common.mk;
	don't include twerp.mk-am-frag.
	(guile_pg_TEXINFOS): Add ref.texi.
	(EXTRA_DIST): Remove guile-pg.twerp; add ref.texh.
	[MAINTAINER_MODE] (.twerp.texi): Delete old-style suffix rule.
	[MAINTAINER_MODE] (SUFFIXES, snippets): New vars.
	[MAINTAINER_MODE] (.texh.texi): New old-style suffix rule.
	[MAINTAINER_MODE] (ref.texi): New dependency decl.
	* doc/guile-pg.texi: Rename from guile-pg.twerp.
	* doc/ref.texh: New file.
	* doc/.make-automake-frags: Delete file.
	* doc/.twerp-list: Delete file.

	* autogen.sh: Don't invoke doc/.make-automake-frags.
	* configure.ac (twerp-prep): Delete AC_CONFIG_COMMANDS.

2011-05-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build boot] Import Guile-BAUX modules for doc snarfing.

	* autogen.sh: Add command to import Guile-BAUX modules.

2011-05-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build boot] Don't install 3rd-party m4 files.

	* autogen.sh: Don't check guile.m4 for freshness;
	invoke aclocal without ‘--install’.
	* build-aux/guile.m4.snap: Delete file.

2011-05-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build doc] Reduce unorthodoxy: Build .info in srcdir.

	* doc/Makefile.am (DISTCLEANFILES): Delete var.

2011-01-30  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Combine PGRES_COPY_{OUT,IN} descriptions; add xref.

	* doc/guile-pg.twerp (Processing Results) <result status table>:
	Combine ‘PGRES_COPY_OUT’ and ‘PGRES_COPY_IN’; rewrite blurb.

2010-11-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres-qcons) proc: idquote

	* doc/guile-pg.twerp (qcons quoting): Add @twerpdoc for ‘idquote’.

2010-06-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Sync snapshot files with Guile 1.4.1.119.

	* build-aux/guile.m4.snap: Sync with Guile 1.4.1.119.

2010-06-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Use ‘primitive-load’, not ‘load-from-path’.

	* doc/mkinc: Use ‘primitive-load’.

2010-06-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[maint] Rename configure.in to configure.ac.

	* configure.ac: Rename from configure.in.
	* AUTHORS: Update.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.39 (tag v0.39)

	* configure.in (AC_INIT): Bump version to "0.39" for release.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop procs ‘pg-set-client-data!’, ‘pg-get-client-data’.

	* doc/guile-pg.twerp (Database Connections): Remove
	@section "Client Data", including two @twerpdoc entries.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop proc ‘pg-lo-get-connection’.

	* doc/guile-pg.twerp (Large Objects):
	Remove @twerpdoc for ‘pg-lo-get-connection’.

2009-06-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.38 (tag v0.38)

	* configure.in (AC_INIT): Bump version to "0.38" for release.

2009-06-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Mention imminent demise of certain procs.

	* doc/guile-pg.twerp (Processing Results):
	Don't mention ‘pg-set-client-data!’.
	(Miscellaneous): Use object property in tracing example.

2009-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Use automake facilities for building HTML docs.

	* doc/Makefile.am (DISTCLEANFILES): Remove guile-pg.html.
	(EXTRA_DIST): Remove html; add guile-pg.html.
	(html): Delete target.

2009-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Minimize "make -C doc/" work in default case.

	* doc/Makefile.am (CLEANFILES): Delete var.
	(DISTCLEANFILES): New var.

2009-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[config] Use CPPFLAGS, LDFLAGS directly.

	* configure.in: Add some AC_MSG_NOTICE calls.
	(CPPFLAGS, LDFLAGS): Set these vars.

2009-06-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres) proc: pg-server-version

	* doc/guile-pg.twerp (Database Connections):
	Add @twerpdoc for ‘pg-server-version’.
	* configure.in (AC_CHECK_FUNCS): Add PQserverVersion.

2009-06-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Update description of connection object xrep.

	* doc/guile-pg.twerp (Database Connections): For unix-domain
	connections, mention that "host" is the socket directory name.

2009-06-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[config] Avoid "test -a" in configure.in.

	* configure.in: Use test A && test B, instead of test A -a B.

2009-06-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[config] Trim ‘EXTRA_DIST’ in Makefile.am files.

	* Makefile.am (EXTRA_DIST): Delete THANKS.
	* doc/Makefile.am (EXTRA_DIST): Delete twerp.mk-am-frag.

2009-06-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Zonk HACKING, TODO; nfc.

	* HACKING: Delete file.
	* TODO: Delete file.
	* Makefile.am (EXTRA_DIST): Delete HACKING, TODO.

2009-06-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres) proc: pg-mblen

	* doc/guile-pg.twerp (Miscellaneous): Add @twerpdoc for ‘pg-mblen’.
	(Not Included): Remove ‘PQmblen’.
	* configure.in (AC_CHECK_DECLS): Add check for ‘pg_char_to_encoding’.

2009-06-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Update table of unaddressed interface elements.

	* doc/guile-pg.twerp (Not Included): Add entries for
	‘PQdisplayTuples’, ‘PQprintTuples’, ‘PQmblen’, ‘PQenv2encoding’.

2009-06-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[config] Specify Automake 1.11, Libtool 2.2.6.

	* configure.ac (AM_INIT_AUTOMAKE): Specify "1.11".
	(LT_PREREQ): Specify "2.2.6".

2009-04-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[doc] Move table of contents after the title page.

	* doc/guile-pg.twerp: Move @contents; delete @summarycontents.

2008-08-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Remove support for unused SCM_OUTPORTP.

	* build-aux/guile-pg.m4 (AC_GUILE_PG_FCOMPAT):
	Delete AC_LINK_IFELSE check for ‘SCM_OUTPORTP’
	and the related ‘HAVE_SCM_OUTPORTP’ AC_DEFINE.

2008-08-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Assume system provides tmpfile(3).

	* configure.in (tmpfile): Delete this AC_CHECK_FUNCS.

2008-08-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Consolidate Guile API specification.

	* configure.in (AH_BOTTOM): Delete.

2008-08-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add infrastructure to more easily tweak GCC warnings for "make all".

	* configure.in: When using GCC, don't modify ‘CFLAGS’;
	instead, set var ‘AGGRESSIVE_WARNINGS’.  Enable many warnings.
	(AGGRESSIVE_WARNINGS): New AC_SUBST.

2008-08-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Decruft: Don't check for ‘crypt’ in libcrypt.

	* build-aux/guile-pg.m4 (PQ_FLAGS): No longer check for func
	‘crypt’ in libcrypt.  No longer modfiy ‘PQ_LDFLAGS’ accordingly.

2008-08-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Tighten up "show-platform" a bit.

	* Makefile.am (dist-hook): Also substitute "RECIP".

2008-08-10  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop support for PostgreSQL 7.3.x and earlier.

	* build-aux/guile-pg.m4 (PQ_FLAGS): No longer check
	for ‘PQsetdbLogin’ in libpq.  Instead, check for
	‘PQprotocolVersion’.  Update error message.
	* configure.in: No longer check for ‘PQconnectdb’ in libpq.
	No longer check for ‘InvalidOID’ decl in libpq-fe.h.
	(INVALIDOID_HEADER): Delete this AC_DEFINE.
	(PQfmod, PQbinaryTuples, PQbackendPID)
	(PQresultErrorMessage, PQpass, PQputnbytes)
	(PQoidValue, PQsetnonblocking, PQisnonblocking)
	(PQprotocolVersion, PQfreemem): No longer AC_CHECK_FUNCS these.

2008-08-07  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (database postgres-resx) proc: object<-result

	* doc/guile-pg.twerp (Result Transforms): Reorg intro blurbs
	slightly; add @twerpdoc for ‘object<-result’.

2008-07-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use guile.m4 facilities from Guile 1.4.1.118.

	* configure.in (mkpimmc): New GUILE_TOOLS_PROG.
	(mkmodcat): Likewise.
	* Makefile.am (.module-catalog): Use $(mkpimmc).
	(install-data-hook): Use $(mkmodcat).

2008-07-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Sync guile.m4.snap with upstream.

	* build-aux/guile.m4.snap: Sync w/ Guile 1.4.1.118.

2008-07-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Don't distribute autogen.sh.

	* Makefile.am (EXTRA_DIST): Remove autogen.sh.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Move Scheme code into src/.

	* scm/postgres-col-defs.scm: Move to src/.
	* scm/postgres-gxrepl.scm: Likewise.
	* scm/postgres-meta.scm: Likewise.
	* scm/postgres-qcons.scm: Likewise.
	* scm/postgres-resdisp.scm: Likewise.
	* scm/postgres-resx.scm: Likewise.
	* scm/postgres-table.scm: Likewise.
	* scm/postgres-types.scm: Likewise.

	* doc/Makefile.am (BUILT_SOURCES) [MAINTAINER_MODE]: Delete var.
	(doc-index-prep) [MAINTAINER_MODE]: Delete target.
	(qcons-tables.texi): Update location of postgres-qcons.scm.
	(.twerp.texi): Update location of .doc-index.

	* scm/Makefile.am: Delete file.
	* scm/: Delete dir.
	* Makefile.am (SUBDIRS): Remove scm.
	(SUFFIXES): Delete var.
	(.scm.doc): Delete pattern rule.
	(DOTDOCFILES) [MAINTAINER_MODE]: Delete var.
	(.doc-index) [MAINTAINER_MODE]: Delete target.
	* configure.in (AC_CONFIG_FILES): Remove scm/Makefile.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Move C code into src/.

	* bcruft.h: Move to src/.
	* fcruft.c: Likewise.
	* modsup.h.snap: Likewise.
	* tmpfile.h: Likewise.
	* tmpfile.c: Likewise.
	* libpostgres.h: Integrate into src/libpq.c.
	* libpostgres.c: Likewise.
	* libpostgres_lo.c: Likewise.
	* Makefile.am (SUBDIRS): Add src.
	(EXTRA_DIST): Remove modsup.h.
	(BUILT_SOURCES, AM_CPPFLAGS, ddir, d_LTLIBRARIES): Delete vars.
	(postgres_la_SOURCES, postgres_la_LDFLAGS): Likewise.
	(SUFFIXES): Remove .x.
	(snarfcppopts): Delete var.
	(.c.x): Delete pattern rule.
	(.c.doc): Likewise.
	(install-data-hook): No longer clean up $(ddir) or do sofixing.
	(DISTCLEANFILES): Delete var.
	(CLEANFILES): Remove *.x.
	(DOTDOCFILES): Add src/libpq.doc; remove
	libpostgres.doc and libpostgres_lo.doc.
	* configure.in (AM_CONFIG_HEADER): Put header in src/.
	(AC_CONFIG_FILES): Add src/Makefile.
	* autogen.sh: Create modsup.h symlink in src/.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use ‘PGresult’ directly as result object (no more "extended result").

	* libpostgres.c (xr_t): Delete struct.
	(res_p): Rename func from ‘xr_p’.
	(res_unbox): Rename func from ‘xr_unbox’; return ‘PGresult *’.
	(RESULT): Delete unused macro.
	(VALIDATE_RESULT_UNBOX): Rename from ‘VALIDATE_RESULT_UNBOX2’;
	drop second C var from arglist; use ‘res_unbox’.
	(res_box): Rename from ‘xr_box’; take ‘PGresult *’.
	(res_display): Rename from ‘xr_display’; use ‘res_unbox’.
	(res_mark): Rename from ‘xr_mark’; use ‘res_unbox’.
	(res_free): Rename from ‘xr_free’; use ‘res_unbox’; return 0.
	(make_res): Rename from ‘make_xr’; use ‘res_box’.
	(pg_exec, pg_exec_params): Use ‘make_res’.
	(pg_result_p): Use ‘res_p’.
	(pg_result_error_field): Use ‘VALIDATE_RESULT_UNBOX’.
	(pg_result_error_message): Likewise.
	(pg_error_message): Use ‘res_p’.
	(pg_result_status): Use ‘VALIDATE_RESULT_UNBOX’.
	(pg_ntuples, pg_nfields, pg_cmdtuples, pg_oid_value): Likewise.
	(pg_fname, pg_fnumber, pg_ftable, pg_ftablecol): Likewise.
	(pg_fformat, pg_ftype, pg_fsize, pg_getvalue): Likewise.
	(pg_getlength, pg_getisnull, pg_binary_tuples): Likewise.
	(pg_fmod, pg_print): Likewise.
	(pg_get_result): Use ‘make_res’.
	(init_module): Use ‘res_mark’, ‘res_free’ and ‘res_display’.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Don't keep track of ‘conn’ for result objects.

	* libpostgres.c (xr_t): Delete member ‘conn’.
	(xr_mark, make_xr): Update to not bother w/ ‘xr->conn’.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use ‘unsigned long int’ instead of struct ‘smob_tag’.

	* libpostgres.c (smob_tag): Delete ‘typedef struct’.
	(pg_conn_tag, pg_result_tag): Use ‘unsigned long int’.
	(xc_p, xc_box, xr_p, xr_box, init_module): Update references
	to ‘pg_conn_tag’ and ‘pg_result_tag’ to use them directly.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Don't keep track of ‘count’ for smob/connection/result objects.

	* libpostgres.h (xc_t): Delete member ‘count’.
	* libpostgres.c (smob_tag): Delete member ‘count’.
	(xc_mark, xc_free): For GC_PRINT, display ‘xc’ directly.
	(xr_t): Delete member ‘count’.
	(xr_mark, xr_free): For GC_PRINT, display ‘xr’ directly.
	(make_xr): Don't maintain ‘count’ for result object.
	(pg_connectdb): Likewise, for connection object.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Remove serial number from connection and result external reps.

	* libpostgres.c (xc_display): Don't output ‘xc->count’ and colon.
	(xr_display): Don't output ‘xr->count’ and colon.
	* doc/guile-pg.twerp (Database Connections)
	(Processing Results, Quick Start, Single-Table Abstraction):
	Update examples and descriptions to not mention serial numbers.

2008-07-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Remove ‘pg-get-connection’.

	* libpostgres.c (pg_get_connection): Delete GH_DEFPROC.
	* doc/guile-pg.twerp (Types Conversion): Define ‘CONN’ in
	example, instead of using ‘pg-get-connection’ on a result.
	(Processing Results): Likewise.  Also,
	remove @twerpdoc for ‘pg-get-connection’.

2008-07-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Conditionalize ‘pg_encoding_to_char’ decl; make its retval ‘const’.

	Reported by Hans Ruschinski <hans.ruschinski@gmail.com>.

	* configure.in (pg_encoding_to_char): New AC_CHECK_DECLS.
	* libpostgres.c (pg_encoding_to_char): Add ‘const’ to retval
	of this decl; surround w/ ‘#if !HAVE_DECL_PG_ENCODING_TO_CHAR’.

2008-05-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.37 (tag v0.37)

	* configure.in (AC_INIT): Bump version to "0.37" for release.

2008-05-23  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Look for PostgreSQL headers/libs under $prefix by default.

	* build-aux/guile-pg.m4 (PQ_FLAGS): Look under $prefix/include
	and $prefix/lib for PostgreSQL headers and libs, respectively.

2008-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use GNU Automake 1.10.1 facilities.

	* scm/Makefile.am (AUTOMAKE_OPTIONS): Delete var.
	(guile_postgres_sources, d_DATA, ETAGS_ARGS, EXTRA_DIST): Likewise.
	(dist_d_DATA): New var.
	(install-data-hook): Rewrite target.
	* doc/Makefile.am (.twerp.texi): Use $(GUILE_TOOLS).
	* Makefile.am (.module-catalog): Use $(GUILE_TOOLS).
	(.c.doc, .scm.doc, install-data-hook, .doc-index): Likewise.
	* configure.in (AM_INIT_AUTOMAKE): Use one-arg form.
	* autogen.sh: Simplify invocation of doc/.make-automake-frags.
	Call automake with option ‘-Wall’.

2008-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Remove doc-coverage support.

	* doc/cov: Delete file.
	* doc/Makefile.am (EXTRA_DIST): Remove cov.
	(dist-hook): Delete target.

2008-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add handling for #:finish to pgtable-manager (and -worker) closure.

	* scm/postgres-table.scm: From module (database postgres),
	also select ‘pg-finish’.
	(pgtable-manager): Handle #:finish; add @findex entries.

2008-05-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make the result object drop reference to the connection, if dead.

	* libpostgres.c (xr_mark): If the connection object's
	connection is dead, replace the reference to it w/ #f.
	(pg_get_connection): Update docstring.

2008-05-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use GNU Libtool 2.2.2 facilities.

	* configure.in (AC_DISABLE_STATIC): Delete.
	(AC_LIBTOOL_TAGS, AC_PROG_LIBTOOL): Likewise.
	(LT_PREREQ, LT_INIT): New macro calls.
	* build-aux/aclocal-suffix: Delete file.
	* autogen.sh: Fix bug: Check for ltmain.sh in build-aux/; no longer
	append build-aux/aclocal-suffix to aclocal.m4; do "aclocal --install".

2008-05-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Avoid dropdb(1) and createdb(1); use SQL commands directly.

	* configure.in (DROPDB, CREATEDB): Delete AC_CHECK_PROGS vars.

2008-05-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add standard introspection support to (database postgres-meta).

	* scm/postgres-meta.scm: From module (database postgres-types),
	select also ‘define-db-col-type’.
	(cardinal_number): New column type specification.
	(character_data, sql_identifier): Likewise.
	(INFSCH-DEFS): New data structure: alist of information schema coldefs.
	(information-schema-names): New proc, exported.
	(information-schema-coldefs): Likewise.

	* doc/guile-pg.twerp (Standard Introspection): New node/section.
	(Funky Introspection): Likewise.
	(Introspection): Add menu for new sections.

2008-05-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Revamp "make check".

	* configure.in (AC_CONFIG_FILES): Remove test/config.scm.
	(AC_GUILE_PG_CONFIG_SCRIPT): Remove wily-guile; add test/runtest.
	* wily-guile.in: Delete file.

2008-04-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make gxrepl close connection when done.

	* scm/postgres-gxrepl.scm: From module (database postgres),
	select also ‘pg-finish’.
	(gxrepl): Do ‘pg-finish’ prior to gc.

2008-04-09  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make qcons able to produce "{UNION,INTERSECT,EXCEPT} ALL".

	* scm/postgres-qcons.scm (parse+make-SELECT-tree compose): Arg
	TYPE now a rest (dotted) arg; pass w/o change to ‘list-sep-proc’.
	(parse+make-SELECT-tree): Handle #:union-all,
	#:intersect-all and #:except-all, as well.

2008-04-08  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Small refactoring: Use macro ‘SCM_RETURN_NEWSMOB’.

	* libpostgres.c (xc_box, xr_box, sepo_box):
	Use ‘SCM_RETURN_NEWSMOB’.

2008-04-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Jam package version in script "show-platform" on "make dist".

	* Makefile.am (dist-hook): New target.

2008-03-03 Thien-Thi Nguyen <ttn@gnuvola.org>

	Release: 0.36 (tag v0.36)

	* configure.in (AC_INIT): Bump version to "0.36" for release.

2008-02-14  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop subdirectory "contrib".

	* contrib/Ian.Grant/abstractions.scm: Delete file.
	* contrib/Ian.Grant: Delete directory.
	* contrib/ttn/markup.scm: Delete file.
	* contrib/ttn: Delete directory.
	* contrib/README: Delete file.
	* contrib: Delete directory.

	* Makefile.am (EXTRA_DIST): Remove contrib.
	(.module-catalog): Update ignorance specification.

2008-02-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 0.35 (tag: v0.35)

	* configure.in (AC_INIT): Bump version to "0.35" for release.

2008-01-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Replace CVS-isms with Git-isms.

	* .cvsignore: Delete file.
	* doc/.cvsignore, scm/.cvsignore, test/.cvsignore: Likewise.
	* Makefile.am (.module-catalog): Ignore ".git", not "CVS".
	(dist-hook, cvs-state-summary): Delete targets.
	* autogen.sh, HACKING: Update.
	* .gitignore: New file.

2008-01-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Not Included): Remove entry for
	‘PQescapeStringConn’, ‘PQescapeByteaConn’ and ‘PQunescapeBytea’.

2008-01-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c (pg_escape_string_conn, pg_escape_bytea_conn)
	(pg_unescape_bytea): New GH_DEFPROCs.
	* doc/guile-pg.twerp (Miscellaneous): Add blurb and @twerpdoc for
	‘pg-escape-string-conn’, ‘pg-escape-bytea-conn’ and ‘pg-unescape-bytea’.

2008-01-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-qcons.scm (parse+make-SELECT-tree):
	Fix bug: Spell "INTERSECT" correctly.

2008-01-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (qcons special operators): Fix typo.

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_INIT): Bump version to "0.34" for release.

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* Makefile.am (EXTRA_DIST): Remove ANONCVS.
	Add build-aux/sofix.

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Not Included): Downgrade
	‘PQescapeString’ and ‘PQescapeBytea’ to "deprecated".

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c (pgrs_t): Delete typedef.
	(_PGRES): Delete macro.
	(pgrs): Make into array of ‘SCM’.
	(xr_display, init_module): Use ‘PQresStatus’.

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c (pgrs_t): Remove member ‘n’.
	(pgrs): Order entries to match libpq-fe.h order.
	(pgrs_count): Delete var.
	(xr_display, pg_result_status): Clamp status value;
	use it to index into ‘pgrs’ directly.
	(init_module): Use ‘sizeof (pgrs) / sizeof (pgrs_t)’ directly.

2007-12-13  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Not Included):
	Downgrade ‘PQresStatus’ to "unuseful".

2007-11-04  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* contrib/ttn/markup.scm (markup-table-manager ->tree): Use ‘let’.

2007-10-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp: Force break between
	"Copyright" and "Portions Copyright" lines.

2007-10-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c (pg_flush): New GH_DEFPROC.
	* doc/guile-pg.twerp (Not Included): Remove @deffn ‘PQflush’.
	(Asynchronous Retrieval): Add @twerpdoc for ‘pg-flush’.

2007-10-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* autogen.sh: Prepare symlinks in build-aux: sofix, sofix.m4.
	* configure.in (SET_SOFIXFLAGS): New macro call.
	* Makefile.am (install-data-hook): Use $(srcdir)/build-aux/sofix.

2007-10-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c (xc_display): Handle closed connections.
	(pg_finish): New GH_DEFPROC.

	* doc/guile-pg.twerp (Database Connections):
	Document external rep for closed connections.
	Also add blurb and @twerpdoc for ‘pg-finish’.
	(Not Included): Remove @deffn ‘PQfinish’.

2007-10-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* wily-guile.in (GUILE_MERGED_MODULE_CATALOG): Delete var.
	(GUILE_LOAD_PATH): New var, exported.

2007-10-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Top): Add "Not Included" to menu.
	(Not Included): New node/chapter.

2007-08-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* autogen.sh: Fix typo: Use "diff -u" instead of "diff -i".

2007-08-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres_lo.c (lob_flush): Specify ‘unsigned char *ptr’.
	Add typecast when used as arg 3 to ‘lo_write’.
	(lob_fill_input): Add typecast for arg 3 of ‘lo_read’.

2007-08-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* Makefile.am (AM_CPPFLAGS): Rename from $(INCLUDES).
	(snarfcppopts): Use $(AM_CPPFLAGS).

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_INIT): Bump version to "0.33" for release.

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/Makefile.am (EXTRA_DIST): Add html.

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-qcons.scm (any/all-rx): New compiled regexp.
	(expr add-noise!): Handle ‘any--OP’ and ‘all--OP’.
	* doc/guile-pg.twerp (qcons special operators): Document them.

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-qcons.scm (expr add-noise!): Handle ‘between’.
	* doc/guile-pg.twerp (qcons special operators): Document ‘between’.

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-qcons.scm (expr add-noise!): Handle ‘in/set’.
	* doc/guile-pg.twerp (qcons special operators): Document ‘in/set’.

2007-05-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Query Construction):
	Split into subnodes; add menu.

2007-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-types.scm (int, numeric, decimal)
	(varchar, character, bytea): New built-in type converters.

	* doc/guile-pg.twerp (Selected Notes About Some Types):
	Remove ‘decimal’, ‘numeric’, ‘varchar’, ‘character’, ‘bytea’.

2007-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Selected Notes About Some Types):
	Update section numbers refering to PostgreSQL User's Guide.

2007-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm (pgtable-manager): Internal re-org.

2007-05-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm (pgtable-manager): Fix bug:
	Pass "double-quoted table name" to each proc-proc.
	(select-proc): Update to name-as-symbol extraction method.

2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* build-aux/guile.m4.snap: Sync w/ upstream.

2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* Makefile.am (.module-catalog): Rename target
	from pre-inst.merged-module-catalog.
	(noinst_DATA): Update.

2007-04-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_INIT): Bump version to "0.32" for release.

2007-04-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm: From module (database
	postgres-resx), also select ‘result->object-rows’.
	(pgtable-manager): Add support for #:tuples-result->rows.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_INIT): Bump version to "0.31" for release.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* Makefile.am (EXTRA_DIST): Remove acinclude.m4.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/mkinc (pp-ls): Output three spaces between list elements.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp: Add @summarycontents and @contents.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/Makefile.am (.twerp.texi): Specify ‘--scheme-implied’.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp (Parameters): Fix bug in example.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* acinclude.m4: Move from here...
	* build-aux/guile-pg.m4: ...to here.
	* guile.m4.snap: Move from here...
	* build-aux/guile.m4.snap: ...to here.
	* autogen.sh: Update reference to guile.m4.snap.
	For aclocal, look in build-aux for m4 files.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* aclocal-suffix: Move from this dir...
	* build-aux/aclocal-suffix: to here.
	* autogen.sh: Update aclocal-suffix ref.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* doc/guile-pg.twerp: Suppress indentation only for INFO.
	Add many @noindent directives.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.c
	* scm/postgres-col-defs.scm
	* scm/postgres-meta.scm
	* scm/postgres-qcons.scm
	* scm/postgres-resdisp.scm
	* scm/postgres-resx.scm
	* scm/postgres-table.scm
	* scm/postgres-types.scm:
	Doc munging: Put @code{} around #t, #f and keywords.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_CONFIG_SRCDIR): Remove.
	(AC_CONFIG_AUX_DIR): New; specify subdir ‘build-aux’.

2007-04-03  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm (pgtable-manager):
	No longer take #:table-name, #defs or #pgdb as CHOICE.

2007-03-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm (put, get): Delete proc aliases.
	(ohints): New object property.
	(select-proc, pgtable-manager): Use ‘ohints’.

	* scm/postgres-types.scm (put, get): Delete proc aliases.
	(o/t): New object property.
	(oid-type-name-cache): Use ‘o/t’.
	Also, don't refresh if FRESH? is specified #f.

	* doc/guile-pg.twerp (Database Connections): Update example.

2007-03-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* configure.in (AC_INIT): Add bug-report address.

2007-03-16  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* libpostgres.h (PG_DEFINE): Delete macro.
	* libpostgres.c, libpostgres_lo.c: Use ‘GH_DEFPROC’.

2007-03-05  Thien-Thi Nguyen  <ttn@gnuvola.org>

	* scm/postgres-table.scm (delete-rows-proc make-cmd):
	No longer accept string for WHERE-CONDITION.
	(update-col-proc make-cmd): Likewise.
	(compile-outspec munge): Signal error on string EXPR.
	(select-proc): No longer special-case
	strings for OUTSPEC or REST-CLAUSES.

	* scm/postgres-qcons.scm (make-SELECT/COLS-tree): Use ‘expr’ directly.
	Also, no longer special-case string X; instead, let it signal error.
	(make-SELECT/COLS-tree expr-nostring): Delete internal proc.

2007-01-29  Thien-Thi Nguyen  <ttn@ambire>

	* bugtest/testlobseek.scm
	* bugtest/testloseek.scm
	* bugtest/testwrite.scm: Use ‘open-output-file’.

	* doc/guile-pg.twerp (Miscellaneous):
	Use ‘open-output-file’ in example.

2006-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Top): Include relinfo.texi.
	* doc/Makefile.am (guile_pg_TEXINFOS): Add relinfo.texi.
	(relinfo.texi): New target.

2006-04-04  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (AC_INIT): Bump version to "0.30" for release.

2006-04-04  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Processing Results):
	Add procs to blurb for "Invalid field number" error.

2006-04-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c
	[! HAVE_PQPROTOCOLVERSION] (nosupp): New static string.
	[! HAVE_PQPROTOCOLVERSION] (SORRYNOSUPPORT): New macro.
	(pg_put_copy_data, pg_put_copy_end, pg_get_copy_data):
	New PG_DEFINE funcs.

	* doc/guile-pg.twerp (Writing/Reading Data): Add blurb and
	@twerpdoc for ‘pg-put-copy-data’, ‘pg-put-copy-end’ and
	‘pg-get-copy-data’.  Add @heading for obsolete COPY funcs.

2006-04-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQfreemem): Check for this func.

	* libpostgres.c (pg_notifies) [HAVE_PQFREEMEM]: Use ‘PQfreemem’.

2006-04-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (HAVE_PARAMVARIANTS): Delete AC_DEFINE.

	* libpostgres.c: Throughout, use HAVE_PQPROTOCOLVERSION
	instead of HAVE_PARAMVARIANTS.
	(PARAMVARIANTS): Delete symbol.

2006-04-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_ftable, pg_ftablecol, pg_fformat):
	New PG_DEFINE funcs.

	* doc/guile-pg.twerp (Processing Results): Add @twerpdoc
	for ‘pg-ftable’, ‘pg-ftablecol’ and ‘pg-fformat’.

2006-04-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQtransactionStatus, PQparameterStatus)
	(PQsetErrorVerbosity, PQresultErrorField):
	No longer check for these functions.

	* libpostgres.c (pg_result_error_field, pg_transaction_status)
	(pg_parameter_status, pg_set_error_verbosity):
	Use ‘HAVE_PQPROTOCOLVERSION’.
	(PQTRANSACTIONSTATUS, PQPARAMETERSTATUS, PQSETERRORVERBOSITY)
	(PQRESULTERRORFIELD): Delete symbols.  Update ‘init_module’.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQresultErrorField): Check for this func.

	* libpostgres.c (kwd_severity, kwd_sqlstate, kwd_messageprimary)
	(kwd_messagedetail, kwd_messagehint, kwd_statementposition)
	(kwd_context, kwd_sourcefile, kwd_sourceline, kwd_sourcefunction):
	New keywords.
	(pg_result_error_field): New PG_DEFINE func.
	(PQRESULTERRORFIELD) [HAVE_PQRESULTERRORFIELD]: New symbol.
	(init_module) [HAVE_PQRESULTERRORFIELD]:
	Include ‘PQRESULTERRORFIELD’ in ‘goodies’.

	* doc/guile-pg.twerp (Processing Results):
	Add @twerpdoc for ‘pg-result-error-field’.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_result_error_message):
	In docstring, mention no trailing newlines.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (*class-defs*): Create local string and
	use it repeatedly instead of using separate identical strings.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgtable-manager):
	Handle #:update-col-alist.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (->db-insert-string):
	For #:NULL, return "NULL".

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (==kw-over-commas): New hash table.
	(qcons-declare!): For #:keyword-args-ok, augment ‘==kw-over-commas’.
	(expr add-noise!): Do kw rendering for ops in ‘==kw-over-commas’.

	* doc/mkinc: Add blurb and processed output of ‘==kw-over-commas’.

2006-03-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (define-hash): New macro.
	(==infix-operations, ==display-aliases)
	(==postfix-operations): New hash tables.
	(qcons-declare!): Update hashes instead of lists.
	(expr add-noise!, sql<-trees out):
	Look up in hashes instead of in lists.

2006-03-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Throughout, remove explicit ‘(void)’ casts.

2006-03-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Parameters): Convert @example to @lisp.

2006-03-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (HAVE_PARAMVARIANTS):
	New AC_DEFINE if ‘PQexecParams’ found.

	* libpostgres.c
	(noparams) [! HAVE_PARAMVARIANTS]: New static string.
	(SORRYNOPARAMS) [! HAVE_PARAMVARIANTS]: New macro.
	(paramspecs) [HAVE_PARAMVARIANTS]: New struct.
	(VALIDATE_PARAM_RELATED_ARGS) [HAVE_PARAMVARIANTS]: New macro.
	(VREF) [HAVE_PARAMVARIANTS]: New macro.
	(prep_paramspecs) [HAVE_PARAMVARIANTS]: New static func.
	(drop_paramspecs) [HAVE_PARAMVARIANTS]: New static func.
	(pg_exec_params): New PG_DEFINE func.
	(pg_exec_prepared): Likewise.
	(pg_send_query_params): Likewise.
	(pg_send_query_prepared): Likewise.
	(PARAMVARIANTS) [HAVE_PARAMVARIANTS]: New symbol.
	(init_module) [HAVE_PARAMVARIANTS]:
	Include ‘PARAMVARIANTS’ in ‘goodies’.

	* doc/guile-pg.twerp (Retrieving Data): Add "Parameters" to menu.
	(Parameters): New node/section.
	(Synchronous Retrieval): Add intro blurb, @xref to "Parameters",
	and @twerpdoc for ‘pg-exec-params’ and ‘pg-exec-prepared’.
	(Asynchronous Retrieval): Add @xref to "Parameters" and @twerpdoc
	for ‘pg-send-query-params’ and ‘pg-send-query-prepared’.

2006-03-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_parameter_status): Make const auto var ‘cstatus’.

2006-03-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQsetErrorVerbosity): Check for this func.

	* libpostgres.c (kwd_terse, kwd_default, kwd_verbose): New keywords.
	(pg_set_error_verbosity): New PG_DEFINE func.
	[HAVE_PQSETERRORVERBOSITY] (PQSETERRORVERBOSITY): New symbol.
	(init_module) [HAVE_PQSETERRORVERBOSITY]:
	Include ‘PQSETERRORVERBOSITY’ in ‘goodies’.

	* doc/guile-pg.twerp (Miscellaneous): Add
	@erindex and @twerpdoc for ‘pg-set-error-verbosity’.

2006-03-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQparameterStatus): Check for this func.

	* libpostgres.c (pg_parameter_status): New PG_DEFINE func.
	[HAVE_PQPARAMETERSTATUS] (PQPARAMETERSTATUS): New symbol.
	(init_module) [HAVE_PQPARAMETERSTATUS]:
	Include ‘PQPARAMETERSTATUS’ in ‘goodies’.

	* doc/guile-pg.twerp (Database Connections):
	Add @twerpdoc for ‘pg-parameter-status’.

2006-03-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQtransactionStatus): Check for this func.

	* libpostgres.c (kwd_idle, kwd_active, kwd_intrans, kwd_inerror)
	(kwd_unknown): New keywords.
	(pg_transaction_status): New PG_DEFINE func.
	(PQTRANSACTIONSTATUS) [HAVE_PQTRANSACTIONSTATUS]: New symbol.
	(init_module) [HAVE_PQTRANSACTIONSTATUS]:
	Include ‘PQTRANSACTIONSTATUS’ in ‘goodies’.

	* doc/guile-pg.twerp (Database Connections):
	Add @twerdoc for ‘pg-transaction-status’.

2006-03-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQprotocolVersion): Check for this func.

	* libpostgres.c (pg_protocol_version): New PG_DEFINE func.
	[HAVE_PQPROTOCOLVERSION] (PQPROTOCOLVERSION): New symbol.
	(init_module) [HAVE_PQPROTOCOLVERSION]:
	Include ‘PQPROTOCOLVERSION’ in ‘goodies’.

	* doc/guile-pg.twerp (Database Connections):
	Add blurb and @twerpdoc for ‘pg-protocol-version’.

2006-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in: Quote (with square brackets) AC_CHECK_FUNCS arg.
	Also for the arg, use backslash at eol instead of ‘dnl’.

2006-01-18  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Single-Table Abstraction):
	Remove @twerpdoc for ‘tuples-result->table’.

2005-08-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (AC_INIT): Bump version to "0.29" for release.

2005-08-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (make-v): Delete proc.
	(tuples-result->table): Likewise.
	(t-obj-walk-proc): Likewise.
	(table->object-alist-proc): Likewise.
	(object-alist->alists): Likewise.
	(pgtable-manager): Remove support for
	#:t-obj-walk, #:table->object-alist, and #:table->alists.

2005-08-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm:
	From module (database postgres), select ‘pg-make-print-options’.
	(gxrepl -print): Print result rows with separator " | ".

2005-08-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Selected Notes About Some Types):
	Say "client" or "client code" instead of "application".

2005-08-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostres.c (pg_print): Force output prior to ‘PQprint’ call.

2005-08-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* guile.m4.snap, modsup.h.snap: Sync w/ upstream.

2005-08-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (where-clausifier): Delete proc.
	* doc/guile-pg.twerp (Single-Table Abstraction): Remove @twerpdoc
	for ‘where-clausifier’.  Also, rewrite example without it.

2005-08-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostres.c (pg_guile_pg_loaded):
	Use ‘false-if-exception’ in docstring example.

2005-07-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (top_builddir_absolute): Delete AC_SUBST var.
	* wily-guile.in (top_builddir): Use ‘abs_top_builddir’.

2005-07-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Top): Add @url for PostgreSQL homepage.

2005-05-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (AC_INIT): Bump version to "0.28" for release.

2005-05-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (maybe-dq):
	Inhibit quoting also for array member syntax.

2005-03-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp: Remove @contents directive.

2005-03-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/Makefile.am (html) [MAINTAINER_MODE]: New target.

2005-03-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/Makefile.am (CLEANFILES):
	Remove guile-pg.dvi and guile-pg_toc.html.

2005-03-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (AC_INIT): Use "modern" two-arg form.
	(AC_CONFIG_SRCDIR): New macro call.
	(AM_INIT_AUTOMAKE): Use "modern" no-arg form.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.27" for release.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/mkinc (symbol->texi): New proc.
	(pp-ls): Use ‘symbol->texi’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*conditional-operations*): Add a bunch.
	(*infix-operations*): Likewise.
	(*postfix-display-aliases*): New var.
	(*display-aliases*): Use ‘*postfix-display-aliases*’.
	(*postfix-operations*): Add ‘!’. Use ‘*postfix-display-aliases*’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm:
	From module (database postgres-qcons), no longer select
	‘make-SELECT/FROM/COLS-tree’ or ‘parse+make-SELECT/tail-tree’.
	Instead, select ‘parse+make-SELECT-tree’.
	(table-fields-info): Use ‘parse+make-SELECT-tree’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm From module (database postgres-qcons), no
	longer select ‘make-SELECT/COLS-tree’ or ‘parse+make-SELECT/tail-tree’.
	Instead, select ‘parse+make-SELECT-tree’.
	(sqlsel): Use ‘parse+make-SELECT-tree’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm
	(parse+make-SELECT/tail-tree): No longer cons null trees.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (fix, fsel):
	For these comma-commands, add support for #:offset.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (parse+make-SELECT-tree): New proc, exported.

	* doc/guile-pg.twerp (Query Construction):
	Add @twerpdoc for ‘parse+make-SELECT-tree’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (parse+make-SELECT/tail-tree): Handle #:offset.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (dt): Use ‘sqlsel’.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (commasep): Use keyword instead of ",".
	(paren): Likewise.
	(sql<-trees): Handle keywords for L/R paren, comma and semicolon.
	Also, avoid output of superfluous space after first element of
	a list, before last element of a list, or before one of the
	delimiter keywords.
	(sql-command<-trees): Use keyword instead of ";".

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (dt): For this comma-command, convert
	manually-constructed from tree into a ‘parse+make-SELECT/tail-tree’
	argument.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-FROM-tree): Add JOIN handling.

2005-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (paren): New proc.
	(make-comma-separated-tree): Use ‘paren’.
	(expr): Remove internal proc ‘paren’.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: From module (database postgres-qcons),
	no longer select ‘make-SELECT/FROM/COLS-tree’.
	Instead, select ‘make-SELECT/COLS-tree’.
	(sqlsel): New proc.
	(obvious): For this comma-command, use ‘sqlsel’.
	(fsel): Likewise.
	(dt): Likewise.  Also, use ‘make-SELECT/COLS-tree’.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (parse+make-SELECT/tail-tree): Handle #:from.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (fsel): For this
	comma-command, no longer do #f to null-list conversion;
	let ‘parse+make-SELECT/tail-tree’ handle it.  Also,
	for #:where/combiner, no longer special-case singular condition.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-FROM-tree): No longer handle #f.
	Also, use ‘as’ instead of simple list.
	(make-SELECT/FROM/COLS-tree): Handle ‘froms’ as #f here.
	(parse+make-SELECT/tail-tree): Handle associated value of #f.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (as): New proc.
	(expr, make-SELECT/COLS-tree): Use ‘as’.

2005-02-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Query Construction):
	Expand section "Prefix-Style Expressions".

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Single-Table Abstraction): Update example.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostres.c (xr_display): Skip "PGRES_" in status.
	* doc/guile-pg.twerp: Update result object print representation.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (make-M:pg-class): No longer take db name.
	Hardcode "template1" instead.  Update callers.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm
	(table-info): Use keyword for pgtable-manager message.
	(describe-table!): Likewise.
	Also, use #:k and #:connection instead of ‘pgdb’.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm: Use module (database postgres-qcons).
	(table-info): Rewrite to compose SQL w/ trees.
	(table-fields-info): Likewise.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (expr): Handle ‘::’ as SQL ‘CAST’.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgtable-manager): Handle #:trace-exec.

2005-02-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (expr): Add/use internal proc ‘paren’.

2005-02-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*infix-operations*): Add ‘/’.

2005-02-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resx.scm (result->object-rows): New proc, exported.

	* doc/guile-pg.twerp (Result Transforms):
	Add @twerpdoc for ‘result->object-rows’.  Update intro.

2005-02-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Result Transforms): Mention ‘identity’.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.26" for release.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (tuples-result->table): Document expiration.
	(where-clausifier): Likewise. Also, pass result through ‘sql-pre’.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Top): Move "Query Construction"
	to head of second block of chapters.
	(Query Construction): Expand "Prefix-Style Expressions".
	Add intro blurbs for other sections.
	(Easy Interaction): Update example.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (fsel): For this comma-command,
	handle arbitrary number of related expressions, not just one.
	(gxrepl): Init connection property ‘#:cols’.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (fix): For this comma-command,
	make handling consistent for unspecified set and reset
	conditions.  Also, add ‘?’ handling.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (gxrepl): In sub-proc ‘-print’,
	handle trees of strings marked ‘--for-display’, as well.

2005-02-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/Makefile.am (EXTRA_DIST): Add mkinc.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm
	(make-SELECT/COLS-tree, make-SELECT/FROM/COLS-tree):
	Rename from ‘make-SELECT/OUT-tree’ and ‘make-SELECT/FROM/OUT-tree’,
	respectively.  Update export list and callers.

	* doc/guile-pg.twerp (Query Construction): Rename @twerpdoc
	for ‘make-SELECT/OUT-tree’ and ‘make-SELECT/FROM/OUT-tree’
	to ‘make-SELECT/COLS-tree’ and ‘make-SELECT/FROM/COLS-tree’,
	respectively.

	* scm/postgres-table.scm: Throughout, use ‘make-SELECT/FROM/COLS-tree’.

	* scm/postgres-gxrepl.scm: Likewise.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: From module (database postgres-qcons),
	no long select ‘sql-quote’ or ‘make-SELECT/OUT-tree’.
	(obvious): For this comma-command, use ‘make-SELECT/FROM/OUT-tree’.
	(dt, fsel): Likewise.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-FROM-tree):
	If given #f, return the null tree.
	Also, pass all symbols through ‘maybe-dq’.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: From module (database
	postgres-qcons), no longer select ‘make-WHERE-tree’.
	(fix, fsel): Rewrite these comma-commands.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (maybe-dq): Never double-quote ‘*’.
	(expr): Pass symbols through ‘maybe-dq’.
	(make-SELECT/OUT-tree): Accept numbers.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (pre-inst.merged-module-catalog):
	Ignore "doc" and "contrib".

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm: No longer call ‘qcons-declare!’ at load-time.
	(*infix-operations*): Add symbols formerly added at load-time.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/mkinc: New file.

	* doc/Makefile.am (guile_pg_TEXINFOS): Add qcons-tables.texi.
	(qcons-tables.texi): New target.

	* doc/guile-pg.twerp (Query Construction): Add intro blurb, and
	@include qcons-tables.texi, in section "Lookup Tables Extension".

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (--for-display): New object property.
	(for-display, gxrepl): Use ‘--for-display’.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: From module (database postgres-qcons),
	no longer select ‘make-ORDER-BY-tree’
	Instead, select ‘parse+make-SELECT/tail-tree’.
	(dt): Use ‘parse+make-SELECT/tail-tree’.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*conditional-operations*):
	Remove ‘ALL’, ‘ANY’, ‘IN’ and ‘LIKE’.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (sql<-trees): Mark rv w/ ‘sql-pre’.
	(sql-command<-trees): Mention marking in docstring; nfc.

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Query Construction):
	Add section "Prefix-Style Expressions".

2005-02-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (--preformatted): New object property.
	(sql-pre, sql-pre?, sql-unpre): New procs, exported.
	(sql-quote): Mark return value as preformatted.
	(maybe-dq): Likewise.
	(expr): Remove #:q* handling. Arrange to do ‘sql-quote’
	non-recursively, and only if the tree is not marked as preformatted.
	(make-SELECT/OUT-tree): Mark naked strings as preformatted.
	Likewise for strings used in title position.
	(parse+make-SELECT/tail-tree): Rewrite.

	* scm/postgres-table.scm: From module (database postgres-qcons),
	select also ‘sql-pre’ and ‘sql-pre?’. Re-export ‘sql-pre’.
	(preformatted): Delete object property.
	(sql-pre): Delete proc.
	(->db-insert-string): Use ‘sql-pre?’.
	(delete-rows-proc): Mark string where condition as preformatted.
	(update-col-proc): Likewise.
	(select-proc): Likewise for string outspec and string rest clauses.

	* scm/postgres-gxrepl.scm: Throughout,
	excise #:q* from make-*-tree args.

	* doc/guile-pg.twerp (Query Construction): Add section "Quoting".
	Add @twerpdoc for ‘sql-pre’, ‘sql-pre?’ and ‘sql-unpre’
	and move @twerpdoc for ‘sql-quote’, there.

2005-02-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-ORDER-BY-tree):
	Do not ‘maybe-dq’ integer ordfunc.

2005-02-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*display-aliases*): New var.
	(*postfix-operations*): Likewise.
	(qcons-declare!): Handle #:infix instead of #:infix-op.
	Also, add handling for #:postfix and #:display-alias.
	(expr): Handle postfix operations.
	(sql<-trees): For symbols, use display-alias if available.

2005-02-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (parse+make-SELECT/tail-tree):
	Avoid #:q* application for #:group-by clauses.
	(sql<-trees): Handle #:GROUP-BY.

2005-02-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-ORDER-BY-tree): Signal
	error if ordering item is neither an integer nor a symbol.
	Also, fix bug: Call ‘maybe-dq’ only if ordering item is a symbol.

2005-02-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (maybe-dq): New proc.
	(make-ORDER-BY-tree, make-SELECT/OUT-tree): Use ‘maybe-dq’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm: From module (database postgres-qcons),
	select also ‘make-WHERE-tree’ and ‘parse+make-SELECT/tail-tree’.
	(delete-rows-proc): Use ‘make-WHERE-tree’ if condition not a string.
	(update-col-proc): Likewise.
	(select-proc): Use ‘parse+make-SELECT/tail-tree’
	if rest clauses do not start w/ a string.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-ORDER-BY-tree): Double-quote column.
	(parse+make-SELECT/tail-tree): New proc, exported.

	* doc/guile-pg.twerp (Query Construction):
	Add @twerpdoc for ‘parse+make-SELECT/tail-tree’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (preformatted): New object property.
	(sql-pre, ->db-insert-string): Use ‘preformatted’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm: From module (database postgres-qcons),
	also select ‘make-comma-separated-tree’ and ‘sql<-trees’.
	(string-append/separator): Delete proc.
	(char-sep, ssep, csep): Likewise.
	(drop-proc): Compose SQL using trees, not strings.
	(create-proc): Likewise.
	(pre-insert-into): Likewise.
	(insert-values-proc): Likewise.
	(insert-col-values-cmd): Likewise.
	(delete-rows-proc): Likewise.
	(update-col-proc): Likewise.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (list-sep-proc): Return multi-arity proc.
	(make-comma-separated-tree): New proc, exported.
	(sql<-trees): Recurse immediately; do not use ‘for-each’.

	* doc/guile-pg.twerp (Query Construction):
	Add @twerpdoc for ‘make-comma-separated-tree’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (string*): Delete proc.
	(select-proc): Use ‘sql-command<-trees’ to flatten rest clauses.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgtable-manager): Handle ‘#:k’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resdisp.scm (display-result):
	Handle flags to inhibit L/R decorations.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resdisp.scm (decor): Rename from ‘intersection-style’.
	Also, handle keyword arg.
	(display-result): Use ‘decor’. Recognize/pass keywords.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgtable-manager):
	No longer support #:help or #:menu.
	(pgtable-worker): Update docstring; nfc.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgdb-connection): Delete proc.
	(pgtable-manager): Incorporate ‘pgdb-connection’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm: From module (ice-9 common-list),
	no longer select ‘every’ or ‘pick-mappings.
	From module (database postgres-col-defs), select also ‘validate-def’.
	(validate-def): Delete proc.
	(validate-defs): Likewise.
	(pgtable-manager): Incorporate ‘validate-defs’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-col-defs.scm
	(validate-def): New proc, exported.

	* doc/guile-pg.twerp (Column Definitions):
	Add @twerpoc for ‘validate-def’.

2005-02-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (drop-table-cmd): Delete proc.
	(drop-sequence-cmd): Likewise.
	(drop-proc): Incorporate ‘drop-table-cmd’ and ‘drop-sequence-cmd’.
	Use ‘serial?’.  Also, take ‘beex’ instead of ‘pgdb’.  Update callers.
	(create-cmd): Delete proc.
	(create-proc): Incorporate ‘create-cmd’. No longer validate defs.
	Also, take ‘beex’ instead of ‘pgdb’.  Update callers.
	(clean-defs): No longer validate defs.
	(cdefs->cols): Delete proc.
	(pre-insert-into): New proc.
	(insert-values-cmd): Delete proc.
	(insert-values-proc): Incorporate ‘insert-values-cmd’ and ‘cdefs->cols’.
	No longer validate defs.  Take ‘beex’ instead of ‘pgdb’.  Update callers.
	(insert-col-values-cmd): Take ‘pre’ instead of ‘table-name’.
	Update callers.
	(insert-col-values-proc): No longer validate defs.
	Take ‘beex’ instead of ‘pgdb’.  Update callers.
	(insert-alist-cmd): Delete proc.
	(insert-alist-proc): Incorporate ‘insert-alist-cmd’.
	No longer validate defs.  Take ‘beex’ intead of ‘pgdb’.  Update callers.
	(delete-rows-cmd): Delete proc.
	(delete-rows-proc): Take ‘beex’ instead of ‘pgdb’.  Also, take
	third arg but do not do anything w/ it.  Update callers.
	(update-col-cmd): Delete proc.
	(update-col-proc): Incorporate ‘update-col-cmd’.
	Take ‘beex’ instead of ‘pgdb’.  Update callers.
	(select-proc): Take ‘beex’ instead of ‘pgdb’.  Update callers.
	No longer validate defs.  Change ‘res’ property to #:pgtable-ohints.
	(pgtable-manager): Rewrite.  Update ‘res’ property.

2005-02-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgdb-connection): Do not ‘fmt’ error message.

2005-02-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resdisp.scm: Explicitly #:select in #:use-module clause.
	* scm/postgres-resx.scm: Likewise.
	* scm/postgres-table.scm: Likewise.
	* scm/postgres-meta.scm: Likewise.

2005-02-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resx.scm: No longer use
	modules (database postgres-types)
	and (database postgres-col-defs).

	* scm/postgres-meta.scm: No longer use
	module (database postgres-col-defs).

2005-02-18  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (dt): For this comma-command, allow arg
	to be optional, in which case list all the non-system relations.

2005-02-17  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: From module (database postgres),
	select also ‘pg-result-error-message’.
	(gxrepl): Do not display result status if ‘PGRES_TUPLES_OK’.

2005-02-16  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (obvious): Skip proc docstring.
	(dt): Tighten output formatting.  Use ‘#:q*’.
	(fix, fsel): New comma-commands.

	* doc/guile-pg.twerp (Easy Interaction):
	Give examples on ‘fix’ and ‘fsel’.

2005-02-16  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (dt): Convert ‘table-name’ to string.
	(gxrepl): New comma-command.
	(q): Delete comma-command.

2005-02-16  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*conditional-operations*): Add ‘!=’.
	(*sql-functions*): Delete var and associated load-time actions.
	(qcons-declare!): Remove handling for ‘*sql-functions*’.
	(sql-quote): No longer accept symbols.
	(expr): For op, if not recognized, handle as a function application.
	Add special handling for ‘#:q*’, ‘case’, ‘cond’, ‘if’, #t and #f.
	(make-SELECT/OUT-tree): For symbolic elements,
	do not double-quote if table name is included.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm (help): For this comma-command,
	use #\ht and #\newline instead of embedded in a string.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: Autoload (ice-9 pretty-print).
	From (database postgres-qcons), select also ‘make-SELECT/OUT-tree’.
	(obvious): New comma-command.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-SELECT/OUT-tree): Handle plain string.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-gxrepl.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add postgres-gxrepl.scm.
	* Makefile.am (DOTDOCFILES): Add scm/postgres-gxrepl.doc.

	* doc/guile-pg.twerp (Top): Add to menu "Easy Interaction".
	(Easy Interaction): New node/chapter.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm: From module (database postgres-qcons),
	select also ‘make-SELECT/FROM/OUT-tree’ and ‘sql-command<-trees’.
	(compile-outspec): No longer use ‘symbol->qstring’.
	Also, no longer do "AS" or comma-separation formatting.
	(select-proc): No longer do "SELECT...FROM" formatting.
	Instead, use ‘make-SELECT/FROM/OUT-tree’ and ‘sql-command<-trees’.
	(pgtable-manager): Document expiration date of ‘select’ string support.

2005-02-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (make-SELECT/OUT-tree):
	Handle string expressions.

2005-02-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (make-v): New proc.
	(tuples-result->table): Rewrite to avoid ‘iota’.
	(t-obj-walk-proc): Likewise.

2005-02-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-resdisp.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add postgres-resdisp.scm.
	* Makefile.am (DOTDOCFILES): Add scm/postgres-resdisp.doc.

	* doc/guile-pg.twerp (Top): Add to menu "Displaying Results".
	(Displaying Results): New node/chapter.

2005-02-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*infix-operations*):
	Rename from ‘*binary-infix-operations*’.
	Add ‘+’ and ‘-’ in load-time actions.
	(qcons-declare!): Use ‘*infix-operations*’. Rename key likewise.
	(expr): Likewise. Also, handle arity greater than 2 for infix ops.

2005-02-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (qcons-declare!): Fix omission bug:
	For #:sql-function, add the entire entry, not just the name.
	(make-SELECT/OUT-tree): Stringify and double-quote plain symbols.

2005-02-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (qcons-declare!):
	Take symbol as well as string.

2005-02-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm (*conditional-operations*): New var.
	(*binary-infix-operations*, *sql-functions*): Likewise.
	(qcons-declare!): New proc, exported, used in load-time actions.
	(fs, list-sep-proc, andsep, orsep, commasep, expr): New procs.
	(make-WHERE-tree): New proc, exported.
	(make-GROUP-BY-tree): Likewise.
	(make-HAVING-tree): Likewise.
	(make-ORDER-BY-tree): Likewise.
	(make-SELECT/OUT-tree): Likewise.
	(make-FROM-tree): Likewise.
	(make-SELECT/FROM/OUT-tree): Likewise.
	(sql<-trees): Likewise.
	(sql-command<-trees): Likewise.

	* doc/guile-pg.twerp (Query Construction): Expand. Add sections.
	Add @twerpdoc for ‘qcons-declare!’, ‘make-WHERE-tree’,
	‘make-GROUP-BY-tree’, ‘make-HAVING-tree’, ‘make-ORDER-BY-tree’,
	‘make-SELECT/OUT-tree’, ‘make-FROM-tree’, ‘make-SELECT/FROM/OUT-tree’,
	‘sql<-trees’ and ‘sql-command<-trees’.

2005-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (fs): New proc.
	(psql-command, strictly-check-types/elaborate!): Use ‘fs’.

	* scm/postgres-table.scm (fmt): Use ‘simple-format’.
	(symbol->qstring): Use ‘fmt’.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-qcons.scm: New file.

	* scm/makefile.am (guile_postgres_sources): Add postgres-qcons.scm.

	* scm/postgres-table.scm: Use module (database postgres-qcons).
	(sql-quote): Delete proc.

	* doc/guile-pg.twerp (Top): Add "Query Construction" to menu.
	(Query Construction): New node/chapter.

	* Makefile.am (DOTDOCFILES): Add scm/postgres-table.doc.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Database Connections): Use keywords in example.
	(Single-Table Abstraction): Likewise.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Types Conversion): Add @pxref.
	Add section "Selected Notes About Some Types".
	Push sections down one level of hierarchy; add menu.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (macaddr): New built-in type converter.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (n+m-stringifier): New proc.
	(n+m-objectifier): Likewise.
	(host-stringifier): Likewise.
	(host-objectifier): Likewise.
	(inet): For this built-in type converter,
	rewrite to use ‘n+m-stringifier’ and ‘n+m-objectifier’.
	(cidr, inet-host): New built-in type converters.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (bigint): New built-in type converter.
	(int2, int8, double, float8, bigserial, serial4, serial8): Likewise.
	(serial, inet): Remove ‘lambda’ wrapping.
	(name): Bump truncation to 63. Make it conditional.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (dbcoltype-lookup): Return vector.
	(dbcoltype:stringifier): Extract from vector directly.
	(dbcoltype:default): Likewise.
	(dbcoltype:objectifier): Likewise.

2005-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (dbcoltype:name): Delete proc.
	* doc/guile-pg.twerp (Types Conversion):
	Remove ‘dbcoltype:name’ @twerpdoc.

2005-01-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm
	(*db-col-types*): Each element now pair: symbol + vector.
	(dbcoltype:stringifier): Update access method.
	(dbcoltype:default): Likewise.
	(dbcoltype:objectifier): Likewise.
	(define-db-col-type): Update assignment method.

2005-01-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (sql-quote): Rewrite for speed.
	(string-append/separator): Likewise.
	(ssep, csep): Pass char instead of string to ‘char-sep’.

2005-01-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (defs-from-psql): Use ‘reverse!’.
	* scm/postgres-table.scm (sql-quote): Likewise.
	* scm/postgres-types.scm (read-pgarray-1): Likewise.

2005-01-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_untrace): Fix bug: If the connection
	is not currently being traced, simply do nothing and return.
	Reported by Greg Troxel.

2005-01-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (inet): New built-in type converter.
	Suggested by Greg Troxel.

2005-01-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.25" for release.

2005-01-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (ASSERT_CONNECTION_OR_RESULT): Delete macro.
	(pg_result_error_message): New PG_DEFINE func.
	(pg_error_message): Rewrite.
	(PQRESULTERRORMESSAGE): New SIMPLE_SYMBOL.
	(init_module): Add ‘PQRESULTERRORMESSAGE’ handling.

	* doc/guile-pg.twerp (Processing Results):
	Add @twerpdoc for ‘pg-result-error-message’.

2005-01-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (ASSERT_CONNECTION): Delete macro.
	(VALIDATE_CONNECTION_UNBOX_DBCONN): New macro.

	* libpostgres.c: Use ‘VALIDATE_CONNECTION_UNBOX_DBCONN’.
	(XCONN): Delete macro.
	(ASSERT_CONNECTION): New macro.
	(CONN_NOTICE, CONN_CLIENT, CONN_FPTRACE): New macros. Use throughout.
	(pg_error_message): Use ‘xc_unbox’.

	* libpostgres_lo.c: Use ‘VALIDATE_CONNECTION_UNBOX_DBCONN’.
	(XCONN): Delete macro.
	(LOB_CONN): Use ‘xc_unbox’.

2004-12-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (ASSERT_RESULT): Delete macro.
	(VALIDATE_RESULT_UNBOX2): New macro. Use throughout.
	(VALIDATE_FIELD_NUMBER_COPY): New macro.
	(pg_fname): Use ‘VALIDATE_FIELD_NUMBER_COPY’.
	Also, remove refs to ‘SCM_DEFER_INTS’ and ‘SCM_ALLOW_INTS’.
	(pg_ftype, pg_fsize, pg_fmod): Likewise.

2004-12-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Use ‘SCM_VALIDATE_INUM_MIN_COPY’.

	* libpostgres_lo.c: Use ‘SCM_VALIDATE_INUM_MIN_COPY’,
	‘SCM_VALIDATE_ULONG_COPY’ and ‘SCM_VALIDATE_INUM_COPY’.

2004-12-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (ASSERT_CONNECTION): New macro.

	* libpostgres_lo.c: Use ‘ASSERT_CONNECTION’.

	* libpostgres.c: Use ‘ASSERT_CONNECTION’.
	(ASSERT_RESULT): New macro. Use throughout.
	(ASSERT_CONNECTION_OR_RESULT): Likewise.

2004-11-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/Makefile.am (install-data-hook): Ignore ls(1) errors.

2004-11-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.24" for release.

2004-11-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c
	[HAVE_PQSETNONBLOCKING] (PQSETNONBLOCKING): New symbol.
	[HAVE_PQISNONBLOCKING] (PQISNONBLOCKING): New symbol.
	(init_module)
	[HAVE_PQSETNONBLOCKING]: Include ‘PQSETNONBLOCKING’ in ‘goodies’.
	[HAVE_PQISNONBLOCKING]: Include ‘PQISNONBLOCKING’ in ‘goodies’.

2004-11-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (PQsetnonblocking): Check for this func.
	(PQisnonblocking): Likewise.

	* libpostgres.c (pg_set_nonblocking_x): New PG_DEFINE.
	(pg_is_nonblocking_p): Likewise.

	* doc/guile-pg.twerp (Database Connections): Add @twerpdoc
	for ‘pg-set-nonblocking!’ and ‘pg-is-nonblocking?’ in new
	section "Non-Blocking Mode".

2004-11-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Database Connections):
	Add xref to "Asynchronous Retrieval".
	(Asynchronous Retrieval): Add intro blurb.

2004-11-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (lob_mklobport, lob_write):
	Use ‘SCM_CELL_WORD_0’.  Patch by Greg Troxel.

2004-11-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (xc_p, xr_p, sepo_p): Use ‘SCM_SMOB_PREDICATE’.

2004-11-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.23" for release.

2004-11-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (pre-inst.merged-module-catalog): Remove check
	for and use of "guile-tools make-module-catalog" method.

2004-11-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c
	[not GC_DEBUG] (GC_PRINT): Remove superfluous semicolon.
	[not INIT_DEBUG] (INIT_PRINT): Likewise.

2004-11-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Database Connections):
	Document connection object print representation.
	(Processing Results): Likewise for result objects.
	(Large Objects): Likewise for large-object port objects.

2004-11-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (xc_display): New func decl.
	* libpostgres.c (xc_display): Func no longer static.
	* libpostgres_lo.c (lob_printp): Use ‘xc_display’.

2004-11-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (xc_display): If there is no host, disregard port.
	Also, use "?" for default db, and "" for all other default values.
	Reported by Greg Troxel.

2004-11-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (TTN_COERCE_INT): Delete macro.
	(lob_mklobport): No longer use ‘TTN_COERCE_INT’.
	(lob_write): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (LOBPORTP): Rename from ‘SCM_LOBPORTP’.
	(OPLOBPORTP): Rename from ‘SCM_OPLOBPORTP’.
	(OPINLOBPORTP): Rename from ‘SCM_OPINLOBPORTP’.
	(lob_lo_get_connection): Use new names.
	(lob_lo_get_oid): Likewise.
	(lob_lo_tell): Likewise.
	(lob_lo_seek): Likewise.
	(lob_lo_read): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (SCM_OPOUTLOBPORTP): Delete unused macro.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (xc_p): Use ‘gh_car’ and ‘gh_cdr’.
	(xc_unbox): Likewise.
	(xr_p): Likewise.
	(xr_unbox): Likewise.
	(sepo_p): Likewise.
	(sepo_unbox): Likewise.
	(pg_make_print_options): Likewise.
	(init_module): Likewise.

	* libpostgres_lo.c (SCM_OPLOBPORTP): Use ‘gh_car’ and ‘gh_cdr’.
	(SCM_OPINLOBPORTP): Likewise.
	(SCM_OPOUTLOBPORTP): Likewise.
	(lob_mklobport): Likewise.
	(lob_write): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_nfields): Locals name munging; nfc.
	(pg_ftype): Likewise.
	(pg_fsize): Likewise.
	(pg_fmod): Likewise.
	(pg_getisnull): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_fname): Use ‘gh_scm2int’.
	(pg_ftype): Likewise.
	(pg_fsize): Likewise.
	(pg_getvalue): Likewise.
	(pg_getlength): Likewise.
	(pg_getisnull): Likewise.
	(pg_fmod): Likewise.
	(pg_print): Likewise.

	* libpostgres_lo.c (lob_lo_open): Likewise.
	(lob_lo_unlink): Likewise.
	(lob_lo_seek): Likewise.
	(lob_lo_read): Likewise.
	(lob_lo_export): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (NOT_FALSEP): New macro.
	(EXACTLY_FALSEP): Likewise.
	(EXACTLY_TRUEP): Likewise.

	* libpostgres.c (notice_processor): Use ‘NOT_FALSEP’,
	‘EXACTLY_FALSEP’ and ‘EXACTLY_TRUEP’.
	(pg_make_print_options): Likewise.
	(pg_set_notice_out_x): Likewise.
	(pg_notifies): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_conndefaults): Use ‘gh_char2scm’.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (strip_newlines): Use ‘gh_str2scm’.
	(pg_getvalue): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_conndefaults): Use ‘gh_int2scm’.
	(pg_backend_pid): Likewise.
	(pg_result_status): Likewise.
	(pg_ntuples): Likewise.
	(pg_nfields): Likewise.
	(pg_oid_value): Likewise.
	(pg_fnumber): Likewise.
	(pg_ftype): Likewise.
	(pg_fsize): Likewise.
	(pg_getlength): Likewise.
	(pg_fmod): Likewise.
	(pg_getlineasync): Likewise.
	(pg_notifies): Likewise.

	* libpostgres_lo.c (lob_lo_get_oid): Likewise.
	(lob_lo_tell): Likewise.
	(lob_lo_seek): Likewise.
	(lob_fill_input): Likewise.
	(lob_seek): Likewise.
	(lob_lo_read): Likewise.
	(lob_lo_import): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_conndefaults): Use ‘gh_str02scm’.
	(notice_processor): Likewise.
	(pg_get_db): Likewise.
	(pg_get_user): Likewise.
	(pg_get_pass): Likewise.
	(pg_get_port): Likewise.
	(pg_get_tty): Likewise.
	(pg_get_options): Likewise.
	(pg_cmdtuples): Likewise.
	(pg_fname): Likewise.
	(pg_getvalue): Likewise.
	(pg_getline): Likewise.
	(pg_print): Likewise.
	(pg_notifies): Likewise.
	(pg_client_encoding): Likewise.

2004-10-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_conndefaults): Use ‘gh_cons’.
	(pg_make_print_options): Likewise.
	(pg_notifies): Likewise.
	(init_module): Likewise.

2004-10-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (check-type/elaborate): Doc fix.

	* scm/postgres-table.scm (pgtable-worker): Doc fix; nfc.

2004-10-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Rewrite guile.m4 snapshot handling.

2004-08-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.22" for release.

2004-08-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/.make-automake-frags (xtab): New var.
	(spew_twerp_stuff): Use only sed(1).

2004-08-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (postgres_la_SOURCES): Add bcruft.h and fcruft.h.

2004-08-07  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Writing/Reading Data): Fix typo.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (PQ_FLAGS): Fix shell-quoting omission bug.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_endcopy): Return bool.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Throughout, add explicit ‘(void)’ casts
	for void return values from PQ functions.  For each unused non-void
	return value, add also a comment explaining why we "don’t care".

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_putline): Collect status from PQ op; return bool.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Writing/Reading Data):
	Add example proc ‘copy-to-port-async’.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp: Spacing fixups. Use "PostgreSQL".

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_FCOMPAT): Update SCM_OUTPORTP message.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (PQ_FLAGS): Add ‘pq-rpath’ AC_ARG_ENABLE block.
	Also, munge PQ_LDFLAGS before substitution if --enable-pq-rpath.
	Suggested by Greg Troxel.

2004-08-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_FCOMPAT):
	Use AC_LINK_IFELSE for SCM_OUTPORTP test.
	Reported by Greg Troxel.

2004-07-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/.make-automake-frags (prep_dummy_texi): New function.
	(main): Likewise. Call it at top-level.

	* autogen.sh: Move "@setfilename" automake prep into
	doc/.make-automake-frags; move automake invocation afterwards.

2004-07-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (PQ_FLAGS): Use AC_HELP_STRING.

2004-07-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (GUILE_PG_STAMP): Delete var.

2004-07-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (PQ_FLAGS):
	Use var ‘PQ_CPPFLAGS’ instead of ‘PQ_CFLAGS’.
	* configure.in: Likewise.
	* Makefile.am: Likewise.

2004-07-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* aclocal-suffix: New file.

	* autogen.sh: Bum commands to produce aclocal.m4.

	* configure.in (AC_LIBTOOL_TAGS): New macro call.
	(AC_PROG_LIBTOOL): Use instead of AM_PROG_LIBTOOL.

2004-07-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_CONFIG_SCRIPT): New AC_DEFUN.

	* configure.in (test/drop.sh): Use AC_GUILE_PG_CONFIG_SCRIPT.
	(test/create.sh): Likewise.
	(wily-guile): Likewise.
	(module-catalog-prep): Replace this AC_CONFIG_COMMANDS
	block with a call to GUILE_MODULE_CATALOG_PREP.

2004-07-08  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_FCOMPAT): Check for
	SCM_OUTPORTP instead of for SCM_OUTPUT_PORT_P.

	* fcruft.h (SCM_OUTPORTP): Update pre-processor conditional clause.

2004-07-08  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in: For Guile checks using the C compiler,
	save/restore env var ‘CPPFLAGS’ instead of ‘CFLAGS’.

2004-07-08  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in: Move "fill_input in struct scm_ptob_descriptor"
	check into acinclude.m4 AC_GUILE_PG_BCOMPAT.
	Likewise w/ ‘scm_terminating’ check.
	Move save/restore of env vars CFLAGS and LDFLAGS
	to be immediately prior/after AC_GUILE_PG_*COMPAT calls.

	* acinclude.m4 (AC_GUILE_PG_BCOMPAT): Add checks
	for "fill_input in struct scm_ptob_descriptor"
	and ‘scm_terminating’, formerly in configure.in.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (install-data-hook): In $(ddir),
	symlink each foo.la in $(d_LTLIBRARIES) to libfoo.la.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* HACKING: Spell "PostgreSQL" in full. Add portability notes.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_BCOMPAT): New AC_DEFUN.

	* bcruft.h: New file.

	* configure.in (AC_GUILE_PG_BCOMPAT): New macro call.
	Move c2x method and modsup.h checks there.
	(AH_BOTTOM): Include "bcruft.h".
	Move modsup.h inclusion stanza there.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* guile.m4.snap: Sync w/ upstream.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_FCOMPAT): Add check for
	libguile.h provision of SCM_OUTPUT_PORT_P macro.

	* fcruft.h: New file.

	* configure.in (AH_BOTTOM): Include "fcruft.h".
	Move scm_protect_object redefinition there.

2004-07-06  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4: Add autoconf mode header comment (for Emacs); nfc.

2004-07-03  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.21" for release.

2004-06-30  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/Makefile.am (ddir): Use $(GUILE_LIBSITE).
	(retired): New var.
	(install-data-hook): Clean up $(retired) dir.

2004-06-28  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am: Update copyright.
	* acinclude.m4: Likewise
	* configure.in: Likewise
	* libpostgres.c: Likewise
	* libpostgres.h: Likewise
	* libpostgres_lo.c: Likewise
	* doc/Makefile.am: Likewise
	* doc/guile-pg.twerp: Likewise
	* scm/Makefile.am: Likewise

2004-06-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres.scm.in: Delete file.

	* scm/Makefile.am (guile_postgres_generated): Delete var.
	(d_DATA): Delete $(guile_postgres_generated).
	(EXTRA_DIST): Delete postgres.scm.in.
	(install-data-hook): In any postgres.scm from $(ddir).

	* configure.in (AC_CONFIG_FILES): Remove scm/postgres.scm.

	* libpostgres.c (scm_init_database_postgres_module):
	Rename from ‘scm_init_database_postgres_sup_module’.

	* Makefile.am
	(d_LTLIBRARIES): Add postgres.la. Remove postgres-sup.la.
	(postgres_sup_la_SOURCES): Delete.
	(postgres_sup_la_LDFLAGS): Delete.
	(postgres_la_SOURCES): New var/directive.
	(postgres_la_LDFLAGS): New var/directive.
	(install-data-hook): Delete any postgres-sup.* files in $(ddir).
	(DOTDOCFILES): Remove scm/postgres.doc.

2004-06-24  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_oid_status): Delete PG_DEFINE func.

	* doc/guile-pg.twerp (Processing Results): Remove @twerpdoc
	and associated "deprecated" blurb for ‘pg-oid-status’.

2004-06-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in: Use macro GUILE_C2X_METHOD.

2004-06-23  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_guile_pg_version): Delete PG_DEFINE func.

	* scm/postgres.scm.in (pg-guile-pg-module-version): Delete proc.
	(pg-guile-pg-module-config-stamp): Likewise.

	* doc/guile-pg.twerp (Miscellaneous): Remove @twerpdoc for
	‘pg-guile-pg-version’, ‘pg-guile-pg-module-version’ and
	‘pg-guile-pg-module-config-stamp’, as well as intro blurb.

2004-06-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* HACKING: Mention .last-release file.
	Use "1.4.1.x series" instead of "1.4.1.93".

2004-06-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* guile.m4.snap: New file.

	* autogen.sh: Consider guile.m4.snap as guile.m4.
	For aclocal(1), specify cwd as include dir.

2004-06-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Emit warning if modsup.h.snap is out of date.

2004-06-17  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* modsup.h.snap: New file.

	* autogen.sh: Add guile to tools versions (for modsup.h).
	If guile cannot supply modsup.h, use modsup.h.snap.

2004-06-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.20" for release.

2004-06-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c
	(strip_newlines): Fix OBOE: Correctly compute string length.
	(pg_connectdb): Fix liveness bug: Call ‘PQerrorMessage’
	before ‘PQfinish’ to avoid accessing stale ‘dbconn’ storage.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (CLEANFILES): Add $(noinst_DATA).

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (twerp-prep): For this AC_CONFIG_COMMANDS
	entry, fix skew bug: look for command ‘prep-Ptexi’.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (postgres_sup_la_LDFLAGS): Bump version info to "6:1:4".

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (lob_stream): Rename struct field ‘fd’ to ‘alod’.
	Update all usage sites.
	(lob_mklobport): Use var name "alod" instead of "fd".
	(lob_lo_creat): Likewise.
	(lob_lo_open): Likewise.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp: In program fragments,
	use ‘format’ instead of ‘write-line’.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Update libtool version; nfc.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/.make-automake-frags (TAB): Delete var.
	(spew_twerp_stuff): Rewrite.

	* configure.in (twerp-prep): For this AC_CONFIG_COMMANDS entry, use
	contents of $srcdir/doc/.twerp-list instead of hardcoding stems.

2004-06-14  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Writing/Reading Data): In example, use
	module (ice-9 rdelim), and replace "if + begin" with cond.

2004-05-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (lob_mklobport): Move ‘pt->read_buf’
	to head of chained assignment to avoid compiler warning.

2004-05-17  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (strip_newlines): Do not modify ‘str’.

2004-05-17  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (strip_newlines): Use ‘scm_makfromstr’.
	Update callers to no longer use ‘strdup’ and ‘free’.

2004-05-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Column Definitions): Fix typo.

	* scm/postgres-col-defs.scm: Doc munging; nfc.

2004-05-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (defs-from-psql): When
	reading type options, consider all #\, as #\space.

2004-05-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.19" for release.

2004-05-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4 (AC_GUILE_PG_FCOMPAT): Use 3-arg ‘AC_DEFINE’
	instantiation variant instead of 1-arg variant.

2004-05-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (c2x): Add check for which method to use.
	* Makefile.am (.c.x): Use $(c2x).

2004-03-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.18" for release.

2004-03-22  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (INCLUDES): Add -I$(srcdir).
	(pre-inst.merged-module-catalog): Conditionalize.
	Add preference for "guile-tools mkpimmc".
	Add "echo ... > $@" fallback.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (postgres_sup_la_LDFLAGS): Bump -version-info to "6:0:4".

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c: Use ~S in ‘scm_misc_error’ format string.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres_lo.c (lob_lo_unlink):
	Fix bug: Return #f only on error.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Legalities): Update.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (goodies): New file-static var.
	(pg_guile_pg_loaded): Return ‘goodies’.
	(pg_get_pass) [HAVE_PQPASS]: Convert from conditional definition
	to unconditional definition w/ conditional return value.
	(pg_backend_pid) [HAVE_PQBACKENDPID]: Likewise.
	(pg_oid_value) [HAVE_PQOIDVALUE]: Likewise.
	(pg_binary_tuples) [HAVE_PQBINARYTUPLES]: Likewise.
	(pg_fmod) [HAVE_PQFMOD]: Likewise.
	(SIMPLE_SYMBOL, SYM): New macros.
	(pg_sym_PQPASS) [HAVE_PQPASS]: New SIMPLE_SYMBOL.
	(pg_sym_PQBACKENDPID) [HAVE_PQBACKENDPID]: Likewise.
	(pg_sym_PQOIDVALUE) [HAVE_PQOIDVALUE]: Likewise.
	(pg_sym_PQBINARYTUPLES) [HAVE_PQBINARYTUPLES]: Likewise.
	(pg_sym_PQFMOD) [HAVE_PQFMOD]: Likewise.
	(init_module): Initialize ‘goodies’.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (CREATEDB): New AC_CHECK_PROGS var.
	Warn if createdb not found.
	(AC_CONFIG_FILES): Add test/drop.sh and test/create.sh.
	(chmod-plus-x): Also chmod test/drop.sh and test/create.sh.

2004-03-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (DROPDB): New AC_CHECK_PROGS var.
	Warn if neither dropdb nor destroydb is found.

2004-03-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Move #define and #undef
	FUNC_NAME inside func body; nfc.
	* libpostgres_lo.c: Likewise.

2004-03-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_set_client_encoding_x): Hse ‘ROZT’.
	(pg_send_query): Likewise.

2004-03-20  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (DIFF_PATH): Delete AC_SUBST var.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_sym_envvar): Delete symbol.
	(pg_sym_compiled, pg_sym_val, pg_sym_label,
	pg_sym_dispchar, pg_sym_dispsize): Likewise.
	(SIMPLE_KEYWORD, KWD): New macros.
	(kwd_envvar): New keyword.
	(kwd_compiled, kwd_val, kwd_label,
	kwd_dispchar, kwd_dispsize): Likewise.
	(pg_conndefaults): Use keywords instead of symbols.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (scm_extended_dbconn): Rename to ‘xc_t’.
	(scm_extended_result): Move to libpostgres.c.
	(guile_pg_sec_p): Rename to ‘xc_p’.
	(guile_pg_sec_unbox): Rename to ‘xc_unbox’.

	* libpostgres.c (guile_pg_sec_p): Rename to ‘xc_p’.
	(sec_p): Delete macro.
	(guile_pg_sec_unbox): Rename to ‘xc_unbox’.
	(sec_unbox): Delete macro.
	(sec_box): Rename to ‘xc_box’.
	(sec_display): Rename to ‘xc_display’.
	(sec_mark): Rename to ‘xc_mark’.
	(sec_free): Rename to ‘xc_free’.
	(xr_t): New struct typedef, from libpostgres.h.
	(ser_p): Rename to ‘xr_p’.
	(ser_unbox): Rename to ‘xr_unbox’.
	(ser_box): Rename to ‘xr_box’.
	(ser_display): Rename to ‘xr_display’.
	(ser_mark): Rename to ‘xr_mark’.
	(ser_free): Rename to ‘xr_free’.
	(make_ser): Rename to ‘make_xr’.

	* libpostgres_lo.c (sec_p): Delete macro.
	(sec_unbox): Likewise.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (ROZT_X, ROZT): New macros.

	* libpostgres.c (maybe_strcpy): Delete func.
	Rework callers to use ‘ROZT_X’ and ‘ROZT’.
	(strip_newlines): Return SCM string. Update callers.
	(pg_getlineasync): Fix bug: Use SCM_ROCHARS.
	(pg_putline): Likewise.

	* libpostgres_lo.c (lob_lo_creat): No longer unconditionally
	coerce substring.  Instead, use ‘ROZT_X’ and ‘ROZT’.
	(lob_lo_open): Likewise.
	(lob_lo_import): Likewise.
	(lob_lo_export): Likewise.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* gpl-text.c, gpl-text.scm: Delete files.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Retrieving Data): Add menu.
	Move non-intro text into children nodes.
	(Synchronous Retrieval): New node/section.
	(Asynchronous Retrieval): Likewise.
	(Processing Results): Likewise.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostres_lo.c (XCONN): New macro. Use throughout.

	* libpostgres.c (XCONN, RESULT): New macros. Use throughout.
	(pg_putline) [!HAVE_PQPUTNBYTES]: Use ‘maybe_strcpy’.
	(pg_set_client_encoding_x): Use ‘maybe_strcpy’.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (make_ser): New static func.
	(pg_exec): Use ‘make_ser’.
	(pg_send_query): New PG_DEFINE func.
	(pg_get_result): Likewise.
	(pg_consume_input): Likewise.
	(pg_is_busy_p): Likewise?
	(pg_request_cancel): Likewise.

2004-03-19  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (strip_newlines): Rewrite.

2004-03-18  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (QUERY_BUF_LEN): Delete macro.
	(strncpy0): Delete decl and func.
	(maybe_strcpy): New static decl and func.
	(pg_connectdb): Use ‘maybe_strcpy’ and dynamic memory
	allocation instead of ‘strncpy0’ and function-static buffers.
	(pg_exec): Likewise.
	(pg_error_message): Likewise.
	(pg_fnumber): Likewise.

2004-03-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (pgtable-manager): Make
	returned proc also accept keyword for ‘choice’.
	(pgtable-worker): New proc, exported.

	* doc/guile-pg.twerp (Single-Table Abstraction):
	Mention views in intro.
	Add @twerpdoc for ‘pgtable-worker’.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (*class-defs*): Update, from PostgreSQL 7.3.5.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (check-def/elaborate): Delete.
	(strictly-check-defs/elaborate!): Likewise.
	(check-type/elaborate): New proc, exported.
	(strictly-check-types/elaborate!): Likewise.

	* doc/guile-pg.twerp (Introspection): Add @twerpdoc entries and
	related blurbs for ‘defs-from-psql’, ‘check-type/elaborate’ and
	‘strictly-check-types/elaborate!’.  Also, add example.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (defs-from-psql): Take additional arg ‘psql’.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm: Use module (database postgres-col-defs).
	Autoload (srfi srfi-13) instead of using it directly.
	Add autoload for module (ice-9 popen).
	(defs-from-psql): New proc, exported.
	(check-def/elaborate): Likewise.
	(strictly-check-defs/elaborate!): Likewise.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-types.scm (real): New built-in type converter.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (put, get): Delete aliases.
	(describe-table!): Use ‘pg-print’ instead of ‘describe-table’.
	(display-table): Delete proc.

2004-02-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (*class-defs*): New var.
	(*table-info-selection*): New var.
	(make-M:pg-class): Use ‘*class-defs*’.
	(table-info): Use ‘*table-info-selection*’.

2004-02-11  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_getline): Doc munging; nfc.
	(pg_getlineasync): New PG_DEFINE func.

	* doc/guile-pg.twerp (Retrieving Data): Also mention ‘pg-getlineasync’.
	(Writing/Reading Data): Add intro blurb re need to
	call ‘pg-endcopy’.  Add @twerpdoc for ‘pg-getlineasync’.

2004-02-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* ltconfig: Delete.

2004-02-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_sym_envvar): New global var.
	(pg_sym_compiled, pg_sym_val, pg_sym_label,
	pg_sym_dispchar, pg_sym_dispsize): Likewise.
	(pg_conndefaults): New PG_DEFINE func.

	* doc/guile-pg.twerp (Database Connections): Mention default
	values in blurb.  Add @twerpdoc for ‘pg-conndefaults’.

2004-02-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Curly-brace placement munging; nfc.
	* libpostgres_lo.c: Likewise.

2004-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (def:col-name): Delete unused alias.
	Also, no longer re-export proc.
	(def:type-name): No longer re-export proc.
	(def:type-options): Likewise.

2004-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (MD5SUM_PATH): Delete unused AC_PATH_PROG.

2004-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (cvs-state-summary): New target, when MAINTAINER_MODE.

2004-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Update autoconf version; nfc.

2004-02-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres.scm.in (PGRES_EMPTY_QUERY): Delete var.
	(PGRES_COMMAND_OK, PGRES_TUPLES_OK, PGRES_COPY_OUT,
	PGRES_COPY_IN, PGRES_BAD_RESPONSE, PGRES_NONFATAL_ERROR,
	PGRES_FATAL_ERROR): Likewise.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.17" for release.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* guile-pg.project (location, status): Update.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (EXTRA_DIST): Add modsup.h.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (compile-outspec): Export.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* README: Rewrite.

2004-02-02  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (destroy-nonmodule-guile-pg-prior-install): New target.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp:
	No longer call the document "Command Reference".
	Instead, use "The (database postgres*) Modules".
	(Top): Rewrite intro blurb.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (postgres_sup_la_LDFLAGS): Update version info.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/Makefile.am (guile_pg_TEXINFOS):
	Remove version.texi. Add guile-pg.texi.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Miscellaneous): Replace @deffn with
	@twerpdoc for ‘pg-guile-pg-loaded’, ‘pg-guile-pg-version’,
	‘pg-guile-pg-module-version’ and ‘pg-guile-pg-module-config-stamp’.
	Mention that the latter three will not be included in 1.0 release.

	* Makefile.am (DOTDOCFILES): Add scm/postgres.doc.

	* scm/postgres.scm.in (pg-guile-pg-module-version):
	Add doc-comment; nfc.
	(pg-guile-pg-module-config-stamp): Likewise.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (AC_DISABLE_STATIC): New macro call.
	(GUILE_SITE_DIR): Likewise.
	(GUILE_LIBSITE_DIR): Likewise.

	* Makefile.am (pkglibversdir): Delete var.
	(pkglibvers_LTLIBRARIES): Delete automake directive.
	(libpostgres_la_SOURCES): Likewise.
	(libpostgres_la_LDFLAGS): Likewise.
	(ddir): New var.
	(d_LTLIBRARIES): New automake directive.
	(postgres_sup_la_SOURCES): Likewise.
	(postgres_sup_la_LDFLAGS): Likewise.
	(install-data-hook): New target.

	* scm/Makefile.am: Update copyright.
	(subpkgdatadir): Delete var.
	(subpkgdata_DATA): Delete automake directive.
	(ddir): New var.
	(d_DATA): New automake directive.
	(install-data-hook): Rewrite action:
	No longer textually modify/re-install postgres.scm.  Instead,
	do "guile-tools make-module-catalog" if that tool is available.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to "0.16.31415.1" for hacking.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* ANONCVS: New file.
	* Makefile.am: Update copyright.
	(EXTRA_DIST): Add ANONCVS.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp (Database Connections): Add section and @twerpdoc
	entries for ‘pg-client-encoding’ and ‘pg-set-client-encoding!’.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp: Use "Guile-PG" everywhere, sans @code{}.
	(er): Add this @defcodeindex.
	(Top): Add to menu "Error Index".
	(Database Connections): Add @erindex entries and blurbs.
	(Writing/Reading Data): Likewise.
	(Large Objects): Likewise.
	(Miscellaneous): Likewise.
	(Error Index): New node.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_encoding_to_char): Add extern func decl.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_client_encoding): New PG_DEFINE func.
	(pg_set_client_encoding_x): Likewise.

2004-02-01  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (select-cmd): Delete proc.
	(compile-outspec): New proc, exported.
	(select-proc): Rewrite to use ‘compile-outspec’.
	(pgtable-manager): Doc munging; nfc.

	* doc/guile-pg.twerp (Single-Table Abstraction):
	Add @twerpdoc for ‘compile-outspec’.

2004-01-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-table.scm (select-cmd): Take additional
	caller-allocated arg ‘obh-box’, a list.  For symbolic
	selections, either singular or a list, pass back through the
	‘obh-box’ the ordered list of objectifier procs associated with
	the selection type(s).
	(select-proc): Update call to ‘select-cmd’.  Capture ‘pg-exec’
	return value and set its ‘objectifier-hints’ property to the
	list computed by ‘select-cmd’, or #f.
	(pgtable-manager): For ‘tuples-result->object-alist’ and
	‘tuples-result->object-alists’, prefer the result's
	‘objectifier-hints’ property if available, over the full
	list of objectifiers.

2004-01-31  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (put, get): New aliases.
	* scm/postgres-table.scm: Likewise.
	* scm/postgres-types.scm: Likewise.

2004-01-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* acinclude.m4: Update copyright.
	(AC_GUILE_PG_FCOMPAT): New AC_DEFUN.

	* configure.in: Update copyright.
	(AC_GUILE_PG_FCOMPAT): New macro call.
	(AH_BOTTOM): Add ‘scm_protect_object’ redefinition
	conditional on HAVE_SCM_GC_PROTECT_OBJECT.

2004-01-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_notifies): New PG_DEFINE func.

	* doc/guile-pg.twerp (Database Connections): Add @section headers.
	Add @twerpdoc for ‘pg-notifies’.

2004-01-25  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c: Update copyright.
	(pg_connectdb): Doc fix; nfc.
	(pg_cmdtuples): Doc munging; nfc.

	* libpostgres_lo.c: Update copyright.
	(lob_lo_get_connection): Doc fix; nfc.
	(lob_lo_get_oid, lob_lo_tell, lob_lo_seek,
	lol_lo_import, lol_lo_export): Likewise.

2004-01-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-meta.scm (describe-table!):
	Use ‘display’ and ‘newline’ instead of ‘write-line’.

2004-01-15  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres-col-defs.scm: Update copyright.
	Use "#:" in ‘define-module’ form.
	* scm/postgres-meta.scm: Likewise.
	* scm/postgres-resx.scm: Likewise.
	* scm/postgres-table.scm: Likewise.
	* scm/postgres-types.scm: Likewise.

	* doc/guile-pg.twerp: Update copyright.
	Use "#:" in ‘use-modules’ forms.

2003-12-29  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.h (scm_extended_dbconn): Add member ‘SCM notice’.

	* libpostgres.c (sec_mark): Also mark ‘sec->notice’.
	(notice_processor): New static func.
	(pg_connectdb): Init ‘sec->notice’.
	Also, set connection's notice processor.
	(pg_set_notice_out_x): New ‘PG_DEFINE’ func.

	* doc/guile-pg.twerp (Database Connections): Add blurb about notices.
	Also, add @twerpdoc for ‘pg-set-notice-out!’.

2003-11-27  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* scm/postgres.scm.in: Use module (database postgres-sup).
	No longer manually load the shared object library.  Instead,
	replace public interface w/ that of module (database postgres-sup),
	and delete all the now-defunct ‘export’ forms.

2003-11-27  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* bugtest/testloseek.scm (pg-exec-cmd): Use symbol
	‘PGRES_COMMAND_OK’ instead of variable by same name.

2003-11-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (init_module): Rename from ‘init_postgres’.
	Make static.
	(scm_init_database_postgres_sup_module): Rename from
	‘scm_init_database_interface_postgres_module’.
	Re-implement as macro call to ‘GH_MODULE_LINK_FUNC’.

2003-11-26  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Update tool version comments.
	Use "guile-config info datadir" to compute aclocal include dir.
	Append override for macro ‘_LT_AC_TAGCONFIG’ to aclocal.m4.
	Add symlinking of modsup.h.
	Add creation of .last-release file.

	* configure.in: Add check for <guile/modsup.h>.
	(AH_BOTTOM): New directive.
	(AC_CONFIG_FILES): Add wily-guile.
	(module-catalog-prep): New AC_CONFIG_COMMANDS block.
	(chmod-plus-x): New AC_CONFIG_COMMANDS block.

	* wily-guile.in: New file.

	* Makefile.am (noinst_DATA): New directive.
	(pre-inst.merged-module-catalog): New target.

2003-11-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (MKDEP): Delete this undocumented directive.

2003-11-21  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (libpostgres_la_SOURCES):
	Remove libpostgres.x and libpostgres_lo.x.

2003-10-16  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/Makefile.am (.twerp.texi):
	Use "guile-tools" instead of "$(GUILE_TOOLS)".

2003-10-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_fname, pg_ftype, pg_fsize, pg_fmod):
	Use ~S instead of %s in format string.  Thanks to Joost Helberg.

2003-09-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* doc/guile-pg.twerp: Add "@paragraphindent 0"
	directive in header block.

2003-09-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* tmpfile.h, tmpfile.c: New files.

	* AUTHORS: Mention tmpfile.h and tmpfile.c.

	* Makefile.am (libpostgres_la_SOURCES): Add tmpfile.c.

	* libpostgres.c: If HAVE_TMPFILE not defined,
	also #include "tmpfile.h" and define ‘tmpfile’
	to expand to ‘guile_pg_tmpfile’.
	(pg_print): Remove "undefined" branch of HAVE_TMPFILE,
	since we will always have ‘tmpfile’ available.
	Add check for NULL ‘fout’; call ‘scm_syserror’ in that case.
	Remove dire warnings from docstring.

2003-09-10  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (twerp-prep): For this AC_CONFIG_COMMANDS entry,
	use "prep-Ptexi" instead of "twerp2texi --prep".

2003-09-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in: Add "AC_CHECK_FUNCS(tmpfile)".

	* libpostgres.c (pg_print): When cpp macro HAVE_TMPFILE is defined,
	pass a temporary ‘FILE *’ to ‘PQprint’, read it out again and
	send a freshly constructed scheme string to the current output port.

2003-09-09  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* Makefile.am (.doc-index): Use "make-twerp2texi-index"
	instead of "twerp2texi --make-index".
	(.c.x): Use "guile-tools c2x" instead of "guile-snarf".
	(.c.doc): Use "guile-tools" instead of "$(GUILE_TOOLS)".
	(.scm.doc): Likewise.

2003-08-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* configure.in (VERSION): Bump to 0.16 for release.

2003-08-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* autogen.sh: Also pass "-I $HOME/local/share/aclocal" to aclocal.

2003-08-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* guile-pg.project (authors): Expand ttn email addr.

2003-08-13  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostres.c (pg_print): Expand docstring; nfc.

2003-08-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_make_print_options): Doc fix; nfc.
	(pg_print): If ‘options’ is not specified (undefined), set
	it to a pg-print-option object derived from the '() spec.

2003-08-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* AUTHORS: Mention doc/guile-pg.texi
	explicitly (it was folded into doc/guile-pg.twerp).

2003-08-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* README: Mention test/show-platform and how to use it.

2003-08-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* libpostgres.c (pg_make_print_options):
	Add newline in docstring; nfc.

	* doc/guile-pg.twerp: Fix typo.

2003-08-12  Thien-Thi Nguyen  <ttn@surf.glug.org>

	* THANKS: Add Russ McManus (moved from AUTHORS).
	* AUTHORS: Rewrite.

	* gpl-text.scm, gpl-text.c: Update copyright. Remove author blurb.

	* libpostgres.c, libpostgres.h, libpostgres_lo.c,
	scm/Makefile.am, scm/postgres.scm.in:
	Separate author and copyright comments; nfc.

2003-01-30  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (sepo_type_tag, default_print_options,
	valid_print_option_flags, valid_print_option_keys): New static vars.
	(sepo_p, sepo_box, sepo_unbox, sepo_mark, sepo_free,
	sepo_display): New static funcs.
	(pg_sym_header, pg_sym_no_header, pg_sym_align, pg_sym_no_align,
	pg_sym_standard, pg_sym_no_standard, pg_sym_html3, pg_sym_no_html3,
	pg_sym_expanded, pg_sym_no_expanded, pg_sym_field_sep, pg_sym_table_opt,
	pg_sym_caption, pg_sym_field_names): New global vars.
	(pg_make_print_options, pg_print): New PG_DEFINE funcs.
	(init_postgres): Add init for sepo smob and valid_print_option_*
	vars.

	* scm/postgres.scm.in (pg-make-print-options, pg-print): New exports.

	* doc/guile-pg.twerp (Writing/Reading Data): Add info on
	pg-print and pg-make-print-options.

2003-01-15  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.15 for release.

2003-01-15  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.twerp (Column Definitions): New node/chapter.
	(Result Transforms): New node/chapter.
	(Single-Table Abstraction): Move some things to new nodes.
	(Introspection): Add ‘@twerpdoc (infer-defs)’.

2003-01-15  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-meta.scm: Use module (database postgres-resx).
	(table-fields-info): First arg now a conn object.
	(OLD-fields-as-scheme-defs, col-alist->alist-tuples): Delete.
	(infer-defs): Rename from fields-as-scheme-defs; rewrite; export.
	(display-table): Reorg; nfc.

2003-01-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-table.scm: Use modules (database
	postgres-col-defs) and (database postgres-resx).

	(def:col-name, def:type-name, def:type-options):
	Remove from Commentary, but continue to export.
	(pgtable-manager): Use ‘result->object-alist’
	and ‘result->object-alists’; nfc.

2003-01-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-col-defs.scm: New file.
	* scm/postgres-resx.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add
	postgres-col-defs.scm and postgres-resx.scm.

	* Makefile.am (DOTDOCFILES): Add scm/postgres-col-defs.doc
	and scm/postgres-resx.doc.

2003-01-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-table.scm (pgtable-manager): First arg can now
	be an empty string, a space-separated "var=val" string, or a pg
	connection.

2003-01-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (pg_connection_p): New PG_DEFINE function.
	* Makefile.am (libpostgres_la_LDFLAGS): Update vers to "4:0:2".
	* scm/postgres.scm.in (pg-connection?): Export.

	* doc/guile-pg.twerp (Database Connections): Add intro blurb.
	Also, add directive for ‘pg-connection?’.

2002-12-29  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (AC_CONFIG_FILES): Delete test/guile-pg-basic-tests.scm
	and test/guile-pg-lo-tests.scm.  Add test/config.scm.

2002-12-27  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.14 for release.

2002-12-27  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (guile_pg_sec_p): Rename from ‘sec_p’.
	(guile_pg_sec_unbox): Rename from ‘sec_unbox’.
	* libpostgres.h: Likewise.

	* libposgres_lo.c (sec_p, sec_unbox): New macros.

2002-12-27  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (AC_CONFIG_COMMANDS):
	Conditionalize twerp2texi invocation.

2002-12-26  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (sec_box, ser_p, ser_unbox, ser_box): Make static.
	* libpostgres.h (sec_box, ser_p, ser_unbox, ser_box): Remove decls.

2002-12-26  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-meta.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add postgres-meta.scm.

	* doc/guile-pg.twerp (Introspection): New node/chapter.

	* Makefile.am (DOTDOCFILES): Add scm/postgres-meta.doc.

2002-12-26  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-types.scm (name, aclitem, aclitem[]):
	New built-in type converters.

2002-12-25  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (pg_result_p): New PG_DEFINE func.
	* Makefile.am (libpostgres_la_LDFLAGS): Update vers to "3:0:1".

	* scm/postgres.scm.in (pg-result?): Export.

	* doc/guile-pg.twerp (Retrieving Data):
	Add intro blurb and twerpdoc for ‘pg-result?’.

2002-12-23  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.13 for release.

2002-12-23  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/cov: Use "PG_DEFINE" instead of "SCM_PROC".

2002-12-23  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* HACKING: Mention twerp2texi requirement for docs maintenance.

2002-12-22  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/.twerp-list: New file.
	* doc/.make-automake-frags: New script.
	* doc/guile-pg.twerp: New file.

	* libpostgres.h (PG_DEFINE): New macro.
	* libpostgres.c: Replace SCM_PROC with PG_DEFINE.
	Use FUNC_NAME in function bodies.
	Add docstrings from defunct doc/guile-pg.texi.
	* libpostgres_lo.c: Likewise.

	* configure.in (AM_MAINTAINER_MODE, AC_CONFIG_COMMANDS): New.
	* Makefile.am (SUBDIRS): Put doc/ last.
	(SUFFIXES): Add ".doc".
	(snarfcppopts): New refactor var.
	(.c.doc, .scm.doc): New rules.
	(DISTCLEANFILES): Add "*.doc".
	(DOTDOCFILES): New var, when MAINTAINER_MODE.
	(.doc-index): New target, when MAINTAINER_MODE.

	* doc/Makefile.am: All these in "if MAINTAINER_MODE" block:
	(BUILT_SOURCES): New directive.
	(.twerp.texi): New rule.
	(twerp.mk-am-frag): New "include".
	(EXTRA_DIST): Add guile-pg.twerp and twerp.mk-am-frag.

	* doc/guile-pg.texi: Now generated.

2002-12-22  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* autogen.sh: Add recursive invocation of ".make-automake-frags".
	Before running automake, check if doc/guile-pg.texi exists.
	If not, fake one suitable for automake, w/ timestamp January 1.

2002-12-22  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-types.scm (oid-type-name-cache): New proc, exported.

2002-12-22  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (pgrs): Move PGRES_TUPLES_OK first.

2002-12-22  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.texi (Miscellaneous): Add intro blurb.

2002-12-21  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in: Add check for ‘terminating’ in libguile; define
	HAVE_LIBGUILE_TERMINATING in config.h if available.

	* libpostgres_lo.c: When not HAVE_SCM_TERMINATING, only declare
	‘terminating’ if also HAVE_LIBGUILE_TERMINATING.
	(lob_flush): On error, if neither HAVE_SCM_TERMINATING nor
	HAVE_LIBGUILE_TERMINATING, unconditionally write to stderr.

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.12 for release.

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/Makefile.am (EXTRA_DIST): Add $(guile_postgres_sources).

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.texi (Types Conversion,
	Single-Table Abstraction): New nodes/chapters.

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-types.scm (dbcoltypes): New proc, exported.

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-table.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add postgres-table.scm.

2002-12-20  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres-types.scm: New file.
	* scm/Makefile.am (guile_postgres_sources): Add postgres-types.scm.

2002-12-19  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* HACKING: Mention test/cov.

2002-12-17  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/Makefile.am (EXTRA_DIST): New var.

2002-12-17  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/Makefile.am (dist-hook): New directive.

2002-12-17  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.11 for release.

2002-12-17  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (HAVE_SCM_TERMINATING): Arrange to define this
	config.h macro if libguile.h declares ‘scm_terminating’.

	* libpostgres_lo.c (scm_terminating): Rename from ‘terminating’,
	but only declare if HAVE_SCM_TERMINATING is not defined.  Use
	"extern int" in that case.

2002-12-16  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* THANKS: New file.
	* Makefile.am (EXTRA_DIST): Add THANKS.

2002-12-16  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in: Add multiple checks for ‘InvalidOid’ decl.
	Signal error if not found.

	* libpostgres.c (INVALIDOID_HEADER): #include this if defined.

2002-12-16  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* acinclude.m4: Use m4 quoting (square braces)
	instead of shell quoting (double quotes).

2002-12-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* Makefile.am (EXTRA_DIST): Add contrib.
	(dist-hook): New directive.

	* configure.in (VERSION): Bump to 0.10 for release.

2002-12-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres_lo.c (lob_seek): Only adjust return value on SEEK_CUR.
	(lob_lo_seek): No longer construct args for, or
	call, ‘lo_lseek’; use ‘lob_seek’ instead.

2002-12-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* autogen.sh: Invoke "libtoolize --force" if no ltmain.sh in cwd.

2002-12-14  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres_lo.c (lob_seek): Adjust return value by the amount
	in the port's read-buffer between the read_pos and read_end.

	* guile-pg-lo-tests.scm.in (test:lo-tell): New proc, run by ‘test’.
	(test:make-connection): Use ‘->bool’ instead of ‘if’.
	(test:lo-open-read): Also test ‘pg-lo-get-connection’.

2002-12-13  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/cov: New maintenance script.

2002-12-13  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c (MAX_SSI): Delete macro.
	(ser_status_str, ser_status_str_count, ser_status): Delete vars.
	(pgrs_t): New typedef.
	(pgrs, pgrs_count): New vars, static.
	(ser_display): Replace ‘ser_status’ and ‘ser_status_str’ lookup
	with ‘pgrs’ lookup.
	(str2symbol): Delete macro.
	(pg_result_status): No longer create symbol; use ‘pgrs’ for lookup.
	(init_postgres): No longer define PGRES_* vars.
	Instead, initialize ‘sym’ field in ‘pgrs’.

2002-12-13  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c, libpostres_lo.c: Refill; nfc.

2002-12-12  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.09 for release.

2002-12-12  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* scm/postgres.scm.in (PGRES_EMPTY_QUERY, PGRES_COMMAND_OK,
	PGRES_TUPLES_OK, PGRES_COPY_OUT, PGRES_COPY_IN,
	PGRES_BAD_RESPONSE, PGRES_NONFATAL_ERROR, PGRES_FATAL_ERROR):
	New vars, exported.

2002-12-12  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.texi (Concept Index): Comment out node.
	(Programming Interface): Delete node; move children up.

2002-12-12  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.texi: Rewrite "function" as "procedure".
	Replace @defun with "@deffn {Scheme Procedure}".
	Convert	"returns" -> "return" and so on.
	Move "Miscellaneous" after the other peer sections.
	Refill @lisp examples.

2002-12-12  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* doc/guile-pg.texi: Update copyright.
	Refill; nfc.

2002-12-11  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* configure.in (VERSION): Bump to 0.08 for release.

2002-12-11  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* libpostgres.c: Update copyright.
	No longer #include <postgres.h>.
	Include libpostgres.h using "" instead of <>.

	(rcsid): Delete.
	(ser_status_str_count): New var.
	(pg_guile_pg_rcsid): Delete.
	(str2symbol): New macro.
	(pg_result_status): Return symbol if available.

	* libpostgres_lo.c: Update copyright.

	(rcsid): Delete.
	(pg_guile_pg_lo_rcsid): Delete.
	(TTN_COERCE_INT): New macro.
	(lob_mklobport): Use SCM_INPUT_PORT_P instead of SCM_INPORTP.
	Use SCM_OUTPUT_PORT_P instead of SCM_OUTPORTP.
	Use TTN_COERCE_INT.
	(terminating): Make static.
	(lob_write): Use TTN_COERCE_INT.

	* scm/postgres.scm.in: Update copyright.
	Rework loading to use ‘make-app-module-loader’ if available,
	emulating it if not.

	(pg-setdb): New export.
	(pg-guile-pg-module-rcsid, pg-guile-pg-rcsid): Delete.

	* scm/Makefile.am: Update copyright.

	(install-data-hook): New target.

	* doc/guile-pg.texi: Update pg-result-status docs and examples.

2002-12-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* acinclude.m4 (GUILE_MODULE): Delete.

	* configure.in: No longer use GUILE_MODULE.
	Instead, use GUILE_PROGS and GUILE_FLAGS.

2002-12-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* HACKING: Remove RCS tag.
	Refill.
	Add "Quick start" commands.
	Update "I" to "we".
	Remove hints available elsewhere.

	* README: Update tested PostgreSQL version number.
	Update bug report email address.

2002-12-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* guile-pg.h, guile-pg.c: Delete.

	* Makefile.am: Update copyright.
	(EXTRA_DIST): Add autogen.sh.
	(bin_PROGRAMS, guile_pg_SOURCES, guile_pg_LDADD, guile_pg_CFLAGS,
	guile_pg_LDFLAGS): Delete.
	(INCLUDES): Add "-I.".
	(pkglibversdir): New var.
	(pkglibvers_LTLIBRARIES): Renamed from ‘lib_LTLIBRARIES’.
	(.c.x): Update guile-snarf invocation to use "-o OUT IN" syntax.
	(CLEANFILES): New directive.

	* configure.in: Update copyright.
	(top_builddir_absolute): New var, AC_SUBST'd.
	(AC_INIT): Look for libpostgres.c instead of guile-pg.c.
	(AC_INIT_AUTOMAKE): Use version 0.07u8 to indicate "under development".

2002-12-05  Thien-Thi Nguyen  <ttn@giblet.glug.org>

	* acconfig.h, aclocal.m4, configure, Makefile.in, INSTALL, ANNOUNCE,
	config.guess, config.h.in, config.sub, install-sh, ltmain.sh,
	missing, mkinstalldirs, stamp-h.in, doc/Makefile.in, doc/texinfo.tex,
	scm/Makefile.in: Delete.

	* autogen.sh: Take "--libtoolize" option;
	conditionalize libtoolize invocation.
	Pass "-I ." to aclocal.
	Pass "--force" to automake.
	Record dev box tool versions in comment.

2000-06-20  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* libpostgres.c: Fixed use of soon-to-be-deprecated
	  scm_make_smob_type_mfpe.

2000-06-15  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* libpostgres.c: Fixed use of deprecated scm_smobfuns struct.

	* libpostgres.c, configure.in, doc/guile-pg.texi:
	  Added pg-oid-value function.

2000-06-02  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* ANNOUNCE: New file.

	* Bumped libtool interface number to 2 prior to release.

	* Printing a large object port now gives information about the
	  libpq file descriptor, the OID and the database connection to
	  which the port applies.

	* Fixed buffer overflow in print methods for connection and
	  results smobs.

	* Fixed fill_input bug and lob_printp of closed port.

	* Added test case for read-line (would've caught fill_input bug)

	* Changed libtool to new version 1.3.5

	* Updated autogen.sh

2000-05-30  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* Fixed large object ports so that they work with the further
	  changes to the ports interface.

	  Note: because of this, guile-pg no-longer builds with guile
	  versions prior to 1.3.4

	* Changed all function names from pg:name to pg-name.  This
	  removes the need for a hacked texi2html so that is now gone.

	* Removed pq-setdb  entirely.  It has been replaced by
	  pq-connectdb which is much more flexible.

	* Changed the installation directory of libpostgres.so.  This
	  used to be in an architecture dependent subdirectory, with a
	  symbolic link from an architecture-independent directory, but
	  this was still not compatible with multiple architectures.
	  Instead we install the .so in the $(library) directory and
	  load it explicitly using the scheme interface to dlopen etc.

	* As part of the above, the module is now loaded using

	         (use-modules (database postgres))

	* Addded procedure pg-guile-pg-loaded.  This is a marker, the
	  presence of which guarantees that guile-pg is present.  This
	  is tested in postgres.scm to see whether the guile is plain
	  guile or the statically-linked guile-pg.

	* Updated README

	* Added <Dollar>Id<Dollar> all over the place in preparation
	  for CVS use.  Also added PG-MODULE-RCSID procedure to get
	  the RCS Id of the scheme module (postgres.scm).

1999-06-27  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* Changes to configure.in to check for Postgres 6.4 features.

	* Changes to libpostgres.c to conditionally compile procedures
	  depending on post 6.4 functionality in libpq.

	* Split libpostgres.c into two files. Added libpostgres_lo.c
	  containing the large object code.

	* Changes to libpostgres_lo.c to deal with Guile's new ptobfuns
	  interface. Changes to configure.in to detect the new ptobfuns
	  interface.

1999-01-31  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* Changes to work with libpq from PostgreSQL 6.4.2 these were:

	* libpostgres.c: Added new primitives pg:binary-tuples? and pg:fmod.
	  Changed pg:error-message to work with either a PG-CONN or a
	  PG-RESULT object, calling PQresultErrorMessage in the latter case

	  Changed pg:getvalue to work with binary data. Now PQbinaryTuples
	  is called to check whether the returned value is binary and
	  if it is a string of the appropriate length is returned.

	  Changed pg:putline so that it actually calls PQputnbytes with
	  the correct length. This works with null-terminated strings
	  as it did before, but now works with strings containing embedded
	  nulls as well.

	* Makefile.am: Added -lcrypt to the dependency list for libpostgres.so
	  This is actually wrong though: -lcrypt should only be linked if
	  necessary, since it doesn't exist on some systems. We need to
	  check whether or not it exists in configure.in and only if does
	  should we include it. I don't have enough brains to do this
	  right now though.

1999-01-24  Ian Grant  <Ian.Grant@cl.cam.ac.uk>

	* HACKING: New File.

	* README: Added info on building guile-pg and intalling
	  PostgreSQL from the Red Hat RPMS.

	* Makefile.am, configure.in: Added test subdirectory.

1999-01-17  Ian Grant  <I.A.N.Grant@damtp.cam.ac.uk>

	* acinclude.m4: Added new macro definition GUILE_MODULE
	  which sets up the necessary install targets for a guile
	  module. It gets these from guile-config.

	* configure.in: Changed to use GUILE_MODULE.

	* libpostgres.c: Changed all scheme i/f functions to use
	  guile-snarf to make libpostgres.x

	* Makefile.am: Added lines to allow .x in .deps and to run
	  guile-snarf to create the .x files when necessary.

	* libpostgres.c: Added pg:reset and pg:trace and pg:untrace

1999-01-12  Ian Grant  <I.A.N.Grant@damtp.cam.ac.uk>

	* libpostgres.c: Completed large obect support

	* libpostgres.c: Added support for PQputline/PQgetline/PQendcopy

	* doc/guile-pg.texi: Function descriptions

1998-12-05  Ian Grant  <I.A.N.Grant@damtp.cam.ac.uk>

	* libtoolized

	* acinclude.m4: new file defining PQ library autoconf macro

1998-12-03  Ian Grant  <I.A.N.Grant@damtp.cam.ac.uk>

	* AUTHORS: New file, in accordance with the GNU maintainers'
	standards.

	* README: New file, in accordance with the GNU maintainers'
	standards.

	* Makefile.am: New file for automake.

	* configure.in and friends: new files for autoconf.


Copyright (C) 2010, 2011, 2012, 2013 Thien-Thi Nguyen

Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
