Program: CWE-79
Project: CVE-2011-3598
Buggy source:
phpPgAdmin History
------------------

Version 5.0
-----------

Released: 29th November 2010

Features
* Support for PostgreSQL 8.4 and 9.0
* Support for database level collation for 8.4+
* Support for schema level export
* Add ability to alter schema ownership
* Clean up domain support and improve interface
* Add support for commenting on functions
* Allow user to rename role/users and set new passwords at the same time
* Greatly enhanced Full-Text-Search capabilities (ioguix, Loomis_K)
* Overhauled Selenium Test suite to support multiple database versions
* Optimized application graphics (Limo Driver)
* Support for Column Level Privileges
* Allow users to specify a template database at database creation time
* Support killing processes  
* Add ability to create indexes concurrently
* Much better support of autovacuum configuration
* Add an admin page for table level
* Refactored autocompletion:
  * fix support for cross-schema objects 
  * support multi-field FK
  * support for pagination of values in the auto-complete list
* Allow user to logicaly group their server under custom named node in the browser tree
* New themes (Cappuccino and Gotar) and a theme switcher on the introduction page
* Auto refresh Locks page
* Auto refresh Processes page
* Link in the bottom of the page to go to top of page
* Browsing on Foreign Keys (When browsing a table, clicking on a FK value, jump to the PK row)


Bugs
* Fix problems with query tracking on overly long queries
* Ensure pg_dump paths are valid
* Fix multiple bugs about quoting and escaping database objects names with special chars
* Fix multiple bugs in the browser tree
* Fix multiple bugs on the SQL and script file import form
* One security fix about code injection
* Don't allow inserting on a table without fields
* Some fix about commenting databases
* removed deprecated functions from PHP 5.3
* Lot of code cleanup
* Many other small minor bugs found on our way
* Fix the operator property page

Translations
* Czech (Marek Cernocky)
* Greek (Adamantios Diamantidis)
* Brazillian Portuguese (Fernando Wendt)
* Galician (Adrin Chaves Fernndez)

Incompatabilities
* No longer support PHP < 5.0
* No longer support Postgres < 7.4


Version 4.2
-----------

Features
* Add Analyze to Table Level Actions (ioguix)
* Add support for multiple actions on main pages (ioguix, Robert Treat)
* Added favicon for Mozilla and a backwards compatible version for IE.
* Allow browsers to save different usernames and passwords for different servers.
* Pagination selection available for reports
* You can configure reports db, schema and table names
* Add support for creating a table using an exsting one (ioguix)
* Auto-expand a node in the tree browser if there are no other nodes (Tomasz Pala)
* Add column about fields constraints type + links in table properties page (ioguix)
* Support for built-in Full Text Search (Ivan Zolotukhin)  
* Add alter name, owner & comment on views (ioguix)
* Add column about called procedure + links to their definition in the triggers
  properties page (ioguix)
* Add Support for Enum type creation (ioguix,xzilla)
* Add alter name, owner, comment and properties for sequences (ioguix)
* Add function costing options (xzilla)
* Add alter owner & schema on function (xzilla)
* Add a popup window for the session requests history (karl, ioguix)
* Add alter table, view, sequence schema (ioguix)

Bugs
* Fix inability to assign a field type/domain of a different schema
* Can't edit a report and set its comment to empty
* Fix PHP5 Strict mode complaints 
* Fix IN/NOT IN to accept text input lists 'a','b'
* Fix bytea doesn't display as NULL when NULL
* Schema qualifing every object to avoid non wanted behaviour about users' rights
  and schema_path
* Remove shared credentials when logging out of single server, to prevent automatic re-login
* Improved SSL connection handling, fix problems with connections from older php builds 
* Fix bug with long role name truncation 
* Fix bug with DELETE FROM when dropping a row (spq)
* Fix problems when deleteing PUBLIC schema 
* Fix several bugs in aggregate support
* Improve autocompletion support
* Tighten up use of global scope variables

Translations
* utf traditional chinese (Kuo Chaoyi)
* utf simplified chinese (Kuo Chaoyi)
* Italian (Nicola Soranzo)
* Catalan (Bernat Pegueroles)
* French (ioguix)
* German (Albe Laurenz, spq)
* Japanese (Tadashi Jokagi)
* Hungarian (Sulyok Peti) 

Version 4.1.3
-------------

Bugs
* Eliminate use of $_SERVER['PHP_SELF']. This fixes a regression in 4.1.2 for 
  non-mainstream locales (including SQL_ASCII)
* Validate client supplied server against entries in config.inc.php 
* Fix undefined variable when altering a field in a table on PostgreSQL < 8.0

Version 4.1.2
-------------

Bugs
* Fix inability to assign a field type/domain of a different schema
* Fix PHP5 Strict mode complaints 
* Fix IN/NOT IN to accept text input lists 'a','b'.
* Fix bytea doesn't display as NULL when NULL
* Fix bug in view creation wizard
* Fix XSS vulnerability:
   http://www.securityfocus.com/bid/24115/
   Escape HTML special characters before using $_SERVER['PHP_SELF']

Version 4.1.1
-------------

Bugs
* Fix problem where failed update would report as duplicate update error and 
  fail to return edit screen
* Fix error when using $conf[owned_only] on 8.1 & 8.2 
* Fix error displaying schema names for parents of inherited tables
* Clean up non-standard escape warnings for PostgreSQL 8.2
* Fix improper text quoting for droping roles and aggregates
* Fix bug when dumping mixed case table names in PostgreSQL 8.2

Version 4.1
-----------

Features
* New icons by Niko <ennixo@free.fr>, from the graphics repository on pgFoundry.
* Added icons to bread crumb trail and tabs.
* Send encrypted passwords over the wire wherever possible.
* Alter sequence, nextval and setval (Guillaume)
* Auto-select 'WITHOUT OIDS' if 'default_with_oids' setting is false (Guillaume)
* Autovacuum configuration support (Robert Treat)
* Basic ROLE support (Chris Kings-Lynne, Javier Carlos)
* Add support for SSL connections (Eric Kinolik)
* Display content of pg_locks view (Javier Carlos)
* Add labels for checkboxes/radio buttons for improved usability (Guillaume)
* Display Prepared Transactions (Javier Carlos)
* Re-enable table browsing from tree icons (ioguix) 
* Add Support For IN/OUT Parameters (John Jawed)
* Add column level information into the tree browser (ioguix) 
* Promote column level interaction into its own page (ioguix) 
* Add automatic lookup of foreign key values in insert/update fields (John Jawed)
* Add ability to create/drop/alter custom aggregates (Javier Carlos)
* Add enable/disable trigger (John Jawed)
* Add global comments for databases and tablespaces  

