---
source: crates/ruff_linter/src/rules/ruff/mod.rs
---
RUF022 [*] `__all__` is not sorted
 --> RUF022.py:5:11
  |
3 | ##################################################
4 |
5 | __all__ = ["d", "c", "b", "a"]  # a comment that is untouched
  |           ^^^^^^^^^^^^^^^^^^^^
6 | __all__ += ["foo", "bar", "antipasti"]
7 | __all__ = ("d", "c", "b", "a")
  |
help: Apply an isort-style sorting to `__all__`
  |
4 |
  - __all__ = ["d", "c", "b", "a"]  # a comment that is untouched
5 + __all__ = ["a", "b", "c", "d"]  # a comment that is untouched
6 | __all__ += ["foo", "bar", "antipasti"]
  |

RUF022 [*] `__all__` is not sorted
 --> RUF022.py:6:12
  |
5 | __all__ = ["d", "c", "b", "a"]  # a comment that is untouched
6 | __all__ += ["foo", "bar", "antipasti"]
  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
7 | __all__ = ("d", "c", "b", "a")
  |
help: Apply an isort-style sorting to `__all__`
  |
5 | __all__ = ["d", "c", "b", "a"]  # a comment that is untouched
  - __all__ += ["foo", "bar", "antipasti"]
6 + __all__ += ["antipasti", "bar", "foo"]
7 | __all__ = ("d", "c", "b", "a")
  |

RUF022 [*] `__all__` is not sorted
 --> RUF022.py:7:11
  |
5 | __all__ = ["d", "c", "b", "a"]  # a comment that is untouched
6 | __all__ += ["foo", "bar", "antipasti"]
7 | __all__ = ("d", "c", "b", "a")
  |           ^^^^^^^^^^^^^^^^^^^^
8 |
9 | # Quoting style is retained,
  |
help: Apply an isort-style sorting to `__all__`
  |
6 | __all__ += ["foo", "bar", "antipasti"]
  - __all__ = ("d", "c", "b", "a")
7 + __all__ = ("a", "b", "c", "d")
8 |
  |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:11:17
   |
 9 | # Quoting style is retained,
10 | # but unnecessary parens are not
11 | __all__: list = ['b', "c", ((('a')))]
   |                 ^^^^^^^^^^^^^^^^^^^^^
12 | # Trailing commas are also not retained in single-line `__all__` definitions
13 | # (but they are in multiline `__all__` definitions)
   |
help: Apply an isort-style sorting to `__all__`
   |
10 | # but unnecessary parens are not
   - __all__: list = ['b', "c", ((('a')))]
11 + __all__: list = ['a', 'b', "c"]
12 | # Trailing commas are also not retained in single-line `__all__` definitions
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:14:18
   |
12 | # Trailing commas are also not retained in single-line `__all__` definitions
13 | # (but they are in multiline `__all__` definitions)
14 | __all__: tuple = ("b", "c", "a",)
   |                  ^^^^^^^^^^^^^^^^
15 |
16 | if bool():
   |
help: Apply an isort-style sorting to `__all__`
   |
13 | # (but they are in multiline `__all__` definitions)
   - __all__: tuple = ("b", "c", "a",)
14 + __all__: tuple = ("a", "b", "c")
15 |
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:17:16
   |
16 | if bool():
17 |     __all__ += ("x", "m", "a", "s")
   |                ^^^^^^^^^^^^^^^^^^^^
18 | else:
19 |     __all__ += "foo3", "foo2", "foo1"  # NB: an implicit tuple (without parens)
   |
help: Apply an isort-style sorting to `__all__`
   |
16 | if bool():
   -     __all__ += ("x", "m", "a", "s")
17 +     __all__ += ("a", "m", "s", "x")
18 | else:
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:19:16
   |
17 |     __all__ += ("x", "m", "a", "s")
18 | else:
19 |     __all__ += "foo3", "foo2", "foo1"  # NB: an implicit tuple (without parens)
   |                ^^^^^^^^^^^^^^^^^^^^^^
20 |
21 | __all__: list[str] = ["the", "three", "little", "pigs"]
   |
