Skip to content

Commit 27aefe4

Browse files
Update ruff documentation for 0.11.7 (#180)
Automated documentation update for 0.11.7 Co-authored-by: astral-docs-bot <[email protected]>
1 parent be3aeeb commit 27aefe4

File tree

18 files changed

+989
-949
lines changed

18 files changed

+989
-949
lines changed

site/ruff/integrations/index.html

+4-4
Original file line numberDiff line numberDiff line change
@@ -1004,7 +1004,7 @@ <h2 id="gitlab-cicd"><a class="toclink" href="#gitlab-cicd">GitLab CI/CD</a></h2
10041004
<a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a><span class="w"> </span><span class="nt">stage</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">build</span>
10051005
<a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a><span class="w"> </span><span class="nt">interruptible</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
10061006
<a id="__codelineno-4-4" name="__codelineno-4-4" href="#__codelineno-4-4"></a><span class="w"> </span><span class="nt">image</span><span class="p">:</span>
1007-
<a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ghcr.io/astral-sh/ruff:0.11.6-alpine</span>
1007+
<a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ghcr.io/astral-sh/ruff:0.11.7-alpine</span>
10081008
<a id="__codelineno-4-6" name="__codelineno-4-6" href="#__codelineno-4-6"></a><span class="w"> </span><span class="nt">before_script</span><span class="p">:</span>
10091009
<a id="__codelineno-4-7" name="__codelineno-4-7" href="#__codelineno-4-7"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">cd $CI_PROJECT_DIR</span>
10101010
<a id="__codelineno-4-8" name="__codelineno-4-8" href="#__codelineno-4-8"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ruff --version</span>
@@ -1026,7 +1026,7 @@ <h2 id="pre-commit"><a class="toclink" href="#pre-commit">pre-commit</a></h2>
10261026
<p>Ruff can be used as a <a href="https://pre-commit.com">pre-commit</a> hook via <a href="https://github.com/astral-sh/ruff-pre-commit"><code>ruff-pre-commit</code></a>:</p>
10271027
<div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://github.com/astral-sh/ruff-pre-commit</span>
10281028
<a id="__codelineno-5-2" name="__codelineno-5-2" href="#__codelineno-5-2"></a><span class="w"> </span><span class="c1"># Ruff version.</span>
1029-
<a id="__codelineno-5-3" name="__codelineno-5-3" href="#__codelineno-5-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.6</span>
1029+
<a id="__codelineno-5-3" name="__codelineno-5-3" href="#__codelineno-5-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.7</span>
10301030
<a id="__codelineno-5-4" name="__codelineno-5-4" href="#__codelineno-5-4"></a><span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
10311031
<a id="__codelineno-5-5" name="__codelineno-5-5" href="#__codelineno-5-5"></a><span class="w"> </span><span class="c1"># Run the linter.</span>
10321032
<a id="__codelineno-5-6" name="__codelineno-5-6" href="#__codelineno-5-6"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ruff</span>
@@ -1036,7 +1036,7 @@ <h2 id="pre-commit"><a class="toclink" href="#pre-commit">pre-commit</a></h2>
10361036
<p>To enable lint fixes, add the <code>--fix</code> argument to the lint hook:</p>
10371037
<div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://github.com/astral-sh/ruff-pre-commit</span>
10381038
<a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a><span class="w"> </span><span class="c1"># Ruff version.</span>
1039-
<a id="__codelineno-6-3" name="__codelineno-6-3" href="#__codelineno-6-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.6</span>
1039+
<a id="__codelineno-6-3" name="__codelineno-6-3" href="#__codelineno-6-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.7</span>
10401040
<a id="__codelineno-6-4" name="__codelineno-6-4" href="#__codelineno-6-4"></a><span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
10411041
<a id="__codelineno-6-5" name="__codelineno-6-5" href="#__codelineno-6-5"></a><span class="w"> </span><span class="c1"># Run the linter.</span>
10421042
<a id="__codelineno-6-6" name="__codelineno-6-6" href="#__codelineno-6-6"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ruff</span>
@@ -1047,7 +1047,7 @@ <h2 id="pre-commit"><a class="toclink" href="#pre-commit">pre-commit</a></h2>
10471047
<p>To avoid running on Jupyter Notebooks, remove <code>jupyter</code> from the list of allowed filetypes:</p>
10481048
<div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://github.com/astral-sh/ruff-pre-commit</span>
10491049
<a id="__codelineno-7-2" name="__codelineno-7-2" href="#__codelineno-7-2"></a><span class="w"> </span><span class="c1"># Ruff version.</span>
1050-
<a id="__codelineno-7-3" name="__codelineno-7-3" href="#__codelineno-7-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.6</span>
1050+
<a id="__codelineno-7-3" name="__codelineno-7-3" href="#__codelineno-7-3"></a><span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">v0.11.7</span>
10511051
<a id="__codelineno-7-4" name="__codelineno-7-4" href="#__codelineno-7-4"></a><span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
10521052
<a id="__codelineno-7-5" name="__codelineno-7-5" href="#__codelineno-7-5"></a><span class="w"> </span><span class="c1"># Run the linter.</span>
10531053
<a id="__codelineno-7-6" name="__codelineno-7-6" href="#__codelineno-7-6"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ruff</span>

site/ruff/requirements-insiders.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
PyYAML==6.0.2
2-
ruff==0.9.10
2+
ruff==0.11.6
33
mkdocs==1.6.1
44
mkdocs-material @ git+ssh://[email protected]/astral-sh/mkdocs-material-insiders.git@39da7a5e761410349e9a1b8abf593b0cdd5453ff
55
mkdocs-redirects==1.2.2

site/ruff/requirements.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
PyYAML==6.0.2
2-
ruff==0.9.10
2+
ruff==0.11.6
33
mkdocs==1.6.1
44
mkdocs-material==9.5.38
55
mkdocs-redirects==1.2.2

site/ruff/rules/bit-count/index.html

+4
Original file line numberDiff line numberDiff line change
@@ -854,6 +854,10 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
854854
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="n">x</span> <span class="o">=</span> <span class="p">(</span><span class="mi">123</span><span class="p">)</span><span class="o">.</span><span class="n">bit_count</span><span class="p">()</span>
855855
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="n">y</span> <span class="o">=</span> <span class="mb">0b1111011</span><span class="o">.</span><span class="n">bit_count</span><span class="p">()</span>
856856
</code></pre></div>
857+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
858+
<p>This rule's fix is marked as unsafe unless the argument to <code>bin</code> can be inferred as
859+
an instance of a type that implements the <code>__index__</code> and <code>bit_count</code> methods because this can
860+
change the exception raised at runtime for an invalid argument.</p>
857861
<h2 id="options"><a class="toclink" href="#options">Options</a></h2>
858862
<ul>
859863
<li><a href="../../settings/#target-version"><code>target-version</code></a></li>

site/ruff/rules/format-literals/index.html

+5
Original file line numberDiff line numberDiff line change
@@ -854,6 +854,11 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
854854
<p>Use instead:</p>
855855
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="s2">&quot;</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="s2">&quot;Hello&quot;</span><span class="p">,</span> <span class="s2">&quot;World&quot;</span><span class="p">)</span> <span class="c1"># &quot;Hello, World&quot;</span>
856856
</code></pre></div>
857+
<p>This fix is marked as unsafe because:</p>
858+
<ul>
859+
<li>Comments attached to arguments are not moved, which can cause comments to mismatch the actual arguments.</li>
860+
<li>If arguments have side effects (e.g., print), reordering may change program behavior.</li>
861+
</ul>
857862
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
858863
<ul>
859864
<li><a href="https://docs.python.org/3/library/string.html#format-string-syntax">Python documentation: Format String Syntax</a></li>

