forked from astral-sh/ruff
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge master 20240320 #33
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Summary Django's `mark_safe` can also be used as a decorator, so we should detect usages of `@mark_safe` for the purpose of the relevant Bandit rule. Closes astral-sh#9780.
…ethod calls (astral-sh#9865) Fixes astral-sh#9857. ## Summary Statements like `logging.info("Today it is: {day}")` will no longer be ignored by RUF027. As before, statements like `"Today it is: {day}".format(day="Tuesday")` will continue to be ignored. ## Test Plan The snapshot tests were expanded to include new cases. Additionally, the snapshot tests have been split in two to separate positive cases from negative cases.
## Summary On `main`, string lexing consists of walking through the string character-by-character to search for the closing quote (with some nuance: we also need to skip escaped characters, and error if we see newlines in non-triple-quoted strings). This PR rewrites `lex_string` to instead use `memchr` to search for the closing quote, which is significantly faster. On my machine, at least, the `globals.py` benchmark (which contains a lot of docstrings) gets 40% faster... ```text lexer/numpy/globals.py time: [3.6410 µs 3.6496 µs 3.6585 µs] thrpt: [806.53 MiB/s 808.49 MiB/s 810.41 MiB/s] change: time: [-40.413% -40.185% -39.984%] (p = 0.00 < 0.05) thrpt: [+66.623% +67.181% +67.822%] Performance has improved. Found 2 outliers among 100 measurements (2.00%) 2 (2.00%) high mild lexer/unicode/pypinyin.py time: [12.422 µs 12.445 µs 12.467 µs] thrpt: [337.03 MiB/s 337.65 MiB/s 338.27 MiB/s] change: time: [-9.4213% -9.1930% -8.9586%] (p = 0.00 < 0.05) thrpt: [+9.8401% +10.124% +10.401%] Performance has improved. Found 3 outliers among 100 measurements (3.00%) 1 (1.00%) high mild 2 (2.00%) high severe lexer/pydantic/types.py time: [107.45 µs 107.50 µs 107.56 µs] thrpt: [237.11 MiB/s 237.24 MiB/s 237.35 MiB/s] change: time: [-4.0108% -3.7005% -3.3787%] (p = 0.00 < 0.05) thrpt: [+3.4968% +3.8427% +4.1784%] Performance has improved. Found 7 outliers among 100 measurements (7.00%) 2 (2.00%) high mild 5 (5.00%) high severe lexer/numpy/ctypeslib.py time: [46.123 µs 46.165 µs 46.208 µs] thrpt: [360.36 MiB/s 360.69 MiB/s 361.01 MiB/s] change: time: [-19.313% -18.996% -18.710%] (p = 0.00 < 0.05) thrpt: [+23.016% +23.451% +23.935%] Performance has improved. Found 8 outliers among 100 measurements (8.00%) 3 (3.00%) low mild 1 (1.00%) high mild 4 (4.00%) high severe lexer/large/dataset.py time: [231.07 µs 231.19 µs 231.33 µs] thrpt: [175.87 MiB/s 175.97 MiB/s 176.06 MiB/s] change: time: [-2.0437% -1.7663% -1.4922%] (p = 0.00 < 0.05) thrpt: [+1.5148% +1.7981% +2.0864%] Performance has improved. Found 10 outliers among 100 measurements (10.00%) 5 (5.00%) high mild 5 (5.00%) high severe ```
## Summary Corrects mentions of `Path.is_link` to `Path.is_symlink` (the former doesn't exist). ## Test Plan ```sh python scripts/generate_mkdocs.py && mkdocs serve -f mkdocs.public.yml ```
…4`, `E305`, `E306`) (astral-sh#9266) Co-authored-by: Micha Reiser <[email protected]>
## Summary This PR reduces the size of `Expr` from 80 to 64 bytes, by reducing the sizes of... - `ExprCall` from 72 to 56 bytes, by using boxed slices for `Arguments`. - `ExprCompare` from 64 to 48 bytes, by using boxed slices for its various vectors. In testing, the parser gets a bit faster, and the linter benchmarks improve quite a bit.
…stral-sh#9894) ## Summary This review contains a fix for [D405](https://docs.astral.sh/ruff/rules/capitalize-section-name/) (capitalize-section-name) The problem is that Ruff considers the sub-section header as a normal section if it has the same name as some section name. For instance, a function/method has an argument named "parameters". This only applies if you use Numpy style docstring. See: [ISSUE](astral-sh#9806) The following will not raise D405 after the fix: ```python def some_function(parameters: list[str]): """A function with a parameters parameter Parameters ---------- parameters: A list of string parameters """ ... ``` ## Test Plan ```bash cargo test ``` --------- Co-authored-by: Mikko Leppänen <[email protected]> Co-authored-by: Charlie Marsh <[email protected]>
## Summary If a generic appears multiple times on the right-hand side, we should only include it once on the left-hand side when rewriting. Closes astral-sh#9904.
## Summary Closes astral-sh#9898. ## Test Plan ```sh python scripts/generate_mkdocs.py && mkdocs serve -f mkdocs.public.yml ```
…e always on their own line (astral-sh#9793) ## Summary Currently these rules apply the heuristic that if the original sequence doesn't have a newline in between the final sequence item and the closing parenthesis, the autofix won't add one for you. The feedback from @ThiefMaster, however, was that this was producing slightly unusual formatting -- things like this: ```py __all__ = [ "b", "c", "a", "d"] ``` were being autofixed to this: ```py __all__ = [ "a", "b", "c", "d"] ``` When, if it was _going_ to be exploded anyway, they'd prefer something like this (with the closing parenthesis on its own line, and a trailing comma added): ```py __all__ = [ "a", "b", "c", "d", ] ``` I'm still pretty skeptical that we'll be able to please everybody here with the formatting choices we make; _but_, on the other hand, this _specific_ change is pretty easy to make. ## Test Plan `cargo test`. I also ran the autofixes for RUF022 and RUF023 on CPython to check how they looked; they looked fine to me.
Mostly removes dependencies.
…stral-sh#9599) Fixes astral-sh#8368 Fixes astral-sh#9186 ## Summary Arbitrary TOML strings can be provided via the command-line to override configuration options in `pyproject.toml` or `ruff.toml`. As an example: to run over typeshed and respect typeshed's `pyproject.toml`, but override a specific isort setting and enable an additional pep8-naming setting: ``` cargo run -- check ../typeshed --no-cache --config ../typeshed/pyproject.toml --config "lint.isort.combine-as-imports=false" --config "lint.extend-select=['N801']" ``` --------- Co-authored-by: Micha Reiser <[email protected]> Co-authored-by: Zanie Blue <[email protected]>
## Summary We've had success with `nextest` in other projects, so lets migrate Ruff. The Linux tests look a little bit faster (from 2m32s down to 2m8s), the Windows tests look a little bit slower but not dramatically so.
Can [mdformat-ruff](https://github.com/Freed-Wu/mdformat-ruff) be hosted in <https://github.com/astral-sh> like other integrations of ruff? TIA!
## Summary I noticed the example line in CONTRIBUTING.md: ```shell cargo install nextest ``` Didn't appear to install the intended package cargo-nextest. ![nextest](https://github.com/astral-sh/ruff/assets/12672027/7bbdd9c3-c35a-464a-b586-3e9f777f8373) So I checked what it [should be](https://nexte.st/book/installing-from-source.html) and replaced the line: ```shell cargo install cargo-nextest --locked ``` ## Test Plan Just checked the cargo install appeared to give sane looking results --------- Co-authored-by: Charlie Marsh <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Summary astral-sh#10151 documented the deviations between Ruff and Black with the new 2024 style guide in the `ruff-python-formatter/README.md`. However, that's not the documentation shown on the website when navigating to [intentional deviations](https://docs.astral.sh/ruff/formatter/black/). This PR streamlines the `ruff-python-formatter/README.md` and links to the documentation on the website instead of repeating the same content. The PR also makes the 2024 style guide deviations available on the website documentation. ## Test Plan I built the documentation locally and verified that the 2024 style guide known deviations are now shown on the website.
Bumps [wasm-bindgen-test](https://github.com/rustwasm/wasm-bindgen) from 0.3.41 to 0.3.42. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/rustwasm/wasm-bindgen/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=wasm-bindgen-test&package-manager=cargo&previous-version=0.3.41&new-version=0.3.42)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the actions group with 1 update: [tj-actions/changed-files](https://github.com/tj-actions/changed-files). Updates `tj-actions/changed-files` from 42 to 43 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tj-actions/changed-files/releases">tj-actions/changed-files's releases</a>.</em></p> <blockquote> <h2>v43</h2> <h1>Changes in v43.0.0</h1> <h2>🔥🔥 BREAKING CHANGE 🔥🔥</h2> <ul> <li><code>any_{changed, modified, deleted}</code> outputs now return <code>true</code> when no file/directory patterns are specified.</li> </ul> <h2>What's Changed</h2> <ul> <li>Upgraded to v42.1.0 by <a href="https://github.com/tj-actions-bot"><code>@tj-actions-bot</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1977">tj-actions/changed-files#1977</a></li> <li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1979">tj-actions/changed-files#1979</a></li> <li>chore(deps): update dependency <code>@typescript-eslint/parser</code> to v7.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1980">tj-actions/changed-files#1980</a></li> <li>chore(deps): update dependency <code>@types/node</code> to v20.11.26 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1981">tj-actions/changed-files#1981</a></li> <li>chore(deps): update dependency <code>@typescript-eslint/eslint-plugin</code> to v7.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1982">tj-actions/changed-files#1982</a></li> <li>chore(deps): update dependency <code>@types/lodash</code> to v4.17.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1983">tj-actions/changed-files#1983</a></li> <li>chore(deps): update peter-evans/create-pull-request action to v6.0.2 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1984">tj-actions/changed-files#1984</a></li> <li>chore(deps): update dependency <code>@types/node</code> to v20.11.27 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1987">tj-actions/changed-files#1987</a></li> <li>feat: add support for returning true for <code>any_{changed, modified, deleted}</code> outputs when no patterns are specified by <a href="https://github.com/jackton1"><code>@jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1988">tj-actions/changed-files#1988</a></li> <li>Updated README.md by <a href="https://github.com/tj-actions-bot"><code>@tj-actions-bot</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1989">tj-actions/changed-files#1989</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v42...v43.0.0">https://github.com/tj-actions/changed-files/compare/v42...v43.0.0</a></p> <hr /> <h2>v43.0.0</h2> <h2>🔥🔥 BREAKING CHANGE 🔥🔥</h2> <ul> <li><code>any_{changed, modified, deleted}</code> outputs now return <code>true</code> when no file/directory patterns are specified.</li> </ul> <h2>What's Changed</h2> <ul> <li>Upgraded to v42.1.0 by <a href="https://github.com/tj-actions-bot"><code>@tj-actions-bot</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1977">tj-actions/changed-files#1977</a></li> <li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1979">tj-actions/changed-files#1979</a></li> <li>chore(deps): update dependency <code>@typescript-eslint/parser</code> to v7.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1980">tj-actions/changed-files#1980</a></li> <li>chore(deps): update dependency <code>@types/node</code> to v20.11.26 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1981">tj-actions/changed-files#1981</a></li> <li>chore(deps): update dependency <code>@typescript-eslint/eslint-plugin</code> to v7.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1982">tj-actions/changed-files#1982</a></li> <li>chore(deps): update dependency <code>@types/lodash</code> to v4.17.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1983">tj-actions/changed-files#1983</a></li> <li>chore(deps): update peter-evans/create-pull-request action to v6.0.2 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1984">tj-actions/changed-files#1984</a></li> <li>chore(deps): update dependency <code>@types/node</code> to v20.11.27 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1987">tj-actions/changed-files#1987</a></li> <li>feat: add support for returning true for <code>any_{changed, modified, deleted}</code> outputs when no patterns are specified by <a href="https://github.com/jackton1"><code>@jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1988">tj-actions/changed-files#1988</a></li> <li>Updated README.md by <a href="https://github.com/tj-actions-bot"><code>@tj-actions-bot</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/1989">tj-actions/changed-files#1989</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v42...v43.0.0">https://github.com/tj-actions/changed-files/compare/v42...v43.0.0</a></p> <h2>v42.1.0</h2> <p>🚀 🚀 New Feature 🚀 🚀</p> <ul> <li>Use changed-files output to run matrix jobs by simply setting the new <code>matrix</code> input to <code>true</code>.</li> </ul> <p>This serves as an alias for setting the <code>json</code> input to <code>true</code> and the <code>escape_json</code> input to <code>false</code></p> <pre lang="yml"><code></tr></table> </code></pre> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tj-actions/changed-files/blob/main/HISTORY.md">tj-actions/changed-files's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h1><a href="https://github.com/tj-actions/changed-files/compare/v42.1.0...v43.0.0">43.0.0</a> - (2024-03-13)</h1> <h2><!-- raw HTML omitted -->🚀 Features</h2> <ul> <li>Add support for returning true for <code>any_{changed, modified, deleted}</code> outputs when no patterns are specified (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1988">#1988</a>) (<a href="https://github.com/tj-actions/changed-files/commit/a5cf6aa30cfbe1e0764d2aa5e9f42edb847b6d55">a5cf6aa</a>) - (Tonye Jack)</li> </ul> <h2><!-- raw HTML omitted -->🔄 Update</h2> <ul> <li>Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1989">#1989</a>)</li> </ul> <p>Co-authored-by: repo-ranger[bot] <!-- raw HTML omitted --> (<a href="https://github.com/tj-actions/changed-files/commit/77af4bed286740ef1a6387dc4e4e4dec39f96054">77af4be</a>) - (tj-actions[bot])</p> <h2><!-- raw HTML omitted -->⚙️ Miscellaneous Tasks</h2> <ul> <li><strong>deps:</strong> Update dependency <code>@types/node</code> to v20.11.27 (<a href="https://github.com/tj-actions/changed-files/commit/15807c9c84ec7ff092c52f2f9fecc600e81420f1">15807c9</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Update peter-evans/create-pull-request action to v6.0.2 (<a href="https://github.com/tj-actions/changed-files/commit/dc458cf7531fd39dcf942beb39ef6bdcaddc9715">dc458cf</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Update dependency <code>@types/lodash</code> to v4.17.0 (<a href="https://github.com/tj-actions/changed-files/commit/92ca3eebd01cb3fc4d88a4cbd10f344ea4a116d3">92ca3ee</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Update dependency <code>@typescript-eslint/eslint-plugin</code> to v7.2.0 (<a href="https://github.com/tj-actions/changed-files/commit/f591d0c7f0b790ca8c139ce92ff4e8c238cb8940">f591d0c</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Update dependency <code>@types/node</code> to v20.11.26 (<a href="https://github.com/tj-actions/changed-files/commit/35023362e2b0ff1cd9b970167a1603614e1ad854">3502336</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Update dependency <code>@typescript-eslint/parser</code> to v7.2.0 (<a href="https://github.com/tj-actions/changed-files/commit/e436cb6d85bcd4aecab64c542f2268998a1cdd2f">e436cb6</a>) - (renovate[bot])</li> <li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/257d47dfba22be3e0a17f6bad47ff07f7e76747c">257d47d</a>) - (renovate[bot])</li> </ul> <h2><!-- raw HTML omitted -->⬆️ Upgrades</h2> <ul> <li>Upgraded to v42.1.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1977">#1977</a>)</li> </ul> <p>Co-authored-by: jackton1 <a href="mailto:[email protected]">[email protected]</a> (<a href="https://github.com/tj-actions/changed-files/commit/4918e1183080b35a085c91c8abc9e6adc4de61a1">4918e11</a>) - (tj-actions[bot])</p> <h1><a href="https://github.com/tj-actions/changed-files/compare/v42.0.7...v42.1.0">42.1.0</a> - (2024-03-09)</h1> <h2><!-- raw HTML omitted -->🚀 Features</h2> <ul> <li>Add matrix alias to simplify using outputs for matrix jobs (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1975">#1975</a>) (<a href="https://github.com/tj-actions/changed-files/commit/008ba8ceec9f1757264e0512542d5ecab6d87ae6">008ba8c</a>) - (Tonye Jack)</li> </ul> <h2><!-- raw HTML omitted -->🔄 Update</h2> <ul> <li>Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1976">#1976</a>)</li> </ul> <p>Co-authored-by: repo-ranger[bot] <!-- raw HTML omitted --> (<a href="https://github.com/tj-actions/changed-files/commit/aa08304bd477b800d468db44fe10f6c61f7f7b11">aa08304</a>) - (tj-actions[bot])</p> <h2><!-- raw HTML omitted -->⬆️ Upgrades</h2> <ul> <li>Upgraded to v42.0.7 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1974">#1974</a>)</li> </ul> <p>Co-authored-by: jackton1 <a href="mailto:[email protected]">[email protected]</a> (<a href="https://github.com/tj-actions/changed-files/commit/fe6c3ea0ca88f25e4ba51fa00c27bb5dd06cb08a">fe6c3ea</a>) - (tj-actions[bot])</p> <h1><a href="https://github.com/tj-actions/changed-files/compare/v42.0.6...v42.0.7">42.0.7</a> - (2024-03-07)</h1> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tj-actions/changed-files/commit/77af4bed286740ef1a6387dc4e4e4dec39f96054"><code>77af4be</code></a> Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1989">#1989</a>)</li> <li><a href="https://github.com/tj-actions/changed-files/commit/a5cf6aa30cfbe1e0764d2aa5e9f42edb847b6d55"><code>a5cf6aa</code></a> feat: add support for returning true for <code>any_{changed, modified, deleted}</code> o...</li> <li><a href="https://github.com/tj-actions/changed-files/commit/15807c9c84ec7ff092c52f2f9fecc600e81420f1"><code>15807c9</code></a> chore(deps): update dependency <code>@types/node</code> to v20.11.27</li> <li><a href="https://github.com/tj-actions/changed-files/commit/dc458cf7531fd39dcf942beb39ef6bdcaddc9715"><code>dc458cf</code></a> chore(deps): update peter-evans/create-pull-request action to v6.0.2</li> <li><a href="https://github.com/tj-actions/changed-files/commit/92ca3eebd01cb3fc4d88a4cbd10f344ea4a116d3"><code>92ca3ee</code></a> chore(deps): update dependency <code>@types/lodash</code> to v4.17.0</li> <li><a href="https://github.com/tj-actions/changed-files/commit/f591d0c7f0b790ca8c139ce92ff4e8c238cb8940"><code>f591d0c</code></a> chore(deps): update dependency <code>@typescript-eslint/eslint-plugin</code> to v7.2.0</li> <li><a href="https://github.com/tj-actions/changed-files/commit/35023362e2b0ff1cd9b970167a1603614e1ad854"><code>3502336</code></a> chore(deps): update dependency <code>@types/node</code> to v20.11.26</li> <li><a href="https://github.com/tj-actions/changed-files/commit/e436cb6d85bcd4aecab64c542f2268998a1cdd2f"><code>e436cb6</code></a> chore(deps): update dependency <code>@typescript-eslint/parser</code> to v7.2.0</li> <li><a href="https://github.com/tj-actions/changed-files/commit/257d47dfba22be3e0a17f6bad47ff07f7e76747c"><code>257d47d</code></a> chore(deps): lock file maintenance</li> <li><a href="https://github.com/tj-actions/changed-files/commit/4918e1183080b35a085c91c8abc9e6adc4de61a1"><code>4918e11</code></a> Upgraded to v42.1.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/1977">#1977</a>)</li> <li>See full diff in <a href="https://github.com/tj-actions/changed-files/compare/v42...v43">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tj-actions/changed-files&package-manager=github_actions&previous-version=42&new-version=43)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Summary Added Nokia to the "Who's Using Ruff?" section in the README. ## Test Plan Multiple teams in my department alone moved to Ruff (either exclusively or partially) 🚀
…thout any root directories or workspaces (astral-sh#10398) ## Summary Fixes astral-sh#10324 This removes an overeager failure case where we would exit early if no root directory or workspace folders were provided on server initialization. We now fall-back to the current working directory as a workspace for that file. ## Test Plan N/A
…ral-sh#10452) ## Summary This PR removes the `Iterator::chain(...)` sequence in `RuleCodePrefix::iter()` with `Vec::expand` to avoid an overlong-recursive types. The existing `RuleCodePrefix::iter` method chains all rule group iterators together. This leads to very long recursive types `Chain<Map<Chain<Map<Chain<Map.....>>>>` (proportional to the number of rule groups). This PR rewrites the macro to use `Vec::extend` instead, which removes the long recursive type (at the cost of introducing a potential allocation). ## Alternatives An alternative would be to use a stack allocated array by unrolling the `Linter::iter` methods (generated by `EnumIter`). I don't think it's worth the extra complexity, considering that `RuleCodePrefix::iter` isn't a hot function. ## Test Plan `cargo test`
…#10314) Co-authored-by: Micha Reiser <[email protected]>
…ues-wrong-type` (`PT007`) (astral-sh#10461) ## Summary This adds automatic fixes for the `PT007` rule. I am currently reviewing and adding Ruff rules to Home Assistant. One rule is PT007, which has multiple hundred occurrences in the codebase, but no automatic fix, and this is not fun to do manually, especially because using Regexes are not really possible with this. My knowledge of the Ruff codebase and Rust in general is not good and this is my first PR here, so I hope it is not too bad. One thing where I need help is: How can I have the transformed code to be formatted automatically, instead of it being minimized as it does it now? ## Test Plan Using the existing fixtures and updated snapshots.
…ble cores (astral-sh#10399) ## Summary Fixes astral-sh#10369. ## Test Plan N/A
<!-- Thank you for contributing to Ruff! To help us out with reviewing, please consider the following: - Does this pull request include a summary of the change? (See below.) - Does this pull request include a descriptive title? - Does this pull request include references to any relevant issues? --> ## Summary Clarify `extend-select` documentation to avoid confusion regarding the default `select`. Also match the `select` documentation. Resolves astral-sh#10389. ## Test Plan <!-- How was it tested? -->
## Summary I used `cargo-shear` (see [tweet](https://twitter.com/boshen_c/status/1770106165923586395)) to remove some unused dependencies that `cargo udeps` wasn't reporting. <!-- What's the purpose of the change? What does it do, and why? --> ## Test Plan `cargo test`
…0478) ## Summary We're seeing failures in astral-sh#10470 because `resolve_qualified_import_name` isn't guaranteed to return a specific import if a symbol is accessible in two ways (e.g., you have both `import logging` and `from logging import error` in scope, and you want `logging.error`). This PR breaks up the failing tests such that the imports aren't in the same scope. Closes astral-sh#10470. ## Test Plan I added a `bindings.reverse()` to `resolve_qualified_import_name` to ensure that the tests pass regardless of the binding order.
## Summary This PR fixes a panic in the linter for `W605`. Consider the following f-string: ```python f"{{}}ab" ``` The `FStringMiddle` token would contain `{}ab`. Notice that the escaped braces have _reduced_ the string. This means we cannot use the text value from the token to determine the location of the escape sequence but need to extract it from the source code. fixes: astral-sh#10434 ## Test Plan Add new test cases and update the snapshots.
Did in #34 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
subj