Comments (5)
It turns out that -AstubWarnIfNotFoundIgnoresClasses
solves some but probably not all of our problem. We may want to experiment with additional flags to see if we can solve it all.
from checker-framework.
@cpovirk Could you expand on what stub-file warning messages need silencing that don't have any option yet?
from checker-framework.
Here are a couple. I don't know if the list is complete:
- "No supported annotations found! Does stub file java.util.concurrent.atomic.astub import them?"
- We have a stub whose entirety is
class AtomicReference<V> {}
. (Its purpose is to override the defaultclass AtomicReference<@Nullable V> {}
.)
- We have a stub whose entirety is
- "imported type not found: android.graphics.drawable.Icon"
- We always include all our stub files, so we end up with Android stubs when building non-Android code. (But the solution is not as simple as having separate Android and non-Android stub sets: We also have stubs that apply to specific third-party libraries that may or may not be present in a given build.)
from checker-framework.
Hmm, sorry, it looks like those might be hidden by the current flags after all?
from checker-framework.
Yeah, it looks like -AstubNoWarnIfNotFound
hides those. I wouldn't have guessed from the flag name or the description in the manual, and I don't know the history for why our JSpecify integration and main Checker Framework integration both set -AstubWarnIfNotFoundIgnoresClasses
but not that one. (I could look.)
I could rebuild our checker without the change from #19 and see what pops up.
But actually: We recently turned off all use of stubs (JDK and otherwise) for our JSpecify integration. So even if the checker still could output some messages for stub usage, we wouldn't see them! So I think we get to not worry about this one :)
(I will have similar thoughts about #11 but sadly with more caveats.)
from checker-framework.
Related Issues (20)
- Upstreaming: Eliminate parameter contravariance HOT 2
- Upstreaming: Not inheriting annotations, somehow avoiding stub-file recursion HOT 7
- Upstreaming: Additional information in error messages HOT 4
- Upstreaming: Ignoring annotations on wildcards and type parameters themselves
- Upstreaming: More extensive assumptions of determinism HOT 1
- Use Travis CI, as upstream does HOT 2
- Rebase onto eisop HOT 1
- Run reference checker tests on each PR
- Upstreaming: BaseTypeValidator change
- Upstreaming: support conformance tests
- Upstreaming: `AnnotationFileElementTypes#getDeclAnnotations` change HOT 2
- Upstreaming: Avoid using `WildcardType.isUnbound()` and friends
- Upstreaming: annotating captured type variables
- Upstreaming: Changes to erasure/substitution in AnnotatedTypeMirror/AsSuperVisitor/SupertypeFinder
- Upstreaming: formatting of type variables HOT 1
- Meta-issue: What hacks could we remove from our checker if we made additional changes upstream?
- Upstreaming: Various defaulting hooks and behavior changes HOT 3
- Upstreaming: Promote cast.unsafe from a warning to an error HOT 2
- Upstreaming: Customize the suppress-warnings prefix that is included in error messages
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from checker-framework.