site/ruff/rules/if-stmt-min-max/index.html

+9
Original file line numberDiff line numberDiff line change
@@ -855,6 +855,15 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
855855
<p>Use instead:</p>
856856
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="n">highest_score</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="n">highest_score</span><span class="p">,</span> <span class="n">score</span><span class="p">)</span>
857857
</code></pre></div>
858+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
859+
<p>This fix is marked unsafe if it would delete any comments within the replacement range.</p>
860+
<p>An example to illustrate where comments are preserved and where they are not:</p>
861+
<div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a><span class="n">a</span><span class="p">,</span> <span class="n">b</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span>
862+
<a id="__codelineno-2-2" name="__codelineno-2-2" href="#__codelineno-2-2"></a>
863+
<a id="__codelineno-2-3" name="__codelineno-2-3" href="#__codelineno-2-3"></a><span class="k">if</span> <span class="n">a</span> <span class="o">&gt;=</span> <span class="n">b</span><span class="p">:</span> <span class="c1"># deleted comment</span>
864+
<a id="__codelineno-2-4" name="__codelineno-2-4" href="#__codelineno-2-4"></a> <span class="c1"># deleted comment</span>
865+
<a id="__codelineno-2-5" name="__codelineno-2-5" href="#__codelineno-2-5"></a> <span class="n">a</span> <span class="o">=</span> <span class="n">b</span> <span class="c1"># preserved comment</span>
866+
</code></pre></div>
858867
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
859868
<ul>
860869
<li><a href="https://docs.python.org/3/library/functions.html#max">Python documentation: <code>max</code></a></li>

site/ruff/rules/index.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -5288,8 +5288,8 @@ <h2 id="perflint-perf"><a class="toclink" href="#perflint-perf">Perflint (PERF)<
52885288
<tr>
52895289
<td id="PERF403">PERF403</td>
52905290
<td><a href="manual-dict-comprehension/">manual-dict-comprehension</a></td>
5291-
<td>Use a dictionary comprehension instead of a for-loop</td>
5292-
<td style="text-align: right;"><span title='Rule is stable' style='opacity: 0.6'>✔️</span> <span title='Automatic fix not available' style='opacity: 0.1' aria-hidden='true'>🛠️</span></td>
5291+
<td>Use a dictionary comprehension instead of {modifier} for-loop</td>
5292+
<td style="text-align: right;"><span title='Rule is stable' style='opacity: 0.6'>✔️</span> <span title='Automatic fix available'>🛠️</span></td>
52935293
</tr>
52945294
</tbody>
52955295
</table>

site/ruff/rules/manual-dict-comprehension/index.html

+1
Original file line numberDiff line numberDiff line change
@@ -839,6 +839,7 @@
839839

840840
<h1 id="manual-dict-comprehension-perf403"><a class="toclink" href="#manual-dict-comprehension-perf403">manual-dict-comprehension (PERF403)</a></h1>
841841
<p>Derived from the <strong><a href="../#perflint-perf">Perflint</a></strong> linter.</p>
842+
<p>Fix is sometimes available.</p>
842843
<h2 id="what-it-does"><a class="toclink" href="#what-it-does">What it does</a></h2>
843844
<p>Checks for <code>for</code> loops that can be replaced by a dictionary comprehension.</p>
844845
<h2 id="why-is-this-bad"><a class="toclink" href="#why-is-this-bad">Why is this bad?</a></h2>

site/ruff/rules/multi-value-repeated-key-literal/index.html

+4
Original file line numberDiff line numberDiff line change
@@ -862,6 +862,10 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
862862
<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="p">}</span>
863863
<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="n">foo</span><span class="p">[</span><span class="s2">&quot;baz&quot;</span><span class="p">]</span> <span class="c1"># 2</span>
864864
</code></pre></div>
865+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
866+
<p>This rule's fix is marked as unsafe because removing a repeated dictionary key
867+
may delete comments that are attached to the removed key-value pair. This can also change
868+
the program's behavior if the value expressions have side effects.</p>
865869
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
866870
<ul>
867871
<li><a href="https://docs.python.org/3/tutorial/datastructures.html#dictionaries">Python documentation: Dictionaries</a></li>

site/ruff/rules/multi-value-repeated-key-variable/index.html

+4
Original file line numberDiff line numberDiff line change
@@ -861,6 +861,10 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
861861
<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="p">}</span>
862862
<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="n">foo</span><span class="p">[</span><span class="n">baz</span><span class="p">]</span> <span class="c1"># 2</span>
863863
</code></pre></div>
864+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
865+
<p>This rule's fix is marked as unsafe because removing a repeated dictionary key
866+
may delete comments that are attached to the removed key-value pair. This can also change
867+
the program's behavior if the value expressions have side effects.</p>
864868
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
865869
<ul>
866870
<li><a href="https://docs.python.org/3/tutorial/datastructures.html#dictionaries">Python documentation: Dictionaries</a></li>

site/ruff/rules/outdated-version-block/index.html

+3
Original file line numberDiff line numberDiff line change
@@ -863,6 +863,9 @@ <h2 id="options"><a class="toclink" href="#options">Options</a></h2>
863863
<ul>
864864
<li><a href="../../settings/#target-version"><code>target-version</code></a></li>
865865
</ul>
866+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
867+
<p>This rule's fix is marked as unsafe because it will remove all code,
868+
comments, and annotations within unreachable version blocks.</p>
866869
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
867870
<ul>
868871
<li><a href="https://docs.python.org/3/library/sys.html#sys.version_info">Python documentation: <code>sys.version_info</code></a></li>

site/ruff/rules/replace-stdout-stderr/index.html

+4
Original file line numberDiff line numberDiff line change
@@ -858,6 +858,10 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
858858
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a>
859859
<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="n">subprocess</span><span class="o">.</span><span class="n">run</span><span class="p">([</span><span class="s2">&quot;foo&quot;</span><span class="p">],</span> <span class="n">capture_output</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
860860
</code></pre></div>
861+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
862+
<p>This rule's fix is marked as unsafe because replacing <code>stdout=subprocess.PIPE</code> and
863+
<code>stderr=subprocess.PIPE</code> with <code>capture_output=True</code> may delete comments attached
864+
to the original arguments.</p>
861865
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
862866
<ul>
863867
<li><a href="https://docs.python.org/3/whatsnew/3.7.html#subprocess">Python 3.7 release notes</a></li>

site/ruff/rules/super-call-with-parameters/index.html

+3
Original file line numberDiff line numberDiff line change
@@ -868,6 +868,9 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
868868
<a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a> <span class="k">def</span><span class="w"> </span><span class="nf">bar</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
869869
<a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a> <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">foo</span><span class="p">()</span>
870870
</code></pre></div>
871+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
872+
<p>This rule's fix is marked as unsafe because removing the arguments from a call
873+
may delete comments that are attached to the arguments.</p>
871874
<h2 id="references"><a class="toclink" href="#references">References</a></h2>
872875
<ul>
873876
<li><a href="https://docs.python.org/3/library/functions.html#super">Python documentation: <code>super</code></a></li>

site/ruff/rules/unused-variable/index.html

+3
Original file line numberDiff line numberDiff line change
@@ -859,6 +859,9 @@ <h2 id="example"><a class="toclink" href="#example">Example</a></h2>
859859
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a> <span class="n">x</span> <span class="o">=</span> <span class="mi">1</span>
860860
<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a> <span class="k">return</span> <span class="n">x</span>
861861
</code></pre></div>
862+
<h2 id="fix-safety"><a class="toclink" href="#fix-safety">Fix safety</a></h2>
863+
<p>This rule's fix is marked as unsafe because removing an unused variable assignment may
864+
delete comments that are attached to the assignment.</p>
862865
<h2 id="options"><a class="toclink" href="#options">Options</a></h2>
863866
<ul>
864867
<li><a href="../../settings/#lint_dummy-variable-rgx"><code>lint.dummy-variable-rgx</code></a></li>

site/ruff/search/search_index.json

+1-1
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)