[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.8
user: adam <adam%pkgsrc.org@localhost>
date: Wed Aug 28 06:32:52 2019 +0000
py-sqlalchemy: updated to 1.3.8
Fixed bug where Load objects were not pickleable due to mapper/relationship state in the internal context dictionary. These objects are now converted to picklable using similar techniques as that of
other elements within the loader option system that have long been serializable.
Added support for the use of an Enum datatype using Python pep-435 enumeration objects as values for use as a primary key column mapped by the ORM. As these values are not inherently sortable, as
required by the ORM for primary keys, a new TypeEngine.sort_key_function attribute is added to the typing system which allows any SQL type to implement a sorting for Python objects of its type which
is consulted by the unit of work. The Enum type then defines this using the database value of a given enumeration. The sorting scheme can be also be redefined by passing a callable to the
Enum.sort_key_function parameter. Pull request courtesy Nicolas Caniart.
Added new parameter create_engine.hide_parameters which when set to True will cause SQL parameters to no longer be logged, nor rendered in the string representation of a StatementError object.
Fixed an issue whereby if the dialect ?initialize? process which occurs on first connect would encounter an unexpected exception, the initialize process would fail to complete and then no longer
attempt on subsequent connection attempts, leaving the dialect in an un-initialized, or partially initialized state, within the scope of parameters that need to be established based on inspection of
a live connection. The ?invoke once? logic in the event system has been reworked to accommodate for this occurrence using new, private API features that establish an ?exec once? hook that will
continue to allow the initializer to fire off on subsequent connections, until it completes without raising an exception. This does not impact the behavior of the existing once=True flag within the
Revised the approach for the just added support for the psycopg2 ?execute_values()? feature added in 1.3.7. The approach relied upon a regular expression that would fail to match for a more complex
INSERT statement such as one which had subqueries involved. The new approach matches exactly the string that was rendered as the VALUES clause.
Fixed bug where Postgresql operators such as postgresql.ARRAY.Comparator.contains() and postgresql.ARRAY.Comparator.contained_by() would fail to function correctly for non-integer values when used
against a postgresql.array object, due to an erroneous assert statement.
Added support for reflection of CHECK constraints that include the special PostgreSQL qualifier ?NOT VALID?, which can be present for CHECK constraints that were added to an exsiting table with the
directive that they not be applied to existing data in the table. The PostgreSQL dictionary for CHECK constraints as returned by Inspector.get_check_constraints() may include an additional entry
dialect_options which within will contain an entry "not_valid": True if this symbol is detected. Pull request courtesy Bill Finn.
[sqlite] [bug] [reflection]
Fixed bug where a FOREIGN KEY that was set up to refer to the parent table by table name only without the column names would not correctly be reflected as far as setting up the ?referred columns?,
since SQLite?s PRAGMA does not report on these columns if they weren?t given explicitly. For some reason this was harcoded to assume the name of the local column, which might work for some cases but
is not correct. The new approach reflects the primary key of the referred table and uses the constraint columns list as the referred columns list, if the remote column(s) aren?t present in the
reflected pragma directly.
databases/py-sqlalchemy/Makefile | 4 ++--
databases/py-sqlalchemy/distinfo | 10 +++++-----
2 files changed, 7 insertions(+), 7 deletions(-)
diffs (27 lines):
diff -r 8b4838b4bc0a -r ae768414f8f7 databases/py-sqlalchemy/Makefile
--- a/databases/py-sqlalchemy/Makefile Wed Aug 28 05:42:15 2019 +0000
+++ b/databases/py-sqlalchemy/Makefile Wed Aug 28 06:32:52 2019 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.55 2019/08/26 10:26:49 adam Exp $
+# $NetBSD: Makefile,v 1.56 2019/08/28 06:32:52 adam Exp $
CATEGORIES= databases python
diff -r 8b4838b4bc0a -r ae768414f8f7 databases/py-sqlalchemy/distinfo
--- a/databases/py-sqlalchemy/distinfo Wed Aug 28 05:42:15 2019 +0000
+++ b/databases/py-sqlalchemy/distinfo Wed Aug 28 06:32:52 2019 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.50 2019/08/26 10:26:49 adam Exp $
+$NetBSD: distinfo,v 1.51 2019/08/28 06:32:52 adam Exp $
-SHA1 (SQLAlchemy-1.3.7.tar.gz) = 45b36906f108c730577dc81ba5fd16cce37a74be
-RMD160 (SQLAlchemy-1.3.7.tar.gz) = 47044edf1e55ba334c4e8ee45f9b69ea90e95c2d
-SHA512 (SQLAlchemy-1.3.7.tar.gz) = 87d6929c28c081ec79e20c2285ccbbc2c39f798c6d1660a2fabab6ea53cb4a4c134b5e44d7355bf88f9754a826c1c68b67ff5ad03e7c23c5f6381797ced6a0df
-Size (SQLAlchemy-1.3.7.tar.gz) = 5914400 bytes
+SHA1 (SQLAlchemy-1.3.8.tar.gz) = 54d0f837e6855e1e76caa6ef521b76423c8f8a1a
+RMD160 (SQLAlchemy-1.3.8.tar.gz) = 8fd45d10108c75c539bcb3eb54c3d8de464fc27b
+SHA512 (SQLAlchemy-1.3.8.tar.gz) = 150f8b5220a58a91814fcfd1dc87e2a2082628c8bbbf01878cad9a2642d4257dcc45c5d578573bef828b3d05e316c7fa1cb268053fe62dce4cc442b7b080b0d0
+Size (SQLAlchemy-1.3.8.tar.gz) = 5933959 bytes
Main Index |
Thread Index |