help: Apply an isort-style sorting to `__all__`
   |
18 | else:
   -     __all__ += "foo3", "foo2", "foo1"  # NB: an implicit tuple (without parens)
19 +     __all__ += "foo1", "foo2", "foo3"  # NB: an implicit tuple (without parens)
20 |
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:21:22
   |
19 |     __all__ += "foo3", "foo2", "foo1"  # NB: an implicit tuple (without parens)
20 |
21 | __all__: list[str] = ["the", "three", "little", "pigs"]
   |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
22 |
23 | __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
   |
help: Apply an isort-style sorting to `__all__`
   |
20 |
   - __all__: list[str] = ["the", "three", "little", "pigs"]
21 + __all__: list[str] = ["little", "pigs", "the", "three"]
22 |
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:23:11
   |
21 | __all__: list[str] = ["the", "three", "little", "pigs"]
22 |
23 | __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
24 | __all__.extend(["foo", "bar"])
25 | __all__.extend(("foo", "bar"))
   |
help: Apply an isort-style sorting to `__all__`
   |
22 |
   - __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
23 + __all__ = "an_unparenthesized_tuple", "in", "parenthesized_item"
24 | __all__.extend(["foo", "bar"])
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:24:16
   |
23 | __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
24 | __all__.extend(["foo", "bar"])
   |                ^^^^^^^^^^^^^^
25 | __all__.extend(("foo", "bar"))
26 | __all__.extend((((["foo", "bar"]))))
   |
help: Apply an isort-style sorting to `__all__`
   |
23 | __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
   - __all__.extend(["foo", "bar"])
24 + __all__.extend(["bar", "foo"])
25 | __all__.extend(("foo", "bar"))
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:25:16
   |
23 | __all__ = ("parenthesized_item"), "in", ("an_unparenthesized_tuple")
24 | __all__.extend(["foo", "bar"])
25 | __all__.extend(("foo", "bar"))
   |                ^^^^^^^^^^^^^^
26 | __all__.extend((((["foo", "bar"]))))
   |
help: Apply an isort-style sorting to `__all__`
   |
24 | __all__.extend(["foo", "bar"])
   - __all__.extend(("foo", "bar"))
25 + __all__.extend(("bar", "foo"))
26 | __all__.extend((((["foo", "bar"]))))
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:26:19
   |
24 | __all__.extend(["foo", "bar"])
25 | __all__.extend(("foo", "bar"))
26 | __all__.extend((((["foo", "bar"]))))
   |                   ^^^^^^^^^^^^^^
27 |
28 | ####################################
   |
help: Apply an isort-style sorting to `__all__`
   |
25 | __all__.extend(("foo", "bar"))
   - __all__.extend((((["foo", "bar"]))))
26 + __all__.extend((((["bar", "foo"]))))
27 |
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:32:11
   |
30 |   ####################################
31 |
32 |   __all__ = (
   |  ___________^
33 | |     "d0",
34 | |     "c0",  # a comment regarding 'c0'
35 | |     "b0",
36 | |     # a comment regarding 'a0':
37 | |     "a0"
38 | | )
   | |_^
39 |
40 |   __all__ = [
   |
help: Apply an isort-style sorting to `__all__`
   |
32 | __all__ = (
   -     "d0",
33 +     # a comment regarding 'a0':
34 +     "a0",
35 +     "b0",
36 |     "c0",  # a comment regarding 'c0'
   -     "b0",
   -     # a comment regarding 'a0':
   -     "a0"
37 +     "d0"
38 | )
   |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:40:11
   |
38 |   )
39 |
40 |   __all__ = [
   |  ___________^
41 | |     "d",
42 | |     "c",  # a comment regarding 'c'
43 | |     "b",
44 | |     # a comment regarding 'a':
45 | |     "a"
46 | | ]
   | |_^
47 |
48 |   # we implement an "isort-style sort":
   |
help: Apply an isort-style sorting to `__all__`
   |
40 | __all__ = [
   -     "d",
41 +     # a comment regarding 'a':
42 +     "a",
43 +     "b",
44 |     "c",  # a comment regarding 'c'
   -     "b",
   -     # a comment regarding 'a':
   -     "a"
45 +     "d"
46 | ]
   |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:54:11
   |
52 |   # This (which is currently alphabetically sorted)
53 |   # should get reordered accordingly:
54 |   __all__ = [
   |  ___________^
55 | |     "APRIL",
56 | |     "AUGUST",
57 | |     "Calendar",
58 | |     "DECEMBER",
59 | |     "Day",
60 | |     "FEBRUARY",
61 | |     "FRIDAY",
62 | |     "HTMLCalendar",
63 | |     "IllegalMonthError",
64 | |     "JANUARY",
65 | |     "JULY",
66 | |     "JUNE",
67 | |     "LocaleHTMLCalendar",
68 | |     "MARCH",
69 | |     "MAY",
70 | |     "MONDAY",
71 | |     "Month",
72 | |     "NOVEMBER",
73 | |     "OCTOBER",
74 | |     "SATURDAY",
75 | |     "SEPTEMBER",
76 | |     "SUNDAY",
77 | |     "THURSDAY",
78 | |     "TUESDAY",
79 | |     "TextCalendar",
80 | |     "WEDNESDAY",
81 | |     "calendar",
82 | |     "timegm",
83 | |     "weekday",
84 | |     "weekheader"]
   | |_________________^
85 |
86 |   ##########################################
   |
help: Apply an isort-style sorting to `__all__`
   |
56 |     "AUGUST",
   -     "Calendar",
57 |     "DECEMBER",
   -     "Day",
58 |     "FEBRUARY",
59 |     "FRIDAY",
   -     "HTMLCalendar",
   -     "IllegalMonthError",
60 |     "JANUARY",
61 |     "JULY",
62 |     "JUNE",
   -     "LocaleHTMLCalendar",
63 |     "MARCH",
64 |     "MAY",
65 |     "MONDAY",
   -     "Month",
66 |     "NOVEMBER",
--------------------------------------------------------------------------------
72 |     "TUESDAY",
   -     "TextCalendar",
73 |     "WEDNESDAY",
74 +     "Calendar",
75 +     "Day",
76 +     "HTMLCalendar",
77 +     "IllegalMonthError",
78 +     "LocaleHTMLCalendar",
79 +     "Month",
80 +     "TextCalendar",
81 |     "calendar",
82 |     "timegm",
83 |     "weekday",
   -     "weekheader"]
84 +     "weekheader",
85 + ]
86 |
   |

RUF022 [*] `__all__` is not sorted
  --> RUF022.py:91:11
   |
90 |   # comment0
91 |   __all__ = ("d", "a",  # comment1
   |  ___________^
92 | |            # comment2
93 | |            "f", "b",
94 | |                                         "strangely",  # comment3
95 | |             # comment4
96 | |     "formatted",
97 | |     # comment5
98 | | )  # comment6
   | |_^
99 |   # comment7
   |
help: Apply an isort-style sorting to `__all__`
    |
