- update to version 1.2.11:
* orm declarative
+ [bug] [declarative] [orm] Fixed issue in previously untested use
case, allowing a declarative mapped class to inherit from a
classically-mapped class outside of the declarative base,
including that it accommodates for unmapped intermediate
classes. An unmapped intermediate class may specify
__abstract__, which is now interpreted correctly, or the
intermediate class can remain unmarked, and the classically
mapped base class will be detected within the hierarchy
regardless. In order to anticipate existing scenarios which may
be mixing in classical mappings into existing declarative
hierarchies, an error is now raised if multiple mapped bases are
detected for a given class. References: #4321
* sql
+ [sql] [bug] Fixed issue that is closely related to #3639 where
an expression rendered in a boolean context on a non-native
boolean backend would be compared to 1/0 even though it is
already an implcitly boolean expression, when
ColumnElement.self_group() were used. While this does not affect
the user-friendly backends (MySQL, SQLite) it was not handled by
Oracle (and possibly SQL Server). Whether or not the expression
is implicitly boolean on any database is now determined up front
as an additional check to not generate the integer comparison
within the compliation of the statement. References: #4320
+ [sql] [bug] Added missing window function parameters
WithinGroup.over.range_ and WithinGroup.over.rows parameters to
the WithinGroup.over() and FunctionFilter.over() methods, to
correspond to the range/rows feature added to the “over” method
of SQL functions as part of #3049 in version 1.1. References:
#4322
+ [sql] [bug] Fixed bug where the multi-table support for UPDATE
and DELETE statements did not consider the additional FROM
elements as targets for correlation, when a correlated SELECT
were also combined with the statement. This change now includes
that a SELECT statement in the WHERE clause for such a statement
will try to auto-correlate back to these additional tables in
the parent UPDATE/DELETE or unconditionally correlate if
Select.correlate() is used. Note that auto-correlation raises an
error if the SELECT statement would have no FROM clauses as a
result, which can now occur if the parent UPDATE/DELETE
specifies the same tables in its additional set of tables;
specify Select.correlate() explicitly to resolve. References:
#4313
* oracle
+ [oracle] [bug] For cx_Oracle, Integer datatypes will now be
bound to “int”, per advice from the cx_Oracle
developers. Previously, using cx_Oracle.NUMBER caused a loss in
precision within the cx_Oracle 6.x series. References: #4309
* misc
+ [bug] [py3k] Started importing “collections” from
“collections.abc” under Python 3.3 and greater for Python 3.8
compatibility. Pull request courtesy Nathaniel Knight.
+ Fixed issue where the “schema” name used for a SQLite database
within table reflection would not quote the schema name
correctly. Pull request courtesy Phillip Cloud.
OBS-URL: https://build.opensuse.org/request/show/631537
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-SQLAlchemy?expand=0&rev=119
99 lines
3.2 KiB
RPMSpec
99 lines
3.2 KiB
RPMSpec
#
|
|
# spec file for package python-SQLAlchemy
|
|
#
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
|
|
%define oldpython python
|
|
%bcond_without tests
|
|
Name: python-SQLAlchemy
|
|
Version: 1.2.11
|
|
Release: 0
|
|
Summary: Database Abstraction Library
|
|
License: MIT
|
|
Group: Development/Languages/Python
|
|
URL: http://www.sqlalchemy.org
|
|
Source: https://files.pythonhosted.org/packages/source/S/SQLAlchemy/SQLAlchemy-%{version}.tar.gz
|
|
BuildRequires: %{python_module devel}
|
|
# Test requirements:
|
|
BuildRequires: %{python_module mock}
|
|
BuildRequires: %{python_module pytest-xdist}
|
|
BuildRequires: %{python_module pytest}
|
|
BuildRequires: %{python_module setuptools}
|
|
BuildRequires: fdupes
|
|
BuildRequires: python-rpm-macros
|
|
#BuildRequires: python-pysqlite
|
|
%ifpython2
|
|
Obsoletes: %{oldpython}-sqlalchemy < %{version}
|
|
Provides: %{oldpython}-sqlalchemy = %{version}
|
|
%endif
|
|
%ifpython3
|
|
Provides: python3-sqlalchemy = %{version}
|
|
Obsoletes: python3-sqlalchemy < %{version}
|
|
%endif
|
|
%python_subpackages
|
|
|
|
%description
|
|
SQLAlchemy is an Object Relational Mappper (ORM) that provides a flexible,
|
|
high-level interface to SQL databases. Database and domain concepts are
|
|
decoupled, allowing both sides maximum flexibility and power. SQLAlchemy
|
|
provides a powerful mapping layer that can work as automatically or as manually
|
|
as you choose, determining relationships based on foreign keys or letting you
|
|
define the join conditions explicitly, to bridge the gap between database and
|
|
domain.
|
|
|
|
%package -n %{name}-doc
|
|
Summary: Documentation for python-SQLAlchemy
|
|
Group: Documentation/Other
|
|
Provides: python-SQLAlchemy-doc = %{version}
|
|
Provides: python2-SQLAlchemy-doc = %{version}
|
|
Provides: python3-SQLAlchemy-doc = %{version}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}-doc
|
|
This package contains HTML documentation, including tutorials and API
|
|
reference for python-SQLAlchemy.
|
|
|
|
%prep
|
|
%setup -q -n SQLAlchemy-%{version}
|
|
rm -rf doc/build # Remove unnecessary scripts for building documentation
|
|
sed -i 's/\r$//' examples/dynamic_dict/dynamic_dict.py
|
|
|
|
%build
|
|
export CFLAGS="%{optflags} -fno-strict-aliasing"
|
|
%python_build
|
|
|
|
%install
|
|
%python_install
|
|
%python_expand %fdupes %{buildroot}%{$python_sitearch}
|
|
|
|
%if %{with tests}
|
|
%check
|
|
%python_expand py.test-%{$python_bin_suffix}
|
|
%endif
|
|
|
|
%files %{python_files}
|
|
%license LICENSE
|
|
%doc CHANGES README.rst README.dialects.rst README.unittests.rst
|
|
%{python_sitearch}/sqlalchemy/
|
|
%{python_sitearch}/SQLAlchemy-%{version}-py%{py_ver}.egg-info
|
|
|
|
%files -n %{name}-doc
|
|
%doc doc/
|
|
%doc examples/
|
|
|
|
%changelog
|