py-sqlalchemy: updated to 1.3.20

1.3.20

Released: October 12, 2020
orm

[orm] [bug]

An ArgumentError with more detail is now raised if the target parameter for Query.join() is set to an unmapped object. Prior to this change a less detailed AttributeError was raised. Pull request courtesy Ramon Williams.

[orm] [bug]

Fixed issue where using a loader option against a string attribute name that is not actually a mapped attribute, such as a plain Python descriptor, would raise an uninformative AttributeError; a descriptive error is now raised.

engine

[engine] [bug]

Fixed issue where a non-string object sent to SQLAlchemyError or a subclass, as occurs with some third party dialects, would fail to stringify correctly. Pull request courtesy Andrzej Bartosiński.

[engine] [bug]

Repaired a function-level import that was not using SQLAlchemy’s standard late-import system within the sqlalchemy.exc module.

sql

[sql] [bug]

Fixed issue where the pickle.dumps() operation against Over construct would produce a recursion overflow.

[sql] [bug]

Fixed bug where an error was not raised in the case where a column() were added to more than one table() at a time. This raised correctly for the Column and Table objects. An ArgumentError is now raised when this occurs.

postgresql

[postgresql] [usecase]

The psycopg2 dialect now support PostgreSQL multiple host connections, by passing host/port combinations to the query string. Pull request courtesy Ramon Williams.

See also

Specfiying multiple fallback hosts

[postgresql] [bug]

Adjusted the Comparator.any() and Comparator.all() methods to implement a straight “NOT” operation for negation, rather than negating the comparison operator.

[postgresql] [bug]

Fixed issue where the ENUM type would not consult the schema translate map when emitting a CREATE TYPE or DROP TYPE during the test to see if the type exists or not. Additionally, repaired an issue where if the same enum were encountered multiple times in a single DDL sequence, the “check” query would run repeatedly rather than relying upon a cached value.

mysql

[mysql] [usecase]

Adjusted the MySQL dialect to correctly parenthesize functional index expressions as accepted by MySQL 8. Pull request courtesy Ramon Williams.

[mysql] [bug]

The “skip_locked” keyword used with with_for_update() will emit a warning when used on MariaDB backends, and will then be ignored. This is a deprecated behavior that will raise in SQLAlchemy 1.4, as an application that requests “skip locked” is looking for a non-blocking operation which is not available on those backends.

[mysql] [bug]

Fixed bug where an UPDATE statement against a JOIN using MySQL multi-table format would fail to include the table prefix for the target table if the statement had no WHERE clause, as only the WHERE clause were scanned to detect a “multi table update” at that particular point. The target is now also scanned if it’s a JOIN to get the leftmost table as the primary table and the additional entries as additional FROM entries.

[mysql] [change]

Add new MySQL reserved words: cube, lateral added in MySQL 8.0.1 and 8.0.14, respectively; this indicates that these terms will be quoted if used as table or column identifier names.

mssql

[mssql] [bug]

Fixed issue where a SQLAlchemy connection URI for Azure DW with authentication=ActiveDirectoryIntegrated (and no username+password) was not constructing the ODBC connection string in a way that was acceptable to the Azure DW instance.

misc

[bug] [pool]

Fixed issue where the following pool parameters were not being propagated to the new pool created when Engine.dispose() were called: pre_ping, use_lifo. Additionally the recycle and reset_on_return parameter is now propagated for the AssertionPool class.

[bug] [associationproxy] [ext]

An informative error is now raised when attempting to use an association proxy element as a plain column expression to be SELECTed from or used in a SQL function; this use case is not currently supported.

[bug] [tests]

Fixed incompatibilities in the test suite when running against Pytest 6.x.
This commit is contained in:
adam 2020-10-21 08:58:38 +00:00
parent 63e6b36a44
commit 7cec8b6deb
3 changed files with 11 additions and 8 deletions

View file

@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.64 2020/09/10 09:19:16 adam Exp $
# $NetBSD: Makefile,v 1.65 2020/10/21 08:58:38 adam Exp $
DISTNAME= SQLAlchemy-1.3.19
DISTNAME= SQLAlchemy-1.3.20
PKGNAME= ${PYPKGPREFIX}-${DISTNAME:tl}
CATEGORIES= databases python
MASTER_SITES= ${MASTER_SITE_PYPI:=S/SQLAlchemy/}

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.19 2020/04/10 07:58:16 adam Exp $
@comment $NetBSD: PLIST,v 1.20 2020/10/21 08:58:38 adam Exp $
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
@ -586,6 +586,9 @@ ${PYSITELIB}/sqlalchemy/util/__init__.pyo
${PYSITELIB}/sqlalchemy/util/_collections.py
${PYSITELIB}/sqlalchemy/util/_collections.pyc
${PYSITELIB}/sqlalchemy/util/_collections.pyo
${PYSITELIB}/sqlalchemy/util/_preloaded.py
${PYSITELIB}/sqlalchemy/util/_preloaded.pyc
${PYSITELIB}/sqlalchemy/util/_preloaded.pyo
${PYSITELIB}/sqlalchemy/util/compat.py
${PYSITELIB}/sqlalchemy/util/compat.pyc
${PYSITELIB}/sqlalchemy/util/compat.pyo

View file

@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.58 2020/09/10 09:19:16 adam Exp $
$NetBSD: distinfo,v 1.59 2020/10/21 08:58:38 adam Exp $
SHA1 (SQLAlchemy-1.3.19.tar.gz) = ebbe5bbd118de0358bfb6d3118a688899a856852
RMD160 (SQLAlchemy-1.3.19.tar.gz) = 1c7c84c15452cdf8ad88ea1f3bf61e76cd8a6a72
SHA512 (SQLAlchemy-1.3.19.tar.gz) = acd3d7c130970dfcc5792243b3f0f28f72b750bad0a3898358aeee9ac72ba38fd4298734ec481abf0fc5ebe1e1398c16672a6c327bac5b7821d08c67508690c8
Size (SQLAlchemy-1.3.19.tar.gz) = 6197860 bytes
SHA1 (SQLAlchemy-1.3.20.tar.gz) = 880084078adb72592538fb36e259f1415f4ccb35
RMD160 (SQLAlchemy-1.3.20.tar.gz) = 0a97e75868632ceaf86b7de78d681d88b693e065
SHA512 (SQLAlchemy-1.3.20.tar.gz) = 29c52ada1a66f906ed2563df2ab093eceb7c09de45749c96031f30a1512d20b1d698e00640c777169ef3db99ab012151770a3daea45a51df934269b554ff4b28
Size (SQLAlchemy-1.3.20.tar.gz) = 6264898 bytes