py-sqlalchemy: updated to 1.2.9

Version 1.2.9

Fixed issue where chaining multiple join elements inside of Query.join() might not correctly adapt to the previous left-hand side, when chaining joined inheritance classes that share the same base class.

Fixed bug in cache key generation for baked queries which could cause a too-short cache key to be generated for the case of eager loads across subclasses. This could in turn cause the eagerload query to be cached in place of a non-eagerload query, or vice versa, for a polymorhic “selectin” load, or possibly for lazy loads or selectin loads as well.

Fixed bug in new polymorphic selectin loading where the BakedQuery used internally would be mutated by the given loader options, which would both inappropriately mutate the subclass query as well as carry over the effect to subsequent queries.

Fixed regression caused by 4256 (itself a regression fix for 4228) which breaks an undocumented behavior which converted for a non-sequence of entities passed directly to the Query constructor into a single-element sequence. While this behavior was never supported or documented, it’s already in use so has been added as a behavioral contract to Query.

Fixed an issue that was both a performance regression in 1.2 as well as an incorrect result regarding the “baked” lazy loader, involving the generation of cache keys from the original Query object’s loader options. If the loader options were built up in a “branched” style using common base elements for multiple options, the same options would be rendered into the cache key repeatedly, causing both a performance issue as well as generating the wrong cache key. This is fixed, along with a performance improvement when such “branched” options are applied via Query.options() to prevent the same option objects from being applied repeatedly.
This commit is contained in:
adam 2018-07-03 05:34:20 +00:00
parent be9d5c291a
commit dbbbbf1056
3 changed files with 11 additions and 8 deletions

View file

@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.40 2018/05/30 07:33:29 adam Exp $
# $NetBSD: Makefile,v 1.41 2018/07/03 05:34:20 adam Exp $
DISTNAME= SQLAlchemy-1.2.8
DISTNAME= SQLAlchemy-1.2.9
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.16 2018/01/18 09:12:17 adam Exp $
@comment $NetBSD: PLIST,v 1.17 2018/07/03 05:34:20 adam Exp $
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
@ -520,6 +520,9 @@ ${PYSITELIB}/sqlalchemy/testing/schema.pyo
${PYSITELIB}/sqlalchemy/testing/suite/__init__.py
${PYSITELIB}/sqlalchemy/testing/suite/__init__.pyc
${PYSITELIB}/sqlalchemy/testing/suite/__init__.pyo
${PYSITELIB}/sqlalchemy/testing/suite/test_cte.py
${PYSITELIB}/sqlalchemy/testing/suite/test_cte.pyc
${PYSITELIB}/sqlalchemy/testing/suite/test_cte.pyo
${PYSITELIB}/sqlalchemy/testing/suite/test_ddl.py
${PYSITELIB}/sqlalchemy/testing/suite/test_ddl.pyc
${PYSITELIB}/sqlalchemy/testing/suite/test_ddl.pyo

View file

@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.35 2018/05/30 07:33:29 adam Exp $
$NetBSD: distinfo,v 1.36 2018/07/03 05:34:20 adam Exp $
SHA1 (SQLAlchemy-1.2.8.tar.gz) = db4a2965bc370072ed7bc245d956952bfb634b37
RMD160 (SQLAlchemy-1.2.8.tar.gz) = bfbb185df3258d3ca35ae2e67a5360d05696e40f
SHA512 (SQLAlchemy-1.2.8.tar.gz) = 07af161586ac0a9a44e8dff3a65b0433d41ccac89e0b4e2e7d9427c42dcdcca19c31805f81cad242e017e21557b2ff95d0c9e9e2e2339446bd75d0b415fafaf0
Size (SQLAlchemy-1.2.8.tar.gz) = 5586724 bytes
SHA1 (SQLAlchemy-1.2.9.tar.gz) = 688c300961930d694d42827b53033a178af3e022
RMD160 (SQLAlchemy-1.2.9.tar.gz) = e65200aade6b7df9d7a770928258b76e44eac04d
SHA512 (SQLAlchemy-1.2.9.tar.gz) = 88ef57b9e456d7047bd7b5fd9607c87a473a9917d662960b0614fbfc40891002309eda55e66e42a6a280c6d6e7e8e6921349901a19c1caaedace2d532b32af22
Size (SQLAlchemy-1.2.9.tar.gz) = 5606090 bytes