Let's #[expect] some lints: Stabilize lint_reasons (RFC 2383) by xFrednet · Pull Request #120924 · rust-lang/rust (original) (raw)

Conversation

This file contains hidden or 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

[ Show hidden characters]({{ revealButtonHref }})

xFrednet

Let's give this another try! The previous stabilization attempt was stalled by some unresolved questions. These have been discussed in a lang team meeting. The last open question, regarding the semantics of the #[expect] attribute was decided on in #115980

I've just updated the stabilization report with the discussed questions and decisions. Luckily, the decision is inline with the current implementation.

This hopefully covers everything. Let's hope that the CI will be green like the spring.

fixes #115980
fixes #54503


For the release note author:

There are two Clippy lints which could be noteworthy:

Both are allow-by-default lints in the restriction category.


r? @wesleywiser

Tacking Issue: #54503
Stabilization Report: #54503 (comment)
Documentation Update: rust-lang/reference#1237


Roses are red,
Violets are blue,
Let's expect lints,
With reason clues

PaulDance reacted with thumbs up emoji oli-obk, Centri3, y21, blyxyas, clubby789, slanterns, asquared31415, Kobzol, hasali19, mati865, and 30 more reacted with heart emoji JarredAllen, kennytm, Luracasmus, and AceofSpades5757 reacted with rocket emoji

@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.

T-rustdoc

Relevant to the rustdoc team, which will review and decide on the PR/issue.

labels

Feb 11, 2024

@xFrednet

Alright, looks like most of the CI already agrees with my changes, let's kick off the reviewing process.

r? @wesleywiser

@xFrednet xFrednet marked this pull request as ready for review

February 11, 2024 10:29

@rustbot

The Miri subtree was changed

cc @rust-lang/miri

Some changes occurred in src/tools/clippy

cc @rust-lang/clippy

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@rustbot

This comment was marked as off-topic.

@rust-log-analyzer

This comment has been minimized.

oli-obk

oli-obk

oli-obk

Choose a reason for hiding this comment

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

modulo the bootstrap cfgs in ui tests, the compiler side lgtm

Centri3

@rust-log-analyzer

This comment has been minimized.

wesleywiser

@wesleywiser

Implementation looks good to me! If I understand the current state correctly, T-lang has signed off on the previously unresolved questions but has not yet FCP'd stabilization. Is that correct?

I think the next step is then for us to start a stabilization FCP.

@xFrednet

Implementation looks good to me! If I understand the current state correctly, T-lang has signed off on the previously unresolved questions but has not yet FCP'd stabilization. Is that correct?

Now that you say it, I believe this is correct. The previous stabilization report has been updated and should be sufficient. How do we kick off the FCP, do we ping T-lang in the tacking issue or here? #54503

And should I repost the updated stabilization report, just to have it at the bottom?

@oli-obk oli-obk added T-lang

Relevant to the language team, which will review and decide on the PR/issue.

I-lang-nominated

Nominated for discussion during a lang team meeting.

and removed T-rustdoc

Relevant to the rustdoc team, which will review and decide on the PR/issue.

T-compiler

Relevant to the compiler team, which will review and decide on the PR/issue.

labels

Feb 12, 2024

@wesleywiser

Let's go ahead and do the FCP here, just so it's in the same PR that will eventually be merged 🙂

@rust-lang/lang, now that the implementation questions regarding #[expect] have been resolved, we feel the feature is ready for stabilization. @xFrednet has updated the stabilization report to reflect the current state.

@bors

@tmandry

Let's go ahead and do the FCP here, just so it's in the same PR that will eventually be merged 🙂

@rust-lang/lang, now that the implementation questions regarding #[expect] have been resolved, we feel the feature is ready for stabilization. @xFrednet has updated the stabilization report to reflect the current state.

Let's do it!

@rfcbot merge

@rfcbot

Team member @tmandry has proposed to merge this. The next step is review by the rest of the tagged team members:

No concerns currently listed.

Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

cc @rust-lang/lang-advisors: FCP proposed for lang, please feel free to register concerns.
See this document for info about what commands tagged team members can give me.

bors added a commit to rust-lang-ci/rust that referenced this pull request

Jul 4, 2024

@bors

Rewrite lint_expectations in a single pass.

This PR aims at reducing the perf regression from rust-lang#120924 (comment) with drive-by simplifications.

Basically, instead of using the lint level builder, which is slow, this PR splits lint_expectations logic in 2:

