Flagsmith/flagsmith

Using django-lifecycle hooks results in `error: Untyped decorator makes function "x" untyped [misc]`

Open

#5,240 opened on Mar 24, 2025

View on GitHub
 (5 comments) (0 reactions) (1 assignee)Python (264 forks)batch import
good first issue

Repository metrics

Stars
 (3,475 stars)
PR merge metrics
 (Avg merge 2d 21h) (141 merged PRs in 30d)

Description

When using the @hook decorator from django-lifecycle on a model method, mypy throws the following error:

error: Untyped decorator makes function "x" untyped [misc]

This means that, currently, all methods decorated with @hook(...) are annotated with # type: ignore[misc]. The goal of this issue is to remove those type: ignore[misc] comments, while still having mypy pass its validation. Depending on the fix, it may be necessary to split the work up into multiple PRs as there are a lot of instances of this across the codebase.

Here is an example: https://github.com/Flagsmith/flagsmith/blob/main/api/features/models.py#L142

Contributor guide