Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: uber/NullAway
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.12.8
Choose a base ref
...
head repository: uber/NullAway
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.12.9
Choose a head ref
  • 8 commits
  • 20 files changed
  • 4 contributors

Commits on Aug 6, 2025

  1. Configuration menu
    Copy the full SHA
    3f1599a View commit details
    Browse the repository at this point in the history
  2. Fix maven central link in RELEASING.md (#1237)

    Maven central recently sunset the OSSRH and is migrating to
    https://central.sonatype.com/
    
    This PR updates the link in `RELEASING.md` to point to that site
    instead.
    yuxincs authored Aug 6, 2025
    Configuration menu
    Copy the full SHA
    dc07f65 View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2025

  1. Update to Error Prone 2.41.0 (#1239)

    Almost all the code fixes are for the new
    [EffectivelyPrivate](https://errorprone.info/bugpattern/EffectivelyPrivate)
    check.
    
    <!-- This is an auto-generated comment: release notes by coderabbit.ai
    -->
    ## Summary by CodeRabbit
    
    * **Chores**
      * Updated Error Prone version to 2.41.0 across all environments.
    * **Refactor**
    * Improved internal code encapsulation by restricting visibility of
    constructors, fields, and methods in multiple components without
    affecting user-facing functionality.
    * **Tests**
    * Added test annotation to a suppression suggestion test method for
    improved test execution.
    <!-- end of auto-generated comment: release notes by coderabbit.ai -->
    msridhar authored Aug 7, 2025
    Configuration menu
    Copy the full SHA
    92c9304 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2025

  1. Add a case in our inference for generic method calls (#1240)

    Fixes #1238 
    
    Before we were missing a fallback case; now we just use the type of the
    expression computed by `javac` (to be improved in the future).
    
    <!-- This is an auto-generated comment: release notes by coderabbit.ai
    -->
    
    ## Summary by CodeRabbit
    
    * **Bug Fixes**
    * Improved handling of nullable type variables in generic methods to
    ensure correct type inference in assignment contexts.
    
    * **Tests**
    * Added a new test to verify correct behavior when assigning
    non-nullable arrays to nullable array parameters in generic methods.
    
    <!-- end of auto-generated comment: release notes by coderabbit.ai -->
    msridhar authored Aug 8, 2025
    Configuration menu
    Copy the full SHA
    7b64688 View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2025

  1. Add library model for Apache Commons CollectionUtils.isNotEmpty, Amaz…

    …on CollectionUtils.IsNullOrEmpty, and a couple Amazon StringUtils methods (#1242)
    
    ## Summary
    This PR extends DefaultLibraryModels to recognize additional null-check
    helper methods from common libraries, ensuring NullAway treats them as
    guarding against null values.
    
    Added support for:
    * org.apache.commons.collections.CollectionUtils.isEmpty(Collection)
    * org.apache.commons.collections4.CollectionUtils.isEmpty(Collection<?>)
    *
    software.amazon.awssdk.utils.CollectionUtils.isNullOrEmpty(Collection<?>)
    
    
    Each method is now mapped so that NullAway understands they perform null
    checks on their first argument.
    
    Added corresponding unit tests in FrameworkTests to validate behavior
    for Apache Commons Collections, Apache Commons Collections4, and AWS
    CollectionUtils.
    
    Impact
    With these changes, NullAway will correctly recognize these helper
    methods as null guards, reducing false positives when developers use
    them to validate collections or objects before dereferencing.
    
    <!-- This is an auto-generated comment: release notes by coderabbit.ai
    -->
    ## Summary by CodeRabbit
    
    * **New Features**
    * Broadened null/empty-check recognition to cover additional common
    collection and string utilities (Apache Commons, Commons Lang/3, AWS SDK
    utils, Spark utils, Android TextUtils), improving null-safety analysis.
    
    * **Tests**
    * Added tests validating handling of null/empty guards using Apache
    Commons Collections, Commons Collections4 and AWS SDK utils.
    
    * **Chores**
      * Added AWS SDK utils as a test dependency.
    <!-- end of auto-generated comment: release notes by coderabbit.ai -->
    
    ---------
    
    Co-authored-by: Manu Sridharan <[email protected]>
    rmacqueen and msridhar authored Aug 12, 2025
    Configuration menu
    Copy the full SHA
    ba4ff83 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2025

  1. Add tests for gh-1246 (#1247)

    This adds (Ignored) tests for the failures for nullable super
    invocations described in gh-1246
    rwinch authored Aug 15, 2025
    Configuration menu
    Copy the full SHA
    f59d952 View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2025

  1. Test reading JSpecify annotations from bytecodes on JDK 21 (#1245)

    As of JDK 21.0.8, the patch to properly expose type use annotations via
    standard APIs has landed, [guarded behind the flag
    `-XDaddTypeAnnotationsToSymbol=true`](openjdk/jdk21u@bb83d59).
    This PR runs the relevant tests on JDK 21 by passing that flag where
    needed. This means NullAway regression tests will fail on versions of
    JDK 21 older than 21.0.8, but we can document that.
    
    <!-- This is an auto-generated comment: release notes by coderabbit.ai
    -->
    
    ## Summary by CodeRabbit
    
    - New Features
    - Improved compatibility with newer JDKs (21+), enabling enhanced
    type-annotation handling where available.
    - Tests
    - Expanded test coverage by removing version-based exclusions and adding
    runtime guards for newer JDKs.
    - Updated test setup to conditionally enable features on supported JDK
    versions.
    - Chores
    - Simplified build configuration by eliminating Java-version-specific
    test filtering.
    
    <!-- end of auto-generated comment: release notes by coderabbit.ai -->
    msridhar authored Aug 17, 2025
    Configuration menu
    Copy the full SHA
    bdca1c3 View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2025

  1. Prepare for release 0.12.9.

    yuxincs committed Aug 18, 2025
    Configuration menu
    Copy the full SHA
    bc26940 View commit details
    Browse the repository at this point in the history
Loading