diff options
Diffstat (limited to 'dev-python/sqlalchemy')
-rw-r--r-- | dev-python/sqlalchemy/Manifest | 2 | ||||
-rw-r--r-- | dev-python/sqlalchemy/sqlalchemy-2.0.36.ebuild | 109 |
2 files changed, 111 insertions, 0 deletions
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest index bd14255126fe..a3f26c6c9ad8 100644 --- a/dev-python/sqlalchemy/Manifest +++ b/dev-python/sqlalchemy/Manifest @@ -1,7 +1,9 @@ DIST SQLAlchemy-1.4.53.tar.gz 8468030 BLAKE2B fd03cd7a1a8f26b22d33cee038e6e15c59ba24e32a4465e3e3cda74583a333e627b732f5532aaa2c0fc3356a96dab8efbc4f6a51275315f78451d63a4ec20bbf SHA512 2a33b2c0348efbf312994394da3dac0f86be60e9e0929ce96117a02f49d9e06388ec5b016c1bf229f89d5ee561cbdcf8526b9c33428b7041923cd5d73d87a88c DIST sqlalchemy-1.4.54.tar.gz 8470350 BLAKE2B 0d97beb4edde38455c03dfc1238655d1cb63aa6e042b941913ec68dca3654de07087ab967f208fda495f048a5068ced70d642c4b8b80ab32e5346fcefa3bf9bc SHA512 e7ea4920d81914d362134a3c6fd4a2dd4fdb75f6ce17358528d568e2b2ac0ee711a71f6beb894e61d6d1e4e5833034ebde651d73a13f873c682f780e1831b427 DIST sqlalchemy-2.0.35.tar.gz 9562798 BLAKE2B dfb59e91b782999572ec88e3bedd57e8aba87d3f04a7c0a29f5ea6361c61bf1f62edb94bb20c188f6fbc9cb7e7dfd7c67039066d6aaa78be10697d61d1bb31a2 SHA512 1de85847bf6f391c68c5d2fea7b690fe3deeaa8712ba086cc23244f25528dfdfd9ad6f2642f9981816896b225547ac5ac01c9fb2c707e9f47c1918e13dbcdc19 +DIST sqlalchemy-2.0.36.tar.gz 9574485 BLAKE2B 31fb7375041f354b940a5b8beee8886cbb66cb0a4b4dcad8f9bdb9ebfeb673cdc6ce7335d9fa7bbc443e3dafb0337106e0ca0c6a8ccf3df55bde3e6e310dcbc6 SHA512 480fa9893d20806127f6b060726210e32989af92439ff445066aebfc931453eb8c05b5f8497582fcdb897f8e9e70243f092f46e06d7dfe49301ab71ada4eebda EBUILD sqlalchemy-1.4.53.ebuild 3431 BLAKE2B 8616b889a052a89be1475357427eb9e6bc49d89b69bbb6cbc8d911544c08c26d213df72703cd5266f7a3b613844903623a0d23b6f2609fb53fc447b47c43892b SHA512 f48809e7d04f783457b8ec4716a5ec0b568755791cbefdeb7977f4d808c143bc0f76b435f294fdd4dbfacded03536bc651b8e1b242f27d5d47fd193196408981 EBUILD sqlalchemy-1.4.54.ebuild 3349 BLAKE2B b72fce5a53d2ec9b674dc86011868d3d658b9d0a300e9dab4bed35f70060b7032893e22c9c9796d2ec8381f7fd1b90e89cbf84ec63e7cdab4e4cb173496a0799 SHA512 f34b3ba9bfd19739832f5f7809a062fdb5d5cf6ba53a2b8c0c209ed1abb034001f78d1aed071f3bb33ce38de5d5948771f5f753f1a6d3626aa3ecc7c01a9b2b9 EBUILD sqlalchemy-2.0.35.ebuild 3875 BLAKE2B 571c06a100113017e66e701522851bbdb8143f4adccfb9925591e38d8a600dfcab4814123b67c3d5ab58ee828b6d81a0b0d77433fb79fcd912782410c74dda27 SHA512 045dfd73c8986f3c69bee498bfcbd45b749db9aa3aa9c8018fc6203bd786304702409b8d86a4ba60cb3b14f6b82dc3f65c5c6e591f9ef9947605c76e9eadd4b1 +EBUILD sqlalchemy-2.0.36.ebuild 3882 BLAKE2B 0ba4d79020f5dbb18ac4f2ef5d299995f093a9e5e421b8f848d8bee9e16f60d8590226220a4679c38a74ebb0c6c573b011da3fe4c26b28311f06ce570e6ed8ed SHA512 3effb67b3c4bae2a8260807bd10b09dc52974232ab2ea7c9b6e1c94583394d6f47fb9288bb36b325cb930dc3a1c2091fc568cbcf33f87c90c621b7024378909c MISC metadata.xml 444 BLAKE2B 5fbfcf8f16e52ab5bb691b0b33a8491d94e42a80409114cd9b306af7d4b0eb8b6660fabc663adee53080c635217961301b78df536995b91afe9288d255f73d62 SHA512 b432b65ed3033d34ac0784d007909eb838b309b6a4785eebb1a3f808e43dfc41c786cd55e4dd048776c65127aac170bdd9fb9e5a8ae63accb5f65e300bca9676 diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.36.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.36.ebuild new file mode 100644 index 000000000000..18e25ffd129d --- /dev/null +++ b/dev-python/sqlalchemy/sqlalchemy-2.0.36.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 +} |