Skip to content

Conversation

@klensy
Copy link
Contributor

@klensy klensy commented Dec 7, 2024

This allows to check typos in CI, currently for compiler only (to reduce commit size with fixes). With current setup, exclude list is quite short, so it worth trying?

Also includes commits with actual typo fixes.

MCP: rust-lang/compiler-team#817

typos check currently turned for:

  • ./compiler
  • ./library
  • ./src/bootstrap
  • ./src/librustdoc

After merging, PRs which enables checks for other crates (tools) can be implemented too.

Found typos will not break other jobs immediately: (tests, building compiler for perf run). Job will be marked as red on completion in ~ 20 secs, so you will not forget to fix it whenever you want, before merging pr.

Check typos: python x.py test tidy --extra-checks=spellcheck
Apply typo fixes: python x.py test tidy --extra-checks=spellcheck:fix (in case if there only 1 suggestion of each typo)

Current fail in this pr is expected and shows how typo errors emitted. Commit with error will be removed after r+.

@rustbot
Copy link
Collaborator

rustbot commented Dec 7, 2024

r? @nnethercote

rustbot has assigned @nnethercote.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Dec 7, 2024
@rustbot
Copy link
Collaborator

rustbot commented Dec 7, 2024

Some changes occurred in exhaustiveness checking

cc @Nadrieril

Some changes occurred to the CTFE machinery

cc @rust-lang/wg-const-eval

Some changes occurred in match checking

cc @Nadrieril

This PR changes MIR

cc @oli-obk, @RalfJung, @JakobDegen, @davidtwco, @celinval, @vakaras

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

@rust-log-analyzer

This comment has been minimized.

@klensy klensy force-pushed the typos branch 2 times, most recently from f01ec3c to 5b7daa7 Compare December 7, 2024 12:21
@rust-log-analyzer

This comment has been minimized.

@rustbot
Copy link
Collaborator

rustbot commented Dec 7, 2024

The Miri subtree was changed

cc @rust-lang/miri

// token is an identifier, it's probably a misspelled keyword.
// This handles code like `async Move {}`, misspelled `if` in match guard, misspelled `else` in `if`-`else`
// and mispelled `where` in a where clause.
// and misspelled `where` in a where clause.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

they misspelled "misspelled" 😀

//!
//! Note 1: variable bindings (like the `x` in `Some(x)`) match anything, so we treat them as wildcards.
//! Note 2: this only applies to matcheable values. For example a value of type `Rc<u64>` can't be
//! Note 2: this only applies to matchable values. For example a value of type `Rc<u64>` can't be
Copy link
Member

@Nadrieril Nadrieril Dec 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Didn't you add an exception for this in typos.toml? I don't know which is correct but if there's an exception this should be kept, presumably.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reverted

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't seem to be reverted. ;)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here #134006 (comment) reviewer said that this is not valid word, so i removed exception somewhere here 199e4e7.

@Nadrieril
Copy link
Member

I seem to recall a previous attempt at having typo-checks in CI that had a ton of false positives, this is much nicer, thanks. I can't approve the CI addition myself (does this require an FCP maybe?), but I looked through the typo fixes and they all look good to me.

@rust-log-analyzer

This comment has been minimized.

@rustbot rustbot added the A-meta Area: Issues & PRs about the rust-lang/rust repository itself label Dec 7, 2024
@lqd
Copy link
Member

lqd commented Dec 7, 2024

does this require an FCP maybe?

maybe an MCP?

Comment on lines +10 to +18
# Add exclusions here, lines should be like `x = "x"`, where `x` is excluded word.
#
# Also see docs: https://github.com/crate-ci/typos/blob/v1.28.2/docs/reference.md
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on the documentation these aren't exclusions, they're custom additions to the dictionary.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but it is one of the ways to silence linter, so i wrote as exclusions, to simplify wording.

@rustbot rustbot added O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface labels Dec 7, 2024
@rustbot
Copy link
Collaborator

rustbot commented Dec 7, 2024

Some changes occurred to the intrinsics. Make sure the CTFE / Miri interpreter
gets adapted for the changes, if necessary.

cc @rust-lang/miri, @rust-lang/wg-const-eval

Some changes occurred to the platform-builtins intrinsics. Make sure the
LLVM backend as well as portable-simd gets adapted for the changes.

cc @antoyo, @GuillaumeGomez, @bjorn3, @calebzulawski, @programmerjake

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 3, 2025
@bors bors merged commit f6d37a2 into rust-lang:master Jul 3, 2025
11 checks passed
@rustbot rustbot added this to the 1.90.0 milestone Jul 3, 2025
@Noratrieb
Copy link
Member

FYI: This PR integrated typo checking into CI incorrectly by merely adding a new workflow job instead of properly integrating it into our merge CI.

This caused the tree to break (#t-infra > Spellcheck workflow now fails on all PRs (tree bad?)) because a PR with a typo was merged after this PR was merged. This is something our CI is designed to prevent via the no rocket science rule, but that only works when the jobs run on merge CI as intended.

Any changes to CI should always go through the infra team to help prevent such mistakes.

@nnethercote
Copy link
Contributor

Sorry for the bustage! Judging by this comment there was some infra team awareness, and the sub-optimal config was similar to how tidy had worked in the past, which explains why it wasn't flagged as a problem. I.e. the situation was a bit complicated.

@Noratrieb
Copy link
Member

You're right, as pointed out in the Zulip thread later this is actually more standard than I imagined, which surprised me :D

@nnethercote
Copy link
Contributor

Sounds like work is underway to tighten things up, so maybe we'll have a happy outcome :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool F-autodiff `#![feature(autodiff)]` O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. S-waiting-on-MCP Status: PR has a compiler MCP and is waiting for the compiler MCP to complete. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.