From: Mike Bayer Date: Wed, 19 Sep 2018 18:15:18 +0000 (-0400) Subject: cherry-pick changelog from 1.2.12 X-Git-Tag: rel_1_3_0b1~75 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f8631b98eeeb336ab6e5c8521adcabb345e99524;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git cherry-pick changelog from 1.2.12 --- diff --git a/doc/build/changelog/changelog_12.rst b/doc/build/changelog/changelog_12.rst index 5cee33bcba..17e838e104 100644 --- a/doc/build/changelog/changelog_12.rst +++ b/doc/build/changelog/changelog_12.rst @@ -12,7 +12,106 @@ .. changelog:: :version: 1.2.12 - :include_notes_from: unreleased_12 + :released: September 19, 2018 + + .. change:: + :tags: bug, postgresql + :tickets: 4325 + + Fixed bug in PostgreSQL dialect where compiler keyword arguments such as + ``literal_binds=True`` were not being propagated to a DISTINCT ON + expression. + + .. change:: + :tags: bug, ext + :tickets: 4328 + + Fixed issue where :class:`.BakedQuery` did not include the specific query + class used by the :class:`.Session` as part of the cache key, leading to + incompatibilities when using custom query classes, in particular the + :class:`.ShardedQuery` which has some different argument signatures. + + .. change:: + :tags: bug, postgresql + :tickets: 4324 + + Fixed the :func:`.postgresql.array_agg` function, which is a slightly + altered version of the usual :func:`.functions.array_agg` function, to also + accept an incoming "type" argument without forcing an ARRAY around it, + essentially the same thing that was fixed for the generic function in 1.1 + in :ticket:`4107`. + + .. change:: + :tags: bug, postgresql + :tickets: 4323 + + Fixed bug in PostgreSQL ENUM reflection where a case-sensitive, quoted name + would be reported by the query including quotes, which would not match a + target column during table reflection as the quotes needed to be stripped + off. + + + .. change:: + :tags: bug, orm + + Added a check within the weakref cleanup for the :class:`.InstanceState` + object to check for the presence of the ``dict`` builtin, in an effort to + reduce error messages generated when these cleanups occur during interpreter + shutdown. Pull request courtesy Romuald Brunet. + + .. change:: + :tags: bug, orm, declarative + :tickets: 4326 + + Fixed bug where the declarative scan for attributes would receive the + expression proxy delivered by a hybrid attribute at the class level, and + not the hybrid attribute itself, when receiving the descriptor via the + ``@declared_attr`` callable on a subclass of an already-mapped class. This + would lead to an attribute that did not report itself as a hybrid when + viewed within :attr:`.Mapper.all_orm_descriptors`. + + + .. change:: + :tags: bug, orm + :tickets: 4334 + :versions: 1.3.0b1 + + Fixed bug where use of :class:`.Lateral` construct in conjunction with + :meth:`.Query.join` as well as :meth:`.Query.select_entity_from` would not + apply clause adaption to the right side of the join. "lateral" introduces + the use case of the right side of a join being correlatable. Previously, + adaptation of this clause wasn't considered. Note that in 1.2 only, + a selectable introduced by :meth:`.Query.subquery` is still not adapted + due to :ticket:`4304`; the selectable needs to be produced by the + :func:`.select` function to be the right side of the "lateral" join. + + .. change:: + :tags: bug, oracle + :tickets: 4335 + + Fixed issue for cx_Oracle 7.0 where the behavior of Oracle param.getvalue() + now returns a list, rather than a single scalar value, breaking + autoincrement logic throughout the Core and ORM. The dml_ret_array_val + compatibility flag is used for cx_Oracle 6.3 and 6.4 to establish compatible + behavior with 7.0 and forward, for cx_Oracle 6.2.1 and prior a version + number check falls back to the old logic. + + + .. change:: + :tags: bug, orm + :tickets: 4327 + + Fixed 1.2 regression caused by :ticket:`3472` where the handling of an + "updated_at" style column within the context of a post-update operation + would also occur for a row that is to be deleted following the update, + meaning both that a column with a Python-side value generator would show + the now-deleted value that was emitted for the UPDATE before the DELETE + (which was not the previous behavor), as well as that a SQL- emitted value + generator would have the attribute expired, meaning the previous value + would be unreachable due to the row having been deleted and the object + detached from the session.The "postfetch" logic that was added as part of + :ticket:`3472` is now skipped entirely for an object that ultimately is to + be deleted. .. changelog:: :version: 1.2.11 diff --git a/doc/build/changelog/unreleased_12/4323.rst b/doc/build/changelog/unreleased_12/4323.rst deleted file mode 100644 index fa9b4f5b65..0000000000 --- a/doc/build/changelog/unreleased_12/4323.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. change:: - :tags: bug, postgresql - :tickets: 4323 - - Fixed bug in PostgreSQL ENUM reflection where a case-sensitive, quoted name - would be reported by the query including quotes, which would not match a - target column during table reflection as the quotes needed to be stripped - off. - diff --git a/doc/build/changelog/unreleased_12/4324.rst b/doc/build/changelog/unreleased_12/4324.rst deleted file mode 100644 index 5f3e879038..0000000000 --- a/doc/build/changelog/unreleased_12/4324.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. change:: - :tags: bug, postgresql - :tickets: 4324 - - Fixed the :func:`.postgresql.array_agg` function, which is a slightly - altered version of the usual :func:`.functions.array_agg` function, to also - accept an incoming "type" argument without forcing an ARRAY around it, - essentially the same thing that was fixed for the generic function in 1.1 - in :ticket:`4107`. diff --git a/doc/build/changelog/unreleased_12/4325.rst b/doc/build/changelog/unreleased_12/4325.rst deleted file mode 100644 index 9d6f38ef87..0000000000 --- a/doc/build/changelog/unreleased_12/4325.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. change:: - :tags: bug, postgresql - :tickets: 4325 - - Fixed bug in PostgreSQL dialect where compiler keyword arguments such as - ``literal_binds=True`` were not being propagated to a DISTINCT ON - expression. diff --git a/doc/build/changelog/unreleased_12/4326.rst b/doc/build/changelog/unreleased_12/4326.rst deleted file mode 100644 index 12fef5b612..0000000000 --- a/doc/build/changelog/unreleased_12/4326.rst +++ /dev/null @@ -1,11 +0,0 @@ -.. change:: - :tags: bug, orm, declarative - :tickets: 4326 - - Fixed bug where the declarative scan for attributes would receive the - expression proxy delivered by a hybrid attribute at the class level, and - not the hybrid attribute itself, when receiving the descriptor via the - ``@declared_attr`` callable on a subclass of an already-mapped class. This - would lead to an attribute that did not report itself as a hybrid when - viewed within :attr:`.Mapper.all_orm_descriptors`. - diff --git a/doc/build/changelog/unreleased_12/4327.rst b/doc/build/changelog/unreleased_12/4327.rst deleted file mode 100644 index 2a10c55c83..0000000000 --- a/doc/build/changelog/unreleased_12/4327.rst +++ /dev/null @@ -1,15 +0,0 @@ -.. change:: - :tags: bug, orm - :tickets: 4327 - - Fixed 1.2 regression caused by :ticket:`3472` where the handling of an - "updated_at" style column within the context of a post-update operation - would also occur for a row that is to be deleted following the update, - meaning both that a column with a Python-side value generator would show - the now-deleted value that was emitted for the UPDATE before the DELETE - (which was not the previous behavor), as well as that a SQL- emitted value - generator would have the attribute expired, meaning the previous value - would be unreachable due to the row having been deleted and the object - detached from the session.The "postfetch" logic that was added as part of - :ticket:`3472` is now skipped entirely for an object that ultimately is to - be deleted. diff --git a/doc/build/changelog/unreleased_12/4328.rst b/doc/build/changelog/unreleased_12/4328.rst deleted file mode 100644 index fd63ce5625..0000000000 --- a/doc/build/changelog/unreleased_12/4328.rst +++ /dev/null @@ -1,8 +0,0 @@ -.. change:: - :tags: bug, ext - :tickets: 4328 - - Fixed issue where :class:`.BakedQuery` did not include the specific query - class used by the :class:`.Session` as part of the cache key, leading to - incompatibilities when using custom query classes, in particular the - :class:`.ShardedQuery` which has some different argument signatures. diff --git a/doc/build/changelog/unreleased_12/4334.rst b/doc/build/changelog/unreleased_12/4334.rst deleted file mode 100644 index 26688b180a..0000000000 --- a/doc/build/changelog/unreleased_12/4334.rst +++ /dev/null @@ -1,13 +0,0 @@ -.. change:: - :tags: bug, orm - :tickets: 4334 - :versions: 1.3.0b1 - - Fixed bug where use of :class:`.Lateral` construct in conjunction with - :meth:`.Query.join` as well as :meth:`.Query.select_entity_from` would not - apply clause adaption to the right side of the join. "lateral" introduces - the use case of the right side of a join being correlatable. Previously, - adaptation of this clause wasn't considered. Note that in 1.2 only, - a selectable introduced by :meth:`.Query.subquery` is still not adapted - due to :ticket:`4304`; the selectable needs to be produced by the - :func:`.select` function to be the right side of the "lateral" join. diff --git a/doc/build/changelog/unreleased_12/4335.rst b/doc/build/changelog/unreleased_12/4335.rst deleted file mode 100644 index ab399586c7..0000000000 --- a/doc/build/changelog/unreleased_12/4335.rst +++ /dev/null @@ -1,11 +0,0 @@ -.. change:: - :tags: bug, oracle - :tickets: 4335 - - Fixed issue for cx_Oracle 7.0 where the behavior of Oracle param.getvalue() - now returns a list, rather than a single scalar value, breaking - autoincrement logic throughout the Core and ORM. The dml_ret_array_val - compatibility flag is used for cx_Oracle 6.3 and 6.4 to establish compatible - behavior with 7.0 and forward, for cx_Oracle 6.2.1 and prior a version - number check falls back to the old logic. - diff --git a/doc/build/changelog/unreleased_12/pr472.rst b/doc/build/changelog/unreleased_12/pr472.rst deleted file mode 100644 index baa5741260..0000000000 --- a/doc/build/changelog/unreleased_12/pr472.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. change:: - :tags: bug, orm - - Added a check within the weakref cleanup for the :class:`.InstanceState` - object to check for the presence of the ``dict`` builtin, in an effort to - reduce error messages generated when these cleanups occur during interpreter - shutdown. Pull request courtesy Romuald Brunet.