-
Notifications
You must be signed in to change notification settings - Fork 25
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
Support public
keyword in Julia v1.11
#260
Comments
I don't think this is a good general feature for a code quality tool. Looking through the list of what Aqua tests, everything is a real problem, latent or otherwise. Using a non-public part of someone else's package is a hypothetical problem: some future minor release might break that feature. Or that might not ever happen. When I use internals, which does happen, I write a test which verifies the behavior I need from that function. This means if an upgrade breaks what I rely on, the test suite will tell me right away, and I can decide what to do about it. This isn't naughty behavior (type piracy) a lurking problem (method ambiguity, compat boundaries), or a mistake (undefined exports). It's just using code, and that code has the same guarantees as the (many!) packages which aren't 1.0: none. I don't need Aqua shaking its finger at me over it. Sure, I could turn it off, and would. But this gets |
You could also consider this a latent problem waiting to break out. I have had very real problems with dependency internals changing.
That's of course a very good practice, but Aqua is here to enforce best practices, including among people who may not abide by them in the first place. I think you're the exception rather than the rule.
I think it does actually say "hands off unless I say so, except for experts users". But Aqua is most helpful for non-experts. Besides, Aqua disapproving of type piracy is not so different than Aqua warning about use of private symbols. |
See this comment on Discourse:
Sounds like a job for Aqua? Not urgent of course but opening the issue to keep track
The text was updated successfully, but these errors were encountered: