`unowned_variable_capture` fires for `unowned(unsafe)` captures
#6,817 opened on Jul 10, 2026
Repository metrics
- Stars
- (19,570 stars)
- PR merge metrics
- (Avg merge 16d 3h) (37 merged PRs in 30d)
Description
the unowned_variable_capture rule currently fires not only for unowned captures, but also for unowned(unsafe) captures.
IMO this is excessive, as the unsafe addition already makes clear the programmer's intent to trade safety for performance here, and guarantee that the captured value's lifetime will exceed that of the closure.
suggestion: unowned_variable_capture should fire only for unowned captures, but not for unowned(unsafe) ones.
looking at the rule's documentation, it seems like this should be the behaviour anyway, as the "triggering examples" section lists only unowned captures but no unowned(unsafe) ones.