You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
NullAway now requires a minimum of JDK 17 and Error Prone 2.36.0 to run; we bump the version to 0.13.0 to reflect these
updated requirements. There are also many improvements to JSpecify mode support, and several nice changes and
improvements from first-time contributors.
NullAway now includes a BOM artifact com.uber.nullaway:nullaway-bom. Otherwise, this release contains a few bug
fixes and improvements to JSpecify support.
Fix URL for RequireExplicitNullMarking checker (#1369)
Handle annotations on type variables in return and field types (#1371)
Change how recursive calls to dataflow are detected (#1374)
JSpecify: use type on identifier when its type is a type variable (#1378)
Include method type parameters in astubx files. by @haewiful (#1370)
This release fixes a bug where the new RequireExplicitNullMarking check was not fully disabled by default. It also includes a couple of performance optimizations to reduce NullAway overhead.
NullAway now includes a new Error Prone checker, RequireExplicitNullMarking,
that checks that every class is explicitly @NullMarked or @NullUnmarked (at the class or package level), so code
is not left @NullUnmarked unintentionally. The check is disabled by default. See the docs
for further details.
NullAway also includes support for a new @PureExceptLambda annotation, contributed by @FxMorin, to tell NullAway
to preserve nullability information from the enclosing method when analyzing the body of certain lambdas.
See the docs for details.
Use passed-in TreePath in one more place when available (#1329)
Checker to ensure explicit null marking of every class (#1323)
Bound size of alreadyRunAnalyses cache to be consistent (#1334)
Improve inference for generic methods with lambda argument containing return statements by @dhruv-agr (#1337)
This release contains significant improvements to inference support for generic method calls in JSpecify mode (#1075).
We expect that many more valid calls will pass NullAway, but that some new bugs may have been introduced. Please report
any issues that you see. There is also a new flag, -XepOpt:NullAway:WarnOnGenericInferenceFailure to make NullAway
report a warning when inference fails, to help identify any issues.
Improved inference for generic method calls (#1244)
Suppress CastToNonNull warnings for @NullUnmarked method calls by @raccoonback (#1258)
JSpecify: Fix crash when overriding with raw types (#1265)
Better handle calls to super constructors and superclass methods in JSpecify mode (#1248)
issue-1250 pattern matching for instanceof in switch case by @dhruv-agr (#1259)
Account for annotations in extends / implements when computing view as supertype (#1266)
Bug fix with type substitutions after inference (#1277)
JSpecify: Improve error messages for type incompatibility at pseudo-assignments (#1279)
Add a case in our inference for generic method calls (#1240)
Add library model for Apache Commons CollectionUtils.isNotEmpty, Amazon CollectionUtils.IsNullOrEmpty, and a couple Amazon StringUtils methods (#1242)
NullAway now includes a BOM artifact com.uber.nullaway:nullaway-bom. Otherwise, this release contains a few bug
fixes and improvements to JSpecify support.
Fix URL for RequireExplicitNullMarking checker (#1369)
Handle annotations on type variables in return and field types (#1371)
Change how recursive calls to dataflow are detected (#1374)
JSpecify: use type on identifier when its type is a type variable (#1378)
Include method type parameters in astubx files. by @haewiful (#1370)
We now by default check/enforce that pure type-use annotations from JSpecify are written in the "right place" on array types, varargs types, and nested types. More
details can be found in the wiki.
We also expose -XepOpt:NullAway:LegacyAnnotationLocations flag to disable this new
behavior for now to ease the migration. We expect to remove this flag in a future version
of NullAway.
We now support writing @EnsuresNonNullIf on methods to capture cases where a method conditionally ensures that a field is @NonNull. Thanks @mauricioaniche for the contributions!
(The changelog below contains all changes from version 0.11.2, since version 0.11.3
contains only one cherry-picked PR from master).
Enforce Strict Interpretation Of Type Use Annotation Locations Outside of JSpecify mode (#1010)
Update handling of annotations on varargs argument (#1025)
Create basic unit tests for library model generation (#1031)
Partial handling for restrictive annotations on varargs in unannotated code (#1029)
Add missing source files in android-jarinfer-models-sdk modules (#1033)
External Library Models: Adding support for @nullable Method parameters (#1006)
IMPORTANT: This release fixes a crash when running against <2.24.0 release of
Error Prone (see #894) introduced in NullAway v0.10.20 and another crash related to
Checker Framework (see #895) introduced in NullAway v0.10.19.
Fix backwards-incompatible calls to ASTHelpers.hasDirectAnnotationWithSimpleName (#894)
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.10
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.11
Jun 23, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.11
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.12
Aug 2, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.12
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.13
Sep 1, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.13
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.14
Sep 7, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.14
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.15
Oct 19, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.15
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.16
Nov 1, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.16
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.17
Nov 20, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.17
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.18
Nov 30, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.18
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.19
Dec 27, 2023
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.19
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.20
Jan 12, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.20
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.21
Jan 14, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.21
fix(deps): update dependency com.uber.nullaway:nullaway to v0.10.22
Jan 29, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.0
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.1
Jul 29, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.1
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.2
Aug 19, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.2
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.3
Sep 16, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.11.3
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.0
Oct 18, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.0
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.1
Oct 28, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.1
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.2
Dec 13, 2024
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.2
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.3
Jan 6, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.3
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.4
Feb 28, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.4
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.5
Mar 26, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.5
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.6
Mar 27, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.6
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.7
Apr 30, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.7
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.8
Aug 6, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.8
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.9
Aug 18, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.9
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.10
Sep 16, 2025
renovatebot
changed the title
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.10
fix(deps): update dependency com.uber.nullaway:nullaway to v0.12.11
Oct 31, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.10.9→0.13.2Release Notes
uber/NullAway (com.uber.nullaway:nullaway)
v0.13.2Various bug fixes in this release and better JSpecify support.
@NonNullannotations on varargs array (#1484)javacfor certain cases (#1473)@Nullabletype use annotations in error messages (#1507)CustomLibraryModelsTests(#1482)v0.13.1@NonNulltypes for generic method inference (#1445)v0.13.0NullAway now requires a minimum of JDK 17 and Error Prone 2.36.0 to run; we bump the version to 0.13.0 to reflect these
updated requirements. There are also many improvements to JSpecify mode support, and several nice changes and
improvements from first-time contributors.
v0.12.15NullAway now includes a BOM artifact
com.uber.nullaway:nullaway-bom. Otherwise, this release contains a few bugfixes and improvements to JSpecify support.
v0.12.14This release fixes a bug where the new
RequireExplicitNullMarkingcheck was not fully disabled by default. It also includes a couple of performance optimizations to reduce NullAway overhead.v0.12.13NullAway now includes a new Error Prone checker,
RequireExplicitNullMarking,that checks that every class is explicitly
@NullMarkedor@NullUnmarked(at the class or package level), so codeis not left
@NullUnmarkedunintentionally. The check is disabled by default. See the docsfor further details.
NullAway also includes support for a new
@PureExceptLambdaannotation, contributed by @FxMorin, to tell NullAwayto preserve nullability information from the enclosing method when analyzing the body of certain lambdas.
See the docs for details.
TreePathin one more place when available (#1329)PureExceptLambdaannotation by @FxMorin (#1325)@Nullablein library models (#1345)ExternalStubxLibraryModelsclass is missing a corner case by @haewiful (#1344)v0.12.12This release fixes a severe performance regression introduced in NullAway 0.12.11 and we encourage all users of 0.12.11 to upgrade.
v0.12.11In this release, NullAway checks the requirement that JSpecify mode is only run on a compatible
javacversion /configuration, and fails if it detects an incompatibility.
See https://github.com/uber/NullAway/wiki/JSpecify-Support#supported-jdk-versions for details.
Contract, and change reporting of invalid contract annotations (#1295)thisinside an anonymous class (#1305)v0.12.10This release contains significant improvements to inference support for generic method calls in JSpecify mode (#1075).
We expect that many more valid calls will pass NullAway, but that some new bugs may have been introduced. Please report
any issues that you see. There is also a new flag,
-XepOpt:NullAway:WarnOnGenericInferenceFailureto make NullAwayreport a warning when inference fails, to help identify any issues.
CastToNonNullwarnings for@NullUnmarkedmethod calls by @raccoonback (#1258)GenericsChecks(#1256)buildDirby @mernst (#1278)v0.12.9v0.12.8v0.12.7v0.12.6v0.12.5v0.12.4@MonotonicNonNullsupport (#1149)@MockitoBean,@MockitoSpyBeanfields (#1147)v0.12.3v0.12.2v0.12.1NullAway now includes a BOM artifact
com.uber.nullaway:nullaway-bom. Otherwise, this release contains a few bugfixes and improvements to JSpecify support.
v0.12.0IMPORTANT:
details can be found in the wiki.
We also expose
-XepOpt:NullAway:LegacyAnnotationLocationsflag to disable this newbehavior for now to ease the migration. We expect to remove this flag in a future version
of NullAway.
(The changelog below contains all changes from version 0.11.2, since version 0.11.3
contains only one cherry-picked PR from master).
v0.11.3IMPORTANT: We have cherry-picked one PR in master since 0.11.2 for this release, it
does not contain all changes in master!
v0.11.2v0.11.1v0.11.0IMPORTANT: Support for JDK 8 is dropped and NullAway now requires 2.14.0 or higher.
v0.10.26v0.10.25v0.10.24v0.10.23v0.10.22IMPORTANT: The support for JDK 8 is deprecated in this release and will be removed in
an upcoming release.
v0.10.21IMPORTANT: This release fixes a crash when running against <2.24.0 release of
Error Prone (see #894) introduced in NullAway v0.10.20 and another crash related to
Checker Framework (see #895) introduced in NullAway v0.10.19.
v0.10.20v0.10.19v0.10.18v0.10.17v0.10.16NOTE: Maven Central signing key rotated for this release following a revocation.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.