Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

New lints: item that was previously public API is now #[doc(hidden)] i.e. no longer public API #578

Open
17 of 20 tasks
Tracked by #5
obi1kenobi opened this issue Nov 7, 2023 · 1 comment
Open
17 of 20 tasks
Tracked by #5
Labels
A-lint Area: new or existing lint E-help-wanted Call for participation: Help is requested to fix this issue. E-mentor Call for participation: Mentorship is available for this issue.

Comments

@obi1kenobi
Copy link
Owner

obi1kenobi commented Nov 7, 2023

For example, uncommenting the #[doc(hidden)] line is a breaking change since the struct is no longer considered public API, even though it is public. This is because some non-public API may need to be accessible from outside its crate, for example in macro-heavy crates like pyo3.

// #[doc(hidden)]
pub struct Example;

We need lints for this kind of situation for:

Remaining work item

We should figure out what are the appropriate semantics of marking an impl block #[doc(hidden)] with respect to the block's contents. Are the contents considered not public API anymore? Is #[doc(hidden)] simply ignored on that impl block?

The action items here are:

@obi1kenobi
Copy link
Owner Author

Four lints to go here, and we can close this issue! 🚀

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-lint Area: new or existing lint E-help-wanted Call for participation: Help is requested to fix this issue. E-mentor Call for participation: Mentorship is available for this issue.
Projects
None yet
Development

No branches or pull requests

1 participant