-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Stability attributes and kinds #12202
Comments
Nominating for 1.0, this is required to specify the stability of an API. |
cc me |
Could this also be allowed as a crate attribute, and automatically apply to all public exports of that crate? |
This only matter if or when we have some tool for actually enforcing that stable APIs don't change. |
Note: if one labels a type with the expected builtin bounds, it wouldn't |
We are not currently planning on having tooling to check/enforce stability attributes. It is currently "just" documentation. Thus this issue is not a 1.0 blocker. |
(also, this bug may be more of an RFC than a bug ... its really hard to tell from the description what is actionable here, or the suggested course of action, if anything...) |
(removing P-backcompat-libs since it is not a 1.0 blocker.) Also, to whom it may concern: please do not tag issues with the P-tags; nominated them for consideration via I-nominated. |
Such a tool is the subject of #9060 On Thu, Feb 13, 2014 at 1:25 PM, Felix S Klock II
|
Closing: there doesn't seem to be anything actionable here, especially given the issue #12203 |
I agree. On Tue, Jun 10, 2014 at 10:51 AM, Aaron Turon [email protected]
|
fix: don't panic at fully qualified call syntax in signature help Closes rust-lang#12200 Regressed from rust-lang#12082
Avoid linting redundant closure when callee is marked `#[track_caller]` Fixes rust-lang#12199 Not sure if there's a nicer way to detect functions marked `#[track_caller]` other than by just looking at its attributes 🤔 changelog: [`redundant_closure`]: [`redundant_closure_for_method_calls`]: avoid linting closures where the function being called is marked `#[track_caller]`
When a type is marked
#[stable]
, no changes to it should break safe code. This also means that the set of kinds it fulfills, ignoring any potential type parameters, should never get smaller. For example, a type that is marked#[stable]
that isSend
should always continue to be so. If it isn'tFreeze
, but becomesFreeze
, that is ok, because it's a completely transparent change to previous users.(Note: if we extend the type system to include inverse bounds ("NonFreeze" etc), then adding kinds to the set of fulfilled kinds should also be disallowed)
The text was updated successfully, but these errors were encountered: