highsource / highsource/jaxb2-basics

Provide JSR-305 support

Open
#20 16 comments 2 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
119
Forks
49
PR merge metrics
No merged PRs in 30d

Description

I'd like to analyze my source code with the [Checker Framework](http://types.cs.washington.edu/checker-framework/), in particular using its [Nullness checker](http://types.cs.washington.edu/checker-framework/current/checker-framework-manual.html#nullness-checker). Some of my code interfaces with JAXB and JAXB-basics generated code. Now, I can add a package-level annotation for the generated code, specifying that all parameters, return types and fields are `@Nullable` (or `@Nonnull`), but in fact there are both `@Nullable` and `@Nonnull` parameters and return types, so that doesn't actually work.

Hence my question: would you be open to adding the [JSR-305](https://jcp.org/en/jsr/detail?id=305) `@Nullable` and `@Nonnull` annotations to the interfaces and classes of the `jaxb2-basics-runtme` library, as well as the code generated by the `jaxb2-basics` plugin?

The change would introduce a _provided_-scope dependency on [com.google.code.findbugs:jsr305:3.0.0](http://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/3.0.0/) and thus be backwards-compatible. (Because Maven won't add it to the classpath of downstream dependencies and Java will simply ignore annotations it can't find on the classpath.)

I'd be willing to do the actual work and open a PR. Let me know if you have questions or concerns.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.