r? ghost for perf

bors added a commit to rust-lang-ci/rust that referenced this pull request

Sep 1, 2024

@bors

Rewrite lint_expectations in a single pass.

This PR aims at reducing the perf regression from rust-lang#120924 (comment) with drive-by simplifications.

Basically, instead of using the lint level builder, which is slow, this PR splits lint_expectations logic in 2:

r? ghost for perf

github-actions bot pushed a commit to rust-lang/miri that referenced this pull request

Sep 2, 2024

@bors

Rewrite lint_expectations in a single pass.

This PR aims at reducing the perf regression from rust-lang/rust#120924 (comment) with drive-by simplifications.

Basically, instead of using the lint level builder, which is slow, this PR splits lint_expectations logic in 2:

r? ghost for perf

@myrrlyn

As the (embarrassingly absent) RFC author, I am thrilled to see this land! Thank you all for your effort in actually taking my initial ideas and doing all the effort to refine, implement, and ship them. I can't wait to start using it.

Rudxain reacted with laugh emoji timvisee, MrCroxx, wesleywiser, slanterns, xFrednet, eopb, lffg, joseluis, cayman-amzn, flip1995, and 2 more reacted with heart emoji Rudxain reacted with rocket emoji

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request

Sep 11, 2024

@tmeijn

This MR contains the following updates:

Package Update Change
rust minor 1.80.1 -> 1.81.0

MR created with the help of el-capitano/tools/renovate-bot.

Proposed changes to behavior should be submitted there as MRs.


Release Notes

rust-lang/rust (rust)

v1.81.0

Compare Source

==========================

Language

Compiler

Libraries

Stabilized APIs

These APIs are now stable in const contexts:

Cargo

Compatibility Notes

Internal Changes

These changes do not affect any public interfaces of Rust, but they represent significant improvements to the performance or internals of rustc and related tools.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.



This MR has been generated by Renovate Bot.

wip-sync pushed a commit to NetBSD/pkgsrc-wip that referenced this pull request

Sep 22, 2024

@he32

Pkgsrc changes:

Upstream changes:

Version 1.81.0 (2024-09-05)

Language

Compiler

Libraries

Stabilized APIs

These APIs are now stable in const contexts:

Cargo

Compatibility Notes

Internal Changes

These changes do not affect any public interfaces of Rust, but they represent significant improvements to the performance or internals of rustc and related tools.

lnicola pushed a commit to lnicola/rust-analyzer that referenced this pull request

Sep 25, 2024

@bors

Rewrite lint_expectations in a single pass.

This PR aims at reducing the perf regression from rust-lang/rust#120924 (comment) with drive-by simplifications.

Basically, instead of using the lint level builder, which is slow, this PR splits lint_expectations logic in 2:

r? ghost for perf

zaneduffield added a commit to integrated-application-development/pasfmt that referenced this pull request

Sep 30, 2024

@zaneduffield

zaneduffield added a commit to integrated-application-development/pasfmt that referenced this pull request

Oct 2, 2024

@zaneduffield

facebook-github-bot pushed a commit to facebookexperimental/rust-shed that referenced this pull request

Oct 7, 2024

@diliop @facebook-github-bot

facebook-github-bot pushed a commit to facebookincubator/buck2-change-detector that referenced this pull request

Oct 7, 2024

@diliop @facebook-github-bot

facebook-github-bot pushed a commit to facebookexperimental/allocative that referenced this pull request

Oct 7, 2024

@diliop @facebook-github-bot

@ojeda ojeda mentioned this pull request

Nov 18, 2024

95 tasks

netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request

Nov 24, 2024

@he32

Pkgsrc changes:

Upstream changes:

Version 1.81.0 (2024-09-05)

Language

Compiler

Libraries

Stabilized APIs

These APIs are now stable in const contexts:

Cargo

Compatibility Notes

Internal Changes

These changes do not affect any public interfaces of Rust, but they represent significant improvements to the performance or internals of rustc and related tools.

Reviewers

@oli-obk oli-obk oli-obk approved these changes

@Urgau Urgau Urgau approved these changes

@iamahuman iamahuman iamahuman left review comments

@qarmin qarmin qarmin left review comments

@Centri3 Centri3 Centri3 left review comments

@wesleywiser wesleywiser wesleywiser approved these changes

@blyxyas blyxyas blyxyas approved these changes