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
Nargo currently only supports what we call "experimental features" where when used they will always issue an experimental feature warning but never stop compilation. We'd like to make this process opt-in so that even if a user uses a crate as a library which uses one of these features and they are ignoring warnings, they will still be alerted their library uses an experimental feature and would need to decide whether to opt-in or not.
Without this feature it is significantly more difficult to extend the language post 1.0.
Happy Case
Gating unstable features could function similarly to unstable features in cargo detailed here: https://doc.rust-lang.org/cargo/reference/unstable.html. One choice we could make is whether to merge this cli flag approach with the #[feature(name)] attribute Rust uses. The command-line flag would be a more broadly applicable approach, but controlling this in source code could be more clear for users coming from Rust. Note that #[feature(..)] is distinct from #[cfg(feature(...))] which has its own issue here.
We should test this out using enums before they are stabilized.
Workaround
None
Workaround Description
No response
Additional Context
No response
Project Impact
None
Blocker Context
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
The text was updated successfully, but these errors were encountered:
Problem
Nargo currently only supports what we call "experimental features" where when used they will always issue an experimental feature warning but never stop compilation. We'd like to make this process opt-in so that even if a user uses a crate as a library which uses one of these features and they are ignoring warnings, they will still be alerted their library uses an experimental feature and would need to decide whether to opt-in or not.
Without this feature it is significantly more difficult to extend the language post 1.0.
Happy Case
Gating unstable features could function similarly to unstable features in cargo detailed here: https://doc.rust-lang.org/cargo/reference/unstable.html. One choice we could make is whether to merge this cli flag approach with the
#[feature(name)]
attribute Rust uses. The command-line flag would be a more broadly applicable approach, but controlling this in source code could be more clear for users coming from Rust. Note that#[feature(..)]
is distinct from#[cfg(feature(...))]
which has its own issue here.We should test this out using enums before they are stabilized.
Workaround
None
Workaround Description
No response
Additional Context
No response
Project Impact
None
Blocker Context
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
The text was updated successfully, but these errors were encountered: