mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
dev-python/alembic: bump to 1.4.3, support PyPy3 and Python 3.9
Also: * Fix tests with pytest 6. * Update HOMEPAGE. * Use distutils_enable_tests. Package-Manager: Portage-3.0.8, Repoman-3.0.1 Signed-off-by: Louis Sautier <sbraz@gentoo.org>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST alembic-1.4.2.tar.gz 1092045 BLAKE2B 5f4001a756aacbb4db509669bc0d4d7c59c38e2983c433283243efa97bf28a22e38bcfd28a4bc72573e8ab78d6590e78f4e12a5b9dd08b60cf5a84520b955056 SHA512 82bdfe442c19033aa2b802ec49edd13ed265c00a2b5a048490a83ffa8e53587c56a90b64d554e746a9189923419c528482cb7a7c950c210e0de47b32fa7c270e
|
||||
DIST alembic-1.4.3.tar.gz 1108131 BLAKE2B d9c8b6d6aebce7a45194dd6c654f4a2627714a5c1f7cb7a1cf80ed8c3fe861e3bb7857811128787ddd6c093b4370784b40cddb385cfbd30f6134d537fe949d2d SHA512 925d8957fd9008d041737a9e79ec8d7a4c5deba1976e980362d355a75348c1638d783d9d48234a5bc3b2dc3f2f09dcb281d0c80ae0f0c5bc32e176c3dfa05463
|
||||
|
||||
45
dev-python/alembic/alembic-1.4.3.ebuild
Normal file
45
dev-python/alembic/alembic-1.4.3.ebuild
Normal file
@@ -0,0 +1,45 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( pypy3 python3_{6..9} )
|
||||
DISTUTILS_USE_SETUPTOOLS=rdepend
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="database migrations tool, written by the author of SQLAlchemy"
|
||||
HOMEPAGE="https://github.com/sqlalchemy/alembic"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE="doc"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
|
||||
dev-python/mako[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-editor-0.3[${PYTHON_USEDEP}]
|
||||
dev-python/python-dateutil[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/sqlalchemy/alembic/commit/8690940976544f368dad31cfbc46d9e1426b2ce1
|
||||
"${FILESDIR}/${P}-pytest6.patch"
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
# suite passes all if run from source. The residual fail & error are quite erroneous
|
||||
rm tests/test_script_consumption.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
use doc && local HTML_DOCS=( docs/. )
|
||||
|
||||
distutils-r1_python_install_all
|
||||
}
|
||||
66
dev-python/alembic/files/alembic-1.4.3-pytest6.patch
Normal file
66
dev-python/alembic/files/alembic-1.4.3-pytest6.patch
Normal file
@@ -0,0 +1,66 @@
|
||||
From 8690940976544f368dad31cfbc46d9e1426b2ce1 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Bayer <mike_mp@zzzcomputing.com>
|
||||
Date: Sat, 26 Sep 2020 21:05:53 -0400
|
||||
Subject: [PATCH] Support pytest 6.x
|
||||
|
||||
pytest has removed support for pytest.Class(..parent)
|
||||
and we need to use from_parent.
|
||||
|
||||
Also works around new issue for 6.1.0
|
||||
|
||||
References: https://github.com/pytest-dev/pytest/issues/7807
|
||||
|
||||
Change-Id: Ia5fed9b22e76c99f71489283acee207f996f52a4
|
||||
---
|
||||
alembic/__init__.py | 2 +-
|
||||
alembic/testing/plugin/pytestplugin.py | 10 ++--------
|
||||
tox.ini | 4 ++--
|
||||
3 files changed, 5 insertions(+), 11 deletions(-)
|
||||
|
||||
sys.modules["alembic.migration"] = migration
|
||||
sys.modules["alembic.environment"] = environment
|
||||
diff --git a/alembic/testing/plugin/pytestplugin.py b/alembic/testing/plugin/pytestplugin.py
|
||||
index 1c8be05..ba3d35b 100644
|
||||
--- a/alembic/testing/plugin/pytestplugin.py
|
||||
+++ b/alembic/testing/plugin/pytestplugin.py
|
||||
@@ -33,16 +33,10 @@ def pytest_configure(config):
|
||||
def pytest_pycollect_makeitem(collector, name, obj):
|
||||
|
||||
if inspect.isclass(obj) and plugin_base.want_class(name, obj):
|
||||
-
|
||||
- # in pytest 5.4.0
|
||||
- # return [
|
||||
- # pytest.Class.from_parent(collector,
|
||||
- # name=parametrize_cls.__name__)
|
||||
- # for parametrize_cls in _parametrize_cls(collector.module, obj)
|
||||
- # ]
|
||||
+ ctor = getattr(pytest.Class, "from_parent", pytest.Class)
|
||||
|
||||
return [
|
||||
- pytest.Class(parametrize_cls.__name__, parent=collector)
|
||||
+ ctor(name=parametrize_cls.__name__, parent=collector)
|
||||
for parametrize_cls in _parametrize_cls(collector.module, obj)
|
||||
]
|
||||
elif (
|
||||
diff --git a/tox.ini b/tox.ini
|
||||
index ed233ee..f144754 100644
|
||||
--- a/tox.ini
|
||||
+++ b/tox.ini
|
||||
@@ -7,7 +7,7 @@ SQLA_REPO = {env:SQLA_REPO:git+https://github.com/sqlalchemy/sqlalchemy.git}
|
||||
[testenv]
|
||||
cov_args=--cov=alembic --cov-report term --cov-report xml
|
||||
|
||||
-deps=pytest!=3.9.1,!=3.9.2
|
||||
+deps=pytest>4.6
|
||||
pytest-xdist
|
||||
mock
|
||||
sqla11: {[tox]SQLA_REPO}@rel_1_1
|
||||
@@ -30,7 +30,7 @@ usedevelop=
|
||||
# only use --dropfirst option if we're *not* using -n;
|
||||
# if -n is used, we're working in brand new DBs anyway
|
||||
setenv=
|
||||
- BASECOMMAND=python -m pytest
|
||||
+ BASECOMMAND=python -m pytest --rootdir {toxinidir}
|
||||
WORKERS=-n4
|
||||
sqla079: WORKERS=--dropfirst
|
||||
cov: COVERAGE={[testenv]cov_args}
|
||||
Reference in New Issue
Block a user