90  | # comment0
    - __all__ = ("d", "a",  # comment1
    -            # comment2
    -            "f", "b",
    -                                         "strangely",  # comment3
    -             # comment4
91  + __all__ = (
92  +     "a",
93  +     "b",
94  +     "d",  # comment1
95  +     # comment2
96  +     "f",
97  +     # comment4
98  |     "formatted",
99  +     "strangely",  # comment3
100 |     # comment5
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:101:11
    |
 99 |   # comment7
100 |
101 |   __all__ = [  # comment0
    |  ___________^
102 | |     # comment1
103 | |     # comment2
104 | |     "dx", "cx", "bx", "ax"  # comment3
105 | |     # comment4
106 | |     # comment5
107 | |     # comment6
108 | | ]  # comment7
    | |_^
109 |
110 |   __all__ = ["register", "lookup", "open", "EncodedFile", "BOM", "BOM_BE",
    |
help: Apply an isort-style sorting to `__all__`
    |
101 | __all__ = [  # comment0
102 +     "ax",
103 +     "bx",
104 +     "cx",
105 |     # comment1
106 |     # comment2
    -     "dx", "cx", "bx", "ax"  # comment3
107 +     "dx"  # comment3
108 |     # comment4
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:110:11
    |
108 |   ]  # comment7
109 |
110 |   __all__ = ["register", "lookup", "open", "EncodedFile", "BOM", "BOM_BE",
    |  ___________^
111 | |            "BOM_LE", "BOM32_BE", "BOM32_LE", "BOM64_BE", "BOM64_LE",
112 | |            "BOM_UTF8", "BOM_UTF16", "BOM_UTF16_LE", "BOM_UTF16_BE",
113 | |            "BOM_UTF32", "BOM_UTF32_LE", "BOM_UTF32_BE",
114 | |            "CodecInfo", "Codec", "IncrementalEncoder", "IncrementalDecoder",
115 | |            "StreamReader", "StreamWriter",
116 | |            "StreamReaderWriter", "StreamRecoder",
117 | |            "getencoder", "getdecoder", "getincrementalencoder",
118 | |            "getincrementaldecoder", "getreader", "getwriter",
119 | |            "encode", "decode", "iterencode", "iterdecode",
120 | |            "strict_errors", "ignore_errors", "replace_errors",
121 | |            "xmlcharrefreplace_errors",
122 | |            "backslashreplace_errors", "namereplace_errors",
123 | |            "register_error", "lookup_error"]
    | |____________________________________________^
124 |
125 |   __all__: tuple[str, ...] = (  # a comment about the opening paren
    |
help: Apply an isort-style sorting to `__all__`
    |
109 |
    - __all__ = ["register", "lookup", "open", "EncodedFile", "BOM", "BOM_BE",
    -            "BOM_LE", "BOM32_BE", "BOM32_LE", "BOM64_BE", "BOM64_LE",
    -            "BOM_UTF8", "BOM_UTF16", "BOM_UTF16_LE", "BOM_UTF16_BE",
    -            "BOM_UTF32", "BOM_UTF32_LE", "BOM_UTF32_BE",
    -            "CodecInfo", "Codec", "IncrementalEncoder", "IncrementalDecoder",
    -            "StreamReader", "StreamWriter",
    -            "StreamReaderWriter", "StreamRecoder",
    -            "getencoder", "getdecoder", "getincrementalencoder",
    -            "getincrementaldecoder", "getreader", "getwriter",
    -            "encode", "decode", "iterencode", "iterdecode",
    -            "strict_errors", "ignore_errors", "replace_errors",
    -            "xmlcharrefreplace_errors",
    -            "backslashreplace_errors", "namereplace_errors",
    -            "register_error", "lookup_error"]
110 + __all__ = [
111 +     "BOM",
112 +     "BOM32_BE",
113 +     "BOM32_LE",
114 +     "BOM64_BE",
115 +     "BOM64_LE",
116 +     "BOM_BE",
117 +     "BOM_LE",
118 +     "BOM_UTF8",
119 +     "BOM_UTF16",
120 +     "BOM_UTF16_BE",
121 +     "BOM_UTF16_LE",
122 +     "BOM_UTF32",
123 +     "BOM_UTF32_BE",
124 +     "BOM_UTF32_LE",
125 +     "Codec",
126 +     "CodecInfo",
127 +     "EncodedFile",
128 +     "IncrementalDecoder",
129 +     "IncrementalEncoder",
130 +     "StreamReader",
131 +     "StreamReaderWriter",
132 +     "StreamRecoder",
133 +     "StreamWriter",
134 +     "backslashreplace_errors",
135 +     "decode",
136 +     "encode",
137 +     "getdecoder",
138 +     "getencoder",
139 +     "getincrementaldecoder",
140 +     "getincrementalencoder",
141 +     "getreader",
142 +     "getwriter",
143 +     "ignore_errors",
144 +     "iterdecode",
145 +     "iterencode",
146 +     "lookup",
147 +     "lookup_error",
148 +     "namereplace_errors",
149 +     "open",
150 +     "register",
151 +     "register_error",
152 +     "replace_errors",
153 +     "strict_errors",
154 +     "xmlcharrefreplace_errors",
155 + ]
156 |
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:125:28
    |
123 |              "register_error", "lookup_error"]
124 |
125 |   __all__: tuple[str, ...] = (  # a comment about the opening paren
    |  ____________________________^
126 | |     # multiline comment about "bbb" part 1
127 | |     # multiline comment about "bbb" part 2
128 | |     "bbb",
129 | |     # multiline comment about "aaa" part 1
130 | |     # multiline comment about "aaa" part 2
131 | |     "aaa",
132 | | )
    | |_^
133 |
134 |   # we use natural sort for `__all__`,
    |
help: Apply an isort-style sorting to `__all__`
    |
125 | __all__: tuple[str, ...] = (  # a comment about the opening paren
126 +     # multiline comment about "aaa" part 1
127 +     # multiline comment about "aaa" part 2
128 +     "aaa",
129 |     # multiline comment about "bbb" part 1
130 |     # multiline comment about "bbb" part 2
131 |     "bbb",
    -     # multiline comment about "aaa" part 1
    -     # multiline comment about "aaa" part 2
    -     "aaa",
132 | )
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:138:11
    |
136 |   # Also, this doesn't end with a trailing comma,
137 |   # so the autofix shouldn't introduce one:
138 |   __all__ = (
    |  ___________^
139 | |     "aadvark237",
140 | |     "aadvark10092",
141 | |     "aadvark174",         # the very long whitespace span before this comment is retained
142 | |     "aadvark532"                       # the even longer whitespace span before this comment is retained
143 | | )
    | |_^
144 |
145 |   __all__.extend((  # comment0
    |
help: Apply an isort-style sorting to `__all__`
    |
138 | __all__ = (
139 +     "aadvark174",         # the very long whitespace span before this comment is retained
140 |     "aadvark237",
    -     "aadvark10092",
    -     "aadvark174",         # the very long whitespace span before this comment is retained
    -     "aadvark532"                       # the even longer whitespace span before this comment is retained
141 +     "aadvark532",                       # the even longer whitespace span before this comment is retained
142 +     "aadvark10092"
143 | )
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:145:16
    |
143 |   )
144 |
145 |   __all__.extend((  # comment0
    |  ________________^
146 | |     # comment about foo
147 | |     "foo",  # comment about foo
148 | |     # comment about bar
149 | |     "bar"  # comment about bar
150 | |     # comment1
151 | | ))  # comment2
    | |_^
152 |
153 |   __all__.extend(  # comment0
    |
help: Apply an isort-style sorting to `__all__`
    |
145 | __all__.extend((  # comment0
146 +     # comment about bar
147 +     "bar",  # comment about bar
148 |     # comment about foo
    -     "foo",  # comment about foo
    -     # comment about bar
    -     "bar"  # comment about bar
149 +     "foo"  # comment about foo
150 |     # comment1
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:155:5
    |
153 |   __all__.extend(  # comment0
154 |       # comment1
155 | /     (  # comment2
156 | |         # comment about foo
157 | |         "foo",  # comment about foo
158 | |         # comment about bar
159 | |         "bar"  # comment about bar
160 | |         # comment3
161 | |     )  # comment4
    | |_____^
162 |   )  # comment2
    |
help: Apply an isort-style sorting to `__all__`
    |
155 |     (  # comment2
156 +         # comment about bar
157 +         "bar",  # comment about bar
158 |         # comment about foo
    -         "foo",  # comment about foo
    -         # comment about bar
    -         "bar"  # comment about bar
159 +         "foo"  # comment about foo
160 |         # comment3
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:164:16
    |
162 |   )  # comment2
163 |
164 |   __all__.extend([  # comment0
    |  ________________^
165 | |     # comment about foo
166 | |     "foo",  # comment about foo
167 | |     # comment about bar
168 | |     "bar"  # comment about bar
169 | |     # comment1
170 | | ])  # comment2
    | |_^
171 |
172 |   __all__.extend(  # comment0
    |
help: Apply an isort-style sorting to `__all__`
    |
164 | __all__.extend([  # comment0
165 +     # comment about bar
166 +     "bar",  # comment about bar
167 |     # comment about foo
    -     "foo",  # comment about foo
    -     # comment about bar
    -     "bar"  # comment about bar
168 +     "foo"  # comment about foo
169 |     # comment1
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:174:5
    |
172 |   __all__.extend(  # comment0
173 |       # comment1
174 | /     [  # comment2
175 | |         # comment about foo
176 | |         "foo",  # comment about foo
177 | |         # comment about bar
178 | |         "bar"  # comment about bar
179 | |         # comment3
180 | |     ]  # comment4
    | |_____^
181 |   )  # comment2
    |
help: Apply an isort-style sorting to `__all__`
    |
174 |     [  # comment2
175 +         # comment about bar
176 +         "bar",  # comment about bar
177 |         # comment about foo
    -         "foo",  # comment about foo
    -         # comment about bar
    -         "bar"  # comment about bar
178 +         "foo"  # comment about foo
179 |         # comment3
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:183:11
    |
181 |   )  # comment2
182 |
183 |   __all__ = ["Style", "Treeview",
    |  ___________^
184 | |            # Extensions
185 | |            "LabeledScale", "OptionMenu",
186 | | ]
    | |_^
187 |
188 |   __all__ = ["Awaitable", "Coroutine",
    |
help: Apply an isort-style sorting to `__all__`
    |
182 |
    - __all__ = ["Style", "Treeview",
    -            # Extensions
    -            "LabeledScale", "OptionMenu",
183 + __all__ = [
184 +     # Extensions
185 +     "LabeledScale",
186 +     "OptionMenu",
187 +     "Style",
188 +     "Treeview",
189 | ]
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:188:11
    |
186 |   ]
187 |
188 |   __all__ = ["Awaitable", "Coroutine",
    |  ___________^
189 | |            "AsyncIterable", "AsyncIterator", "AsyncGenerator",
190 | |            ]
    | |____________^
191 |
192 |   __all__ = [
    |
help: Apply an isort-style sorting to `__all__`
    |
187 |
    - __all__ = ["Awaitable", "Coroutine",
    -            "AsyncIterable", "AsyncIterator", "AsyncGenerator",
    -            ]
188 + __all__ = [
189 +     "AsyncGenerator",
190 +     "AsyncIterable",
191 +     "AsyncIterator",
192 +     "Awaitable",
193 +     "Coroutine",
194 + ]
195 |
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:192:11
    |
190 |              ]
191 |
192 |   __all__ = [
    |  ___________^
193 | |     "foo",
194 | |     "bar",
195 | |     "baz",
196 | |     ]
    | |_____^
197 |
198 |   #########################################################################
    |
help: Apply an isort-style sorting to `__all__`
    |
192 | __all__ = [
    -     "foo",
193 |     "bar",
194 |     "baz",
195 +     "foo",
196 |     ]
    |

RUF022 `__all__` is not sorted
   --> RUF022.py:204:11
    |
202 |   #########################################################################
203 |
204 |   __all__ = (
    |  ___________^
205 | |     "look",
206 | |     (
207 | |         "a_veeeeeeeeeeeeeeeeeeery_long_parenthesized_item"
208 | |     ),
209 | | )
    | |_^
210 |
211 |   __all__ = (
    |
help: Apply an isort-style sorting to `__all__`

RUF022 `__all__` is not sorted
   --> RUF022.py:211:11
    |
209 |   )
210 |
211 |   __all__ = (
    |  ___________^
212 | |     "b",
213 | |     ((
214 | |         "c"
215 | |     )),
216 | |     "a"
217 | | )
    | |_^
218 |
219 |   __all__ = ("don't" "care" "about", "__all__" "with", "concatenated" "strings")
    |
help: Apply an isort-style sorting to `__all__`

RUF022 `__all__` is not sorted
   --> RUF022.py:219:11
    |
217 | )
218 |
219 | __all__ = ("don't" "care" "about", "__all__" "with", "concatenated" "strings")
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
220 |
221 | ############################################################
    |
help: Apply an isort-style sorting to `__all__`

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:225:11
    |
223 |   ############################################################
224 |
225 |   __all__ = (
    |  ___________^
226 | |     "loads",
227 | |     "dumps",)
    | |_____________^
228 |
229 |   __all__ = [
    |
help: Apply an isort-style sorting to `__all__`
    |
225 | __all__ = (
226 +     "dumps",
227 |     "loads",
    -     "dumps",)
228 + )
229 |
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:229:11
    |
227 |       "dumps",)
228 |
229 |   __all__ = [
    |  ___________^
230 | |     "loads",
231 | |     "dumps"       ,     ]
    | |_________________________^
232 |
233 |   __all__ = ['xp', 'yp',
    |
help: Apply an isort-style sorting to `__all__`
    |
229 | __all__ = [
    -     "loads",
    -     "dumps"       ,     ]
230 +     "dumps",
231 +     "loads"       ,     ]
232 |
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:233:11
    |
231 |       "dumps"       ,     ]
232 |
233 |   __all__ = ['xp', 'yp',
    |  ___________^
234 | |                 'canvas'
235 | |
236 | |                 # very strangely placed comment
237 | |
238 | |                 ,
239 | |
240 | |                 # another strangely placed comment
241 | |                 ]
    | |_________________^
242 |
243 |   __all__ = (
    |
help: Apply an isort-style sorting to `__all__`
    |
232 |
    - __all__ = ['xp', 'yp',
    -                 'canvas'
233 + __all__ = [
234 +     'canvas',
235 +     'xp',
236 +     'yp'
237 |
    |

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:243:11
    |
241 |                   ]
242 |
243 |   __all__ = (
    |  ___________^
244 | |     "foo"
245 | |     # strange comment 1
246 | |     ,
247 | |     # comment about bar
248 | |     "bar"
249 | |     # strange comment 2
250 | |     ,
251 | | )
    | |_^
252 |
253 |   __all__ = (  # comment about the opening paren
    |
help: Apply an isort-style sorting to `__all__`
    |
243 | __all__ = (
    -     "foo"
244 |     # strange comment 1
    -     ,
245 |     # comment about bar
    -     "bar"
246 +     "bar",
247 +     "foo"
248 |     # strange comment 2
    |
note: This is an unsafe fix and may change runtime behavior

RUF022 [*] `__all__` is not sorted
   --> RUF022.py:253:11
    |
251 |   )
252 |
253 |   __all__ = (  # comment about the opening paren
    |  ___________^
254 | |     # multiline strange comment 0a
255 | |     # multiline strange comment 0b
256 | |     "foo"  # inline comment about foo
257 | |     # multiline strange comment 1a
258 | |     # multiline strange comment 1b
259 | |     ,  # comment about the comma??
260 | |     # comment about bar part a
261 | |     # comment about bar part b
262 | |     "bar"  # inline comment about bar
263 | |     # strange multiline comment comment 2a
264 | |     # strange multiline comment 2b
265 | |     ,
266 | |     # strange multiline comment 3a
267 | |     # strange multiline comment 3b
268 | | )  # comment about the closing paren
    | |_^
269 |
270 |   ###################################
    |
help: Apply an isort-style sorting to `__all__`
    |
253 | __all__ = (  # comment about the opening paren
    -     # multiline strange comment 0a
    -     # multiline strange comment 0b
    -     "foo"  # inline comment about foo
254 |     # multiline strange comment 1a
255 |     # multiline strange comment 1b
    -     ,  # comment about the comma??
256 +       # comment about the comma??
257 |     # comment about bar part a
258 |     # comment about bar part b
    -     "bar"  # inline comment about bar
259 +     "bar",  # inline comment about bar
260 +     # multiline strange comment 0a
261 +     # multiline strange comment 0b
262 +     "foo"  # inline comment about foo
263 |     # strange multiline comment comment 2a
    |
note: This is an unsafe fix and may change runtime behavior
