Functionality added or changed:
* The time zone tables available at
http://dev.mysql.com/downloads/timezones.html have been
updated. These tables can be used on systems such as Windows or
HP-UX that do not include zoneinfo files. (Bug#40230)
Bugs fixed:
* Security Fix: During evaluation of arguments to extreme-value
functions (such as LEAST() and GREATEST()), type errors did not
propagate properly, causing the server to crash. (Bug#55826,
CVE-2010-3833)
* Security Fix: The server could crash after materializing a derived
table that required a temporary table for grouping. (Bug#55568,
CVE-2010-3834)
* Security Fix: A user-variable assignment expression that is
evaluated in a logical expression context can be precalculated in a
temporary table for GROUP BY. However, when the expression value is
used after creation of the temporary table, it was re-evaluated, not
read from the table and a server crash resulted. (Bug#55564,
CVE-2010-3835)
* Security Fix: Joins involving a table with a unique SET column could
cause a server crash. (Bug#54575, CVE-2010-3677)
* Security Fix: Pre-evaluation of LIKE predicates during view
preparation could cause a server crash. (Bug#54568, CVE-2010-3836)
* Security Fix: GROUP_CONCAT() and WITH ROLLUP together could cause a
server crash. (Bug#54476, CVE-2010-3837)
* Security Fix: Queries could cause a server crash if the GREATEST()
or LEAST() function had a mixed list of numeric and LONGBLOB
arguments, and the result of such a function was processed using an
intermediate temporary table. (Bug#54461, CVE-2010-3838)
* Security Fix: Using EXPLAIN with queries of the form SELECT
... UNION ... ORDER BY (SELECT ... WHERE ...) could cause a server
crash. (Bug#52711, CVE-2010-3682)
* InnoDB Storage Engine: Creating or dropping a table with 1023
transactions active caused an assertion failure. (Bug#49238)
* The make_binary_distribution target to make could fail on some
platforms because the lines generated were too long for the
shell. (Bug#54590)
* A client could supply data in chunks to a prepared statement
parameter other than of type TEXT or BLOB using the
mysql_stmt_send_long_data() C API function (or
COM_STMT_SEND_LONG_DATA command). This led to a crash because other
data types are not valid for long data. (Bug#54041)
* Builds of the embedded mysqld would fail due to a missing element of
the struct NET. (Bug#53908, Bug#53912)
* The definition of the MY_INIT macro in my_sys.h included an
extraneous semicolon, which could cause compilation
failure. (Bug#53906)
* If the remote server for a FEDERATED table could not be accessed,
queries for the INFORMATION_SCHEMA.TABLES table failed. (Bug#35333)
* mysqld could fail during execution when using SSL. (Bug#34236)
* Threads that were calculating the estimated number of records for a
range scan did not respond to the KILL statement. That is, if a
range join type is possible (even if not selected by the optimizer
as a join type of choice and thus not shown by EXPLAIN), the query
in the statistics state (shown by the SHOW PROCESSLIST) did not
respond to the KILL statement. (Bug#25421)
* Recent pre-releases of Python 3.2 issue ResourceWarnings about
fileshandles deallocated without being closed first. Fix testsuite.
* Current "*.pyc" and "*.pyo" cleaning is not working in a PEP 3147
world ("__pycache__"). I don't think this code is actually
necessary anymore. Deleted.
* Python 2.7.0 deprecates CObject incorrectly. See Python issue 9675.
* Testsuite for "DB->get_transactional()" should not create databases
outside the TMP directory, neither leave the files behind.
* If something happens while creating the CObject/Capsule object,
keep going, even without exporting the C API, instead of crashing.
* Support for "DB_FORCESYNC", "DB_FAILCHK", "DB_SET_REG_TIMEOUT",
"DB_TXN_BULK", "DB_HOTBACKUP_IN_PROGRESS".
* Support "DB_EVENT_REG_ALIVE", "DB_EVENT_REG_PANIC",
"DB_EVENT_REP_DUPMASTER", "DB_REPMGR_CONF_ELECTIONS",
"DB_EVENT_REP_ELECTION_FAILED", "DB_EVENT_REP_MASTER_FAILURE".
* Support for "DB_VERB_REP_ELECT", "DB_VERB_REP_LEASE", "DB_VERB_REP_MISC",
"DB_VERB_REP_MSGS", "DB_VERB_REP_SYNC", "DB_VERB_REP_SYSTEM",
"DB_VERB_REPMGR_CONNFAIL", "DB_VERB_REPMGR_MISC".
* Support for "DB_STAT_LOCK_CONF", "DB_STAT_LOCK_LOCKERS",
"DB_STAT_LOCK_OBJECTS", "DB_STAT_LOCK_PARAMS".
* Support for "DB_REP_CONF_INMEM".
* Support for "DB_TIMEOUT ".
* Support for "DB_CURSOR_BULK".
* Fixed container creation so that it honors page size in XmlContainerConfig
* Fix the base-uri of an attribute node when using WholedocContainer storage
* Fixed an assertion failure during query preparation with a recursive user
defined function
* Fixed an assertion failure when an as-yet unseen URI in used in a query
* Fixed a problem where attribute indexes would not properly be updated if
there were no element indexes present. This might have a symptom of
DB_NOTFOUND errors or duplicate index entries for attributes
* Changed the algorithm used to create node IDs during partial update to be
more efficient and create shorter node IDs in general
* Fixed a problem where deleting the XmlResults object returned by
XmlValue.getAttributes() might cause an exception when the original
XmlResults for the XmlValue object was next accessed
* XQuery Update queries will no longer crash when statistics are disabled
* Fixed a bug in document level indexing that could result in index entries
being deleted inappropriately when a node was deleted
* Fixed fn:doc() to raise an error in all cases if the document does not exist
* Fixed a bug occurring when fn:subsequence() and "order by" were used in
certain configurations
* Changed XmlResults.asEventWriter(), now only one active XmlEventWriter is
allowed for an XmlResults object
0.6.0pre2: Four configuration options have been deprecated and will
no longer be accepted by abook:
emailpos, extra_column, extra_alternative, extrapos
They have been replaced with a single more flexible option: index_format.
0.6.0pre1: The 'customfield' command has been obsoleted by a more
flexible set of commands: 'field' and 'view'.
* Fixed a leak of log file ids when a database is closed before the end of
a transaction that references it.
* Fixed a bug in page allocation where if a non-transactional update was being
done, then we release the metadata page lock too early possibly leading to
the corruption of the in-memory page list used by DB->compact.
* A log write failure on a replication master will now cause a panic since the
transaction may be committed on some clients.
* Removed the possibility that checkpoints will overlap in the log, decreasing
the time to recover.
* Fixed several bugs that could cause an update running with MVCC to get the
wrong version of a page or improperly update the metadata last page number.
* The database open code will no longer log the open and close of the master
database in a file when opening a sub database in that file.
* Fixed a bug where an error during an update to a hash database with
DB_NOOVERWRITE set could return DB_KEYEXIST rather than the correct error.
* Fixed a bug where an updater supporting DB_READ_UNCOMMITED might downgrade
its lock too soon if there was an error during the update.
* Fixed a bug that could cause the wrong page number to be on a root or
metadata page if DB->compact moved the page and the operation was later
rolled forward.
* Fixed a bug that could cause the close of a secondary index database to fail
if the transaction doing the open aborted.
* Changed SQL API library build on *nix to link with libpthreads when necessary.
* Fixed a JDBC error where building would fail on Solaris without the flag
"-D_HAVE_SQLITE_CONFIG_H".
* Fixed some bugs in log_verify when there are in-memory database logs and
subdb logs.
* Fixed a bug that would return DB_NOTFOUND while searching for an existing
item using a cursor on a non-sorted duplicate btree database.
* Fixed a JDBC bug that the configure can not deal with CPPFLAGS.
* Fixed a bug in the SQL API that would cause a constraint violation when
updating the primary key with the same value.
* Fixed a bug in the SQL BDBSQL_FILE_PER_TABLE option, to allow absolute path
names.
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE
expression.
* Fix assignment to an array slice that is before the existing range
of subscripts.
* Avoid unexpected conversion overflow in planner for very distant
date values.
* Fix pg_restore's text output for large objects (BLOBs) when
standard_conforming_strings is on.
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the
query_int type.
* Fix bug in "contrib/seg"'s GiST picksplit algorithm.
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE
expression.
* Fix assignment to an array slice that is before the existing range
of subscripts.
* Avoid unexpected conversion overflow in planner for very distant
date values.
* Fix pg_restore's text output for large objects (BLOBs) when
standard_conforming_strings is on.
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the
query_int type.
* Fix bug in "contrib/seg"'s GiST picksplit algorithm.
* More strict dependency reflect gemspec's description.
*Rails 3.0.4 (unreleased)*
* Added deprecation warning for has_and_belongs_to_many associations where the join table has
additional attributes other than the keys. Access to these attributes is removed in 3.1.
Please use has_many :through instead. [Jon Leighton]
*Rails 3.0.3 (November 16, 2010)*
* Support find by class like this: Post.where(:name => Post)
*Rails 3.0.2 (November 15, 2010)*
* Dramatic speed increase (see: http://engineering.attinteractive.com/2010/10/arel-two-point-ohhhhh-yaaaaaa/) [Aaron Patterson]
* reorder is deprecated in favor of except(:order).order(...) [Santiago Pastorino]
* except is now AR public API
Model.order('name').except(:order).order('salary')
generates:
SELECT * FROM models ORDER BY salary
[Santiago Pastorino]
* The following code:
Model.limit(10).scoping { Model.count }
now generates the following SQL:
SELECT COUNT(*) FROM models LIMIT 10
This may not return what you want. Instead, you may with to do something
like this:
Model.limit(10).scoping { Model.all.size }
[Aaron Patterson]
== 2.0.8 / 2010/02/08
* Bug Fixes
* Added set operation support
* Fixed problems with *_any / *_all methods.
== 2.0.7 (unreleased)
* Bug Fixes
* Limit members are visited
* Fixing MSSQL TOP support
== 2.0.6 12/01/2010
* Bug Fixes
* Rails 3.0.x does not like that Node is Enumerable, so removing for now.
== 2.0.5 11/30/2010
* Enhancements
* Arel::Visitors::DepthFirst can walk your AST depth first
* Arel::Nodes::Node is enumerable, depth first
* Bug fixes
* #lock will lock SELECT statements "FOR UPDATE" on mysql
* Nodes::Node#not factory method added for creating Nodes::Not nodes
* Added an As node
* Deprecations
* Support for Subclasses of core classes will be removed in ARel version
2.2.0
== 2.0.4
* Bug fixes
* Speed improvements for Range queries. Thanks Rolf Timmermans!
== 2.0.3
* Bug fixes
* Fixing Oracle support
* Added a visitor for "Class" objects
== 2.0.2
* Bug fixes
* MySQL selects from DUAL on empty FROM
* Visitor translates nil to NULL
* Visitor translates Bignum properly
== 2.0.1
* Bug fixes
== 2.0.0 / 2010-08-01
* Enhancements
* Recreate library using the Visitor pattern.
http://en.wikipedia.org/wiki/Visitor_pattern
* Before exiting walreceiver, ensure all the received WAL is fsync'd to disk
* Avoid excess fsync activity in walreceiver
* Make "ALTER TABLE" revalidate uniqueness and exclusion constraints when needed
* Fix EvalPlanQual for "UPDATE" of an inheritance tree in which the tables are
not all alike
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE expression
* Fix assignment to an array slice that is before the existing range of
subscripts
* Avoid unexpected conversion overflow in planner for very distant date values
* Fix PL/Python crash when an array contains null entries
* Remove ecpg's fixed length limit for constants defining an array dimension
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the query_int
type
* Fix bug in "contrib/seg"'s GiST picksplit algorithm
Changes in 5.0.2
----------------
Some bug fixes.
* Fix a css typo & error in cappuccino theme
* Fix#3139003 "Autocomplete doesn't insert value", report and patch by Aleksander Machniak
* Fix bad inheritance between pg83 -> pg instead of pg83 -> pg84 in the database access classes. This bug was breaking some functionnalities with 8.3
* Fix a lot of nonstandard escaped string in the database access classes
Changes in 5.0.1
----------------
Minor bug fix and update version.
* Fix#3124417 "Wrong german translation", reported by schnoesel
* Fix (officialy) a bug where non-super user roles cannot check ownership on objects
* Add forgotten Galician language to the target "all" of lang/Makefile
* Update jQuery library to current stable 1.4.4
* remove useless date from the topbar informations.
This was the only place that did PHP 5.3 complain about bad timezone configuration
(a non-PPA related warning). As it was a totaly useless information, we decide to
remove it.
Changes in 5.0
--------------
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
* Added the sqlite3_vsnprintf() interface.
* Added the SQLITE_DBSTATUS_LOOKASIDE_HIT, SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE,
and SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL options for the sqlite3_db_status()
interface.
* Added the SQLITE_OMIT_AUTORESET compile-time option.
* Added the SQLITE_DEFAULT_FOREIGN_KEYS compile-time option.
* Updates to sqlite3_stmt_readonly() so that its result is well-defined for all
prepared statements and so that it works with VACUUM.
* Added the "-heap" option to the command-line shell
* Fix a bug involving frequent changes in and out of WAL mode and VACUUM that
could (in theory) cause database corruption.
* Enhance the sqlite3_trace() mechanism so that nested SQL statements such as
might be generated by virtual tables are shown but are shown in comments and
without parameter expansion. This greatly improves tracing output when using
the FTS3/4 and/or RTREE virtual tables.
* Change the xFileControl() methods on all built-in VFSes to return
SQLITE_NOTFOUND instead of SQLITE_ERROR for an unrecognized operation code.
* The SQLite core invokes the SQLITE_FCNTL_SYNC_OMITTED file control to the VFS
in place of a call to xSync if the database has PRAGMA synchronous set to OFF.
* Fixed segfault with middleware not passing DateStyle to the client
Changes 2.3.1:
* Fixed build problem on CentOS 5.5 x86_64
Changes 2.3.0:
psycopg 2.3 aims to expose some new features introduced in PostgreSQL 9.0.
* Main new features:
- `dict` to `hstore` adapter and `hstore` to `dict` typecaster, using both
9.0 and pre-9.0 syntax.
- Two-phase commit protocol support as per DBAPI specification.
- Support for payload in notifications received from the backed.
- `namedtuple`-returning cursor.
- Query execution cancel.
Sat Jan 15 2011 version 0.99994 released
* fixed column key caching, thanks Sean Noonan for bug report
Fri Dec 24 2010 version 0.99993 released
* fixed error reporting in Database.transaction method,
thanks Shane Emmons for bug report and testing