TURNSTEP / DBD-Pg-2.7.0 / Changes

('GSM' is Greg Sabino Mullane, greg@turnstep.com)

2.7.0 Released May 10, 2008

	- Have $dbh->quote() return E'' when server is >= 8.1 and string contains 
		backslashes. Fixes any problems with standard_conforming_strings.
		(CPAN bug #27538) [GSM]

2.6.6 Released May 7, 2008 (subversion r11214)

	- Fix minor problem in t/99_spellcheck.t

2.6.5 Released May 7, 2008 (subversion r11209)

	- Add spell checker to tests. [GSM]
	- More tweaks to the testing suite. [GSM]

2.6.4 Released May 2, 2008 (subversion r11186)

	- More tweaks to the test suite.

2.6.3 Released May 1, 2008 (subversion r11169)

	- Minor tweaks to the test suite.

2.6.2 Released April 30, 2008 (subversion r11161)

	- Fix coredump when pg_getcopydata copies 0 rows into a 
		freshly created var. (CPAN bug #35556) [David Harris]
	- Allow 'make test' create a test database from scratch if
		it cannot find an existing one to use. [GSM]

2.6.1 Released April 22, 2008 (subversion r11133)

	- Don't free placeholder section, fixes problem when using 
		more than one named placeholder with the same name.
		(CPAN bug #35303) [GSM]

2.6.0 Released April 16, 2008 (subversion r11095)

	- Make pg_notifies a true function, so that you can now
		use $dbh->pg_notifies instead of $dbh->func('pg_notifies') [GSM]
	- Various performance improvements [GSM]
	- Fix minor build and compilation issues with Strawberry Perl [GSM]
	- Add Bundle::DBD::Pg [GSM]

2.5.1 Released April 7, 2008 (subversion r11056)

	- Correctly handle negative PID numbers on Win32 systems when
		generating prepared statement names (CPAN bug # 34738) [GSM]

2.5.0 Released March 23, 2008 (subversion r10990)

	- Add pg_enum_values to $dbh->column_info()
		[Dave Rolsky] (CPAN ticket #34351)
	- Minor test fixes.

2.4.0 Released March 21, 2008 (subversion r10974)

	- Remove problematic and unneeded Test::Warn test from 00basic.t.
	- Add $sth->{pg_current_row} [GSM]

2.3.0 Released March 19, 2008 (subversion r10951)

	- Add $sth->{pg_bound} and $sth->{pg_numbound} [GSM]
	- Fix broken call to $sth->{pg_segments} [GSM]

2.2.2 Released March 3, 2008 (subversion r10873)

	- Remove non-working tracing from types.c and quote.c

	- Add parse_trace_flag as statement handle method.

2.2.1 Released March 1, 2008 (subversion r10865)

	- Fix memory leaks in dbdimp.c (CPAN bug #33743)
		[Alexey Tourbin]
	- Fix strlen problems in dbdimp.c (CPAN bug #33737)
		[Alexey Tourbin]
	- Fix char count in Renew() (CPAN bug #33738)
		[Alexey Tourbin]
	- Change local trace_flags to lowercase.

2.2.0 Released February 27, 2008 (subversion r10849)

	- Introduce enhanced trace flags. See the documentation 
		 on parse_trace_flags() for details. [GSM]
	- Remove version.pm dependency from Makefile.PL
		(CPAN bug #33429)

2.1.3 Released February 20, 2008 (subversion r10813)

	- Do not assume POSTGRES_LIB is a plain dirname, as it may have " -lssl".

2.1.2 Released February 19, 2008 (subversion r10806)

	- Do not build if environment variables POSTGRES_HOME, POSTGRES_LIB, 
		or POSTGRES_INCLUDE are set but not valid.
	- Fix dependency requirements, especially version.pm

2.1.1 Released February 19, 2008 (subversion r10798)

	- Better URLs to cpan.org resources.

2.1.0 Released February 18, 2008 (subversion r10793)

	- Use version.pm (CPAN bug #33206) [GSM]
	- Add PERL_NO_GET_CONTEXT #define to improve performance on threaded Perls
	- Raise the minimum DBI version to 1.52.
	- Allow arrayrefs into bind_col (CPAN bug #33193) [GSM]
	- Remove '//' style comments to make strict ANSI compilers happy.
		[Trevor Inman] (CPAN bug #33089)
	- Force client encoding of UTF8 for some tests.
	- Make 03dbmethod.t pass minor test for version 8.1.9
		(CPAN bug #33282)
	- Add a local copy of dbivport.h

2.0.0 Released February 10, 2008 (subversion r10715)

Major changes:

	- Make minimum supported server 7.4. [GSM]
	- Overhaul COPY functions: deprecate pg_getline, pg_putline, 
		and pg_endcopy. The new functions are pg_getcopydata, 
		pg_getcopydata_async, pg_putcopydata, and pg_putcopyend. [GSM]
	- Add support for arrays: can pass in arrayrefs to execute, and 
		they are automatically returned as arrays when fetching. [GSM]
	- Add support for asynchronous queries. [GSM]
	- Allow raw transaction statements through - in other words, 
		do not croak if $dbh->prepare("COMMIT") is attempted. Not 
		only was this a little too controlling, there is a growing 
		host of other commands such as "COMMIT PREPARED" that we
		need to allow. [GSM].
	- Check transaction status after each command, to allow 
		things such as 'PREPARE TRANSACTION' to work properly.
		(CPAN bug #32423) [GSM]
	- Overhauled the data type system. [GSM]
	- Switch from cvs to subversion. Switch from gborg to perl.org.
	- Change versioning system to three numbered system.

Bug fixes:

	- Add $dbh->{pg_placeholder_dollaronly} to allow '?' and other symbols 
		to be used in prepared statements without getting interpreted as 
		placeholders, i.e. the geometric operator '?#' (CPAN bug #24124) [GSM]
	- Fix memory leak in bytea quoting. (CPAN bug #21392). Fix memory leak 
		in pg_notifies. [Stephen Marshall smarshall@wsi.com]
	- Fix memory leak when using savepoints. (CPAN bug #29791)
		[airwave@cpan.org]
	- Use adbin, not adsrc, when figuring out the sequence name for the 
		last_insert_id() method. This allows the function to work properly 
		if the sequence name is changed. Note that {pg_cache=>0} should be 
		passed to the function if you expect this might happen.
		(CPAN bug #30924) [GSM]
	- Use unsigned chars when parsing passed-in queries, preventing UTF-8 
		strings from ruining the prepare. UTF-16 may still cause problems.
		(CPAN bug #31577) [GSM]
	- Fix crash when executing query with two placeholders side by side.
		Thanks to Daniel Browning for spotting this. [GSM]
	- Skip item if no matching key in foreign_key_info.
		(CPAN bug #32308) [GSM]
	- Fix bug in last_insert_id. (CPAN bug #15918) [orentocy@gmail.com]
	- Fix pg_description join in table_info(). [Max Cohan max@endpoint.com]
	- Make sure arrays handle UTF-8 smoothly (CPAN bug #32479) [GSM]
	- Force column names to respect utf8-ness. Per report from Ch Lamprect. [GSM]
	- Make sure array items are marked as UTF as needed.
		(CPAN bug #29656) [GSM]		
	- Force SQL_REAL and SQL_NUMERIC to be float8 not float4.
		(CPAN bug #30010) [GSM]
	- Allow objects with stringification overloading to work with quote().
		(CPAN bug #32868) [David E. Wheeler and GSM]
	- Use prepare_cached in last_insert_id function. (CPAN bug #24313)
	- Switch from pow to powf to support AIX compiler issue.
		(CPAN bug #24579) [GSM]

Enhancements and API changes:

	- Complain loudly and fail to proceed if Makefile.PL finds no -lpq [GSM]
	- Add three new columns to column_info, to return unquoted 
		version: pg_schema, pg_table, and pg_columns. Add all 
		three to primary_key_info, and the first two to table_info
		(CPAN bug #20282) [GSM]
	- Change $dbh->{User} to $dbh->{Username} [GSM]
	- Change $dbh->{Name} to return the entire DSN string, minus the 
		'dbi:Pg:' part. Thanks to Mark Stosberg for the idea. [GSM]
	- Allow data_sources to accept optional arguments. [GSM]
	- Add private_attribute_info() method. [GSM]
	- Add SQL_INTERVAL and others to types.c [GSM]
	- Added statistics_info function [Brandon Black blblack@gmail.com]
	- Be much more flexible in test connection options. [GSM]
	- Overhaul test suite, allow tests to be run individually. [GSM]

New and experimental:

	- Quick support for named trace level 'SQL' [GSM]
	- Very experimental support for bind_param_inout, use with caution. [GSM]

Documentation fixes:

	- Fix bad PG_INTEGER example in docs, thanks to Xavi Drudis Ferran.
		(CPAN bug #31545) [GSM]
	- Fix META.yml file. (CPAN bug #25759) [GSM]

1.49 May 7, 2006
	- Thanks to Backcountry.com for sponsoring work on this release. [GSM]
	- Add the statement handle attribute ParamTypes, and fix an error 
		in ParamValues. ParamTypes requires DBI 1.49 or better. [GSM]
	- Strip the final newline from error messages, so that die can add 
		in the line number. (CPAN bug #18900) [GSM]
	- Make workaround for PQresultErrorField not returning proper 
		result when an error is set and we are connecting via TCP/IP.
		This allows correct $dbh->state() values. [GSM]
	- Fix incorrect quoting preventing compiling. (CPAN bug #18640)
	- Add support for quoting and binding of geometric types: POINT, 
		LINE, LSEG, BOX, PATH, POLYGON, and CIRCLE. Also added the 
		TID type. [GSM]

1.48 April 5, 2006
	- Bump minimum DBI version to 1.45 (CPAN bug #18260) (plus problems 
		in versions 1.42 and 1.44) [GSM]
	- Fix typo in Pg.pm code (CPAN bug #18537) [marc@sssonline.com]
	- Ensure begin_work is properly set before err. (CPAN bug #18387) [GSM]
	- Force PQexecParams to only run with DML. (CPAN bug #18258) [GSM]
	- Fix bytea encoding problem (CPAN bug #18264) [GSM]
	- Add documentation about connection service files (pg_service.conf). 
		[David Fetter]

1.47 March 20, 2006
	- Fix problem with selecting arrays. (CPAN bugs #18128 and 
		#18177) [GSM]
	- Fix problem with dollar-sign placeholders. [GSM]

1.46 March 16, 2006
	- Fix problem with dollar-sign placeholders. (husseinp@gmail.com)
		(CPAN bug #18209) [GSM]

1.45 February 27, 2006
	- Fix bug preventing bytea values over 20 characters from showing.
		Spotted by Igor Shevchenko. [GSM]

1.44 February 21, 2006
	- Make sure pg_warn does not warn if the database attribute
		PrintWarn is off. (Tyler MacDonald tyler@yi.org) [GSM]
	- Add SIGNATURE file for Module::Signature verification. [GSM]
	- Fix error in documentation for pg_errorlevel. 
		(CPAN bug #17434)
	- Add experimental support for using DEFAULT values inside 
		of execute with $DBDPG_DEFAULT. [GSM]
	- Return the proper SQLSTATE codes on connection failures.
		(CPAN bug #17115) [GSM]
	- Fix parser to handle leading parens. (CPAN bug #15481) [GSM]
	- Make statement handles destruction abort early if 
		InactiveDestroy is set (CPAN bug #14978) [GSM]
	- Make quote work properly for time/date types
		(CPAN bug #15082) [GSM]
	- Ensure all lo_ functions begin a transaction as needed 
		if they are the first action in a script
		(CPAN bug # 13810) [GSM]
	- Fix memory leak in dbdimp.c (k@sawada.cc) [Kenchi Sawada]
	- Fix memory leak in dbdimp.c (dmitri@karasik.eu.org)
		(CPAN bug #16054)
	- Move package declaration lines to fix RPM parser problems
		(CPAN bug #14509) [GSM]
	- Add support for dollar quoting (CPAN bug #13608) [GSM]
	- Added $dbh->{pg_default_port} method [GSM]
	- Overhaul get_info data, add many more values [GSM]
	- Overhaul type_info data (CPAN bug #13806) [GSM]
	- Rewrite some of the quoting functions, reduce dependence 
		on libpq versions [GSM]
	- Rewrite and optimize the do() method. Should be much faster 
		when called without placeholders. Thanks to Tom Lane 
		for suggesting this. [GSM]
	- Double check PQserverVersion return and use alternate 
		method if it returns 0 (CPAN bug #14302)
	- Add support for specifying type in $dbh->quote(), 
		such as $dbh->quote($var, {pg_type => DBD::Pg::PG_BYTEA})
		Also support type => SQL_xx [GSM] (CPAN bug #13942)
	- Fix pg_notifies() bug (CPAN bug #14232) [door@lcpi.ru] 
	- Add pg_ping() method [GSM]
	- Make sure ping returns true, even if in failed transaction state
		[thanks to Bill Moseley] [GSM]
	- Fix COPY-related core dump [GSM]
	- Fix strncpy bug in quote.c [Jun Kuriyama] (CPAN bug #14897)
	- Fix error in is_high_bit_set() [Alexey Tourbin] (CPAN bug #13406)

1.43 June 23, 2005
	- Added README.dev file. [GSM]
	- Fix statement-name related core dump. [GSM]
	- Ensure state() returns an empty string, not 00000 on success.
		(CPAN bug #13237) [michael.bell@web.de of OpenCA] [GSM]
	- Fix rare core dump when $sth still in scope after disconnect [GSM]
	- Enhancements to README.win32 [fenlisesi@gmail.com]
	- Fix incorrect sprintf calls (CPAN bug #12204)
		[Jakub Jelinek]
	- Fix get_info(18) ("ODBCVERSION") (CPAN bug #12968)
		[thanks to szinger@lanl.gov] [GSM]

1.42 May 21, 2005
	- Fix minor issues with copying and bytea quoting on older 
		servers. Fix some other memory leaks. [GSM]
	- Fix backslash parsing in statements (CPAN bug #12870)
		[felix.klee@inka.de] [GSM]
	- Make rollback/commit reset copy state (CPAN bug #12866)
		[imb@rentrak.com] [GSM]
	- Make sure lo_creat issues a begin if necessary [GSM]
	- Fix incorrect behavior when AutoCommit switched on. (CPAN bug #12748)
		[thanks to Vivek Khera] [GSM]
	- Have last_insert_id use set_err, not die. (CPAN bug #12503)
		[thanks to Alexandra Walford] [GSM]
	- Fixed tests to correctly handle older DBI versions reporting 
		failures on last_insert_id() (CPAN bug #12204)
		[jpo@di.uminho.pt] [GSM]
	- Re-enable REMARKS field on column_info (CPAN bug #12399)
		[thanks to morni@cpan.org] [GSM]
	- Many minor compiler optimizations and cleanups [GSM]
	- Fix two separate memory leaks in dbdimp.c 
		[hertzog@debian.org and richardg@eSentire.com]
	- Change VARCHAROID to UNKNOWNOID, suggested by users on mailing 
		list [GSM]

1.41 April 6, 2005
	- Make sure tests remove all temporary tables.
		[Frank Bax] [GSM]
	- Preserve sqlstate if rolling back on deallocate, fix 
		potential segfault. [Stephen Clouse]
	- Fix CPAN bug #12004: commit and rollback now return true
		[GSM] (thanks to ivan-dbdpg@420.am)
	- Overhaul and update COPY support; use new protocol.
		New dbh methods: pg_putline, pg_getline, pg_endcopy.
		[GSM]
	- Rewrote version detection code. Compiled version and target 
		version are now available via $dbh->{pg_lib_version} and 
		$dbh->{pg_server_version} [GSM]
	- Set our default type_id to 0, not 1043 (VARCHAR) when possible.
		Suggested by Abhijit Menon-Sen via David Wheeler. [GSM]
	- Add $dbh methods pg_savepoint(), pg_rollback_to(), and pg_release()
		[Stephen Clouse] [GSM]

1.40 Tue Feb 22 06:06:45 UTC 2005
	- Raise required DBI version to 1.38
	- Execute returns 0 (0E0) not -1 for successful DDL commands.
		[Robert Treat] [GSM]
	- Change all string lengths to use STRLEN [rink@stack.nl]
	- Added $dbh->pg_server_trace($fh) [GSM]
	- Added $dbh->{pg_errorlevel}. [GSM]
	- Fix utf8 quote() support [Dominic Mitchell <dom@semantico.com>]
	- Added explicit support for types SQL_BOOLEAN, DATE, TIME, 
		TIMESTAMP, and TIMESTAMPTZ. Return correct values for 
		DATEOID and TIMEOID. [GSM]
	- Added tablespace support for table_info and primary_key_info.
		[GSM]
	- Added new attributes to $dbh: pg_db, pg_user, pg_pass,
		pg_host, pg_port, pg_options, pg_socket, pg_pid [GSM]
	- Minor fixes in quote.c, dbdimp.c, and types.h
		[Christophe Martin: schplurtz at free.fr]
	- Added support for SQLSTATE via $dbh->state and $sth->state [GSM]
	- Major overhaul of prepare/execute to handle new server-side 
		prepare system. See Pg.pm for details. [GSM]
	- Make the tests honor the DBD_SCHEMA variable instead of 
		assuming that the "public" schema is available.
		[Rainer Weikusat]
	- dbdimp.c cleanups: better error messages, ensure commit
		is only called once after a transaction fails.
		[Alexey Slynko]
	- primary_key() returns empty list not undef if no match.
		[Julian Mehnle]
	- Added the pg_protocol database handle attribute
		[GSM]
	- Changed "noprefix" to pg_noprefix

1.32 Wed Feb 25 18:24:18 UTC 2004
	- Bug fix for memory allocation problems on win systems
		[Rafael Kitover <caelum@debian.org>]
	- Rewrote the foreign_key_info() method to handle 
		multi-column keys. [GSM]
	- Rewrote the primary_key_info() and primary_key() methods to 
		cleanly handle multi-column primary keys. Also added a "pg_onerow" 
		attribute to allow primary_key_info() to return a single 
		row containing multiple-column information. [GSM]
	- Switched commit behavior from commit->execute->begin 
		to begin->execute->commit
		[xelah-junk@xelah.com] [GSM]
	- Made the _pg_use_catalog subroutine use {private_dbgpg}.
		(CPAN bug #4841) [GSM]
	- Changed strdup to safemalloc/strcpy in dbdimp.c
		(CPAN bug #4578) [anonymous CPAN user]
	- Made the data_sources method escape the database names as needed.
		Added support for databases with spaces in their names. [GSM]
	- Added the "noprefix" attribute to prevent the tables() method 
		from prepending the schema name. [GSM]
	- Rewrote the testing suite. Many more tests are performed.
		Servers with a low client_min_messages are handled correctly. [GSM]
	- Fixed bug causing '$\d' to be picked up as a placeholder. 
		(CPAN bug #4799) [GSM]
	- pg_notifies now catches and reports when PQconsumeInput fails.
		(CPAN bug #4027) [nmueller@cs.wisc.edu]
	- Enabled the "pg_bool_tf" database handle [GSM]
	- Added required fields to the type_info() method:
		SQL_DATA_TYPE, SQL_DATETIME_SUB, and INTERVAL PRECISION [GSM]
	- Fixed bug where the table_attributes() method was incorrectly 
		removing the NULLABLE column. [GSM]
	- Fixed bug where case was not being preserved by the 
		foreign_key_info() method [GSM]
	- a fetch on any column that had a type that did not have an entry
		in the type_info array would segfault DBD::Pg. 
		(CPAN bugs #4818,4432) [Rudy Lippan]
	- Duplicate rows bug with column_info() REMARKS has been fixed. However,
		support for Postgres 7.1.x which worked briefly for 1.31 has now been
		dropped for this feature. [Mark Stosberg]
	- Bumped required Perl version to 5.6.1 in Makefile.PL. We were already
		already requiring 5.6.1 for Pg.pm since 1.31.
	- Removed extra "return" statement in quote.c to make Solaris happy
		(CPAN bug #4419) [Rudy Lippan]
	- Changed get_info(29) to return (") instead of (\")
		(CPAN bug #4829) [GSM]

1.31 Mon Nov 17 21:21:21 UTC 2003
	- $dbh->{TYPE} now returns SQL_TYPE_TIMESTAMP instead of 1114 for 
		timestamp columns. (In 1.31_x {x| x<8} $sth->{TYPE} returned 0
		but reported by ["Hirche, Joachim" <Joachim.Hirche@cimconcepts.com>]).
	- Raised required versions to Perl 5.6.1 and DBI 1.35
	- Fix syntax error related to pg_server_version (CPAN bugs #2492,2755,3121)
	- Cache multiple calls to pg_server_version.
	- Notice messages generated by the database now use the perl 
		warning mechanism instead of going to stderr.
		[Dominic Mitchell <dom@semantico.com>]
	- $dbh->prepare() rewrites the SQL statement into an internal form,
		striping out comments and whitespace, and if PostgreSQL > 7.3 takes the 
		stripped statement and passes that to Postgres' PREPARE statement, 
		then rewrites the statement as 'EXECUTE "DBD::PG::cached_query n"
		($1, $2, ... $n, $n+1)' for DBD::Pg's execute.
		-- Currently disabled until PREPARE works a little better
	- Allows the use of :n and :foo bind params. So: 
		(SELECT * FROM foo WHERE 1 = :this and 2 = :that) will now work.
	- Complains on execute when unbound bind params are submitted
		(instead of defaulting to NULL)
	- Switched over to use driver.xst.
	- pg_error() removes \n's rather than truncating the message on the first \n.
	- Fixed statement scan problem where the preparse of
		"SELECT foo[3:33] from bar" was scanning :33 as a placeholder
	- Moved the quoting of bind values out of execute() and into
		bind -- as there is no need to requote the value every time execute 
		is called.
	- :veryverylongplaceholdername == Long walk, short pier -- fixed.
	- quote() is now in C and uses same code as bind_param.
	- Quoting and dequoting now use libpq quoting functions where available
		(I still need to take the libpq functions swiped out of quote.c and move 
		it into libpqswip.c with license info &c., and switch ifndefs to ifdefs)
	- bind_param() will convert from 1,0 to TRUE/FALSE when pg_type
		is PGBOOLOID.
	- Fixed many heap buffer overruns.
	- Added support for the get_info() method [GSM]
	- Added tests for POD validation [Mark Stosberg]
	- Several improvements to column_info, including:
		- Fixed column_info so NULLABLE field shows correctly. [kevin@sysexperts.com]
		- REMARKS field works now [Mark Stosberbg]
		- COLUMN_DEF fixed
		- COLUMN_SIZE fixed
		- pg_constraint column added to display column constraints
		- additional documentation and tests added
	- make test is now more intelligent and will bail out early if
		db connection fails. [GSM]

1.22 Wed Mar 26 22:33:44 EST 2003
	- Win32 compile fix for snprintf [Joe Spears]
	- Fix memory allocation problem in bytea escaping [Barrie Slaymaker]
	- Add utf8 support [Dominic Mitchell <dom@semantico.com>]
	- Transform Perl arrays into PostgreSQL arrays [Alexey Slynko]
	- Fix for foreign_key_info() [Keith Keller]
	- Fix PG_TEXT parameter binding
	- Doc cleanups [GSM]
	- Fix warning from func($table, 'table_attributes') [GSM]
	- Added support for schemas [GSM]
	- Fix binary to a bytea field conversion [Chris Dunlop <chris@onthe.net.au>]

1.21 Sun Jan 12 21:00:44 EST 2003
	- System tables no longer returned by tables(). [Dave Rolsky]
	- Fix table_attributes to handle removal of pg_relcheck in 7.3,
		from Ian Barwick <barwick@gmx.net>
	- Properly reset transaction status after failed transaction when
		autocommit is off. Properly report transaction failure message.
		Kai <kai@xs4all.nl>
	- New pg_bool_tf database handle that when set to true booleans are
		returned as 't'/'f' rather than 1/0.

1.20 Wed Nov 27 16:19:26 2002
	- Maintenance transferred to GBorg,
		http://gborg.postgresql.org/project/dbdpg/projdisplay.php. Incremented
		version number to reflect new management. [Bruce Momjian]
	- README cleaned up. [Bruce Momjian]
	- Added t/15funct.t, a series of tests that determine if the meta data
		is working. [Thomas Lowery]
	- Added implementations of column_info() and table_info(), and
		primary_key_info(). [Thomas Lowery]
	- The POD formatting was cleaned up. [David Wheeler]
	- The preparser was updated to better handle escaped characters.
		[Rudy Lippan]
	- Removed redundant use of strlen() in pg_error() (Jason E. Stewart).
	- Test suite cleaned up, converted to use Test::More, and updated to use
		standard DBI environment variables for connecting to a test database.
		[Jason E. Stewart]
	- Added eg/lotest.pl as a demonstration of using large objects in buffers
		rather than files. Contributed by Garth Webb.
	- Added LISTEN/NOTIFY functionality. Contributed by Alex Pilosov.
	- Added constants for common PostgreSQL data types, plus simple tests to
		make sure that they work. These are exportable via 
		"use DBD::Pg qw(:pg_types);". [David Wheeler]
	- Deprecated the undocumented (and invalid) use of SQL_BINARY in
		bind_param() and documented the correct approach: "bind_param($num,
		$val { pg_type => PG_BYTEA });". Use of SQL_BINARY in bind_param() will
		now issue a warning if $h->{Warn} is true. [David Wheeler]
	- Removed invalid (and broken) support for SQL_BINARY in quote().
		[David Wheeler]
	- Added App::Info::RDBMS::PostgreSQL to the distribution (but it won't
		be installed) to help Makefile.PL find the PostgreSQL include and
		library files. [David Wheeler]
	- Fixed compile-time warnings. [David Wheeler and Jason E. Stewart]

2002-04-27 Jeffrey W. Baker <jwbaker@acm.org>
	- dbdimp.c: Add default at end of switch statement for pg_type attrib.
	- t/13pgtype.t: test for above.
	
2002-04-09 Jeffrey W. Baker <jwbaker@acm.org>
	- Pg.pm, dbdimp.c: Applied patch from
		Thomas A. Lowery <tlowery@stlowery.net> concerning metadata in
		table_info and so forth.

2002-03-06 Jeffrey W. Baker <jwbaker@acm.org>
	- Pg.pm (quote): Applied patch from David Wheeler <david@wheeler.net>
		to simplify and speed up quoting.
	- t/11quoting.t: Tests for above patch.
	- t/12placeholders.t: Tests for placeholder parsing in quoted strings.

2002-03-06 Jeffrey W. Baker
	- Version 1.10 uploaded to CPAN.
 
1.01 Jun 27, 2001
	- fixed core dump when trying to use a BYTEA value with
		a byte outside 0..127. Thanks to Alex Pilosov <alex@pilosoft.com>

1.00 May 27, 2001
	- Fetching all records now resets Active flag as it should.

0.99 May 24, 2001
	- fix the segmentation fault in pg_error.

0.98 Apr 25, 2001
	- bug fix for core-dump after any failed function call.
	- applied patch from Alex Pilosov <alex@pilosoft.com> 
		which adds support for the datatype bytea

0.97 Apr 20, 2001
	- fix bug in connect method, which erroneously set the userid
		and the password to the environment variables DBI_USER and
		DBI_PASS.
	- applied patch from Jan-Pieter Cornet <john@pc.xs4all.nl>,
		which removed the special handling of a backslash when
		used for octal presentation. Now a backslash always will
		be escaped.

0.96 Apr 09, 2001
	- remove memory-leak in ping function, bug-fix
		from Doug Perham <dperham@wgate.com>
	- correct the recognition of primary keys in 
		table_attributes(). Patch from Brian Powell <brian@nicklebys.com>.
	- applied patch from David D. Kilzer <ddkilzer@lubricants-oil.com>
		which fixes a segmentation fault in DBD::pg::blob_read() when 
		reading LOBs that required perl to reallocate space for the 
		variable holding the scalar value
	- updated test.pl to create a test blob larger than 256 bytes 
		(now 128 Kbytes)
	- apply patch from Tom Lane, which fixes a segmentation fault when
		inserting large amounts of text.
	- apply patch from Peter Haworth <pmh@edison.ioppublishing.com>,
		which removes the newlines from the error messages and which 
		quotes date placeholders.

0.95 Jul 10, 2000
	- add Win32 port from Bob Kline <bkline@rksystems.com>.

0.94 Jul 07, 2000
	- applied patch from Rudy Lippan <almighty@randomc.com>
		which fixes a memory-leak with failed connections.
	- applied patch from Hein Roehrig <hein@acm.org>
		which fixes a bug with escaping a backslash except for 
		octal presentation
	- applied patch from Francis J. Lacoste <francis.lacoste@iNsu.COM
		which fixes a segmentation fault when all bound parameters are NULL
	- adapt test.pl to avoid warnings with postgresql-7.0
	- added support for 'COPY FROM STDIN' and 'COPY TO STDOUT'
	- added patch from Mark Stosberg <mark@summersault.com>
		to enhance the table_attributes subroutine

0.93 Sep 29, 1999
	- it is required now to set the environment variables POSTGRES_INCLUDE
		and POSTGRES_LIB for compiling the module.
	- add Win32 port from Bob Kline <bkline@rksystems.com>.
	- support for all large-object functions via the func interface.
	- fixed bug with placeholders and casts spotted bymschout@gkg.net
	- replaced the method attributes by the method table_attributes,
		from Scott Williams <scott@james.com>.
	- fix type definitions for type_info_all().
		bug spotted by "carlos" <emarcet@intramed.net.ar>.
	- now the Pg-specific quote() method also evaluates the data-type parameter.

0.92 Jun 16, 1999
	- proposal from Philip Warner <pjw@rhyme.com.au>:
		increase BUFSIZE from 1024 to 32768 in order to improve I/O performance.
	- bug-fix in Makefile.PL for $POSTGRES_HOME not defined
		spotted by mdalphin@amgen.com [Mark Dalphin]
	- bug-fix for data-type datetime in type_info_all
		spotted by Alan Grover <awgrover@iconnect-inc.com>
	- bug-fix for escaped 's spotted by Hankin <hankin@consultco.com>
	- removed 'large objects' related tests from test.pl

0.91 Feb 14, 1999
	- removed restriction for commercial use in copyright
	- corrected DATA_TYPE in type_info_all()

0.90 Jan 15, 1998
	- discard parameter authtype from connect string
	- remove work-around for bug in the large object interface of postgresql

0.89 Nov 05, 1998
	- bug-fix from Jan Iven <j.iven@rz.uni-sb.de>:
		fix problem with quoting Null in bind variables.

0.88 Oct 10, 1998
	- fixed blob_read
	- suppressed warning when testing DBI::errstr

0.87 Sep 05, 1998
	- Pg.xs adapted to Driver.xst from DBI-1.0
	- major rewrite of module documentation 
	- major rewrite of the test script
	- use built-in DBI method for $dbh->do 
	- add macro dHTR in order to avoid compile errors 
		with threaded perl5.005
	- renamed attribute AutoEscape to pg_auto_escape
	- renamed attribute SIZE to pg_size
	- new attribute pg_type
	- added support for DBI->data_sources($driver)
	- added support for $dbh->table_info
	- blob_read documented and added to test.pl 
	- added support for attr parameter in bind_param()

0.86 Aug 21, 1998
	- added /usr/lib/ to search path for libpq.
	- added ChopBlanks, patch from Victor Krasinsky <victor@rdovira.lviv.ua>
	- changed test.pl to test multiple database handles

0.85 July 19, 1998
	- non-printable characters in parameters will not be converted 
		to '.'. They are passed unchanged to the database.

0.84 July 18, 1998
	- bug-fix from Max Cohan <mcohan@adnc.net>:
		check for \xxx presentation before escaping backslash in parameters.
	- introduce new database handle attribute AutoEscape, which 
		controls escaping of quotes and backslashes in parameters. 
		When set to on, all quotes except at the beginning and 
		at the end of a line will be escaped and all backslashes 
		except when used to indicate an octal presentation (\xxx) 
		will be escaped. Default of AutoEscape is on. 

0.83 July 10, 1998
	- bug-fix from Max Cohan <mcohan@adnc.net>:
		using traces together with undef in place-holders dumped core.

0.82 June 20, 1998
	- bug-fix from Matthew Lenz <matthew@nocturnal.org>:
		corrected include path in Makefile.PL .
	- added 'use strict;' to test.pl

0.81 June 13, 1998
	- bug-fix from Rolf Grossmann <grossman@securitas.net>:
		undefined parameters in an execute statement will be 
		translated from 'undef' to 'NULL'. Also every parameter 
		for bind_param() will be quoted by default (escape quote 
		and backslash). Appropriate tests have been added to test.pl. 
	- change ping method to use libpq-interface.

0.80 June 07, 1998
	- adapted to postgresql-6.4:
		the backend protocol has changed, which needs an adapted
		ping method. A ping-test has been added to the test-script.
		Also some type identifiers have changed. 

0.73 June 03, 1998
	- changed include directives in Makefile.PL from 
		archlib to installarchlib and from sitearch to
		installsitearch (Tony.Curtis@vcpc.univie.ac.at).
	- applied patch from Junio Hamano <junio@twinsun.com>
		quote method also doubles backslash.

0.72 April 20, 1998
	- applied patch from Michael J Schout <mschout@gkg.net>
		which fixed the bug with queries containing the cast operator.
	- applied patch from Irving Reid <irving@tor.securecomputing.com>
		which fixed a memory leak.

0.71 April 04, 1998
	- applied patch from Irving Reid
		<irving@tor.securecomputing.com> which fixed the
		the problem with the InactiveDestroy message.

0.70 March 28, 1998
	- linking again with the shared version of libpq 
		due to problems on several operating systems.

0.69 March 6, 1998
	- expanded the search path for include files
	- module is now linked with static libpq.a

0.68 March 3, 1998
	- return to UNIX domain sockets in test-scripts

0.67 February 21, 1998
	- remove part of Driver.xst due to compile error on some systems.

0.66 February 19, 1998
	- remove defines in Pg.h so that
		it compiles also with postgresql-6.2.1
	- changed ping method: set RaiseError=0

0.65 February 14, 1998
	- adapted to changes in DBI-0.91, so that the
		default setting for AutoCommit and PrintError is 
		again conformant to the DBI specs.

0.64 February 01, 1998
	- changed syntax of data_source (ODBC-conformant): 
		'dbi:Pg:dbname=dbname;host=host;port=port'
		!!! PLEASE ADAPT YOUR SCRIPTS !!!
	- implemented place-holders 
	- implemented ping-method
	- added support for $dbh->{RaiseError} and $dbh->{PrintError},
		note: DBI-default for PrintError is on !
	- allow commit and rollback only if AutoCommit = off
	- added documentation for $dbh->tables;
	- new method to get meta-information about a given table:
		$dbh->DBD::Pg::db::attributes($table);
	- host-parameter in test.pl is set explicitly to localhost

0.63 October 05, 1997
	- adapted to PostgreSQL-6.2:
		o $sth->rows as well as $sth->execute and $sth->do return the 
			number of affected rows even for non-Select statements.
		o support for password authorization added, 
			please check the man-page for pg_passwd. 
	- the data_source parameter of the connect 
		method accepts two additional parameters 
		which are treated as host and port:
		DBI->connect("dbi:Pg:dbname:host:port", "uid", "pwd")
		- support for AutoCommit, please read the 
		module documentation for impacts on your 
		scripts !
	- more perl-ish handling of data type bool, 
		please read the module documentation for 
		impacts on your scripts !

0.62 August 26, 1997
	- added blobs/README

0.61 August 23, 1997
	- adapted to DBI-0.89/Driver.xst
	- added support for blob_read

0.52 August 15, 1997
	- added support for literal $sth->{'TYPE'}, pg_type.pl / pg_type.pm.

0.51 August 12, 1997
	- changed attributes to be DBI conformant:
		o OID_STATUS to pg_oid_status
		o CMD_STATUS to pg_cmd_status

0.5 August 05, 1997
	- support for user authentication
	- support for bind_columns
	- added $dbh->tables

0.4 Jun 24, 1997
	- adapted to DBI-0.84:
		o new syntax for DBI->connect !
		o execute returns 0E0 -> n for SELECT statement
			-1 for non SELECT statement
			-2 on error
	- new attribute $sth->{'OID_STATUS'}
	- new attribute $sth->{'CMD_STATUS'}

0.3 Apr 24, 1997
	- bug fix release, ( still alpha ! )

0.2 Mar 13, 1997
	- complete rewrite, ( still alpha ! )

0.1 Feb 15, 1997
	- creation, ( totally pre-alpha ! )




Hosting generously
sponsored by Bytemark