Fri Mar 19 11:26:58 2010 UTC ()
Update to 0.39.  Resolves type errors vs newer pgsql.
(approval to update during freeze by agc@)

- 0.39 | 2010-01-11

  - Dropped (database postgres) procs
    - pg-lo-get-connection
    - pg-get-client-data
    - pg-set-client-data!

	These were pre-announced in Guile-PG 0.38 (2009-06-22) NEWS.

  - Proc `(database postgres) pg-parameter-status' no longer takes keyword

	This was pre-announced in Guile-PG 0.38 (2009-06-22) NEWS.

  - Maintenance uses autoconf 2.65, automake 1.11, libtool 2.2.6b

- 0.38 | 2009-06-22

  - Support for PostgreSQL 7.3 and earlier dropped

	Sorry, this was not pre-announced.  Note that the subsequent
	version, i.e. PostgreSQL 7.4, was released 2003-11-17, over five
	years ago.

  - Dropped (database postgres) proc: pg-get-connection

	This was pre-announced in 0.37 (2008-05-24) NEWS.

  - External rep no longer includes "serial number"
    - Connection
    - Result

	These were pre-announced in 0.37 (2008-05-24) NEWS.

  - Planned retirement
    - pg-lo-get-connection
    - pg-get-client-data
    - pg-set-client-data!

	These (database postgres) procs provide or rely on associations
	that can better be expressed using normal Scheme facilities such
	as object properties, hash tables, etc, and thus are deemed a
	redundant maintenance burden; they WILL BE REMOVED by 2009-12-31.

  - Proc `(database postgres) pg-parameter-status' takes symbol `parm'

	These are equivalent:
	(pg-parameter-status CONN #:session_authorization)
	(pg-parameter-status CONN  'session_authorization)

	Note, however, that support for keyword `parm' is a misfeature,
	and WILL BE REMOVED by 2009-12-31.

  - Proc `(database postgres-qcons) sql-quote' more standards compliant

	Previously, this did single-quote escaping by inserting a
	backslash character prior to every single-quote.  The result is
	acceptable by PostgreSQL, but is not standards compliant.  Now,
	it does the escaping by doubling each single-quote, which is
	standards compliant and less prone to trigger warnings from the
	more recent PostgreSQL versions (8.2 and later).

	bef: (sql-quote "a'b") => "'a\\'b'"
	now: (sql-quote "a'b") => "'a''b'"

  - Changes to `pgtable-manager' (and thus `pgtable-worker')

    - Support for DEFAULT

	You can now use the keyword #:DEFAULT to specify DEFAULT as the
	value to insert into a table, or to update a column.  Indeed, for
	column values, any keyword now expands to its name (sans `#:').

    - #:insert-values no longer filters "serial"

	Previously, columns with "serial" type were filtered, so that it
	was possible to #:insert-values specifying only values for the
	other columns.  Now, such usage raises a "column count mismatch"
	error; you must explicitly use #:DEFAULT.  For example, given a
	table with column types "text", "serial", "text":

	bef: (W #:insert-values "foo" "bar") => ok
	now: (W #:insert-values "foo" "bar") => error
	     (W #:insert-values "foo" #:DEFAULT "bar") => ok

	Although technically speaking the new behavior is incompatible,
	the previous behavior was never documented (secret misfeature),
	so the impact on your code is likely to be zero (no worries).

  - Connection object xrep omits "port" if "host" is a socket dir

	When the connection is Unix-domain (i.e., the "host" is a string
	that begins with slash that names a directory), the concept of
	"port" makes no sense.

  - Manual table-of-contents moved forward

	It used to be (strangely but perhaps following some outdated
	convention) at the end of the document.

  - New (database postgres) procs

    - pg-mblen

	While we wait for Guile to go multibyte (and stay there), this
	is a small building-block that eases "mostly ignorant" string
	processing.

    - pg-server-version

	This returns an integer representation of the server version of
	a connection, or `#f' if the connection is closed.

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

	This is useful for `SELECT EXPR;' where the result tuple
	consists of one row and one column.

  - Maintenance uses autoconf 2.63, automake 1.11, libtool 2.2.6


(gdt)
diff -r1.2 -r1.3 pkgsrc/databases/guile-pg/DESCR
diff -r1.41 -r1.42 pkgsrc/databases/guile-pg/Makefile
diff -r1.9 -r1.10 pkgsrc/databases/guile-pg/distinfo

cvs diff -r1.2 -r1.3 pkgsrc/databases/guile-pg/DESCR (expand / switch to unified diff)

--- pkgsrc/databases/guile-pg/DESCR 2004/12/03 13:41:30 1.2
+++ pkgsrc/databases/guile-pg/DESCR 2010/03/19 11:26:57 1.3
@@ -1,5 +1,4 @@ @@ -1,5 +1,4 @@
1Guile-pg is a Guile module providing access and allowing updates to 1Guile-pg is a Guile module providing access and allowing updates to
2PostgreSQL databases from Guile scripts. Guile is the GNU interpreter 2PostgreSQL databases from Guile scripts. Guile is the GNU interpreter
3for the Scheme language and PostgreSQL is a free relational database 3for the Scheme language and PostgreSQL is a free relational database
4management system. This package is for Guile 1.6.x and PostgreSQL 4management system. This package is for Guile 1.6.x.
57.4.x. 

cvs diff -r1.41 -r1.42 pkgsrc/databases/guile-pg/Makefile (expand / switch to unified diff)

--- pkgsrc/databases/guile-pg/Makefile 2010/02/10 19:34:05 1.41
+++ pkgsrc/databases/guile-pg/Makefile 2010/03/19 11:26:57 1.42
@@ -1,45 +1,47 @@ @@ -1,45 +1,47 @@
1# $NetBSD: Makefile,v 1.41 2010/02/10 19:34:05 joerg Exp $ 1# $NetBSD: Makefile,v 1.42 2010/03/19 11:26:57 gdt Exp $
2# 2#
3 3
4DISTNAME= guile-pg-0.37 4DISTNAME= guile-pg-0.39
5PKGREVISION= 3 
6CATEGORIES= databases 5CATEGORIES= databases
7MASTER_SITES= http://www.gnuvola.org/software/guile-pg/ 6MASTER_SITES= http://www.gnuvola.org/software/guile-pg/
8 7
9MAINTAINER= gdt@NetBSD.org 8MAINTAINER= gdt@NetBSD.org
10HOMEPAGE= http://www.gnuvola.org/software/guile-pg/ 9HOMEPAGE= http://www.gnuvola.org/software/guile-pg/
11COMMENT= PostgreSQL interface for Guile 10COMMENT= PostgreSQL interface for Guile
12LICENSE= gnu-gpl-v3 11LICENSE= gnu-gpl-v3
13 12
14PKG_DESTDIR_SUPPORT= user-destdir 13PKG_DESTDIR_SUPPORT= user-destdir
15 14
16USE_LIBTOOL= YES 15USE_LIBTOOL= YES
17USE_TOOLS+= gmake 16USE_TOOLS+= gmake
18GNU_CONFIGURE= YES 17GNU_CONFIGURE= YES
19INFO_FILES= # PLIST 18INFO_FILES= YES
20 19
21TEST_TARGET= check 20TEST_TARGET= check
22 21
23# There are several versions of guile; the relevant ones for this 22# There are several versions of guile; the relevant ones for this
24# module are 1.6.x, which is the current FSF version, and ttn-1.4, 23# module are 1.6.x, which is the old FSF version, and ttn-1.4,
25# which is a forked version of 1.4 by Thien-Thi Nguyen, the maintainer 24# which is a forked version of 1.4 by Thien-Thi Nguyen, the maintainer
26# of guile-pg. fsf-1.4 is considered obsolete by nearly everyone. 25# of guile-pg. fsf-1.4 is considered obsolete by nearly everyone.
27 26
28# In 1.6 (but not fsf-1.4 or ttn-1.4), binary modules are deprecated. 27# In 1.6 (but not fsf-1.4 or ttn-1.4), binary modules are deprecated.
29# guile-pg uses binary modules, and places them and scheme code in 28# guile-pg uses binary modules, and places them and scheme code in
30# $GUILE_LIBSITE, which is searched by ttn-1.4, but not by 1.6. The 29# $GUILE_LIBSITE, which is searched by ttn-1.4, but not by 1.6. The
31# simplest nonproblematic solution is to symlink the installed code to 30# simplest nonproblematic solution is to symlink the installed code to
32# where 1.6 expects it. We could patch guile-pg to install in 1.6's 31# where 1.6 expects it. We could patch guile-pg to install in 1.6's
33# preferred location ${PREFIX}/share/guile/site, but there is a shared 32# preferred location ${PREFIX}/share/guile/site, but there is a shared
34# library which of course cannot go in share. 33# library which of course cannot go in share.
35 34
 35# In 1.8, binary modules have been removed. Support for guile-pg to
 36# use 1.8-style modules has not yet been written.
 37
36SITE=${PREFIX}/guile/1.6/share/guile/site 38SITE=${PREFIX}/guile/1.6/share/guile/site
37 39
 40# guile should make the dir, but if not
38post-install: 41post-install:
39 # guile should make this, but if not 
40 ${INSTALL_DATA_DIR} ${DESTDIR}${SITE} 42 ${INSTALL_DATA_DIR} ${DESTDIR}${SITE}
41 cd ${DESTDIR}${SITE} && ${LN} -sf ../../../../../lib/guile/site/database . 43 cd ${DESTDIR}${SITE} && ${LN} -sf ../../../../../lib/guile/site/database .
42 44
43.include "../../lang/guile16/buildlink3.mk" 45.include "../../lang/guile16/buildlink3.mk"
44.include "../../mk/pgsql.buildlink3.mk" 46.include "../../mk/pgsql.buildlink3.mk"
45.include "../../mk/bsd.pkg.mk" 47.include "../../mk/bsd.pkg.mk"

cvs diff -r1.9 -r1.10 pkgsrc/databases/guile-pg/distinfo (expand / switch to unified diff)

--- pkgsrc/databases/guile-pg/distinfo 2008/10/20 13:53:17 1.9
+++ pkgsrc/databases/guile-pg/distinfo 2010/03/19 11:26:57 1.10
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.9 2008/10/20 13:53:17 gdt Exp $ 1$NetBSD: distinfo,v 1.10 2010/03/19 11:26:57 gdt Exp $
2 2
3SHA1 (guile-pg-0.37.tar.gz) = 2ce660199b4b4aac4ac5499d3c22ee34106d6387 3SHA1 (guile-pg-0.39.tar.gz) = 3ac23784b09bd95d91e322881f15a888d253fac5
4RMD160 (guile-pg-0.37.tar.gz) = b5c1c0f34aa8c4cf08b83c416b29d2b4a1ca5536 4RMD160 (guile-pg-0.39.tar.gz) = b5b83f8b8d8fa0020ac09b1cfb9b59caef451267
5Size (guile-pg-0.37.tar.gz) = 645848 bytes 5Size (guile-pg-0.39.tar.gz) = 644189 bytes