From afbeffa3e91f3509be467ffee15c3c4a8a85ce85 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Sat, 3 Oct 2026 12:54:35 +0300 Subject: [PATCH] fix(errors): drop skip_creator_parsing advice for parameterized generic params --- modern_di/providers/factory.py | 3 +-- tests/test_types_parser.py | 3 ++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modern_di/providers/factory.py b/modern_di/providers/factory.py index 8468e462..8bc69632 100644 --- a/modern_di/providers/factory.py +++ b/modern_di/providers/factory.py @@ -73,8 +73,7 @@ def __init__( # noqa: PLR0913 parameter_name=param_name, reason=( f"parameterized generic annotation {item.raw_annotation!r} cannot be resolved by type; " - f"pass the value via the kwargs parameter, give the parameter a default, " - f"or use skip_creator_parsing=True" + "pass the value via the kwargs parameter or give the parameter a default" ), ) self._parsed_kwargs = parsed.params diff --git a/tests/test_types_parser.py b/tests/test_types_parser.py index 2d9f715d..5b9fe28a 100644 --- a/tests/test_types_parser.py +++ b/tests/test_types_parser.py @@ -259,8 +259,9 @@ def _generic_param_creator(x: list[_GenericDep]) -> str: def test_parameterized_generic_param_without_default_raises_at_declaration() -> None: assert _generic_param_creator([]) == "[]" - with pytest.raises(exceptions.UnsupportedCreatorParameterError, match=r"list\[.*_GenericDep\]"): + with pytest.raises(exceptions.UnsupportedCreatorParameterError, match=r"list\[.*_GenericDep\]") as exc_info: providers.Factory(creator=_generic_param_creator) + assert "skip_creator_parsing" not in str(exc_info.value) def test_parameterized_generic_param_supplied_via_kwargs_is_allowed() -> None: