Skip to content
Snippets Groups Projects
  1. Mar 04, 2019
  2. Mar 01, 2019
  3. Feb 27, 2019
  4. Feb 21, 2019
  5. Feb 20, 2019
  6. Feb 13, 2019
    • Tor Norbye's avatar
      Generate @apiSince and @deprecatedIn instead of literal text · bd606aec
      Tor Norbye authored
      This is intended for doclava and other tools to do their
      own rendering of the doc content to describe a deprecation
      level.
      
      Also renames the @since tag to @apiSince to make it less
      ambiguous and to not conflict with existing @since tags
      that are present in various docs.
      
      Also starts emitting @apiSince into package.html docs,
      such that there is a concept of a package API level; this
      is the lowest API level for any class in that package.
      
      Also makes sure we don't emit @apiSince for SystemApi
      docs, since we don't have accurate historical information
      for SystemApi and TestApi sources.
      
      Also starts writing @apiSince tags even when the since tag
      is 1 (e.g. for the APIs added from the beginning). This
      was omitted for optimization purposes earlier but is added
      back to make the doc generation task easier.
      I also added some optimizations for these two new tags since
      they can be merged more quickly with some special handling
      since they never appear in existing sources and can always
      be listed last in the docs.
      
      Finally, various fixes to the API lookup data base
      generation; this makes the generated database more
      closely mirror what's in android.jar, and, importantly
      for doc generation, properly tracks in-development APIs,
      such that generated docs at the moment shows up as "Q"
      instead of "28".
      
      Test: Unit test updated
      Change-Id: If25a8075dc1bb2ace184d1b4d6f19717fae2bc83
      bd606aec
  7. Feb 09, 2019
  8. Feb 08, 2019
    • Tor Norbye's avatar
      119021844: Add support for subtracting APIs · f1713cec
      Tor Norbye authored
      This CL adds the following flag:
      --subtract-api <api file>  Subtracts the API in the given signature or jar
                                 file from the current API being emitted via
                                 --api, --stubs, --doc-stubs, etc. Note that the
                                 subtraction only applies to classes; it does not
                                 subtract members.
      
      This lets you limit the emitted API signature files, stub files, etc,
      to be just the delta relative to a subset of the API, or an older
      version of the API.
      
      Bug: 119021844: Remove duplicate classes from org.apache.http.legacy stubs library
      Test: Unit test included
      Change-Id: I28a9f0f49ac42626a62f5ca4faa6c35e38554228
      f1713cec
  9. Feb 07, 2019
    • Tor Norbye's avatar
      Change --update-api to --only-update-api and add --only-check-api · d3fe21fb
      Tor Norbye authored
      This CL adds a new flag to tell metalava that it's invoked while
      *only* checking compatibility. In that case it will ignore various
      other flags being passed in to it (such as --stubs, which it's
      currently unconditionally passed but is not useful and is costly
      during compatibility checks.)  It also renames the --update-api
      flag (meant for similar purpose during make update-api, where
      we don't need to generate stubs) to be called --only-update-api
      to make its purpose clearer.
      
      Test: Unit test included
      Change-Id: I3f105746c5f76356b8dca0f1709ee2a4413ff938
      d3fe21fb
  10. Feb 06, 2019
    • Tor Norbye's avatar
      Add type printer to properly handle Kotlin style null syntax · 42a0adb7
      Tor Norbye authored
      This CL updates the handling of Kotlin-style null syntax (used
      in format v3). It now does a much more accurate job formatting
      types from Java syntax (and Java type use annotation syntax)
      into Kotlin-style nullness syntax. This cannot be done with
      simple things like replacing @Nullable with ? since the place
      for the annotations in the type expression is not the same as
      where the nullness suffix goes.
      
      This CL also adds --format=latest as an alias for --format=v3
      and --format=recommended as an alias for --format=v2.
      (The alias values will change over time as the formats and
      recommendations evolve.)
      
      Bug: 123415058
      Test: Many new unit tests
      Change-Id: I6622041f0966b99157db4fe60d534a55e658bd10
      42a0adb7
  11. Feb 01, 2019
    • Tor Norbye's avatar
      Set up javadoc environment · c01068d0
      Tor Norbye authored
      More recent versions of the parsing environment
      requires some javadoc extension points to be
      registered.
      
      Test: make sdk
      Change-Id: Ifee7ff006b6d11bbb58ec772e722ffef9f6f6f33
      c01068d0
  12. Jan 31, 2019
    • Tor Norbye's avatar
      Ensure that stub annotations are in correct packages · e3a5680d
      Tor Norbye authored
      This should fix
      123538809: Broken at //contentads/gfp/video/liveads/testing/playback:appletv4_invalid_test_build_test
      
      Change-Id: I52ad8f0afd0c2c47c30a16e47dada923cbd61f25
      Fixes: 123538809
      Test: Unit tests updated
      e3a5680d
  13. Jan 30, 2019
  14. Jan 28, 2019
  15. Jan 25, 2019
  16. Jan 24, 2019
  17. Jan 23, 2019
    • Tor Norbye's avatar
      Fix type comparison to ignore whitespace · d33b1e45
      Tor Norbye authored
      When comparing type signatures,	spaces should not be significant,
      eg. Map<X,Y> ==	Map<X, Y>. This	was already mostly the case, except
      for when comparing types from one signature file with types from
      another, as is the case when doing compatibility checks with show
      annotations (such as the system API).
      
      Test: Unit tests included
      Change-Id: Icec1a679cfb9245905581bc0fe9074745f835038
      d33b1e45
    • Tor Norbye's avatar
      Add flag to allow baseline files to be empty · daa778dd
      Tor Norbye authored
      Normally baselines are deleted if they are empty. This
      CL adds a flag to let you leave baselines in place even
      if they are empty.
      
      --delete-empty-baselines  Whether to delete baseline files if they are
                                updated and there is nothing to include.
      
      Also tweak baselines to not end with two blank lines.
      
      Test: make update-api
      Change-Id: I7c24d6ac531ad32dfd0e45e2ebd3f2d4c7591338
      daa778dd
  18. Jan 22, 2019
    • Tor Norbye's avatar
      Update to Gradle 4.1 and shadowJar 4.0.4 · 2eca4537
      Tor Norbye authored
      Gradle 5.x requires a newer version of the shadow jar plugin.
      
      Test: ./gradlew shadowJar
      Bug: N/A
      Change-Id: I1b2603be123a4c1b36fbcb08fefbdcc0cdfc7650
      2eca4537
    • Jeff Gaston's avatar
      Moving version.properties to the root of metalava.jar when built by the build server · fcc3deba
      Jeff Gaston authored
      Bug: 123242905
      Test: m -j metalava && java -jar ../../out/host/linux-x86/framework/metalava.jar --version
      Change-Id: I926d1abe4da973cd86290e69dcc0df2b4d84554b
      fcc3deba
    • Tor Norbye's avatar
      Switch to UAST 1.3 · 8b707232
      Tor Norbye authored
      This adds support for Kotlin 1.3, which also has the side
      effect of switching packages for coroutine signatures.
      This required a number of changes; for one thing, in
      various places the PSI annotations would say @Nullable
      for things like default parameters whereas the UAnnotations
      correctly were marked as @NonNull, so metalava had to
      start looking at UAnnotations instead.
      
      Test: Unit tests updated
      Change-Id: I9a7537a215ce3f8d065d6183bc5f09ebdf3bf77a
      8b707232
    • Tor Norbye's avatar
      Improve baseline handling · 35a5c16f
      Tor Norbye authored
      Tweak the handling of baselines: Make sure the baseline message
      reflects the correct path; add a flag to allow passing the
      build on baseline update errors such that the source tree can
      be updated in one go, etc.
      
      Also switch to kotlin UTF_8 charset constant.
      
      Test: Existing
      Change-Id: I6d9fd003eb50e027b45a6bf7765e4f5270e369af
      35a5c16f
  19. Jan 21, 2019
    • Tor Norbye's avatar
      123140708: Always include spaces in type argument lists in jdiff output · a100e0d5
      Tor Norbye authored
      This CL fixes CTS tests that depend on string equality between
      the JDiff type descriptions and their own internal pretty-printer
      based on reflection lookup of the API; the pretty printer always
      emits a space after a comma in type lists whereas metalava's
      signature file to JDiff output converter would preserve whatever
      was in the signature file, which as of v2 omitted spaces.
      
      This CL forces the output to always have spaces when converting
      to JDiff output.
      
      Test: Unit test included (plus of course the failing CTS test)
      Change-Id: Icbcb3067423cb5fa259e18e028704c27c48953e4
      Fixes: 123140708
      a100e0d5
Loading