dev-python/pytest-mypy-plugins: new package, add 1.11.1

Signed-off-by: Lucio Sauer <watermanpaint@posteo.net>
This commit is contained in:
Lucio Sauer 2023-05-22 02:42:59 +02:00
parent 8239a20364
commit b21c536c3e
No known key found for this signature in database
GPG Key ID: 5568A2DDA60CA297
4 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1 @@
DIST pytest-mypy-plugins-1.11.1.gh.tar.gz 18201 BLAKE2B a21b089321a3d632225e0ac6aa921b23bba111dcc5234c2ada32522b7659533970a9bd19bb432d3304b0291e32ba067ab75c549c4552ca742835155ab8e711b1 SHA512 ac7a0973aba070c80480681f2910d40c7e510c906f8030413ba5c94f50131df19036c7183bfad3f211d6d375661753b9d4ff2a73b3bd7af06d0f442e94af3f64

View File

@ -0,0 +1,45 @@
Chevron, an engine for the Mustache templating language, has been unmaintained
since 2021 and is not part of ::gentoo. The Jinja and Mustache templating
languages use the same syntax as far as this project is concerned.
PR issued upstream by <watermanpaint@posteo.net>:
https://github.com/typeddjango/pytest-mypy-plugins/pull/117
--- a/pytest_mypy_plugins/utils.py
+++ b/pytest_mypy_plugins/utils.py
@@ -11,10 +11,11 @@ from itertools import zip_longest
from pathlib import Path
from typing import Any, Callable, Dict, Iterator, List, Mapping, Optional, Tuple, Union
-import chevron
+import jinja2
import regex
from decorator import contextmanager
+_rendering_env = jinja2.Environment()
@contextmanager
def temp_environ() -> Iterator[None]:
@@ -351,9 +352,10 @@ def extract_output_matchers_from_out(out: str, params: Mapping[str, Any], regex:
return matchers
-def render_template(template: str, data: Mapping[str, Any]) -> str:
- return chevron.render(template=template, data={k: v if v is not None else "None" for k, v in data.items()})
+def render_template(template: str, data: Mapping[str, Any]) -> str:
+ template = _rendering_env.from_string(template)
+ return template.render({k: v if v is not None else "None" for k, v in data.items()})
def get_func_first_lnum(attr: Callable[..., None]) -> Optional[Tuple[int, List[str]]]:
lines, _ = inspect.getsourcelines(attr)
--- a/setup.py
+++ b/setup.py
@@ -8,7 +8,7 @@ dependencies = [
"mypy>=0.970",
"decorator",
"pyyaml",
- "chevron",
+ "jinja2",
"regex",
"packaging",
]

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>watermanpaint@posteo.net</email>
<name>Lucio Sauer</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<changelog>
https://github.com/typeddjango/pytest-mypy-plugins/blob/master/CHANGELOG.md
</changelog>
<remote-id type="github">typeddjango/pytest-mypy-plugins</remote-id>
<remote-id type="pypi">pytest-mypy-plugins</remote-id>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,37 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_11 )
inherit distutils-r1
DESCRIPTION="pytest plugin for testing mypy types, stubs, plugins"
HOMEPAGE="
https://pypi.org/project/pytest-mypy-plugins/
https://github.com/typeddjango/pytest-mypy-plugins/
"
SRC_URI="https://github.com/typeddjango/pytest-mypy-plugins/archive/refs/tags/${PV}.tar.gz
-> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
PATCHES=(
"${FILESDIR}"/${P}-deprecated-chevron-to-jinja.patch
)
DOCS="README* CHANGELOG*"
RDEPEND="
dev-python/decorator[${PYTHON_USEDEP}]
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/mypy[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest