TGViewer
Находки в опенсорсе: Python Находки в опенсорсе: Python @opensource_findings_python · 1.06K subscribers
Post #161 884
New issue to wemake-services/django-modern-rest by @sobolevn
Validate that controllers with `blueprints` can't have `component_parsers`
(#217)

Otherwise we would do two parsings in a single HTTP request.
This is not good.

Right now this code is possible:

@final
class _ErrorBody(pydantic.BaseModel):
error: int

class _ErrorHandlingBlueprint(
Blueprint[PydanticSerializer],
Body[_ErrorBody], # <- first body parsing
):
def post(self) -> str:
return str(self.parsed_body.error)

class _ErrorHandlingController(
Controller[PydanticSerializer],
Body[dict[str, int]], # <- second body parsing
):
blueprints: ClassVar[Sequence[_BlueprintT]] = [_ErrorHandlingBlueprint]

def get(self) -> int:
return self.parsed_body.get('error', 0)

This must raise a validation exception in ControllerValidator.

We allow endpoints in the final composed controllers, but they must not use any parsing. Like OPTIONS, for example. If users want to have parsed data, then they should create a blueprint.

#django_modern_rest #good_first_issue #enhancement #help_wanted

sent via relator
More from @opensource_findings_python
  1. Sep 25, 2026🚀 New issue to wemake-services/django-modern-rest by @sobolevn 📝 `Settings.throttling_al…
  2. Sep 25, 2026🚀 New issue to wemake-services/wemake-python-styleguide by @sobolevn 📝 Incorrect Jones c…
  3. Sep 25, 2026🚀 New issue to wemake-services/django-modern-rest by @sobolevn 📝 `_validate_throttling`…
  4. Sep 24, 2026🚀 New issue to wemake-services/django-modern-rest by @sobolevn 📝 Flaky `test_empty_valid…
  5. Sep 24, 2026🚀 New issue to wemake-services/django-modern-rest by @sobolevn 📝 `CookieJWT[A]syncAuth`…
  6. Sep 23, 2026🚀 New issue to ag2ai/faststream by @IvanKirpichnikov 📝 Feature: Implementation of the `A…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →