All Versions
71
Latest Version
Avg Release Cycle
38 days
Latest Release
-
Changelog History
Page 2
Changelog History
Page 2
-
v0.9.6 Changes
- ๐ Initial support for JSpecify's @NullMarked annotation (#493)
- Fix bug in handling of TreatGeneratedAsUnannotated (#580) (Note: this bug is not in any released NullAway version, but was temporarily introduced to the main/master branch by #493)
- ๐ Improved tracking of map nullness
- Improve nullness tracking of map calls in the presence of type casts (#537)
- Reason about iterating over a map's key set using an enhanced for loop (#554)
- Reason about key set iteration for subtypes of Map (#559)
- Add support for Map.putIfAbsent. (#568)
- โ Add support for data serialization for Nullaway data for UCR's NullAwayAnnotator
- Serialization of Type Change Suggestions for Type Violations (#517)
- Measurement of Method protection against nullability of arguments (#575)
- Enhanced Serialization Test Infrastructure (#579)
- Field initialization serialization (#576)
- ๐ Build / CI tooling for NullAway itself:
- Enable parallel builds (#549) (#555)
- Add dependence from coveralls task to codeCoverageReport (#552)
- Switch to temurin on CI (#553)
- Separating NullAwayTests into smaller files (#550)
- Require braces for all conditionals and loops (#556)
- Enable build cache (#562)
- Fix JarInfer integration test on Java 11 (#529)
- Get Android sample apps building on JDK 11 (#531)
- Limit metaspace size (#563)
- Update CI jobs (#565)
- Set epApiVersion for jacoco coverage reporting (#566)
- Compile and test against Error Prone 2.11.0 (#567)
- Fix EP version for jacoco coverage step (#571)
- Update to latest Google Java Format (#572)
- ๐ Initial support for JSpecify's @NullMarked annotation (#493)
-
v0.9.5 Changes
- ๐ JDK17 support improvements:
- Fix crash with switch expression as a lambda body (#543, follow up: #545)
- Better fix for crash on member selects inside module-info.java (#544)
- โฌ๏ธ Bump Guava dependency to 24.1.1 (#536)
- ๐ Build / CI tooling for NullAway itself:
- Bump AutoValue and AutoService versions (#538)
- Add task to run NullAway on itself (#542)
- Add test case for unsound map reassignment handling (#541)
- ๐ JDK17 support improvements:
-
v0.9.4 Changes
- ๐ Fix crash with fully-qualified names in module-info.java import (#534)
-
v0.9.3 Changes
๐ IMPORTANT: This version introduces EXPERIMENTAL JDK17 support. There is a known crash on lambdas with switch expressions as body (see #524). Best current workaround is to
@SuppressWarnings("NullAway")
on the enclosing method- ๐ Improve reporting of multiple parameter errors on a single method call (#503)
- ๐ Support compile-time constant field args in method Access Paths (#504)
- โ Add basic library support for grpc Metadata through GrpcHandler (#505)
- ๐ Fix soundness bug with dereference of ternary expressions (#516)
- โ Add support for switch expressions (#520) [JDK 17]
- ๐ Allow setting custom Nullable Annotation via Error Prone CLI flags (#522)
- โ Add JarInfer models for Android SDK 31 (Android 12) (#532)
- ๐ Build / CI tooling for NullAway itself:
- Prevent JMH tests from running on pre-v11 JDKs (#492)
- Bump to Error Prone 2.8.1 (#494), 2.9.0 (#497), and 2.10.0 (#507)
- Docs: Fix a broken link in README.md (#495)
- Update to Gradle 7.2 (#496), 7.3.1 (#509), and 7.3.3 (#530)
- Add Autodispose benchmark (#498)
- Bump jmh plugin to 0.6.6 (#500)
- Bump to Checker dataflow 3.20.0 (#510)
- CI tests for JDK 17 (#512)
- Some fixes to GitHub Actions config (#514)
- Make jar-infer-lib tests pass on JDK 11 (#523)
- Extra tests for all DummyOptionsConfig's methods (#525)
- Pull jmh Gradle plugin version to top level (#526)
- Add tests for JDK 16+ records (#527)
- Support for Coveralls on multiple modules (#521)
- Changes to avoid re-running Gradle tasks unnecessarily (#528)
-
v0.9.2 Changes
- ๐ Allow specifying custom names for Contract annotations (#476)
- ๐ Use shaded Checker Framework dataflow artifact made for NullAway (#485)
- โฌ๏ธ Bump Checker dataflow to 3.16.0 (#490)
- Library Models:
- Add library model for java.nio.file.Path.getParent() (#464)
- Default models support for Spring's Autowired (#477)
- Models for
Objects.requireNonNull()
withSupplier
(#483)
- ๐ Build / CI tooling for NullAway itself:
- Small Gradle build cleanup (#469)
- Allow Error Prone API version to be configured via a property (#470)
- Also test NullAway on Error Prone 2.6.0 (#471)
- Check our code with Error Prone 2.6.0 (#472) [temporary, see below]
- Check code with Error Prone 2.7.1 (#480)
- Update to Gradle 7.0.2 (#481) then 7.1 (#486)
- Add a jmh module for benchmarking (#487, #489)
- Test on CI with Error Prone 2.8.0 (#491)
-
v0.9.1 Changes
- โ Add baseline support for (Java 15) records (#377)
- ๐ Multiple build tooling fixed:
- Update Gradle to 6.8.3 (#451)
- Gradle: switch to java-library plugin where possible (#455)
- Switch from mvn-push script to gradle-maven-publish-plugin (#457)
- Fix publication of fat jar for jar-infer-cli. (#461)
- โ Add JarInfer models for Android 11 (SDK 30) (#460)
-
v0.9.0 Changes
- ๐ IMPORTANT: Error Prone minimum version moved to 2.4.0 (#447)
- This allows compatibility with Error Prone 2.5.1 by moving to updated APIs.
- Remove Checker Framework shadow config from nullaway module (#449)
@Contract
annotations are now checked (#312) (#428) (#450)- โ Add support for @RequiresNonnull/@EnsuresNonnull annotations (#423)
- [Fix] Handle WideningConversionNode in Map key specifiers (#415)
- ๐ [Fix] Try to handle lombok.Builder without crashing. (#414)
- [Fix] Ignore library models return nullability on first-party code (#446)
- โก๏ธ Update to Checker Dataflow dependency to 3.6.0 (#416)
- Library Models:
- Add library model for TextView.getLayout() (#418)
- Add library model for Service.onStartCommand (#419)
- Models for common Spring/Spark/Apache utility classes (#436)
- Add support for jakarta.inject-api (#439)
- ๐ Build / CI tooling for NullAway itself:
- Update to Gradle 6.6.1 (#420)
- Switch CI to GitHub Actions (#440) (#442) (#450)
- ๐ IMPORTANT: Error Prone minimum version moved to 2.4.0 (#447)
-
v0.8.0 Changes
- ๐ Improve suppression of subcheckers, using full AST path (#392)
- ๐ Support null implies false library models (#394)
- ๐ Make
@ChecksForNull
an alias for@Nullable
(#397) - ๐ Fix: android-jar.py's exit code. (#399)
- โฌ๏ธ Upgrade Error Prone dependencies to 2.4.0. (#400)
- And fix detected issues (#403, #404)
- ๐ Allow library models of the form null param -> null return (#407)
- ๐ Make excluded class annotations work on nested classes (#412)
- ๐ Improved Map handling: Strings and integers. (#413)
- ๐ Also
-SNAPSHOT
builds are being published correctly again (#409) - ๐ New android-jarinfer-models-sdk29 artifact for Android 10
-
v0.7.10 Changes
May 06, 2020- โ Add Java 8 streams nullness-propagation support (#371)
- Give line numbers for uninitialized fields when reporting error on an initializer (#380)
- Include outer$inner class name when reporting field init errors (#375)
- โก๏ธ Update to Gradle 6.1.1 (#381)
- โ Add @MonotonicNonNull as lazy initialization annotation. (#383)
- โ Add default library model for CompilationUnitTree.getPackageName() (#384)
- ๐ Improve matching of native Map methods (#390)
- Fixes an IndexOutOfBoundsException checker crash
-
v0.7.9 Changes
November 15, 2019- โฌ๏ธ Multiple dependency upgrades
- Gradle to 5.6.2. (#362)
- WALA to 1.5.4 (#337)
- Checker Dataflow to 3.0.0 (#369)
- โ Added OPTIONAL_CONTENT synthetic field to track Optional emptiness (#364)
- With this,
-XepOpt:NullAway:CheckOptionalEmptiness
should be ready for use.
- With this,
- ๐ Handle Nullchk operator (#368)
- โฌ๏ธ Multiple dependency upgrades