Commit 20b55ede authored by Dustin Lam's avatar Dustin Lam Committed by Gerrit Code Review
Browse files

Update git submodules

* Update frameworks/support from branch 'androidx-main'
  to c6a89aacd2aedbe175ca6ee356a18a60d15b868f
  - Merge changes Ib3679acf,I33363aa8,I271b7058,I9b35609a,I96139bab into androidx-main
    
    * changes:
      Fix source incompatibilities from Kotlinification of SimpleArrayMap
      Convert ContainerHelpers to Kotlin
      Convert SimpleArrayMap to Kotlin
      Rename SimpleArrayMap.java to SimpleArrayMap.kt
      Integration test for source compatibility for SimpleArrayMap
    
  - Fix source incompatibilities from Kotlinification of SimpleArrayMap
    
    SimpleArrayMap now correctly types many of its function's arguments,
    which is a binary compatible change due to type erasure, but causes
    CallbackHandlerRegistry to implicitly try to cast Class<?> to
    Class<? extends CallbackReceiver>. Compiler warns this can't work
    due to type erasure, so this CL instead changes SimpleArrayMap to be of
    type <?> instead of <? extends CallbackReceiver>.
    
    Test: ./gradlew remotecallback:remotecallback:compileDebugJavaWithJavac
    Change-Id: Ib3679acf9220742f14b120d5bdabfe0cc5b79f4e
    
  - Convert ContainerHelpers to Kotlin
    
    Test: ./gradlew bOS
    Change-Id: I33363aa814e0c6e038bc14606bbe0733b02e4b99
    
  - Convert SimpleArrayMap to Kotlin
    
    This also removes the global array cache which provided dubious
    performance value while allowing unsychronized access to possibly
    corrupt other instances of this class.
    
    Relnote: "Convert SimpleArrayMap to Kotlin. This change introduces a few
      incompatible changes, as a result of Java-Kotlin interop and the
      ability to correctly define nullity of types in the source.
        * The package private APIs, `.mSize`, `.mArray`, `.mHashes`,
          `.indexOf()`, `.indexOfNull()`, and `.indexOfValue()`, were made
          private - this is technically a binary incompatible change, but
          reflects the intended visibility of these fields and is the closest we
          can achieve in Kotlin since it does not include a way to specifiy
          package-private visibility.
        * The nullity of some types are now properly defined, the affected
          methods are: `.getOrDefault`, `.keyAt`, `.valueAt`, `.setValueAt`,
          `.put`, `.putIfAbsent`, `.removeAt`, `.replace`.
        * For Kotlin users, `.isEmpty()` is now only available as a function instead of
          also through property access."
    
    Bug: 139401479
    Bug: 182813986
    Test: ./gradlew bOS
    Change-Id: I271b70587e94ef166be71c5b60d8c6361b4b1849
    
  - Rename SimpleArrayMap.java to SimpleArrayMap.kt
    
    Test: N/A
    Change-Id: I9b35609a70e58d3be206e13ff92be78254b65b59
    
  - Integration test for source compatibility for SimpleArrayMap
    
    Test: ./gradlew collection:integration-tests:testapp:assemble
    Change-Id: I96139bab83c044b153a08a475343010943816be3
    
parent 798ea9cb
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment