pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/databases/py-sqlalchemy py-sqlalchemy: updated to 1.3.5

branches:  trunk
changeset: 335970:b38bfd967279
user:      adam <>
date:      Wed Jul 03 20:19:11 2019 +0000

py-sqlalchemy: updated to 1.3.5



[orm] [bug]
Fixed a series of related bugs regarding joined table inheritance more than two levels deep, in conjunction with modification to primary key values, where those primary key columns are also linked 
together in a foreign key relationship as is typical for joined table inheritance. The intermediary table in a three-level inheritance hierachy will now get its UPDATE if only the primary key value 
has changed and passive_updates=False (e.g. foreign key constraints not being enforced), whereas before it would be skipped; similarly, with passive_updates=True (e.g. ON UPDATE CASCADE in effect), 
the third-level table will not receive an UPDATE statement as was the case earlier which would fail since CASCADE already modified it. In a related issue, a relationship linked to a three-level 
inheritance hierarchy on the primary key of an intermediary table of a joined-inheritance hierarchy will also correctly have its foreign key column updated when the parent object?s primary key is 
modified, even if that parent object is a subclass of the linked parent class, whereas before these classes would not be counted.

[orm] [bug]
Fixed bug where the Mapper.all_orm_descriptors accessor would return an entry for the Mapper itself under the declarative __mapper___ key, when this is not a descriptor. The .is_attribute flag that?s 
present on all InspectionAttr objects is now consulted, which has also been modified to be True for an association proxy, as it was erroneously set to False for this object.

[orm] [bug]
Fixed regression in Query.join() where the aliased=True flag would not properly apply clause adaptation to filter criteria, if a previous join were made to the same entity. This is because the 
adapters were placed in the wrong order. The order has been reversed so that the adapter for the most recent aliased=True call takes precedence as was the case in 1.2 and earlier. This broke the 
?elementtree? examples among other things.

[orm] [bug] [py3k]
Replaced the Python compatbility routines for getfullargspec() with a fully vendored version from Python 3.3. Originally, Python was emitting deprecation warnings for this function in Python 3.8 
alphas. While this change was reverted, it was observed that Python 3 implementations for getfullargspec() are an order of magnitude slower as of the 3.4 series where it was rewritten against 
Signature. While Python plans to improve upon this situation, SQLAlchemy projects for now are using a simple replacement to avoid any future issues.

[orm] [bug]
Reworked the attribute mechanics used by AliasedClass to no longer rely upon calling __getattribute__ on the MRO of the wrapped class, and to instead resolve the attribute normally on the wrapped 
class using getattr(), and then unwrap/adapt that. This allows a greater range of attribute styles on the mapped class including special __getattr__() schemes; but it also makes the code simpler and 
more resilient in general.


[sql] [bug]
Fixed a series of quoting issues which all stemmed from the concept of the literal_column() construct, which when being ?proxied? through a subquery to be referred towards by a label that matches its 
text, the label would not have quoting rules applied to it, even if the string in the Label were set up as a quoted_name construct. Not applying quoting to the text of the Label is a bug because this 
text is strictly a SQL identifier name and not a SQL expression, and the string should not have quotes embedded into it already unlike the literal_column() which it may be applied towards. The 
existing behavior of a non-labeled literal_column() being propagated as is on the outside of a subquery is maintained in order to help with manual quoting schemes, although it?s not clear if valid 
SQL can be generated for such a construct in any case.


[postgresql] [bug]
Fixed bug where PostgreSQL dialect could not correctly reflect an ENUM datatype that has no members, returning a list with None for the get_enums() call and raising a TypeError when reflecting a 
column which has such a datatype. The inspection now returns an empty list.

[postgresql] [usecase]
Added support for column sorting flags when reflecting indexes for PostgreSQL, including ASC, DESC, NULLSFIRST, NULLSLAST. Also adds this facility to the reflection system in general which can be 
applied to other dialects in future releases. Pull request courtesy Eli Collins.


[mysql] [bug]
Fixed bug where MySQL ON DUPLICATE KEY UPDATE would not accommodate setting a column to the value NULL.


 databases/py-sqlalchemy/Makefile |   4 ++--
 databases/py-sqlalchemy/distinfo |  10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

diffs (27 lines):

diff -r f5f2995dbe36 -r b38bfd967279 databases/py-sqlalchemy/Makefile
--- a/databases/py-sqlalchemy/Makefile  Wed Jul 03 20:14:59 2019 +0000
+++ b/databases/py-sqlalchemy/Makefile  Wed Jul 03 20:19:11 2019 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.53 2019/05/29 21:11:51 adam Exp $
+# $NetBSD: Makefile,v 1.54 2019/07/03 20:19:11 adam Exp $
-DISTNAME=      SQLAlchemy-1.3.4
+DISTNAME=      SQLAlchemy-1.3.5
 CATEGORIES=    databases python
diff -r f5f2995dbe36 -r b38bfd967279 databases/py-sqlalchemy/distinfo
--- a/databases/py-sqlalchemy/distinfo  Wed Jul 03 20:14:59 2019 +0000
+++ b/databases/py-sqlalchemy/distinfo  Wed Jul 03 20:19:11 2019 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.48 2019/05/29 21:11:51 adam Exp $
+$NetBSD: distinfo,v 1.49 2019/07/03 20:19:11 adam Exp $
-SHA1 (SQLAlchemy-1.3.4.tar.gz) = 72016237d33faf2763cba9e84488f192e523d93e
-RMD160 (SQLAlchemy-1.3.4.tar.gz) = 30f59d63a51c13dec8553becb04960216d02fc85
-SHA512 (SQLAlchemy-1.3.4.tar.gz) = 6f29aeeceafcd996bbfc781b79dcbe0bbc681f1214cdab2d52b140bbae8492a633defa97dcc720db7a6d423b062834b0805e965e6183f88f99648a8f8f8a73dd
-Size (SQLAlchemy-1.3.4.tar.gz) = 5877278 bytes
+SHA1 (SQLAlchemy-1.3.5.tar.gz) = d31e921e31cd92a0fa81276d60ac8331ca5101a6
+RMD160 (SQLAlchemy-1.3.5.tar.gz) = 1f9958e9bdf60033c77d888b8fa936c262b1e351
+SHA512 (SQLAlchemy-1.3.5.tar.gz) = 29541a4181ec7b33a44c90522629c135f22d27b659f8e83a26b6ce2f0938708a5f930c62fc99dc03d4be5e2dca2ea174f3f89c71d8e6890460783685290b3da1
+Size (SQLAlchemy-1.3.5.tar.gz) = 5887356 bytes

Home | Main Index | Thread Index | Old Index