summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-09-17 06:50:00 +0200
committerMichał Górny <mgorny@gentoo.org>2024-09-17 06:50:00 +0200
commit82e5fd76ad7bc43600fa90be5215bb6c5b8a739e (patch)
treec925645b373c12cff57f690c1256c16d14ab9ea8 /dev-python/sqlalchemy
parentapp-admin/awscli: Bump to 1.34.20 (diff)
downloadgentoo-82e5fd76ad7bc43600fa90be5215bb6c5b8a739e.tar.gz
gentoo-82e5fd76ad7bc43600fa90be5215bb6c5b8a739e.tar.bz2
gentoo-82e5fd76ad7bc43600fa90be5215bb6c5b8a739e.zip
dev-python/sqlalchemy: Bump to 2.0.35
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/sqlalchemy')
-rw-r--r--dev-python/sqlalchemy/Manifest1
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-2.0.35.ebuild109
2 files changed, 110 insertions, 0 deletions
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest
index 403e79435a28..7e4b1fc05b66 100644
--- a/dev-python/sqlalchemy/Manifest
+++ b/dev-python/sqlalchemy/Manifest
@@ -3,3 +3,4 @@ DIST SQLAlchemy-2.0.32.tar.gz 9546691 BLAKE2B b6b28fa513e9dc6066db210cee8cbc94dd
DIST sqlalchemy-1.4.54.tar.gz 8470350 BLAKE2B 0d97beb4edde38455c03dfc1238655d1cb63aa6e042b941913ec68dca3654de07087ab967f208fda495f048a5068ced70d642c4b8b80ab32e5346fcefa3bf9bc SHA512 e7ea4920d81914d362134a3c6fd4a2dd4fdb75f6ce17358528d568e2b2ac0ee711a71f6beb894e61d6d1e4e5833034ebde651d73a13f873c682f780e1831b427
DIST sqlalchemy-2.0.33.tar.gz 9555649 BLAKE2B cc76c9cd61805089bc32d49c183a4b8d2be1f8def08fdbf7c516174c3bae7baf8fa6c99e5e059e93f6c1b76244b3e319e3aa2e65f38a8ebb2378d21e02cd6f27 SHA512 d6b830897216cab8df4f337e21634b7df9aa722294ee9945a28a549d8c423716146b2f7b9bb23c276f413c3b8c388c3502fa6301fe4d1cedc5266a687e571a47
DIST sqlalchemy-2.0.34.tar.gz 9556527 BLAKE2B cefe606a05f99cc1f4522022969c503b46192092602ce26474f09bf3710d98618876aa34ffbb6da4e1bf4c3d11e9bb6ca58eac7a04ecae7f26c58427e482f503 SHA512 fd585ed9a78a86deaab1f84b5ff29f37120c08f3c8c93566786b73d74ce67f1f71097e43d42b0999be1aca493ae1c55d5a0c2d49386b65dcca566c036401232b
+DIST sqlalchemy-2.0.35.tar.gz 9562798 BLAKE2B dfb59e91b782999572ec88e3bedd57e8aba87d3f04a7c0a29f5ea6361c61bf1f62edb94bb20c188f6fbc9cb7e7dfd7c67039066d6aaa78be10697d61d1bb31a2 SHA512 1de85847bf6f391c68c5d2fea7b690fe3deeaa8712ba086cc23244f25528dfdfd9ad6f2642f9981816896b225547ac5ac01c9fb2c707e9f47c1918e13dbcdc19
diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.35.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.35.ebuild
new file mode 100644
index 000000000000..18e25ffd129d
--- /dev/null
+++ b/dev-python/sqlalchemy/sqlalchemy-2.0.35.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=SQLAlchemy
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE="sqlite?"
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Python SQL toolkit and Object Relational Mapper"
+HOMEPAGE="
+ https://www.sqlalchemy.org/
+ https://pypi.org/project/SQLAlchemy/
+ https://github.com/sqlalchemy/sqlalchemy/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="examples +sqlite test"
+
+RDEPEND="
+ >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/greenlet/d' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ test/ext/mypy/test_mypy_plugin_py3k.py
+ test/typing/test_mypy.py
+ # hardcode call counts specific to Python versions
+ test/aaa_profiling
+ )
+ local EPYTEST_DESELECT=(
+ # warning tests are unreliable
+ test/base/test_warnings.py
+ )
+ local sqlite_version=$(sqlite3 --version | cut -d' ' -f1)
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ test/ext/test_associationproxy.py::ProxyHybridTest::test_msg_fails_on_cls_access
+ test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_multi_elem_varg
+ test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_one_elem_varg
+ test/engine/test_processors.py::PyDateProcessorTest::test_date_invalid_string
+ test/engine/test_processors.py::PyDateProcessorTest::test_datetime_invalid_string
+ test/engine/test_processors.py::PyDateProcessorTest::test_time_invalid_string
+ "test/dialect/test_sqlite.py::TestTypes_sqlite+pysqlite_${sqlite_version//./_}::test_cant_parse_datetime_message"
+ "test/dialect/test_suite.py::ReturningGuardsTest_sqlite+pysqlite_${sqlite_version//./_}"::test_{delete,insert,update}_single
+ test/base/test_utils.py::ImmutableDictTest::test_pep584
+ 'test/sql/test_compare.py::HasCacheKeySubclass::test_init_args_in_traversal[_MemoizedSelectEntities]'
+ )
+ ;;
+ esac
+ if ! has_version "dev-python/greenlet[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_execution
+ test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_run_sync
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[False-True]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[True-True]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[has_terminate-is_asyncio]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[not_has_terminate-is_asyncio]"
+ "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True-_exclusions0]"
+ "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True]"
+ )
+ fi
+
+ # upstream's test suite is horribly hacky; it relies on disabling
+ # the warnings plugin and turning warnings into errors; this also
+ # means that any DeprecationWarnings from third-party plugins cause
+ # everything to explode
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=10 --reruns-delay=2
+}
+
+python_install_all() {
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ dodoc -r examples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "asyncio support" dev-python/greenlet
+ optfeature "MySQL support" \
+ dev-python/mysqlclient \
+ dev-python/pymysql
+ optfeature "postgresql support" dev-python/psycopg:2
+}