Here is the long-awaited 6.3 features list.  Please send any comments to
me, or a diff if you want to majorly re-order the items.  There are just
too many for me to order meaningfully.  I even spellchecked it.

Any items I forgot, please let me know.  This is taken from the cvs
logs, and it sorted cronologically be category.

At 150, this is the largest number of items on any release ever.  I have
marked subselects with a big <NOT DONE YET> to take the heat off of
Vadim.

This list is so big, maybe we need to distribute it in a PostgreSQL
table :-)

---------------------------------------------------------------------------


CHANGES IN THE 6.3 RELEASE
--------------------------

Developers who have claimed items are:
-------------------------------------
	* Bruce is Bruce Momjian<maillist@candle.pha.pa.us>
	* Bryan is Bryan Henderson<bryanh@giraffe.netgate.net>
	* D'Arcy is D'Arcy J.M. Cain is darcy@druid.net
	* Dan is Dan McGuirk <mcguirk@indirect.com>
	* Darren is Darren King <darrenk@insightdist.com>
	* Goran is Goran Thyni is goran@bildbasen.se
	* Henry is Henry B. Hotz is hotz@jpl.nasa.gov
	* Igor is Igor <igor@sba.miami.edu>
	* Jan is Jan Wieck <wieck@sapserv.debis.de>
	* Jun is Jun Kuwamura <juk@rccm.co.jp>
 	* Martin is Martin S. Utesch <utesch@aut.tu-freiberg.de>
 	* Marc is Marc Fournier <scrappy@hub.org>
	* Paul is Paul M. Aoki <aoki@CS.Berkeley.EDU>
	* Patrick is Patrick van Kleef <pvk@pobox.com>
	* Peter is Peter T Mount <psqlhack@maidast.demon.co.uk>
	* Tatsuo is Tatsuo Ishii <t-ishii@sra.co.jp>
	* Thomas is Thomas Lockhart <tgl@mythos.jpl.nasa.gov>
	* Todd is Todd Brandys is <brandys@eng3.hep.uiuc.edu>
	* Vadim is "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
	* Vivek is Vivek Khera <khera@kci.kciLink.com>

Bug Fixes
---------
Fix binary cursors broken by MOVE implementation(Vadim)
Fix for tcl library crash(Jan)
Fix for array handling, from Gerhard Hintermayer
Fix acl error, and remove duplicate pqtrace(Bruce)
Fix \e for empty file(Bruce)
Fix for textcat on varchar() fields(Bruce)
Fix for DBT Sendproc (Zeugswetter Andres)
Fix vacuum analyze syntax problem(Bruce)
Fix for international identifiers(Tatsuo)
Fix aggregates on inherited tables(Bruce)
Fix substr() for out-of-bounds data
Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
Fix notty output to show status result.  -q option still turns it off(Bruce)
Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
Fix cluster(Bruce)
Fix for PQtrace start/stop several times(Bruce)
Fix a variety of locking problems like newer lock waiters getting
	lock before older waiters, and having readlock people not share
	locks if a writer is waiting for a lock, and waiting writers not
	getting priority over waiting readers(Bruce)
Fix crashes in psql when executing queries from external files, 
	James Hughes <jamesh@interpath.com>
Fix problem with multiple order by columns, with the first one having
	NULL values, Jeroen van Vianen <jeroenv@design.nl>


Enhancements
------------
Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, 
	CURRENT_USER(Thomas)
Add syntax for primary and foreign keys(Thomas)
<NOT DONE YET> Subselects with EXISTS, IN, ALL, ANY keywords (Vadim, Bruce, Thomas)
Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
Add SQL92 reserved words for primary and foreign keys(Thomas)
Allow true/false, yes/no, 1/0. Throw elog warning if anything else(Thomas)
Allow shorter strings, so "t", "tr", "tru" and "true" match "true".
Add conversions for int2 and int4, oid to and from text(Thomas)
Use shared lock when building indices(Vadim)
Free memory allocated for an user query inside transaction block after
	this query is done, was turned off in <= 6.2.1(Vadim)
New CREATE PROCEDURAL LANGUAGE (Jan)
Add support for SQL92 delimited identifiers(Thomas)
Add support for SQL3 IS TRUE and IS FALSE(Thomas)
Augment support for SQL92 SET TIME ZONE...(Thomas)
Generate error on large integer(Bruce)
Add initial backend support for SET/SHOW/RESET TIME ZONE uses TZ
	environment variable(Thomas)
Support SQL92 delimited identifiers by checking some attribute names
	for mixed-case and surrounding with double quotes(Thomas)
Rename pg_dump -H option to -h(Bruce)
Add java passwords, European dates,from Peter T Mount
Use indexes for LIKE and ~, !~ operations(Bruce)
Time Travel removed(Vadim, Bruce)
Add paging for \d and \z, and fix \i(Bruce)
Update of contrib stuff(Massimo)
Add Unix domain socket support(Goran)
Support alternate database locations(Thomas)
Implement CREATE DATABASE/WITH LOCATION(Thomas)
Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
Allow more SQL and/or Postgres reserved words as column identifiers(Thomas)
Enable SET value = DEFAULT by passing null parameter to parsers(Thomas)
Enable SET TIME ZONE using TZ environment variable(Thomas)
Add PGTZ environment variable to initialization code(Thomas)
Add PGDATESTYLE environment variable(Thomas)
Regression tests can now run with "setenv PGTZ PST8PDT"(Thomas)
Add pg_description table for info on tables, columns, operators, types, and
	aggregates(Bruce)
Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
Add other initialization environment variables: PGCOSTHEAP, PGCOSTINDEX,
	PGRPLANS, PGGEQO(Thomas)
