ruff
673167a5 - [`flake8-bugbear`] Include certain guaranteed-mutable expressions: tuples, generators, and assignment expressions (`B006`) (#20024)

Commit
70 days ago
[`flake8-bugbear`] Include certain guaranteed-mutable expressions: tuples, generators, and assignment expressions (`B006`) (#20024) ## Summary Resolves #20004 The implementation now supports guaranteed-mutable expressions in the following cases: - Tuple literals with mutable elements (supporting deep nesting) - Generator expressions - Named expressions (walrus operator) containing mutable components Preserves original formatting for assignment value: ```python # Test case def f5(x=([1, ])): print(x) ``` ```python # Fix before def f5(x=(None)): if x is None: x = [1] print(x) ``` ```python # Fix after def f5(x=None): if x is None: x = ([1, ]) print(x) ``` The expansion of detected expressions and the new fixes gated behind previews. ## Test Plan - Added B006_9.py with a bunch of test cases - Generated snapshots --------- Co-authored-by: Igor Drokin <drokinii1017@gmail.com> Co-authored-by: dylwil3 <dylwil3@gmail.com>
Author
Parents
Loading