From: Mike Bayer Date: Fri, 15 Nov 2013 03:02:34 +0000 (-0500) Subject: sync up the 07/08 changelogs from master X-Git-Tag: rel_0_8_4~29 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f8fe32d5b4169b738adb61416780796dd29505e7;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git sync up the 07/08 changelogs from master --- diff --git a/doc/build/changelog/changelog_07.rst b/doc/build/changelog/changelog_07.rst index c619d31df5..68e03a2e25 100644 --- a/doc/build/changelog/changelog_07.rst +++ b/doc/build/changelog/changelog_07.rst @@ -9,7 +9,7 @@ .. change:: :tags: bug, engine :tickets: 2851 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 The regexp used by the :func:`~sqlalchemy.engine.url.make_url` function now parses ipv6 addresses, e.g. surrounded by brackets. @@ -17,7 +17,7 @@ .. change:: :tags: bug, orm :tickets: 2807 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 Fixed bug where list instrumentation would fail to represent a setslice of ``[0:0]`` correctly, which in particular could occur @@ -28,7 +28,7 @@ .. change:: :tags: bug, sql :tickets: 2801 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 Fixed regression dating back to 0.7.9 whereby the name of a CTE might not be properly quoted if it was referred to in multiple FROM clauses. @@ -36,7 +36,7 @@ .. change:: :tags: mysql, bug :tickets: 2791 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 Updates to MySQL reserved words for versions 5.5, 5.6, courtesy Hanno Schlichting. @@ -44,7 +44,7 @@ .. change:: :tags: sql, bug, cte :tickets: 2783 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 Fixed bug in common table expression system where if the CTE were used only as an ``alias()`` construct, it would not render using the @@ -53,7 +53,7 @@ .. change:: :tags: bug, sql :tickets: 2784 - :versions: 0.8.3, 0.9.0 + :versions: 0.8.3, 0.9.0b1 Fixed bug in :class:`.CheckConstraint` DDL where the "quote" flag from a :class:`.Column` object would not be propagated. @@ -1444,10 +1444,10 @@ :tickets: 2361 Dialect-specific compilers now raise - CompileException for all type/statement compilation + CompileError for all type/statement compilation issues, instead of InvalidRequestError or ArgumentError. The DDL for CREATE TABLE will re-raise - CompileExceptions to include table/column information + CompileError to include table/column information for the problematic column. .. change:: @@ -1947,7 +1947,7 @@ :tickets: 1679 a "has_schema" method has been implemented - on dialect, but only works on Postgresql so far. + on dialect, but only works on Postgresql so far. Courtesy Manlio Perillo. .. change:: diff --git a/doc/build/changelog/changelog_08.rst b/doc/build/changelog/changelog_08.rst index 8aa85defe2..15c78a3dc3 100644 --- a/doc/build/changelog/changelog_08.rst +++ b/doc/build/changelog/changelog_08.rst @@ -37,7 +37,7 @@ .. change:: :tags: bug, oracle :tickets: 2853 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where Oracle table reflection using synonyms would fail if the synonym and the table were in different remote schemas. @@ -46,7 +46,7 @@ .. change:: :tags: bug, sql :tickets: 2849 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where :func:`.type_coerce` would not interpret ORM elements with a ``__clause_element__()`` method properly. @@ -54,7 +54,7 @@ .. change:: :tags: bug, sql :tickets: 2842 - :versions: 0.9.0 + :versions: 0.9.0b1 The :class:`.Enum` and :class:`.Boolean` types now bypass any custom (e.g. TypeDecorator) type in use when producing the @@ -65,7 +65,7 @@ .. change:: :tags: bug, postgresql :tickets: 2844 - :versions: 0.9.0 + :versions: 0.9.0b1 Removed a 128-character truncation from the reflection of the server default for a column; this code was original from @@ -74,7 +74,7 @@ .. change:: :tags: bug, mysql :tickets: 2721, 2839 - :versions: 0.9.0 + :versions: 0.9.0b1 The change in :ticket:`2721`, which is that the ``deferrable`` keyword of :class:`.ForeignKeyConstraint` is silently ignored on the MySQL @@ -82,7 +82,7 @@ errors on MySQL as it is not understood - the same behavior will also apply to the ``initially`` keyword. In 0.8, the keywords will remain ignored but a warning is emitted. Additionally, the ``match`` keyword - now raises a :class:`.CompileError` on 0.9 and emits a warning on 0.8; + now raises a :exc:`.CompileError` on 0.9 and emits a warning on 0.8; this keyword is not only silently ignored by MySQL but also breaks the ON UPDATE/ON DELETE options. @@ -94,7 +94,7 @@ .. change:: :tags: bug, sql :tickets: 2825 - :versions: 0.9.0 + :versions: 0.9.0b1 The ``.unique`` flag on :class:`.Index` could be produced as ``None`` if it was generated from a :class:`.Column` that didn't specify ``unique`` @@ -104,7 +104,7 @@ .. change:: :tags: feature, orm :tickets: 2836 - :versions: 0.9.0 + :versions: 0.9.0b1 Added new option to :func:`.relationship` ``distinct_target_key``. This enables the subquery eager loader strategy to apply a DISTINCT @@ -120,10 +120,14 @@ None in 0.9 (e.g. automatic by default). Thanks to Alexander Koval for help with this. + .. seealso:: + + :ref:`change_2836` + .. change:: :tags: bug, mysql :tickets: 2515 - :versions: 0.9.0 + :versions: 0.9.0b1 MySQL-connector dialect now allows options in the create_engine query string to override those defaults set up in the connect, @@ -132,7 +136,7 @@ .. change:: :tags: bug, postgresql :tickets: 2742 - :versions: 0.9.0 + :versions: 0.9.0b1 Parenthesis will be applied to a compound SQL expression as rendered in the column list of a CREATE INDEX statement. @@ -140,7 +144,7 @@ .. change:: :tags: bug, sql :tickets: 2742 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug in default compiler plus those of postgresql, mysql, and mssql to ensure that any literal SQL expression values are @@ -151,7 +155,7 @@ .. change:: :tags: bug, sql :tickets: 2815 - :versions: 0.9.0 + :versions: 0.9.0b1 A :func:`.select` that is made to refer to itself in its FROM clause, typically via in-place mutation, will raise an informative error @@ -160,7 +164,7 @@ .. change:: :tags: bug, orm :tickets: 2813 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where using an annotation such as :func:`.remote` or :func:`.foreign` on a :class:`.Column` before association with a parent @@ -178,7 +182,7 @@ .. change:: :tags: bug, postgresql :tickets: 2819 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where Postgresql version strings that had a prefix preceding the words "Postgresql" or "EnterpriseDB" would not parse. @@ -187,7 +191,7 @@ .. change:: :tags: feature, engine :tickets: 2821 - :versions: 0.9.0 + :versions: 0.9.0b1 ``repr()`` for the :class:`.URL` of an :class:`.Engine` will now conceal the password using asterisks. @@ -196,7 +200,7 @@ .. change:: :tags: bug, orm :tickets: 2818 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where :meth:`.Query.exists` failed to work correctly without any WHERE criterion. Courtesy Vladimir Magamedov. @@ -204,7 +208,7 @@ .. change:: :tags: bug, sql :tickets: 2811 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where using the ``column_reflect`` event to change the ``.key`` of the incoming :class:`.Column` would prevent primary key constraints, @@ -212,7 +216,7 @@ .. change:: :tags: feature - :versions: 0.9.0 + :versions: 0.9.0b1 Added a new flag ``system=True`` to :class:`.Column`, which marks the column as a "system" column which is automatically made present @@ -236,7 +240,7 @@ .. change:: :tags: bug, orm :tickets: 2794 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed a potential issue in an ordered sequence implementation used by the ORM to iterate mapper hierarchies; under the Jython interpreter @@ -245,7 +249,7 @@ .. change:: :tags: bug, examples - :versions: 0.9.0 + :versions: 0.9.0b1 Added "autoincrement=False" to the history table created in the versioning example, as this table shouldn't have autoinc on it @@ -253,15 +257,15 @@ .. change:: :tags: bug, sql - :versions: 0.9.0 + :versions: 0.9.0b1 - The :meth:`.Operators.notin_` operator added in 0.8 now properly + The :meth:`.ColumnOperators.notin_` operator added in 0.8 now properly produces the negation of the expression "IN" returns when used against an empty collection. .. change:: :tags: feature, examples - :versions: 0.9.0 + :versions: 0.9.0b1 Improved the examples in ``examples/generic_associations``, including that ``discriminator_on_association.py`` makes use of single table @@ -274,7 +278,7 @@ .. change:: :tags: feature, orm, declarative - :versions: 0.9.0 + :versions: 0.9.0b1 Added a convenience class decorator :func:`.as_declarative`, is a wrapper for :func:`.declarative_base` which allows an existing base @@ -283,7 +287,7 @@ .. change:: :tags: bug, orm :tickets: 2786 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug in ORM-level event registration where the "raw" or "propagate" flags could potentially be mis-configured in some @@ -292,7 +296,7 @@ .. change:: :tags: bug, orm :tickets: 2778 - :versions: 0.9.0 + :versions: 0.9.0b1 A performance fix related to the usage of the :func:`.defer` option when loading mapped entities. The function overhead of applying @@ -308,7 +312,7 @@ .. change:: :tags: bug, sqlite :tickets: 2781 - :versions: 0.9.0 + :versions: 0.9.0b1 The newly added SQLite DATETIME arguments storage_format and regexp apparently were not fully implemented correctly; while the @@ -318,7 +322,7 @@ .. change:: :tags: bug, sql, postgresql :tickets: 2780 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where the expression system relied upon the ``str()`` form of a some expressions when referring to the ``.c`` collection @@ -326,14 +330,14 @@ since the element relies on dialect-specific compilation constructs, notably the ``__getitem__()`` operator as used with a Postgresql ``ARRAY`` element. The fix also adds a new exception class - :class:`.UnsupportedCompilationError` which is raised in those cases + :exc:`.UnsupportedCompilationError` which is raised in those cases where a compiler is asked to compile something it doesn't know how to. .. change:: :tags: bug, engine, oracle :tickets: 2776 - :versions: 0.9.0 + :versions: 0.9.0b1 Dialect.initialize() is not called a second time if an :class:`.Engine` is recreated, due to a disconnect error. This fixes a particular @@ -350,10 +354,10 @@ .. change:: :tags: feature, sql - :versions: 0.9.0 + :versions: 0.9.0b1 The :func:`.update`, :func:`.insert`, and :func:`.delete` constructs - will now interpret ORM entities as target tables clauses to be operated upon, + will now interpret ORM entities as target tables to be operated upon, e.g.:: from sqlalchemy import insert, update, delete @@ -367,7 +371,7 @@ .. change:: :tags: bug, orm :tickets: 2773 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug whereby attribute history functions would fail when an object we moved from "persistent" to "pending" @@ -377,7 +381,7 @@ .. change:: :tags: bug, engine, pool :tickets: 2772 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where :class:`.QueuePool` would lose the correct checked out count if an existing pooled connection failed to reconnect @@ -390,7 +394,7 @@ .. change:: :tags: bug, mysql :tickets: 2768 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug when using multi-table UPDATE where a supplemental table is a SELECT with its own bound parameters, where the positioning @@ -400,15 +404,15 @@ .. change:: :tags: bug, sqlite :tickets: 2764 - :versions: 0.9.0 + :versions: 0.9.0b1 - Added :class:`.BIGINT` to the list of type names that can be + Added :class:`sqlalchemy.types.BIGINT` to the list of type names that can be reflected by the SQLite dialect; courtesy Russell Stuart. .. change:: :tags: feature, orm, declarative :tickets: 2761 - :versions: 0.9.0 + :versions: 0.9.0b1 ORM descriptors such as hybrid properties can now be referenced by name in a string argument used with ``order_by``, @@ -418,17 +422,17 @@ .. change:: :tags: feature, firebird :tickets: 2763 - :versions: 0.9.0 + :versions: 0.9.0b1 Added new flag ``retaining=True`` to the kinterbasdb and fdb dialects. This controls the value of the ``retaining`` flag sent to the ``commit()`` and ``rollback()`` methods of the DBAPI connection. Due to historical concerns, this flag defaults to ``True`` in 0.8.2, - however in 0.9.0 this flag defaults to ``False``. + however in 0.9.0b1 this flag defaults to ``False``. .. change:: :tags: requirements - :versions: 0.9.0 + :versions: 0.9.0b1 The Python `mock `_ library is now required in order to run the unit test suite. While part @@ -439,7 +443,7 @@ .. change:: :tags: bug, orm :tickets: 2750 - :versions: 0.9.0 + :versions: 0.9.0b1 A warning is emitted when trying to flush an object of an inherited class where the polymorphic discriminator has been assigned @@ -448,7 +452,7 @@ .. change:: :tags: bug, postgresql :tickets: 2740 - :versions: 0.9.0 + :versions: 0.9.0b1 The behavior of :func:`.extract` has been simplified on the Postgresql dialect to no longer inject a hardcoded ``::timestamp`` @@ -461,7 +465,7 @@ .. change:: :tags: bug, firebird :tickets: 2757 - :versions: 0.9.0 + :versions: 0.9.0b1 Type lookup when reflecting the Firebird types LONG and INT64 has been fixed so that LONG is treated as INTEGER, @@ -472,7 +476,7 @@ .. change:: :tags: bug, postgresql :tickets: 2766 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug in HSTORE type where keys/values that contained backslashed quotes would not be escaped correctly when @@ -482,7 +486,7 @@ .. change:: :tags: bug, postgresql :tickets: 2767 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where the order of columns in a multi-column Postgresql index would be reflected in the wrong order. @@ -491,7 +495,7 @@ .. change:: :tags: bug, sql :tickets: 2746, 2668 - :versions: 0.9.0 + :versions: 0.9.0b1 Multiple fixes to the correlation behavior of :class:`.Select` constructs, first introduced in 0.8.0: @@ -526,7 +530,7 @@ .. change:: :tags: bug, ext - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug whereby if a composite type were set up with a function instead of a class, the mutable extension @@ -547,7 +551,7 @@ .. change:: :tags: feature, postgresql - :versions: 0.9.0 + :versions: 0.9.0b1 Support for Postgresql 9.2 range types has been added. Currently, no type translation is provided, so works @@ -556,7 +560,7 @@ .. change:: :tags: bug, examples - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed an issue with the "versioning" recipe whereby a many-to-one reference could produce a meaningless version for the target, @@ -566,7 +570,7 @@ .. change:: :tags: feature, postgresql :tickets: 2072 - :versions: 0.9.0 + :versions: 0.9.0b1 Added support for "AUTOCOMMIT" isolation when using the psycopg2 DBAPI. The keyword is available via the ``isolation_level`` @@ -575,7 +579,7 @@ .. change:: :tags: bug, orm :tickets: 2759 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug in polymorphic SQL generation where multiple joined-inheritance entities against the same base class joined to each other as well @@ -584,8 +588,8 @@ .. change:: :tags: bug, engine - :pullreq: 6 - :versions: 0.9.0 + :pullreq: github:6 + :versions: 0.9.0b1 Fixed bug where the ``reset_on_return`` argument to various :class:`.Pool` implementations would not be propagated when the pool was regenerated. @@ -594,7 +598,7 @@ .. change:: :tags: bug, orm :tickets: 2754 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where sending a composite attribute into :meth:`.Query.order_by` would produce a parenthesized expression not accepted by some databases. @@ -602,7 +606,7 @@ .. change:: :tags: bug, orm :tickets: 2755 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed the interaction between composite attributes and the :func:`.aliased` function. Previously, composite attributes @@ -612,7 +616,7 @@ .. change:: :tags: bug, mysql :tickets: 2715 - :versions: 0.9.0 + :versions: 0.9.0b1 Added another conditional to the ``mysql+gaerdbms`` dialect to detect so-called "development" mode, where we should use the @@ -621,7 +625,7 @@ .. change:: :tags: feature, mysql :tickets: 2704 - :versions: 0.9.0 + :versions: 0.9.0b1 The ``mysql_length`` parameter used with :class:`.Index` can now be passed as a dictionary of column names/lengths, for use @@ -631,7 +635,7 @@ .. change:: :tags: bug, mssql :tickets: 2747 - :versions: 0.9.0 + :versions: 0.9.0b1 When querying the information schema on SQL Server 2000, removed a CAST call that was added in 0.8.1 to help with driver issues, @@ -641,7 +645,7 @@ .. change:: :tags: bug, mysql :tickets: 2721 - :versions: 0.9.0 + :versions: 0.9.0b1 The ``deferrable`` keyword argument on :class:`.ForeignKey` and :class:`.ForeignKeyConstraint` will not render the ``DEFERRABLE`` keyword @@ -653,7 +657,7 @@ .. change:: :tags: bug, ext, orm :tickets: 2730 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug where :class:`.MutableDict` didn't report a change event when ``clear()`` was called. @@ -661,7 +665,7 @@ .. change:: :tags: bug, sql :tickets: 2738 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug whereby joining a select() of a table "A" with multiple foreign key paths to a table "B", to that table "B", would fail @@ -672,7 +676,7 @@ .. change:: :tags: bug, sql, reflection :tickets: 2728 - :versions: 0.9.0 + :versions: 0.9.0b1 Fixed bug whereby using :meth:`.MetaData.reflect` across a remote schema as well as a local schema could produce wrong results @@ -681,7 +685,7 @@ .. change:: :tags: bug, sql :tickets: 2726 - :versions: 0.9.0 + :versions: 0.9.0b1 Removed the "not implemented" ``__iter__()`` call from the base :class:`.ColumnOperators` class, while this was introduced @@ -716,6 +720,7 @@ .. change:: :tags: bug, postgresql + :pullreq: github:2 :tickets: 2735 Fixed the HSTORE type to correctly encode/decode for unicode. @@ -851,7 +856,6 @@ .. change:: :tags: bug, mysql - :pullreq: 55 Fixes to support the latest cymysql DBAPI, courtesy Hajime Nakagami. @@ -913,7 +917,6 @@ .. change:: :tags: bug, mysql - :pullreq: 54 Updated a regexp to correctly extract error code on google app engine v1.7.5 and newer. Courtesy @@ -1023,7 +1026,6 @@ .. change:: :tags: bug, mssql - :pullreq: 47 Added support for additional "disconnect" messages to the pymssql dialect. Courtesy John Anderson. @@ -1047,7 +1049,6 @@ .. change:: :tags: bug, mssql :tickets: 2683 - :pullreq: 46 Fixed Py3K bug regarding "binary" types and pymssql. Courtesy Marc Abramowitz. @@ -1101,7 +1102,6 @@ .. change:: :tags: feature, mysql - :pullreq: 42 New dialect for CyMySQL added, courtesy Hajime Nakagami. @@ -1157,7 +1157,6 @@ .. change:: :tags: bug, tests :tickets: 2669 - :pullreq: 41 Fixed an import of "logging" in test_execute which was not working on some linux platforms. Also in 0.7.11. @@ -1264,7 +1263,6 @@ .. change:: :tags: feature, postgresql - :pullreq: 40 Added :meth:`.postgresql.ARRAY.Comparator.any` and :meth:`.postgresql.ARRAY.Comparator.all` @@ -1338,7 +1336,6 @@ .. change:: :tags: mssql, feature - :pullreq: 35 Added ``mssql_include`` and ``mssql_clustered`` options to :class:`.Index`, renders the ``INCLUDE`` and ``CLUSTERED`` keywords, @@ -1387,7 +1384,6 @@ .. change:: :tags: mssql, feature :tickets: 2644 - :pullreq: 32 DDL for IDENTITY columns is now supported on non-primary key columns, by establishing a @@ -1420,7 +1416,7 @@ .. change:: :tags: postgresql, bug - Fixed bug in :func:`.postgresql.array` construct whereby using it + Fixed bug in :class:`~sqlalchemy.dialects.postgresql.array()` construct whereby using it inside of an :func:`.expression.insert` construct would produce an error regarding a parameter issue in the ``self_group()`` method. @@ -1436,14 +1432,12 @@ .. change:: :tags: mysql, feature - :pullreq: 33 GAE dialect now accepts username/password arguments in the URL, courtesy Owen Nelson. .. change:: :tags: mysql, bug - :pullreq: 33 GAE dialect won't fail on None match if the error code can't be extracted from the exception throw; courtesy Owen Nelson. @@ -1574,7 +1568,7 @@ :tags: sql, bug :tickets: 2618 - The :class:`.DECIMAL` type now honors the "precision" and + The :class:`~sqlalchemy.types.DECIMAL` type now honors the "precision" and "scale" arguments when rendering DDL. .. change:: @@ -1690,7 +1684,7 @@ .. change:: :tags: engine - The "reflect=True" argument to :class:`MetaData` is deprecated. + The "reflect=True" argument to :class:`~sqlalchemy.schema.MetaData` is deprecated. Please use the :meth:`.MetaData.reflect` method. .. change:: @@ -1827,7 +1821,7 @@ :tickets: 2595 The auto-correlation feature of :func:`.select`, and - by proxy that of :class:`.orm.Query`, will not + by proxy that of :class:`.Query`, will not take effect for a SELECT statement that is being rendered directly in the FROM list of the enclosing SELECT. Correlation in SQL only applies to column @@ -1836,7 +1830,6 @@ .. change:: :tags: sqlite - :pullreq: 23 :changeset: c3addcc9ffad Added :class:`.types.NCHAR`, :class:`.types.NVARCHAR`