[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Guile-PG 0.41 available

From: Thien-Thi Nguyen
Subject: Guile-PG 0.41 available
Date: Fri, 30 Sep 2011 12:56:37 +0200

release notes:

  Bug fixes, portability improvements, a couple of planned
  retirements, and some new stuff for PostgreSQL 9.x support.


README excerpt:

  Guile-PG is a collection of modules for Guile allowing access to
  the PostgreSQL RDBMS from Scheme programs.

  The low-level module ‘(database postgres)’ provides an almost
  one-to-one correspondence with the PostgreSQL "libpq" C library
  interface.  Other higher-level modules, typically named
  ‘(database postgres-FOO)’, provide abstractions and convenience

  This is alpha code (pre 1.0 release), tested with various, but
  not all, versions of Guile and PostgreSQL.  It may have bugs,
  and the interfaces may change from version to version.

  To build Guile-PG you need to have installed both the PostgreSQL
  frontend library libpq, and a version of Guile that can either
  load binary module (a b c) from file a/b/ or a/b/c/
  under ‘%load-path’, or provide ‘dynamic-link’ and ‘dynamic-call’.

NEWS excerpt:

  - 0.41 | 2011-09-29

    - Bugs fixed

      - Make ‘idquote’ special-case ‘*’ in second part.

        was: (display (idquote 'a.*)) |= "a"."*"
        now: (display (idquote 'a.*)) |= "a".*

      - Call ‘string-append’ with strings, not symbols.

        We no longer rely on this particular Guile 1.4 slack.

    - Portability fixes (tested w/ Guile 1.8.7)

        With the following (and other, non-user-visible) changes, "make
        check" no longer displays "foo is deprecated" messages with
        Guile 1.8.7.  If you see them for your system, for either "make
        check" or subsequent Guile-PG use, please report that as a bug.

      - Don't do "defer/allow ints" for Guile 1.8+.

      - Revamped Scheme object to C byte range for Guile 1.8+

        Access to Scheme string representation was curtailed in Guile
        1.8 (API available but deprecated), so all operations that pass
        a C byte range to libpq functions now incur an extra conversion
        step.  The unfortunate user-visible result is performance loss.

    - Planned retirement
      - procedure ‘(database postgres) pg-getline’
      - procedure ‘(database postgres) pg-getlineasync’

        These procedures are obsoleted by ‘pg-get-copy-data’ and
        WILL BE REMOVED by 2012-12-31.

    - New fluid to control ‘(database postgres-qcons) sql-quote’

        The fluid ‘sql-quote-auto-E?’ controls whether or not
        ‘sql-quote’ should check for ‘\’ (backslash) characters and
        prefix an "E" in that case.  This is relevant if you use
        PostgreSQL 8.2+.

    - New support for "hex format" in ‘bytea’ objectifier

        PostgreSQL 9.0 introduces a more efficient "hex format" for
        ‘bytea’ output.  This is now recognized and parsed, falling back
        to handling the traditional "escape format" if not recognized.

    - Doc improvements
      - Fix omission: Document ‘pg-get-copy-data’ arg ‘async?’.
      - Indices merged into one
      - Builtin type converters listed and indexed
      - Builtin type converter array variants listed

    - For ‘make check DEBUG=1’, display the guile(1) invocation.

    - Tested w/ latest server versions: 8.[01234], 9.[01]

        Additionally, the entries in file test/OK now include the
        associated Guile-PG version, and some include a subheading
        "other pg" to list the precise server version numbers.

tarball and its detached signature in dir:


reply via email to

[Prev in Thread] Current Thread [Next in Thread]