Translations
* Catalan from Bernat 
* Romanian from Alin Vaida

Version 4.0
-----------

Features
* Slony replication support (Thanks to sponsorship from SpikeSource)
* Allow current database to be at the top
* Allow base URL of PostgreSQL documentation to be configured
* Allow variable size textarea when editing values (Juergen Weigert)
* Allow SQL script upload to parse arbitrary SQL, including multiline
  SQL statements.  Improve output to show every command as its executed
  and SELECT results.
* Add rudimentary support for PostgreSQL 8.1 and 8.2
* primary key and unique key at table creation (Andreas Huber)
* Add row|statement level options to create trigger for >= 7.4 (Robert Treat)
* Allow altering name (for >= 7.4) and owner (for >= 8.0) of a database (Bryan Encina)
* Allow login to several servers simultaneously
* Rearrange frame layout to suit multi-server support
* New browser tree with dynamically loading branches
  (Using XLoadTree2 from http://webfx.eae.net/)
* Allow language change from the intro page at any time
* Avoid getting and setting encoding queries if possible
* Avoid version query in PHP 5 / PostgreSQL 7.4+
* Avoid query for superuser status in PHP 5 / PostgreSQL 7.4+
* Put PostgreSQL 7.4+ in read only mode for pagination of results
  to avoid executing selects that have write side effects.
* Allow re-using username and password for all servers - saves re-entering
  username and password for every server in a pool.
* Make default language 'auto' indicating auto detect.  If a language is
  deliberately specifed, then that will always be used and no detection will
  occur.
* ADOdb library updated to version 4.65
  
Bugs
* Tree Icons are displayed middle instead of top
* Ensure login frame is always at top level (Russell Smith)
* Fix non-ASCII characters inserted in Unicode databases as HTML entities with
 non-UTF8 web servers (Markus Bertheau)
* Fix export to work with release candidates and beta releases as well as finals
 (Russell Smith)
* Fix port selection for local connections
* Fix timeouts on long running operations (Adrian Nida)
* Allow Multiline character and character varying editing and inserting
* Add automatic browser language selection for all languages
* Stop duplicate insert on re-POST of data
* Fix bug with exporting schema for servers < 7.3
* Fix opclasses on 7.2 and below
* Fix listing of opaque functions in 7.2
* Actually fix PHP 4.4.0's new strict references

Translations
* Japanese from Tadashi Jokagi
* Danish from Arne Eckmann
* Arabic from Zaki
* Romanian from Alin
* Afrikaans from Petri
* Polish from Rafal (utf-8 encoding)
* Slovak from Andrej
* German from Markus
* Spanish From Martin
* Hungarian from Sulyok
* Turkish from Devrim

Version 3.5.6
-------------

Bugs
* Actually fix PHP 4.4.0's new strict references

Version 3.5.5
-------------

Bugs
* Fix for PHP 4.4.0's new strict references
* Small improvement to Opera browser detection in the tree
* Fix listing of opaque functions in 7.2
* Fix listing of opclasses and functions pre 7.3

Version 3.5.4
-------------

Bugs
* Fix security hole in include() of language file:
   http://secunia.com/advisories/15941/
  Check now requires that the language filename be in the list
  of known allowed filenames.
* Fix that functions returning cstring were not being listed
* Make parsing of PostgreSQL 1-dimensional arrays correct.  Makes
  named function parameter use more reliable.
* Fix downloading of the results of multiline queries.

Version 3.5.3
-------------

Bugs
* Fix using schema enabled dump on non-schema enabled backend
* Don't try setting no timeout when in safe mode
* Reload browser after executing arbitrary SQL
* Fix browser in RTL languages
* Fix inability to drop database using the drop link
* Fix last internal oid value for PostgreSQL 8.0
* Fix (again) dumping on v8 for windows, exclude dumping some objects.

Translations
* Portuguese from Francisco

Version 3.5.2
-------------

Bugs
* Fix export to work with release candidates and beta releases as well as finals
 (Russell Smith)
* Fix port selection for local connections (Russell Smith)
* Fix timeouts on long running operations (Adrian Nida)
* Allow Multiline character and character varying editing and inserting
* Do browser language detection for all languages

Translations
* Japanese from Tadashi
* Danish from Arne

Version 3.5.1
-------------

Bugs
* Support 8.0beta5 schema tablespace changes
* Help link fixes
* Estimated row count in 7.0 and 7.1 fixes
* Priviliges nav fix
* Function privileges fix
* Search path fix
* pg_dump on win32 8.0 native fix

Translations
* Romanian from Alin
* Italian updates from Nicola

Version 3.5
-----------

Features
* Context-sensitive online help system
* Use language preferencies from browser (Markus Bertheau, Nicola Soranzo)
* Tablespace support for 8.0
* Support cancelling backend processes in 8.0
* Allow setting privileges on databases
* Allow setting schema search path in SQL window
* Allow filtering find results by object type
* Show function arguments in find results
* Support 8.0's named function arguments
* "Sticky" navigation.  phpPgAdmin will now remember while tab you are
  looking at (eg. 'Indexes') when you change which table you are viewing.
* New fast navigation bar.  A breadcrumb style navigation bar for fast
  jumping between areas.
* Much improved grant/revoke feature
* Allow creating and viewing composite types
* pg_dumpall integration.  Now you can download the entire cluster via
  phpPgAdmin.
* Show line numbers when viewing functions
* Syntax highlighting for PL/SQL, PL/PgSQL, PL/PHP, PL/Ruby, PL/Java, 
  PL/J, PL/Python and PL/Perl functions, thanks to Jacob D. Cohen's
  BSD-licensed highlighting code on rafb.net
* Add page navigation links at the bottom as well as the top of the page
  when browsing results.
* Support for 8.0's alter column type
* Support for 8.0's add columns with defaults and not null

Translations
* Romanian from Alin
* Arabic from Zaki
* Japanese from Tadashi
* Spanish from Robert & Martin
* Mongolian from Erdenemandal
* Ukrainian from Alex Rootoff
* Hebrew from jonatan
* Hungarian from Sulyok
* French from Pascal
* Afrikaans from Petri
* Turkish from Devrim
* Slovak from Andrej
* German from Markus
* Italian from Nicola
* Polish from Rafal

Bugs
* Fix that non-Auto mode import didn't work (Adrian Nida)
* Fix inability to drop constraints when using a non-english translation
* Work around MSIE's failure to handle downloads in SSL mode
* Allow insert, update, delete, references and trigger to be granted
  and revoked on views.

Version 3.4.1
-------------

Bugs
* Fix export of mixed case tables pre 7.4
* Fix table export problems pre 7.3
* Fix join clause created by view wizard for pre 7.3
* Fix reindex of mixed case indexes
* Show domains in type lists in appropriate places
* Fix for multiline CDATA parsing in XML import
* Fix missing _schema notice in reports

Version 3.4
-----------

Features
* Add CACHE and CYCLE parameters in sequence creation
* View, add, edit and delete comments on tables, views, schemas, 
  aggregates, conversions, operators, functions, types,
  opclasses, sequences and columns (Dan Boren & ChrisKL)
* Add config file option for turning off the display of comments
* Allow creating array columns in tables
* Allow adding array columns to tables
* Allow creating domains with type length and arrays
* Show domain base type and comment in domains list
* Allow import of CSV, Tabbed and XML data.  "Auto" mode chooses
  import mode based on the file extension.
* Allow upload and execution of _basic_ SQL scripts
* More admin features available: vacuum, analyze, cluster all and reindex
  (with all options) (Bryan Encina)
* Fix SQL popup window to reload when the database is changed so
  that the correct page encoding is used.
* Create view wizard (Bryan Encina)
* Allow specification of MATCH, DEFERRABLE and INITIALLY DEFERRED on
  foreign keys.
* Automatically uncheck the NULL checkbox when data is typed in the value
  field while editing data.
* Show query runtime when executing arbitrary SQL
* Allow renaming functions when backend supports it
* Views are now more like tables.  They are listed in the browser,
  you can view the virtual columns of the view and its column defaults.
  Columns in view can also be renamed and have defaults set.
* Allow viewing, dropping and creation of rules on views.
* Support for 8.0-dev ALTER COLUMN TYPE, adding of SERIAL and BIGSERIAL
  columns, adding NOT NULL columns and adding columns with defaults.

Bugs
* Fix pg_dump output for PostgreSQL 7.0.x and 7.1.x
* In 7.4 pg_dump, specify schema when dumping tables
* Fix bug in displaying array types in 7.0.x
* Fix bug where views appeared as tables in 7.0.x search results
* Fix bug where find object SQL on < 7.2 was broken
* Fix Find for domain constraints
* Fix popup SQL window so that two different phpPgAdmin instances should
  not want to use the same pop-up.
* Fix create table if you don't supply as many fields as you originally
  specified.
* Fix schema support for views

Translations
* Trad. Chinese from Chih-Hsin Lee
* Italian from Nicola
* Spanish from Martin
* Slovak from Andrej
* German from Markus
* Turkish from Devrim
* Hungarian from Sulyok
* French from Pascal
* Polish from Rafal
* Russian from Alex

Version 3.3.1
-------------

Bugs
* Fix table stats for <= 7.2

Translations
* Spanish from Martin

Version 3.3
-----------

Features
* Database dump feature, which uses pg_dump
* Large speed improvements by reducing number of database
  connections and using external style sheet.
* SQL pop-up window now defaults to the current database
* Display aggregates and operator classes
* Integration with the PostgreSQL statistics collector.  See
  table and index performance and usage information.
* Display user session defaults for PostgreSQL >= 7.3
* Rename user feature for PostgreSQL >= 7.4
* Create functions returning arrays and table types
* Allow editing Select results by oid
* Allow pagination of queries entered in the SQL box
* Allow EXPLAIN ANALYZE of SQL queries (in both SQL boxes)
* Default cursor conveniently in SQL box and Find

Bugs
* Object browser fixed for databases with no schemas
* Properly detect that reports database is missing
* Fix for alter column on PostgreSQL 7.1
* phpPgAdmin now works without '.' in the include_path
* Can now remove expire dates on user accounts
* Properties of mixed case named views work in 7.4

Translations
* Spanish from Martin Marques
* Japanese from Tadashi Jokagi
* Swedish from Stefan Malmqvist
* Slovak from Andrej Misovik
* Hungarian from Sulyok Peter
* Trad. Chinese from Chih-Hsin Lee
* Italian from Nicola Soranzo
* Afrikaans from Petri Jooste
* Turkish from Devrim Gunduz
* German from Markus Bertheau
* Czech from Libor Vanek
* Russian from Alex Khodorivsky

Version 3.2.1
-------------

Bugs
* Trailing newline problem in chinese-sim translation fixed

Translations
* French from Pascal
* Russian from Step

Version 3.2
-----------

Features
* PostgreSQL 8.0 CVS support
* Option to dump table structure, data or structure and data
* Set datestyle and extra_float_digits when dumping data
* Results of table browse, table select, view browsing and report browsing
  can now ALL be sorted by column
* Result rows of table selects can now be edited and deleted
* Extra login security to prevent logging into servers as postgres and
  no password - a VERY common newbie error.
* Cluster indexes and indexed constraints (with analyze)
* Display clustered status of indexes and indexed constraints
* Table info - shows tables that reference the table, parent tables,
  and child tables.
* Choice of operator when performing a Select
* 'Select All' feature of table selects now available on view
  selects.
* Removed any trace of MySQL support
* Show casts
* Show conversions
* Show languages
* Make table icon link to browse table
* New show_advanced option that allows the hiding or display of
  "advanced" objects such as conversions, types, operators, casts and
  languages.
* Find Object feature can now find conversions, languages, domains,
  constraints, indexes, rules and triggers.
* Better language Makefile for translators
* The SQL box now remembers your query when you click 'Back'.

Bugs
* Added legal DOCTYPE
* Allow creating foreign keys to tables not in current schema
* Always add brackets around CHECK () constraints
* Never display an index in both Indexes and Constraints
* BIGSERIAL missing from PostgreSQL 7.2
* Types lengths (eg. varchar(255)) weren't being displayed properly
  in PostgreSQL 7.0.x
* Resetting sequence on 7.1+ now restarts at 1, not 2
* Remove deprecated column default 'now' from SQL script
* Properly escape pg_ in internal queries

Translations
* Afrikaans from Petri Jooste
* Hungarian from Sulyok Pter
* German update from Markus Bertheau
* Trad. Chinese from Chih-Hsin Lee
* Hungarian from Peti 
* Spanish update from Martin Marques
* Slovak update from Andrej Misovic
* Turkish update from Devrim
* Swedish update from Stefan
* Italian update from Nicola

Version 3.1
-----------

Bug Fixes:
* Table browsing for 7.4 fixed
* Synch script for translators disabled due to bugginess.  If you want
  to use it, just comment out the warning lines from the script itself.
* Change HTML download to XHTML and make it a 100% conforming document, with DTD
* Alter XML format to allow future features

Translations:
* Trad. Chinese
* Dutch
* Spanish
* Swedish
* Turkish
* French
* Japanese

Version 3.1-rc-1
----------------

Bug Fixes
* Table browsing for != 7.3
* SQL window improvements
* Translation improvements

Version 3.1-beta-1
------------------

Features:
* Add first & last links to nav.  Double number of pages shown.
* Allow granting privileges WITH GRANT OPTION for 7.4
* Allow revoking GRANT OPTION with CASCADE option for 7.4
* Display new PostgreSQL 7.4 grant options and grantor in privileges
* Find object feature
* Support for domains in 7.3 and domain constraints and alter domain in 7.4
* Add/drop users to/from groups
* Alter (rename) triggers
* Pop-up SQL window from Mark Gibson
* Superusers can always see all databases
* Default database encoding for languages
* Convert our images to PNG format
* Allow creating tables WITHOUT OIDS
* Show boolean values as TRUE or FALSE when viewing data
* Allow renaming table and changing table owner
* Refresh feature on table browse
* Support better formatted view dumps in 7.4
* When browsing data, numeric types are aligned right
* Ability to create unique and partial indexes
* View and edit table comments
* Changed XML format significantly.  Now doesn't use field names as
  tag names, outputs column type information, and is in correct XML format!
* Save result sets as views and reports in most cases 
* Download the results of selects and reports
* Tick all box on Select feature
* Export in HTML format
* Allow listing of operators
* Add a robots.txt file to prevent search engine indexation
* Can now safely edit row based on OID.  Guards are in place against duplicate OIDs.
* Works properly if you have cookies disabled

Bug Fixes:
* Lots of NULL value in table dump fixes (XML format changed slightly)
* Boolean default values and general boolean field handling fixes
* Support zero column tables
* Correctly display the contents of bytea fields
* Consider information_schema to be a system object
* Remember fields if index creation fails
* Fix saving and loading function volatility
* Don't list domains under types
* Lots of reports fixes (titles, page reloads, etc.)
* Selecting for NULL values in Select feature

Translations:
* Italian translation update from Nicola Soranzo
* German update from Markus Bertheau
* Spanish update from Martin Marques
* Trad. Chinese update from Chih-Hsin Lee
* Russian update from Step
* Slovak update from Andrej
* Polish update from Rafal
* Swedish translation from Stefan Malqvist
* Turkish update from Devrim Gunduz
* German update from Markus Bertheau
* Traditional Chinese update from Chih-Hsin Lee
* Spanish update from Martin

Version 3.0.1
-------------

Bug Fixes
* Lots of NULL value in table dump fixes (XML format changed slightly)
* Support zero column tables
* Correctly display the contents of bytea fields
* Error in ADODB_base.php
* Fix saving and loading function volatility
* Don't list domains under types

Version 3.0
-----------

* German update from Markus Bertheau
* Russian update from Alexander Khodorivsky

Version 3.0-rc-2
----------------

* Slovak update from Andrej Misovic
* Japanese update from Tadashi Jokagi
* Added 'defaultdb' per-connection variable
  for installations where connection to template1
  is disabled.
* Removed uses of call time pass by reference,
  since it is a deprecated feature of PHP. 

Version 3.0-rc-1
----------------

* Fix drop database reload browser bug
* Look & Feel upgrade from Davey
* Value & expression on edit row
* Chinese update from Chih-Hsin Lee 
* Fixed support for functions and sequences
  containing bizarre characters

Version 3.0-beta-1
-------------------

* Cascade drop on columns and constraints
* Czech translation
* Preserve spaces when displaying data
* Greatly improved PostgreSQL 7.2, 7.1 and 7.0 support
* Italian translation
* Show database version in top bar 
* Many features useful for PostgreSQL hosting:
	- Hide reports
	- Filter for owned reports
	- Hide admin for non-super users
	- Easy for a user to change their own password
	- Enforceable minimum password length
* Switched to PEAR's HTML_TreeMenu to avoid license issue
* Function editor can handle setof functions, and all
  function properties for volatility, etc.
* Manage permissions on functions
* Massive table browsing improvements:
	- Sort ascending and descending by clicking
	  on field name
	- Trim long strings.  Use 'expand' and 'collapse' to
	  see full strings or trimmed strings.
* Revoke on objects.  Grant or revoke to multiple groups
  and users at once.
* Brazilian Portuguese translation from Angelo Rigo

Version 3.0.0-dev-4
-------------------

* Sort on a column when browsing a table
* Slovak translation
* Turkish translation
* German translation
* Reload browser after create/drop of database, schemas and tables
* Select on views
* Add foreign key constraint, with actions
* Cascade drop on all objects

Version 3.0.0-dev-3
-------------------

* French translation
* Russian translations
* Japanese translations
* Trigger definitions
* ADODB upgrade
* Allow editing of non-null unique

Version 3.0.0-dev-2
-------------------

* Language files now use an array of strings
* Almost complete Chinese translation
* Create sequence
* Create trigger
* Create index
* Add check constraint
* Lots of small fixes
* Add column

Version 3.0.0-dev-1
-------------------

* Renamed to phpPgAdmin from WebDB
* Heaps of other stuff

Version 0.6 - 24-Dec-2002
-------------------------

* Support short_tags off
* Fix browsing tables, pagination, etc.
* Fix all error handling
* Fix problems with apostrophes in database, usernames or passwords

Version 0.5 - 20-Dec-2002
-------------------------

* Initial public release
* Still many problems making it unsuitable for production.

Version 0.1 - Early 2002
------------------------

* Initial development version



Fixed version (ground truth):
phpPgAdmin History
------------------

Version 5.0
-----------

Released: 29th November 2010

Features
* Support for PostgreSQL 8.4 and 9.0
* Support for database level collation for 8.4+
* Support for schema level export
* Add ability to alter schema ownership
* Clean up domain support and improve interface
* Add support for commenting on functions
* Allow user to rename role/users and set new passwords at the same time
* Greatly enhanced Full-Text-Search capabilities (ioguix, Loomis_K)
* Overhauled Selenium Test suite to support multiple database versions
* Optimized application graphics (Limo Driver)
* Support for Column Level Privileges
* Allow users to specify a template database at database creation time
* Support killing processes  
* Add ability to create indexes concurrently
* Much better support of autovacuum configuration
* Add an admin page for table level
* Refactored autocompletion:
  * fix support for cross-schema objects 
  * support multi-field FK
  * support for pagination of values in the auto-complete list
* Allow user to logicaly group their server under custom named node in the browser tree
* New themes (Cappuccino and Gotar) and a theme switcher on the introduction page
* Auto refresh Locks page
* Auto refresh Processes page
* Link in the bottom of the page to go to top of page
* Browsing on Foreign Keys (When browsing a table, clicking on a FK value, jump to the PK row)


Bugs
* Fix problems with query tracking on overly long queries
* Ensure pg_dump paths are valid
* Fix multiple bugs about quoting and escaping database objects names with special chars
* Fix multiple bugs in the browser tree
* Fix multiple bugs on the SQL and script file import form
* Three security fix about code injection
* Don't allow inserting on a table without fields
* Some fix about commenting databases
* removed deprecated functions from PHP 5.3
* Lot of code cleanup
* Many other small minor bugs found on our way
* Fix the operator property page

Translations
* Czech (Marek Cernocky)
* Greek (Adamantios Diamantidis)
* Brazillian Portuguese (Fernando Wendt)
* Galician (Adrin Chaves Fernndez)

Incompatabilities
* No longer support PHP < 5.0
* No longer support Postgres < 7.4


Version 4.2
-----------

Features
* Add Analyze to Table Level Actions (ioguix)
* Add support for multiple actions on main pages (ioguix, Robert Treat)
* Added favicon for Mozilla and a backwards compatible version for IE.
* Allow browsers to save different usernames and passwords for different servers.
* Pagination selection available for reports
* You can configure reports db, schema and table names
* Add support for creating a table using an exsting one (ioguix)
* Auto-expand a node in the tree browser if there are no other nodes (Tomasz Pala)
* Add column about fields constraints type + links in table properties page (ioguix)
* Support for built-in Full Text Search (Ivan Zolotukhin)  
* Add alter name, owner & comment on views (ioguix)
* Add column about called procedure + links to their definition in the triggers
  properties page (ioguix)
* Add Support for Enum type creation (ioguix,xzilla)
* Add alter name, owner, comment and properties for sequences (ioguix)
* Add function costing options (xzilla)
* Add alter owner & schema on function (xzilla)
* Add a popup window for the session requests history (karl, ioguix)
* Add alter table, view, sequence schema (ioguix)

Bugs
* Fix inability to assign a field type/domain of a different schema
* Can't edit a report and set its comment to empty
* Fix PHP5 Strict mode complaints 
* Fix IN/NOT IN to accept text input lists 'a','b'
* Fix bytea doesn't display as NULL when NULL
* Schema qualifing every object to avoid non wanted behaviour about users' rights
  and schema_path
* Remove shared credentials when logging out of single server, to prevent automatic re-login
* Improved SSL connection handling, fix problems with connections from older php builds 
* Fix bug with long role name truncation 
* Fix bug with DELETE FROM when dropping a row (spq)
* Fix problems when deleteing PUBLIC schema 
* Fix several bugs in aggregate support
* Improve autocompletion support
* Tighten up use of global scope variables

Translations
* utf traditional chinese (Kuo Chaoyi)
* utf simplified chinese (Kuo Chaoyi)
* Italian (Nicola Soranzo)
* Catalan (Bernat Pegueroles)
* French (ioguix)
* German (Albe Laurenz, spq)
* Japanese (Tadashi Jokagi)
* Hungarian (Sulyok Peti) 

Version 4.1.3
-------------

Bugs
* Eliminate use of $_SERVER['PHP_SELF']. This fixes a regression in 4.1.2 for 
  non-mainstream locales (including SQL_ASCII)
* Validate client supplied server against entries in config.inc.php 
* Fix undefined variable when altering a field in a table on PostgreSQL < 8.0

Version 4.1.2
-------------

Bugs
* Fix inability to assign a field type/domain of a different schema
* Fix PHP5 Strict mode complaints 
* Fix IN/NOT IN to accept text input lists 'a','b'.
* Fix bytea doesn't display as NULL when NULL
* Fix bug in view creation wizard
* Fix XSS vulnerability:
   http://www.securityfocus.com/bid/24115/
   Escape HTML special characters before using $_SERVER['PHP_SELF']

Version 4.1.1
-------------

Bugs
* Fix problem where failed update would report as duplicate update error and 
  fail to return edit screen
* Fix error when using $conf[owned_only] on 8.1 & 8.2 
* Fix error displaying schema names for parents of inherited tables
* Clean up non-standard escape warnings for PostgreSQL 8.2
* Fix improper text quoting for droping roles and aggregates
* Fix bug when dumping mixed case table names in PostgreSQL 8.2

Version 4.1
-----------

Features
* New icons by Niko <ennixo@free.fr>, from the graphics repository on pgFoundry.
* Added icons to bread crumb trail and tabs.
* Send encrypted passwords over the wire wherever possible.
* Alter sequence, nextval and setval (Guillaume)
* Auto-select 'WITHOUT OIDS' if 'default_with_oids' setting is false (Guillaume)
* Autovacuum configuration support (Robert Treat)
* Basic ROLE support (Chris Kings-Lynne, Javier Carlos)
* Add support for SSL connections (Eric Kinolik)
* Display content of pg_locks view (Javier Carlos)
* Add labels for checkboxes/radio buttons for improved usability (Guillaume)
* Display Prepared Transactions (Javier Carlos)
* Re-enable table browsing from tree icons (ioguix) 
* Add Support For IN/OUT Parameters (John Jawed)
* Add column level information into the tree browser (ioguix) 
* Promote column level interaction into its own page (ioguix) 
* Add automatic lookup of foreign key values in insert/update fields (John Jawed)
* Add ability to create/drop/alter custom aggregates (Javier Carlos)
* Add enable/disable trigger (John Jawed)
* Add global comments for databases and tablespaces  

Translations
* Catalan from Bernat 
* Romanian from Alin Vaida

Version 4.0
-----------

Features
* Slony replication support (Thanks to sponsorship from SpikeSource)
* Allow current database to be at the top
* Allow base URL of PostgreSQL documentation to be configured
* Allow variable size textarea when editing values (Juergen Weigert)
* Allow SQL script upload to parse arbitrary SQL, including multiline
  SQL statements.  Improve output to show every command as its executed
  and SELECT results.
* Add rudimentary support for PostgreSQL 8.1 and 8.2
* primary key and unique key at table creation (Andreas Huber)
* Add row|statement level options to create trigger for >= 7.4 (Robert Treat)
* Allow altering name (for >= 7.4) and owner (for >= 8.0) of a database (Bryan Encina)
* Allow login to several servers simultaneously
* Rearrange frame layout to suit multi-server support
* New browser tree with dynamically loading branches
  (Using XLoadTree2 from http://webfx.eae.net/)
* Allow language change from the intro page at any time
* Avoid getting and setting encoding queries if possible
* Avoid version query in PHP 5 / PostgreSQL 7.4+
* Avoid query for superuser status in PHP 5 / PostgreSQL 7.4+
* Put PostgreSQL 7.4+ in read only mode for pagination of results
  to avoid executing selects that have write side effects.
* Allow re-using username and password for all servers - saves re-entering
  username and password for every server in a pool.
* Make default language 'auto' indicating auto detect.  If a language is
  deliberately specifed, then that will always be used and no detection will
  occur.
* ADOdb library updated to version 4.65
  
Bugs
* Tree Icons are displayed middle instead of top
* Ensure login frame is always at top level (Russell Smith)
* Fix non-ASCII characters inserted in Unicode databases as HTML entities with
 non-UTF8 web servers (Markus Bertheau)
* Fix export to work with release candidates and beta releases as well as finals
 (Russell Smith)
* Fix port selection for local connections
* Fix timeouts on long running operations (Adrian Nida)
* Allow Multiline character and character varying editing and inserting
* Add automatic browser language selection for all languages
* Stop duplicate insert on re-POST of data
* Fix bug with exporting schema for servers < 7.3
* Fix opclasses on 7.2 and below
* Fix listing of opaque functions in 7.2
* Actually fix PHP 4.4.0's new strict references

Translations
* Japanese from Tadashi Jokagi
* Danish from Arne Eckmann
* Arabic from Zaki
* Romanian from Alin
* Afrikaans from Petri
* Polish from Rafal (utf-8 encoding)
* Slovak from Andrej
* German from Markus
* Spanish From Martin
* Hungarian from Sulyok
* Turkish from Devrim

Version 3.5.6
-------------

Bugs
* Actually fix PHP 4.4.0's new strict references

Version 3.5.5
-------------

Bugs
* Fix for PHP 4.4.0's new strict references
* Small improvement to Opera browser detection in the tree
* Fix listing of opaque functions in 7.2
* Fix listing of opclasses and functions pre 7.3

Version 3.5.4
-------------

Bugs
* Fix security hole in include() of language file:
   http://secunia.com/advisories/15941/
  Check now requires that the language filename be in the list
  of known allowed filenames.
* Fix that functions returning cstring were not being listed
* Make parsing of PostgreSQL 1-dimensional arrays correct.  Makes
  named function parameter use more reliable.
* Fix downloading of the results of multiline queries.

Version 3.5.3
-------------

Bugs
* Fix using schema enabled dump on non-schema enabled backend
* Don't try setting no timeout when in safe mode
* Reload browser after executing arbitrary SQL
* Fix browser in RTL languages
* Fix inability to drop database using the drop link
* Fix last internal oid value for PostgreSQL 8.0
* Fix (again) dumping on v8 for windows, exclude dumping some objects.

Translations
* Portuguese from Francisco

Version 3.5.2
-------------

Bugs
* Fix export to work with release candidates and beta releases as well as finals
 (Russell Smith)
* Fix port selection for local connections (Russell Smith)
* Fix timeouts on long running operations (Adrian Nida)
* Allow Multiline character and character varying editing and inserting
* Do browser language detection for all languages

Translations
* Japanese from Tadashi
* Danish from Arne

Version 3.5.1
-------------

Bugs
* Support 8.0beta5 schema tablespace changes
* Help link fixes
* Estimated row count in 7.0 and 7.1 fixes
* Priviliges nav fix
* Function privileges fix
* Search path fix
* pg_dump on win32 8.0 native fix

Translations
* Romanian from Alin
* Italian updates from Nicola

Version 3.5
-----------

Features
* Context-sensitive online help system
* Use language preferencies from browser (Markus Bertheau, Nicola Soranzo)
* Tablespace support for 8.0
* Support cancelling backend processes in 8.0
* Allow setting privileges on databases
* Allow setting schema search path in SQL window
* Allow filtering find results by object type
* Show function arguments in find results
* Support 8.0's named function arguments
* "Sticky" navigation.  phpPgAdmin will now remember while tab you are
  looking at (eg. 'Indexes') when you change which table you are viewing.
* New fast navigation bar.  A breadcrumb style navigation bar for fast
  jumping between areas.
* Much improved grant/revoke feature
* Allow creating and viewing composite types
* pg_dumpall integration.  Now you can download the entire cluster via
  phpPgAdmin.
* Show line numbers when viewing functions
* Syntax highlighting for PL/SQL, PL/PgSQL, PL/PHP, PL/Ruby, PL/Java, 
  PL/J, PL/Python and PL/Perl functions, thanks to Jacob D. Cohen's
  BSD-licensed highlighting code on rafb.net
* Add page navigation links at the bottom as well as the top of the page
  when browsing results.
* Support for 8.0's alter column type
* Support for 8.0's add columns with defaults and not null

Translations
* Romanian from Alin
* Arabic from Zaki
* Japanese from Tadashi
* Spanish from Robert & Martin
* Mongolian from Erdenemandal
* Ukrainian from Alex Rootoff
* Hebrew from jonatan
* Hungarian from Sulyok
* French from Pascal
* Afrikaans from Petri
* Turkish from Devrim
* Slovak from Andrej
* German from Markus
* Italian from Nicola
* Polish from Rafal

Bugs
* Fix that non-Auto mode import didn't work (Adrian Nida)
* Fix inability to drop constraints when using a non-english translation
* Work around MSIE's failure to handle downloads in SSL mode
* Allow insert, update, delete, references and trigger to be granted
  and revoked on views.

Version 3.4.1
-------------

Bugs
* Fix export of mixed case tables pre 7.4
* Fix table export problems pre 7.3
* Fix join clause created by view wizard for pre 7.3
* Fix reindex of mixed case indexes
* Show domains in type lists in appropriate places
* Fix for multiline CDATA parsing in XML import
* Fix missing _schema notice in reports

Version 3.4
-----------

Features
* Add CACHE and CYCLE parameters in sequence creation
* View, add, edit and delete comments on tables, views, schemas, 
  aggregates, conversions, operators, functions, types,
  opclasses, sequences and columns (Dan Boren & ChrisKL)
* Add config file option for turning off the display of comments
* Allow creating array columns in tables
* Allow adding array columns to tables
* Allow creating domains with type length and arrays
* Show domain base type and comment in domains list
* Allow import of CSV, Tabbed and XML data.  "Auto" mode chooses
  import mode based on the file extension.
* Allow upload and execution of _basic_ SQL scripts
* More admin features available: vacuum, analyze, cluster all and reindex
  (with all options) (Bryan Encina)
* Fix SQL popup window to reload when the database is changed so
  that the correct page encoding is used.
* Create view wizard (Bryan Encina)
* Allow specification of MATCH, DEFERRABLE and INITIALLY DEFERRED on
  foreign keys.
* Automatically uncheck the NULL checkbox when data is typed in the value
  field while editing data.
* Show query runtime when executing arbitrary SQL
* Allow renaming functions when backend supports it
* Views are now more like tables.  They are listed in the browser,
  you can view the virtual columns of the view and its column defaults.
  Columns in view can also be renamed and have defaults set.
* Allow viewing, dropping and creation of rules on views.
* Support for 8.0-dev ALTER COLUMN TYPE, adding of SERIAL and BIGSERIAL
  columns, adding NOT NULL columns and adding columns with defaults.

Bugs
* Fix pg_dump output for PostgreSQL 7.0.x and 7.1.x
* In 7.4 pg_dump, specify schema when dumping tables
* Fix bug in displaying array types in 7.0.x
* Fix bug where views appeared as tables in 7.0.x search results
* Fix bug where find object SQL on < 7.2 was broken
* Fix Find for domain constraints
* Fix popup SQL window so that two different phpPgAdmin instances should
  not want to use the same pop-up.
* Fix create table if you don't supply as many fields as you originally
  specified.
* Fix schema support for views

Translations
* Trad. Chinese from Chih-Hsin Lee
* Italian from Nicola
* Spanish from Martin
* Slovak from Andrej
* German from Markus
* Turkish from Devrim
* Hungarian from Sulyok
* French from Pascal
* Polish from Rafal
* Russian from Alex

Version 3.3.1
-------------

Bugs
* Fix table stats for <= 7.2

Translations
* Spanish from Martin

Version 3.3
-----------

Features
* Database dump feature, which uses pg_dump
* Large speed improvements by reducing number of database
  connections and using external style sheet.
* SQL pop-up window now defaults to the current database
* Display aggregates and operator classes
* Integration with the PostgreSQL statistics collector.  See
  table and index performance and usage information.
* Display user session defaults for PostgreSQL >= 7.3
* Rename user feature for PostgreSQL >= 7.4
* Create functions returning arrays and table types
* Allow editing Select results by oid
* Allow pagination of queries entered in the SQL box
* Allow EXPLAIN ANALYZE of SQL queries (in both SQL boxes)
* Default cursor conveniently in SQL box and Find

Bugs
* Object browser fixed for databases with no schemas
* Properly detect that reports database is missing
* Fix for alter column on PostgreSQL 7.1
* phpPgAdmin now works without '.' in the include_path
* Can now remove expire dates on user accounts
* Properties of mixed case named views work in 7.4

Translations
* Spanish from Martin Marques
* Japanese from Tadashi Jokagi
* Swedish from Stefan Malmqvist
* Slovak from Andrej Misovik
* Hungarian from Sulyok Peter
* Trad. Chinese from Chih-Hsin Lee
* Italian from Nicola Soranzo
* Afrikaans from Petri Jooste
* Turkish from Devrim Gunduz
* German from Markus Bertheau
* Czech from Libor Vanek
* Russian from Alex Khodorivsky

Version 3.2.1
-------------

Bugs
* Trailing newline problem in chinese-sim translation fixed

Translations
* French from Pascal
* Russian from Step

Version 3.2
-----------

Features
* PostgreSQL 8.0 CVS support
* Option to dump table structure, data or structure and data
* Set datestyle and extra_float_digits when dumping data
* Results of table browse, table select, view browsing and report browsing
  can now ALL be sorted by column
* Result rows of table selects can now be edited and deleted
* Extra login security to prevent logging into servers as postgres and
  no password - a VERY common newbie error.
* Cluster indexes and indexed constraints (with analyze)
* Display clustered status of indexes and indexed constraints
* Table info - shows tables that reference the table, parent tables,
  and child tables.
* Choice of operator when performing a Select
* 'Select All' feature of table selects now available on view
  selects.
* Removed any trace of MySQL support
* Show casts
* Show conversions
* Show languages
* Make table icon link to browse table
* New show_advanced option that allows the hiding or display of
  "advanced" objects such as conversions, types, operators, casts and
  languages.
* Find Object feature can now find conversions, languages, domains,
  constraints, indexes, rules and triggers.
* Better language Makefile for translators
* The SQL box now remembers your query when you click 'Back'.

Bugs
* Added legal DOCTYPE
* Allow creating foreign keys to tables not in current schema
* Always add brackets around CHECK () constraints
* Never display an index in both Indexes and Constraints
* BIGSERIAL missing from PostgreSQL 7.2
* Types lengths (eg. varchar(255)) weren't being displayed properly
  in PostgreSQL 7.0.x
* Resetting sequence on 7.1+ now restarts at 1, not 2
* Remove deprecated column default 'now' from SQL script
* Properly escape pg_ in internal queries

Translations
* Afrikaans from Petri Jooste
* Hungarian from Sulyok Pter
* German update from Markus Bertheau
* Trad. Chinese from Chih-Hsin Lee
* Hungarian from Peti 
* Spanish update from Martin Marques
* Slovak update from Andrej Misovic
* Turkish update from Devrim
* Swedish update from Stefan
* Italian update from Nicola

Version 3.1
-----------

Bug Fixes:
* Table browsing for 7.4 fixed
* Synch script for translators disabled due to bugginess.  If you want
  to use it, just comment out the warning lines from the script itself.
* Change HTML download to XHTML and make it a 100% conforming document, with DTD
* Alter XML format to allow future features

Translations:
* Trad. Chinese
* Dutch
* Spanish
* Swedish
* Turkish
* French
* Japanese

Version 3.1-rc-1
----------------

Bug Fixes
* Table browsing for != 7.3
* SQL window improvements
* Translation improvements

Version 3.1-beta-1
------------------

Features:
* Add first & last links to nav.  Double number of pages shown.
* Allow granting privileges WITH GRANT OPTION for 7.4
* Allow revoking GRANT OPTION with CASCADE option for 7.4
* Display new PostgreSQL 7.4 grant options and grantor in privileges
* Find object feature
* Support for domains in 7.3 and domain constraints and alter domain in 7.4
* Add/drop users to/from groups
* Alter (rename) triggers
* Pop-up SQL window from Mark Gibson
* Superusers can always see all databases
* Default database encoding for languages
* Convert our images to PNG format
* Allow creating tables WITHOUT OIDS
* Show boolean values as TRUE or FALSE when viewing data
* Allow renaming table and changing table owner
* Refresh feature on table browse
* Support better formatted view dumps in 7.4
* When browsing data, numeric types are aligned right
* Ability to create unique and partial indexes
* View and edit table comments
* Changed XML format significantly.  Now doesn't use field names as
  tag names, outputs column type information, and is in correct XML format!
* Save result sets as views and reports in most cases 
* Download the results of selects and reports
* Tick all box on Select feature
* Export in HTML format
* Allow listing of operators
* Add a robots.txt file to prevent search engine indexation
* Can now safely edit row based on OID.  Guards are in place against duplicate OIDs.
* Works properly if you have cookies disabled

Bug Fixes:
* Lots of NULL value in table dump fixes (XML format changed slightly)
* Boolean default values and general boolean field handling fixes
* Support zero column tables
* Correctly display the contents of bytea fields
* Consider information_schema to be a system object
* Remember fields if index creation fails
* Fix saving and loading function volatility
* Don't list domains under types
* Lots of reports fixes (titles, page reloads, etc.)
* Selecting for NULL values in Select feature

Translations:
* Italian translation update from Nicola Soranzo
* German update from Markus Bertheau
* Spanish update from Martin Marques
* Trad. Chinese update from Chih-Hsin Lee
* Russian update from Step
* Slovak update from Andrej
* Polish update from Rafal
* Swedish translation from Stefan Malqvist
* Turkish update from Devrim Gunduz
* German update from Markus Bertheau
* Traditional Chinese update from Chih-Hsin Lee
* Spanish update from Martin

Version 3.0.1
-------------

Bug Fixes
* Lots of NULL value in table dump fixes (XML format changed slightly)
* Support zero column tables
* Correctly display the contents of bytea fields
* Error in ADODB_base.php
* Fix saving and loading function volatility
* Don't list domains under types

Version 3.0
-----------

* German update from Markus Bertheau
* Russian update from Alexander Khodorivsky

Version 3.0-rc-2
----------------

* Slovak update from Andrej Misovic
* Japanese update from Tadashi Jokagi
* Added 'defaultdb' per-connection variable
  for installations where connection to template1
  is disabled.
* Removed uses of call time pass by reference,
  since it is a deprecated feature of PHP. 

Version 3.0-rc-1
----------------

* Fix drop database reload browser bug
* Look & Feel upgrade from Davey
* Value & expression on edit row
* Chinese update from Chih-Hsin Lee 
* Fixed support for functions and sequences
  containing bizarre characters

Version 3.0-beta-1
-------------------

* Cascade drop on columns and constraints
* Czech translation
* Preserve spaces when displaying data
* Greatly improved PostgreSQL 7.2, 7.1 and 7.0 support
* Italian translation
* Show database version in top bar 
* Many features useful for PostgreSQL hosting:
	- Hide reports
	- Filter for owned reports
	- Hide admin for non-super users
	- Easy for a user to change their own password
	- Enforceable minimum password length
* Switched to PEAR's HTML_TreeMenu to avoid license issue
* Function editor can handle setof functions, and all
  function properties for volatility, etc.
* Manage permissions on functions
* Massive table browsing improvements:
	- Sort ascending and descending by clicking
	  on field name
	- Trim long strings.  Use 'expand' and 'collapse' to
	  see full strings or trimmed strings.
* Revoke on objects.  Grant or revoke to multiple groups
  and users at once.
* Brazilian Portuguese translation from Angelo Rigo

Version 3.0.0-dev-4
-------------------

* Sort on a column when browsing a table
* Slovak translation
* Turkish translation
* German translation
* Reload browser after create/drop of database, schemas and tables
* Select on views
* Add foreign key constraint, with actions
* Cascade drop on all objects

Version 3.0.0-dev-3
-------------------

* French translation
* Russian translations
* Japanese translations
* Trigger definitions
* ADODB upgrade
* Allow editing of non-null unique

Version 3.0.0-dev-2
-------------------

* Language files now use an array of strings
* Almost complete Chinese translation
* Create sequence
* Create trigger
* Create index
* Add check constraint
* Lots of small fixes
* Add column

Version 3.0.0-dev-1
-------------------

* Renamed to phpPgAdmin from WebDB
* Heaps of other stuff

Version 0.6 - 24-Dec-2002
-------------------------

* Support short_tags off
* Fix browsing tables, pagination, etc.
* Fix all error handling
* Fix problems with apostrophes in database, usernames or passwords

Version 0.5 - 20-Dec-2002
-------------------------

* Initial public release
* Still many problems making it unsuitable for production.

Version 0.1 - Early 2002
------------------------

* Initial development version