git: 7db055349957 - main - devel/py-pytest4: preserve 4.x version of devel/py-pytest
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 18 Mar 2022 17:12:25 UTC
The branch main has been updated by amdmi3: URL: https://cgit.FreeBSD.org/ports/commit/?id=7db055349957ee7f79e5c2452430c71a3e86b6eb commit 7db055349957ee7f79e5c2452430c71a3e86b6eb Author: Dmitry Marakasov <amdmi3@FreeBSD.org> AuthorDate: 2022-03-18 16:24:00 +0000 Commit: Dmitry Marakasov <amdmi3@FreeBSD.org> CommitDate: 2022-03-18 17:11:37 +0000 devel/py-pytest4: preserve 4.x version of devel/py-pytest - Preserve 4.x version of pytest for the ports which are not compatible with pytest 6.x. This is a prerequisite for updating pytest. PR: 256624 Approved by: maintainer timeout (python@, many months) --- devel/Makefile | 1 + devel/py-pytest/Makefile | 2 + devel/py-pytest4/Makefile | 61 ++++++++++++++++++++++ devel/py-pytest4/distinfo | 3 ++ .../files/patch-testing-test_parseopt.py | 11 ++++ devel/py-pytest4/pkg-descr | 12 +++++ 6 files changed, 90 insertions(+) diff --git a/devel/Makefile b/devel/Makefile index 6378c44bcb02..f05e073de828 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -5115,6 +5115,7 @@ SUBDIR += py-pytest-virtualenv SUBDIR += py-pytest-xdist SUBDIR += py-pytest-xprocess + SUBDIR += py-pytest4 SUBDIR += py-python-Levenshtein SUBDIR += py-python-application SUBDIR += py-python-bugzilla diff --git a/devel/py-pytest/Makefile b/devel/py-pytest/Makefile index ffb7ee853788..e5bd19934673 100644 --- a/devel/py-pytest/Makefile +++ b/devel/py-pytest/Makefile @@ -11,6 +11,8 @@ COMMENT= Simple powerful testing with Python LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}pytest4 + BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=0:devel/py-setuptools_scm@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}atomicwrites>=1.0:devel/py-atomicwrites@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}attrs>=17.4.0:devel/py-attrs@${PY_FLAVOR} \ diff --git a/devel/py-pytest4/Makefile b/devel/py-pytest4/Makefile new file mode 100644 index 000000000000..acc95ec7edf3 --- /dev/null +++ b/devel/py-pytest4/Makefile @@ -0,0 +1,61 @@ +PORTNAME= pytest +PORTVERSION= 4.6.11 +PORTEPOCH= 1 +CATEGORIES= devel python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +PKGNAMESUFFIX= 4 + +MAINTAINER= python@FreeBSD.org +COMMENT= Simple powerful testing with Python (legacy version 4) + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}pytest + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=0:devel/py-setuptools_scm@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}atomicwrites>=1.0:devel/py-atomicwrites@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}attrs>=17.4.0:devel/py-attrs@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}more-itertools>=4.0.0:devel/py-more-itertools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pluggy>=0.12<1.0:devel/py-pluggy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}py>=1.5.0:devel/py-py@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wcwidth>=0:devel/py-wcwidth@${PY_FLAVOR} +TEST_DEPENDS= bash:shells/bash \ + lsof:sysutils/lsof \ + ${PYTHON_PKGNAMEPREFIX}argcomplete>=0:devel/py-argcomplete@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}decorator>=0:devel/py-decorator@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}hypothesis>=3.56:devel/py-hypothesis@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}nose>=0:devel/py-nose@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pexpect>=0:misc/py-pexpect@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-xdist>=1.13:devel/py-pytest-xdist@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}twisted>=0:devel/py-twisted@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}unittest2>=0:devel/py-unittest2@${PY_FLAVOR} + +USES= python:3.6+ +USE_PYTHON= autoplist concurrent distutils + +NO_ARCH= yes + +.include <bsd.port.pre.mk> + +.if ${PYTHON_REL} < 30800 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}importlib-metadata>=0.12:devel/py-importlib-metadata@${PY_FLAVOR} +.endif + +post-patch: + @${REINPLACE_CMD} -e 's|%%PYTHON_CMD%%|${PYTHON_CMD}|' ${WRKSRC}/testing/test_parseopt.py + +# test_cache_failure_warns fails +# https://github.com/pytest-dev/pytest/issues/1845 +do-test: + cd ${WRKSRC} && ${PYTHON_CMD} -m pytest -v -rs -k 'not test_cache_failure_warns' + +.include <bsd.port.post.mk> diff --git a/devel/py-pytest4/distinfo b/devel/py-pytest4/distinfo new file mode 100644 index 000000000000..db173fdad5c5 --- /dev/null +++ b/devel/py-pytest4/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1620405525 +SHA256 (pytest-4.6.11.tar.gz) = 50fa82392f2120cc3ec2ca0a75ee615be4c479e66669789771f1758332be4353 +SIZE (pytest-4.6.11.tar.gz) = 952305 diff --git a/devel/py-pytest4/files/patch-testing-test_parseopt.py b/devel/py-pytest4/files/patch-testing-test_parseopt.py new file mode 100644 index 000000000000..22683ffee3af --- /dev/null +++ b/devel/py-pytest4/files/patch-testing-test_parseopt.py @@ -0,0 +1,11 @@ +--- testing/test_parseopt.py.orig 2020-06-05 12:09:03 UTC ++++ testing/test_parseopt.py +@@ -305,7 +305,7 @@ def test_argcomplete(testdir, monkeypatch): + # redirect output from argcomplete to stdin and stderr is not trivial + # http://stackoverflow.com/q/12589419/1307905 + # so we use bash +- fp.write('COMP_WORDBREAKS="$COMP_WORDBREAKS" python -m pytest 8>&1 9>&2') ++ fp.write('COMP_WORDBREAKS="$COMP_WORDBREAKS" %%PYTHON_CMD%% -m pytest 8>&1 9>&2') + # alternative would be exteneded Testdir.{run(),_run(),popen()} to be able + # to handle a keyword argument env that replaces os.environ in popen or + # extends the copy, advantage: could not forget to restore diff --git a/devel/py-pytest4/pkg-descr b/devel/py-pytest4/pkg-descr new file mode 100644 index 000000000000..fe225513bc2a --- /dev/null +++ b/devel/py-pytest4/pkg-descr @@ -0,0 +1,12 @@ +The pytest testing tool makes it easy to write small tests, yet scales to +support complex functional testing. + +Features: + + * Detailed info on failing assert statements + * Auto-discovery of test modules and functions + * Modular fixtures to manage small or parametrized long-lived test resources + * Can run unittest (or trial), nose test suites out of the box + * Rich plugin architecture, with over 315+ external plugins + +WWW: https://docs.pytest.org/en/latest/