You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Highlight when errors have automatically applicable suggestions #59103
With tool_only_span_diagnostics having landed, some suggestions that can be automatically applied aren't shown to the user as labels with help: ... messages, so users who look for that to know they can automatically apply the fix won't know about those suggestions.
We should add some indicator that tells the user that an error can be automatically fixed.
I believe some iteration of the following would be appropriate:
error[E0252]*: the name `X` is defined multiple times
--> $DIR/double-type-import.rs:3:9
|
LL | pub use self::bar::X;
| ------------ previous import of the type `X` here
LL | use self::bar::X;
| ^^^^^^^^^^^^ `X` reimported here
|
= note: `X` must be defined only once in the type namespace of this module
error: aborting due to previous error
For more information about this error, try `rustc --explain E0252`.
* `rustfix` applicable suggestion is available for this error
With proper coloring, this should be easy to follow.
Does rustfix apply MaybeIncorrect suggestions? If not, this should be only included for MachineApplicable suggestions.
rustfix only applies MachineApplicable suggestions, because… it's a
machine. Yeah, that's why, totally not to masquerade its AI superpowers or
anything.
On Mon, 11 Mar 2019, 17:59 Esteban Kuber, ***@***.***> wrote:
I believe some iteration of the following would be appropriate:
error[E0252]*: the name `X` is defined multiple times
--> $DIR/double-type-import.rs:3:9
|
LL | pub use self::bar::X;
| ------------ previous import of the type `X` here
LL | use self::bar::X;
| ^^^^^^^^^^^^ `X` reimported here
|
= note: `X` must be defined only once in the type namespace of this module
error: aborting due to previous error
For more information about this error, try `rustc --explain E0252`.
* `rustfix` applicable suggestion is available for this error
With proper coloring, this should be easy to follow.
Does rustfix apply MaybeIncorrect suggestions? If not, this should be
only included for MachineApplicable suggestions.
CC @killercup <https://github.com/killercup>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#59103 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AABOX35DahZBIZOanQ65ILnYVd1Xa36eks5vVouOgaJpZM4bo0p8>
.
In that case, we should only provide the asterisk (or whatever we land on) for MachineApplicable suggestions.
The position of the asterisk and the last line text is bikeshedable to death:
error[E0252]*: the name `X` is defined multiple times
*error[E0252]: the name `X` is defined multiple times
error*[E0252]: the name `X` is defined multiple times
error[E0252]: the name `X` is defined multiple times*
error[E0252]:* the name `X` is defined multiple times
I personally feel that all the presented options are suboptimal, but I don't care enough to fight too much. I think overall that either 1 or 4 lead the pack. Vote on the individual comments below for your preference.
Won't that asterisk (or any other symbol) just be very confusing if you don't already know what to look for? I'd prefer a nonsigil solution, so something like
autofixable error[E0252]: the name `X` is defined multiple times
Perhaps if --teach is provided (or something similar to that) then we could add a (* means that the error is automatically fixable) somewhere (or similar). Otherwise I'd be concerned that it will just be a lot of noise/clutter for those who do know what it means.
Activity
estebank commentedon Mar 11, 2019
I believe some iteration of the following would be appropriate:
With proper coloring, this should be easy to follow.
Does
rustfixapplyMaybeIncorrectsuggestions? If not, this should be only included forMachineApplicablesuggestions.CC @killercup
killercup commentedon Mar 11, 2019
estebank commentedon Mar 11, 2019
In that case, we should only provide the asterisk (or whatever we land on) for
MachineApplicablesuggestions.The position of the asterisk and the last line text is bikeshedable to death:
davidtwco commentedon Mar 11, 2019
I'll kick off the bikeshed by saying that I prefer the fourth option.
killercup commentedon Mar 11, 2019
+1 this comment if you think 1st option is best option
estebank commentedon Mar 15, 2019
I personally feel that all the presented options are suboptimal, but I don't care enough to fight too much. I think overall that either 1 or 4 lead the pack. Vote on the individual comments below for your preference.
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
estebank commentedon Mar 15, 2019
bikeshed-signal to @rust-lang/wg-diagnostics
oli-obk commentedon Mar 15, 2019
Won't that asterisk (or any other symbol) just be very confusing if you don't already know what to look for? I'd prefer a nonsigil solution, so something like
oli-obk commentedon Mar 15, 2019
or
oli-obk commentedon Mar 15, 2019
or
davidtwco commentedon Mar 15, 2019
Perhaps if
--teachis provided (or something similar to that) then we could add a(* means that the error is automatically fixable)somewhere (or similar). Otherwise I'd be concerned that it will just be a lot of noise/clutter for those who do know what it means.tesuji commentedon Mar 15, 2019
s/autofixable/rustfix/