Subject: CVS commit: pkgsrc/databases/py-sqlalchemy
From: Adam Ciarcinski
Date: 2020-05-18 12:43:22
Message id: 20200518104322.2C215FB27@cvs.NetBSD.org

Log Message:
py-sqlalchemy: updated to 1.3.17

1.3.17

orm

[orm] [usecase]
Added an accessor Comparator.expressions which provides access to the group of \ 
columns mapped under a multi-column ColumnProperty attribute.

[orm] [usecase]
Introduce relationship.sync_backref flag in a relationship to control if the \ 
synchronization events that mutate the in-Python attributes are added. This \ 
supersedes the previous change 5149, which warned that viewonly=True \ 
relationship target of a back_populates or backref configuration would be \ 
disallowed.

[orm] [bug]
Fixed bug where using with_polymorphic() as the target of a join via \ 
RelationshipComparator.of_type() on a mapper that already has a subquery-based \ 
with_polymorphic setting that’s equivalent to the one requested would not \ 
correctly alias the ON clause in the join.

[orm] [bug]
Fixed issue in the area of where loader options such as selectinload() interact \ 
with the baked query system, such that the caching of a query is not supposed to \ 
occur if the loader options themselves have elements such as with_polymorphic() \ 
objects in them that currently are not cache-compatible. The baked loader could \ 
sometimes not fully invalidate itself in these some of these scenarios leading \ 
to missed eager loads.

[orm] [bug]
Modified the internal “identity set” implementation, which is a set that \ 
hashes objects on their id() rather than their hash values, to not actually call \ 
the __hash__() method of the objects, which are typically user-mapped objects. \ 
Some methods were calling this method as a side effect of the implementation.

[orm] [bug]
An informative error message is raised when an ORM many-to-one comparison is \ 
attempted against an object that is not an actual mapped instance. Comparisons \ 
such as those to scalar subqueries aren’t supported; generalized comparison \ 
with subqueries is better achieved using Comparator.has().

engine

[engine] [bug]
Fixed fairly critical issue where the DBAPI connection could be returned to the \ 
connection pool while still in an un-rolled-back state. The reset agent \ 
responsible for rolling back the connection could be corrupted in the case that \ 
the transaction was “closed” without being rolled back or committed, which \ 
can occur in some scenarios when using ORM sessions and emitting .close() in a \ 
certain pattern involving savepoints. The fix ensures that the reset agent is \ 
always active.

schema

[schema] [bug]
Fixed issue where an Index that is deferred in being associated with a table, \ 
such as as when it contains a Column that is not associated with any Table yet, \ 
would fail to attach correctly if it also contained a non table-oriented \ 
expession.

[schema] [bug]
A warning is emitted when making use of the MetaData.sorted_tables attribute as \ 
well as the sort_tables() function, and the given tables cannot be correctly \ 
sorted due to a cyclic dependency between foreign key constraints. In this case, \ 
the functions will no longer sort the involved tables by foreign key, and a \ 
warning will be emitted. Other tables that are not part of the cycle will still \ 
be returned in dependency order. Previously, the sorted_table routines would \ 
return a collection that would unconditionally omit all foreign keys when a \ 
cycle was detected, and no warning was emitted.

[schema]
Add comment attribute to Column __repr__ method.

postgresql

[postgresql] [usecase]
Added support for columns or type ARRAY of Enum, JSON or JSONB in PostgreSQL. \ 
Previously a workaround was required in these use cases.

[postgresql] [usecase]
Raise an explicit CompileError when adding a table with a column of type ARRAY \ 
of Enum configured with Enum.native_enum set to False when \ 
Enum.create_constraint is not set to False

mssql

[mssql] [bug] [reflection]
Fix a regression introduced by the reflection of computed column in MSSQL when \ 
using the legacy TDS version 4.2. The dialect will try to detect the protocol \ 
version of first connect and run in compatibility mode if it cannot detect it.

[mssql] [bug] [reflection]
Fix a regression introduced by the reflection of computed column in MSSQL when \ 
using SQL server versions before 2012, which does not support the concat \ 
function.

oracle

[oracle] [bug]
Some modifications to how the cx_oracle dialect sets up per-column outputtype \ 
handlers for LOB and numeric datatypes to adjust for potential changes coming in \ 
cx_Oracle 8.

[oracle] [bug] [performance]
Changed the implementation of fetching CLOB and BLOB objects to use \ 
cx_Oracle’s native implementation which fetches CLOB/BLOB objects inline with \ 
other result columns, rather than performing a separate fetch. As always, this \ 
can be disabled by setting auto_convert_lobs to False.
As part of this change, the behavior of a CLOB that was given a blank string on \ 
INSERT now returns None on SELECT, which is now consistent with that of VARCHAR \ 
on Oracle.

firebird

[firebird] [change]
Adjusted dialect loading for firebird:// URIs so the external \ 
sqlalchemy-firebird dialect will be used if it has been installed, otherwise \ 
fall back to the (now deprecated) internal Firebird dialect.

Files:
RevisionActionfile
1.62modifypkgsrc/databases/py-sqlalchemy/Makefile
1.56modifypkgsrc/databases/py-sqlalchemy/distinfo