From e1c26fe1cd873bf01d88d558b92bd38b2cc80dc9 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Sat, 3 Oct 2026 12:51:51 +0300 Subject: [PATCH] fix(errors): drop skip_creator_parsing advice for positional-only params --- modern_di/types_parser.py | 5 +---- tests/test_types_parser.py | 1 + 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/modern_di/types_parser.py b/modern_di/types_parser.py index f271b10f..39caa375 100644 --- a/modern_di/types_parser.py +++ b/modern_di/types_parser.py @@ -67,10 +67,7 @@ def _parse_parameter( raise exceptions.UnsupportedCreatorParameterError( creator=creator, parameter_name=param_name, - reason=( - "positional-only parameters cannot be passed by keyword; " - "give the parameter a default or use skip_creator_parsing=True" - ), + reason="positional-only parameters cannot be passed by keyword; give the parameter a default", ) default = UNSET diff --git a/tests/test_types_parser.py b/tests/test_types_parser.py index d6f80bd0..2d9f715d 100644 --- a/tests/test_types_parser.py +++ b/tests/test_types_parser.py @@ -295,6 +295,7 @@ def test_positional_only_param_raises_at_declaration() -> None: providers.Factory(creator=_pos_only_creator) # kwargs cannot help: the creator is always invoked creator(**kwargs) assert "kwargs" not in str(exc_info.value) + assert "skip_creator_parsing" not in str(exc_info.value) def _pos_only_with_default(x: int = 0, /, y: int = 1) -> int: