Skip to content

Commit 7f225c9

Browse files
authored
Merge branch 'main' into micha/rust-toolchain-sdist
2 parents 4125c2b + 2213698 commit 7f225c9

File tree

2,005 files changed

+81530
-30922
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,005 files changed

+81530
-30922
lines changed

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ crates/ruff_linter/resources/test/fixtures/pyupgrade/UP018_LF.py text eol=lf
2121
crates/ruff_python_parser/resources/inline linguist-generated=true
2222

2323
ruff.schema.json -diff linguist-generated=true text=auto eol=lf
24+
ty.schema.json -diff linguist-generated=true text=auto eol=lf
2425
crates/ruff_python_ast/src/generated.rs -diff linguist-generated=true text=auto eol=lf
2526
crates/ruff_python_formatter/src/generated.rs -diff linguist-generated=true text=auto eol=lf
2627
*.md.snap linguist-language=Markdown

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
<!--
2-
Thank you for contributing to Ruff! To help us out with reviewing, please consider the following:
2+
Thank you for contributing to Ruff/ty! To help us out with reviewing, please consider the following:
33
44
- Does this pull request include a summary of the change? (See below.)
5-
- Does this pull request include a descriptive title?
5+
- Does this pull request include a descriptive title? (Please prefix with `[ty]` for ty pull
6+
requests.)
67
- Does this pull request include references to any relevant issues?
78
-->
89

.github/mypy-primer-ty.toml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#:schema ../ty.schema.json
2+
# Configuration overrides for the mypy primer run
3+
4+
# Enable off-by-default rules.
5+
[rules]
6+
possibly-unresolved-reference = "warn"
7+
unused-ignore-comment = "warn"
8+
division-by-zero = "warn"

.github/workflows/build-binaries.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -310,7 +310,7 @@ jobs:
310310
manylinux: auto
311311
docker-options: ${{ matrix.platform.maturin_docker_options }}
312312
args: --release --locked --out dist
313-
- uses: uraimo/run-on-arch-action@ac33288c3728ca72563c97b8b88dda5a65a84448 # v2
313+
- uses: uraimo/run-on-arch-action@d94c13912ea685de38fccc1109385b83fd79427d # v3.0.1
314314
if: ${{ matrix.platform.arch != 'ppc64' && matrix.platform.arch != 'ppc64le'}}
315315
name: Test wheel
316316
with:
@@ -441,7 +441,7 @@ jobs:
441441
manylinux: musllinux_1_2
442442
args: --release --locked --out dist
443443
docker-options: ${{ matrix.platform.maturin_docker_options }}
444-
- uses: uraimo/run-on-arch-action@ac33288c3728ca72563c97b8b88dda5a65a84448 # v2
444+
- uses: uraimo/run-on-arch-action@d94c13912ea685de38fccc1109385b83fd79427d # v3.0.1
445445
name: Test wheel
446446
with:
447447
arch: ${{ matrix.platform.arch }}

.github/workflows/build-docker.yml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ jobs:
3838
submodules: recursive
3939
persist-credentials: false
4040

41-
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3
41+
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
4242

43-
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3
43+
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
4444
with:
4545
registry: ghcr.io
4646
username: ${{ github.repository_owner }}
@@ -63,7 +63,7 @@ jobs:
6363
6464
- name: Extract metadata (tags, labels) for Docker
6565
id: meta
66-
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5
66+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
6767
with:
6868
images: ${{ env.RUFF_BASE_IMG }}
6969
# Defining this makes sure the org.opencontainers.image.version OCI label becomes the actual release version and not the branch name
@@ -79,7 +79,7 @@ jobs:
7979
# Adapted from https://docs.docker.com/build/ci/github-actions/multi-platform/
8080
- name: Build and push by digest
8181
id: build
82-
uses: docker/build-push-action@14487ce63c7a62a4a324b0bfb37086795e31c6c1 # v6
82+
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
8383
with:
8484
context: .
8585
platforms: ${{ matrix.platform }}
@@ -119,19 +119,19 @@ jobs:
119119
pattern: digests-*
120120
merge-multiple: true
121121

122-
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3
122+
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
123123

124124
- name: Extract metadata (tags, labels) for Docker
125125
id: meta
126-
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5
126+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
127127
with:
128128
images: ${{ env.RUFF_BASE_IMG }}
129129
# Order is on purpose such that the label org.opencontainers.image.version has the first pattern with the full version
130130
tags: |
131131
type=pep440,pattern={{ version }},value=${{ fromJson(inputs.plan).announcement_tag }}
132132
type=pep440,pattern={{ major }}.{{ minor }},value=${{ fromJson(inputs.plan).announcement_tag }}
133133
134-
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3
134+
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
135135
with:
136136
registry: ghcr.io
137137
username: ${{ github.repository_owner }}
@@ -167,9 +167,9 @@ jobs:
167167
- debian:bookworm-slim,bookworm-slim,debian-slim
168168
- buildpack-deps:bookworm,bookworm,debian
169169
steps:
170-
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3
170+
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
171171

172-
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3
172+
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
173173
with:
174174
registry: ghcr.io
175175
username: ${{ github.repository_owner }}
@@ -219,7 +219,7 @@ jobs:
219219
220220
- name: Extract metadata (tags, labels) for Docker
221221
id: meta
222-
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5
222+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
223223
# ghcr.io prefers index level annotations
224224
env:
225225
DOCKER_METADATA_ANNOTATIONS_LEVELS: index
@@ -231,7 +231,7 @@ jobs:
231231
${{ env.TAG_PATTERNS }}
232232
233233
- name: Build and push
234-
uses: docker/build-push-action@14487ce63c7a62a4a324b0bfb37086795e31c6c1 # v6
234+
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
235235
with:
236236
context: .
237237
platforms: linux/amd64,linux/arm64
@@ -262,11 +262,11 @@ jobs:
262262
pattern: digests-*
263263
merge-multiple: true
264264

265-
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3
265+
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
266266

267267
- name: Extract metadata (tags, labels) for Docker
268268
id: meta
269-
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5
269+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
270270
env:
271271
DOCKER_METADATA_ANNOTATIONS_LEVELS: index
272272
with:
@@ -276,7 +276,7 @@ jobs:
276276
type=pep440,pattern={{ version }},value=${{ fromJson(inputs.plan).announcement_tag }}
277277
type=pep440,pattern={{ major }}.{{ minor }},value=${{ fromJson(inputs.plan).announcement_tag }}
278278
279-
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3
279+
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
280280
with:
281281
registry: ghcr.io
282282
username: ${{ github.repository_owner }}

.github/workflows/ci.yaml

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -237,13 +237,13 @@ jobs:
237237
- name: "Install Rust toolchain"
238238
run: rustup show
239239
- name: "Install mold"
240-
uses: rui314/setup-mold@e16410e7f8d9e167b74ad5697a9089a35126eb50 # v1
240+
uses: rui314/setup-mold@b3958095189f34b95d402a680b6e96b7f194f7b9 # v1
241241
- name: "Install cargo nextest"
242-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
242+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
243243
with:
244244
tool: cargo-nextest
245245
- name: "Install cargo insta"
246-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
246+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
247247
with:
248248
tool: cargo-insta
249249
- name: ty mdtests (GitHub annotations)
@@ -295,13 +295,13 @@ jobs:
295295
- name: "Install Rust toolchain"
296296
run: rustup show
297297
- name: "Install mold"
298-
uses: rui314/setup-mold@e16410e7f8d9e167b74ad5697a9089a35126eb50 # v1
298+
uses: rui314/setup-mold@b3958095189f34b95d402a680b6e96b7f194f7b9 # v1
299299
- name: "Install cargo nextest"
300-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
300+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
301301
with:
302302
tool: cargo-nextest
303303
- name: "Install cargo insta"
304-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
304+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
305305
with:
306306
tool: cargo-insta
307307
- name: "Run tests"
@@ -324,7 +324,7 @@ jobs:
324324
- name: "Install Rust toolchain"
325325
run: rustup show
326326
- name: "Install cargo nextest"
327-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
327+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
328328
with:
329329
tool: cargo-nextest
330330
- name: "Run tests"
@@ -380,7 +380,7 @@ jobs:
380380
- name: "Install Rust toolchain"
381381
run: rustup show
382382
- name: "Install mold"
383-
uses: rui314/setup-mold@e16410e7f8d9e167b74ad5697a9089a35126eb50 # v1
383+
uses: rui314/setup-mold@b3958095189f34b95d402a680b6e96b7f194f7b9 # v1
384384
- name: "Build"
385385
run: cargo build --release --locked
386386

@@ -405,13 +405,13 @@ jobs:
405405
MSRV: ${{ steps.msrv.outputs.value }}
406406
run: rustup default "${MSRV}"
407407
- name: "Install mold"
408-
uses: rui314/setup-mold@e16410e7f8d9e167b74ad5697a9089a35126eb50 # v1
408+
uses: rui314/setup-mold@b3958095189f34b95d402a680b6e96b7f194f7b9 # v1
409409
- name: "Install cargo nextest"
410-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
410+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
411411
with:
412412
tool: cargo-nextest
413413
- name: "Install cargo insta"
414-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
414+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
415415
with:
416416
tool: cargo-insta
417417
- name: "Run tests"
@@ -437,7 +437,7 @@ jobs:
437437
- name: "Install Rust toolchain"
438438
run: rustup show
439439
- name: "Install cargo-binstall"
440-
uses: cargo-bins/cargo-binstall@63aaa5c1932cebabc34eceda9d92a70215dcead6 # v1.12.3
440+
uses: cargo-bins/cargo-binstall@ea65a39d2dcca142c53bddd3a097a674e903f475 # v1.12.7
441441
with:
442442
tool: cargo-fuzz@0.11.2
443443
- name: "Install cargo-fuzz"
@@ -459,7 +459,7 @@ jobs:
459459
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
460460
with:
461461
persist-credentials: false
462-
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
462+
- uses: astral-sh/setup-uv@f0ec1fc3b38f5e7cd731bb6ce540c5af426746bb # v6.1.0
463463
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
464464
name: Download Ruff binary to test
465465
id: download-cached-binary
@@ -504,12 +504,10 @@ jobs:
504504
# Verify that adding a plugin or rule produces clean code.
505505
- run: ./scripts/add_rule.py --name DoTheThing --prefix F --code 999 --linter pyflakes
506506
- run: cargo check
507-
- run: cargo fmt --all --check
508507
- run: |
509508
./scripts/add_plugin.py test --url https://pypi.org/project/-test/0.1.0/ --prefix TST
510509
./scripts/add_rule.py --name FirstRule --prefix TST --code 001 --linter test
511510
- run: cargo check
512-
- run: cargo fmt --all --check
513511

514512
ecosystem:
515513
name: "ecosystem"
@@ -662,7 +660,7 @@ jobs:
662660
branch: ${{ github.event.pull_request.base.ref }}
663661
workflow: "ci.yaml"
664662
check_artifacts: true
665-
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
663+
- uses: astral-sh/setup-uv@f0ec1fc3b38f5e7cd731bb6ce540c5af426746bb # v6.1.0
666664
- name: Fuzz
667665
env:
668666
FORCE_COLOR: 1
@@ -692,7 +690,7 @@ jobs:
692690
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
693691
with:
694692
persist-credentials: false
695-
- uses: cargo-bins/cargo-binstall@63aaa5c1932cebabc34eceda9d92a70215dcead6 # v1.12.3
693+
- uses: cargo-bins/cargo-binstall@ea65a39d2dcca142c53bddd3a097a674e903f475 # v1.12.7
696694
- run: cargo binstall --no-confirm cargo-shear
697695
- run: cargo shear
698696

@@ -732,7 +730,11 @@ jobs:
732730
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
733731
with:
734732
persist-credentials: false
735-
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
733+
- uses: astral-sh/setup-uv@f0ec1fc3b38f5e7cd731bb6ce540c5af426746bb # v6.1.0
734+
- uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6 # v2.7.8
735+
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
736+
with:
737+
node-version: 22
736738
- name: "Cache pre-commit"
737739
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
738740
with:
@@ -771,7 +773,7 @@ jobs:
771773
- name: "Install Rust toolchain"
772774
run: rustup show
773775
- name: Install uv
774-
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
776+
uses: astral-sh/setup-uv@f0ec1fc3b38f5e7cd731bb6ce540c5af426746bb # v6.1.0
775777
- name: "Install Insiders dependencies"
776778
if: ${{ env.MKDOCS_INSIDERS_SSH_KEY_EXISTS == 'true' }}
777779
run: uv pip install -r docs/requirements-insiders.txt --system
@@ -820,7 +822,7 @@ jobs:
820822
- determine_changes
821823
if: ${{ !contains(github.event.pull_request.labels.*.name, 'no-test') && (needs.determine_changes.outputs.code == 'true' || github.ref == 'refs/heads/main') }}
822824
steps:
823-
- uses: extractions/setup-just@dd310ad5a97d8e7b41793f8ef055398d51ad4de6 # v2
825+
- uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff # v3.0.0
824826
env:
825827
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
826828

@@ -908,7 +910,7 @@ jobs:
908910
run: rustup show
909911

910912
- name: "Install codspeed"
911-
uses: taiki-e/install-action@86c23eed46c17b80677df6d8151545ce3e236c61 # v2
913+
uses: taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
912914
with:
913915
tool: cargo-codspeed
914916

.github/workflows/daily_fuzz.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ jobs:
3434
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
3535
with:
3636
persist-credentials: false
37-
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
37+
- uses: astral-sh/setup-uv@f0ec1fc3b38f5e7cd731bb6ce540c5af426746bb # v6.1.0
3838
- name: "Install Rust toolchain"
3939
run: rustup show
4040
- name: "Install mold"
41-
uses: rui314/setup-mold@e16410e7f8d9e167b74ad5697a9089a35126eb50 # v1
41+
uses: rui314/setup-mold@b3958095189f34b95d402a680b6e96b7f194f7b9 # v1
4242
- uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6 # v2.7.8
4343
- name: Build ruff
4444
# A debug build means the script runs slower once it gets started,

.github/workflows/daily_property_tests.yaml

Lines changed: 0 additions & 72 deletions
This file was deleted.

0 commit comments

Comments
 (0)