From: Michael Granger Date: 2013-07-23T22:57:46+09:00 Subject: [ANN] pg 0.16.0 Released pg version 0.16.0 has been released! * (home) * (mirror) * (docs) Pg is the Ruby interface to the {PostgreSQL RDBMS}[http://www.postgresql.org/]. It works with {PostgreSQL 8.4 and later}[http://www.postgresql.org/support/versioning/]. A small example usage: #!/usr/bin/env ruby require 'pg' # Output a table of current connections to the DB conn = PG.connect( dbname: 'sales' ) conn.exec( "SELECT * FROM pg_stat_activity" ) do |result| puts " PID | User | Query" result.each do |row| puts " %7d | %-16s | %s " % row.values_at('procpid', 'usename', 'current_query') end end Changes: == v0.16.0 [2013-07-22] Michael Granger Bugfixes: - Avoid warnings about uninitialized instance variables. - Use a more standard method of adding library and include directories. This fixes build on AIX (Github #7) and Solaris (#164). - Cancel the running query, if a thread is about to be killed (e.g. by CTRL-C). - Fix GVL issue with wait_for_notify/notifies and notice callbacks. - Set proper encoding on the string returned by quote_ident, escape_literal and escape_identifier (#163). - Use nil as PG::Error#result in case of a NULL-result from libpq (#166). - Recalculate the timeout of conn#wait_for_notify and conn#block in case of socket events that require re-runs of select(). Documentation fixes: - Fix non working example for PGresult#error_field. Enhancements: - Add unique exception classes for each PostgreSQL error type (#5). - Return result of the block in conn#transaction instead of nil (#158). - Allow 'rake compile' and 'rake gem' on non mercurial repos. - Add support for PG_DIAG_*_NAME error fields of PostgreSQL-9.3 (#161).