Skip to content

Commit

Permalink
dev-python/sqlalchemy: Bump to 2.0.15
Browse files Browse the repository at this point in the history
Signed-off-by: Michał Górny <[email protected]>
  • Loading branch information
mgorny committed May 20, 2023
1 parent 0d91d48 commit 00c118e
Show file tree
Hide file tree
Showing 2 changed files with 116 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-python/sqlalchemy/Manifest
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
DIST SQLAlchemy-1.4.48.tar.gz 8448993 BLAKE2B 02c5457e099a0f0bb0e5427a95d3ea35d504d0b5f1d10003b59c8dc76f92ea7b4720512d934fae64b12d95c5de5230139f3af9f5bd6e372fc07228b432995bd9 SHA512 f948e79c92889f2462b117ca49ccb8e82d5f8da0027c65488a3f6c64a802dc0bca96cc84c4e77bb3b8d434dfd66b621ef4d69c5d417ad781d1dc7136bcf6dea1
DIST SQLAlchemy-2.0.12.tar.gz 9264506 BLAKE2B 83a3aa719e2809b5b48ef5332cf6cbc0e973089dad142dbbe952d14b2e4f3e5a1cf67c7a7240017fbddfafe1c57d6acb974d9c61e72970d8a8c49b7a57f52a91 SHA512 0e4bbc7d4729b2667ca1e8a0c88293e44698346415e3742ad3c686495c9855b5714dab161590605d5ee60523a2544f590f67ac7d01f7f2756ddc7156688db902
DIST SQLAlchemy-2.0.13.tar.gz 9286442 BLAKE2B 3d2c06d7c89db1d5c5c13366cfc818720f8db0c1e26684c8de5856fd2cedf8c307f8653817eb080526b1da17bcfbd1163f1066226881ef47a553f5662e1989c2 SHA512 b560dedfaa1c2d854feddcb7ac343b184603db8143db8ec9551180fb5345ec793bc74211c838dd15cb45feba970d64f53daaeffe7d5bfa8c6c534742f6aa8453
DIST SQLAlchemy-2.0.15.tar.gz 9296612 BLAKE2B 45abdb9010b854e52762d9c84a471e92ece2b212620a74d161b19ef7c6bce3d9ad39b3075c4f32749774884e3ffe255f82028dd6a6375e269d2827cbf18c35e7 SHA512 a1b9301f4a81428ac36b9280840a27433fcfb97dec2a04888e6e53cc33104c82972147e2b840a929e05af0edb47ee496a7ed5171201332aad374ce64baef414d
115 changes: 115 additions & 0 deletions dev-python/sqlalchemy/sqlalchemy-2.0.15.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( pypy3 python3_{10..11} )
PYTHON_REQ_USE="sqlite?"

inherit distutils-r1 optfeature pypi

MY_PN="SQLAlchemy"
DESCRIPTION="Python SQL toolkit and Object Relational Mapper"
HOMEPAGE="
https://www.sqlalchemy.org/
https://pypi.org/project/SQLAlchemy/
https://github.com/sqlalchemy/sqlalchemy/
"
SRC_URI="$(pypi_sdist_url --no-normalize "${MY_PN}")"
S="${WORKDIR}/${MY_PN}-${PV}"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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.2.0[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/cython[${PYTHON_USEDEP}]
test? (
$(python_gen_impl_dep sqlite)
)
"

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
# hardcode call counts specific to Python versions
test/aaa_profiling
)
local EPYTEST_DESELECT=(
# warning tests are unreliable
test/base/test_warnings.py
# TODO
test/orm/test_versioning.py::ServerVersioningTest_sqlite+pysqlite_3_40_1::test_sql_expr_w_mods_bump
test/sql/test_resultset.py::CursorResultTest_sqlite+pysqlite_3_41_0::test_pickle_rows_other_process
)
local sqlite_version=$(sqlite3 --version | cut -d' ' -f1)
[[ ${EPYTHON} == 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_pool.py::QueuePoolTest::test_recycle_pool_no_race
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
)
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
local -x PYTEST_PLUGINS=
# upstream automagically depends on xdist when it is importable
# note that we can't use xdist because it causes nodes to randomly
# crash on init
if has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"; then
PYTEST_PLUGINS+=xdist.plugin
fi
epytest
}

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 \
dev-python/mysql-connector-python
optfeature "postgresql support" dev-python/psycopg:2
}

0 comments on commit 00c118e

Please sign in to comment.