Remove 16 char limit on system table/index names.  Rename system indexes(Bruce)
Add UNION capability(Bruce)
Support SQL92 syntax for type coercion of strings, "DATETIME 'now' (Thomas)
Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
Check valid numeric input more carefully for delta times(Thomas)
Implement day of year as possible input to datetime_part()(Thomas)
Remove archive stuff(Bruce)
Add SQL92-compliant syntax for constraints(Thomas)
Implement PRIMARY KEY and UNIQUE clauses using indices(Thomas)
Allow NOT NULL UNIQUE syntax (both were allowed individually before)(Thomas)
Allow Postgres-style casting ("::") of non-constants(Thomas)
Add 'GERMAN' option to DateStyle(Thomas)
Specify hash table support functions for float8 and int4 rather than using
	btree support functions(Thomas)
Allow for a pg_password authentication database that is separate from
	the system password file(Todd)
Dump ACLs, GRANT, REVOKE permissions, Matt(maycock@intelliquest.com)
Allow logging of output to syslog or /tmp/postgres.log(Thomas)
Allow multiple-argument functions in constraint clauses
Define text, varchar, and bpchar string length functions(Thomas)
Enable timespan_finite() and text_timespan() routines (Thomas)
Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
Enabled by DateStyle = USE_ISO_DATES(Thomas)
Fix Query handling for inheritance, and cost computations(Bruce)
Implement CREATE TABLE ... AS SELECT(Thomas)
Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
Add UNIONs(Bruce)
Change precedence for boolean operators to match expected behavior(Thomas)
Show NOT NULL and DEFAULT in psql \d table(Bruce)
Allow varchar() to only store needed bytes on disk(Bruce)
Add UNION, GROUP, DISTINCT to INSERT(Bruce)
Fix for BLOBs(Peter)
Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
Allow installation data block size and max tuple size configuration(Darren)
Remove unused "option" from PQconnectdb()
DBD::Pg can connect to unix sockets(Goran)
New PostgreSQL PL interface(Jan)
New LOCK command and lock manual page describing deadlocks(Bruce)
Allow \z to show sequences(Bruce)
New psql .psqlrc file startup(Andrew)
New types for IP and MAC addresses in /contrib, Tom I Helbekkmo
	<tih@Hamartun.Priv.NO>
New python interface (PyGreSQL 2.0)(D'Arcy)
New protocol has a version number, network byte order, pg_hba.conf
	enhanced and documented, many cleanups, Phil Thompson
	<phil@river-bank.demon.co.uk>
Real deadlock detection, no more timeouts(Bruce)


Source Tree Changes
-------------------
Add new html development tools, and flow chart in /tools/backend
Fix for SCO compiles
Stratus computer port "Gillies, Robert" <GilliesR@Nichols.com>
Added support for shlib for BSD44_derived & i386_solaris
Make configure more automated, (Brook Milligan)
Add script to check regression tests
Break parser functions into smaller files, group together(Bruce)
Rename heap_create to heap_create_and_catalog, rename heap_creatr
	to heap_create()(Bruce)
Spark/Linux patch for locking, (Tom Szybist)
Remove PORTNAME and reorganize port-specific stuff(Marc)
Add optimizer README file(Bruce)
Remove some recursion in optimizer and clean up some code there(Bruce)
Fix for NetBSD locking(Henry)
Fix for libptcl make(Tatsuo)
AIX patch(Darren)
Change IS TRUE, IS FALSE, etc. to expressions using "=" rather than
	function calls to istrue() or isfalse() to allow optimization(Thomas)
Various fixes NetBSD/sparc related, Tom I Helbekkmo <tih@Hamartun.Priv.NO>
New alpha linux locking from Travis Melhiser <melhiser@viper.co.union.nc.us>
More alphal/linux s_lock changes, Ryan Kirkpatrick <rkirkpat@nag.cs.colorado.edu>
Change elog(WARN) to elog(ERROR)
Short little FAQ for FreeBSD(Marc)
Bring in the PostODBC source tree as part of our standard distribution(Marc)
A minor patch for HP/UX 10 vs 9(Stan)
New pg_attribute.atttypmod for type-specific information like varchar
	length(Bruce)
Unixware patches, Billy G. Allie <Bill.Allie@mug.org>
New i386 'lock' for spin lock asm, Billy G. Allie <Bill.Allie@mug.org>
Support for multiplexed backends is removed
Start an OpenBSD port
Start an AUX port
Start an Cygnus port

-- 
Bruce Momjian
maillist@candle.pha.pa.us

Wed, 28 Jan 1998 23:58:15 -0500 (EST)
Bruce Momjian <maillist@candle.pha.pa.us>
6.3 CHANGES list