History log of /external/doclava/src/com/google/doclava/ClassInfo.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8ea43aab82d66cb32138fcd659596ed140597023 11-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Optionally tag classes with Maven artifact spec" into oc-mr1-dev
4a6deba05ccce0415cb155ed4a9fb054f7258f52 09-Aug-2017 Alan Viverette <alanv@google.com> Optionally tag classes with Maven artifact spec

Change-Id: I9c6ab35f31c6ca886c601e34571613840752dc0b
Fixes: 62873049
Test: ./gradlew generateDocs from SL directory
/external/doclava/src/com/google/doclava/ClassInfo.java
a45f9a931b1dce93d69d44cd3be80f7eecab8648 09-Aug-2017 Jeff Sharkey <jsharkey@android.com> Fix handling of @removed APIs.

The @removed docs tag means that a particular API should be considered
as removed from the API surface area that it otherwise would have been
exposed through.

This set of CLs is fixing a bug where we @removed had been treated as
always removing from the public API.

Bug: 62341924
Test: make -j32 update-api
Change-Id: Iee6199eb3da46d5068a06c69d423fb2019fdc8df
/external/doclava/src/com/google/doclava/ClassInfo.java
6dabb0f3053bc2b51abc5a90436c711ddb0ed523 06-Jun-2017 Jeff Sharkey <jsharkey@android.com> Lint to verify @SystemApi permissions; more docs. am: 8e8f96738e
am: 8f7f3fb6d8

Change-Id: Ib21930c33fbd6302703105ba7301617b0b4f2d7e
8e8f96738e2a4e673db94a489ba2daf63807bb16 05-Jun-2017 Jeff Sharkey <jsharkey@android.com> Lint to verify @SystemApi permissions; more docs.

Most @SystemApi methods should be protected with system (or higher)
permissions, so verify that system service methods are annotated with
any relevant @RequiresPermission.

Auto-document new @SystemService annotation to guide developers on
how to obtain manager instances.

Test: make -j32 update-api && make -j32 offline-sdk-docs
Bug: 62263906
Change-Id: I57ae661241557970af4328ff21abec7629492c7c
/external/doclava/src/com/google/doclava/ClassInfo.java
43516d0ac00c5213f5b0ab4033ce65efdad59c3a 24-May-2017 Sean Young <csyoung@google.com> Merge "Add -hideAnnotation parameter to doclava."
ef8f3ec4f2383427cca8b70ca5125cb2ae7121ca 10-May-2017 Jeff Sharkey <jsharkey@android.com> Offer to emit exact APIs instead of superset.

When using the "showAnnotation" option, we generate a superset of
public API plus any annotated methods. This is useful for normal
stubs JAR generation, but it makes it hard to compare only the diffs
of a specific annotation type.

To remedy this, offer new "-exactApi" output file which will emit
exactly the APIs annotated with the "-showAnnotation" value. This
was done by refactoring the existing "-removedApi" logic to support
any sort of filtering we want to perform.

Test: make update-api && make -j32 online-system-api-sdk-docs
Bug: 38146029
Change-Id: Ice51814db8daa0214ab91b5fa088eed0dd69410a
/external/doclava/src/com/google/doclava/ClassInfo.java
021685a606bcb5dca28685f6f6004805482cf657 23-Apr-2017 Jeff Sharkey <jsharkey@android.com> New "lint" errors, split Android-specific logic.

We really encounter three classes of trouble: errors, warnings, and
lints. See added docs about the differences between them. Colorize
trouble output to make it easier to triage.

Since both auxiliary tags and linting are project-specific, factor
out the Android-specific versions of these, and only put them into
place when the "-android" argument is requested.

Add linting logic to identify possible docs trouble, such as
missing or misleading annotations.

Test: make -j32 offline-sdk-docs
Bug: 37526420
Change-Id: Id8b5b4e143f206e959ecde4655e877ee7723e3cd
/external/doclava/src/com/google/doclava/ClassInfo.java
5bef2e340a459baabf6e0f2a7768974e2b3b8f2c 23-Mar-2017 C. Sean Young <csyoung@google.com> Add -hideAnnotation parameter to doclava.

Basically this is -showAnnotation, but for the opposite use.
Specifies Java annotations that should be treated the same as "@hide"

Test: Sadly there are no unit tests for Doclava, however, this change
builds and treehugger should ensure that Doclava's existing usage
still works.
Change-Id: I76fe6d74eff2db08f65f992ded0cae9144fc31a1
/external/doclava/src/com/google/doclava/ClassInfo.java
bb96facc88996ee5f333b056868565fb4636a646 09-Feb-2017 Yigit Boyar <yboyar@google.com> WIP hack to show annotation elements in docs

Change-Id: I77c9c7627819164a83868ecf02b511d85eaebacd
/external/doclava/src/com/google/doclava/ClassInfo.java
96c5352851b41eb6fa19c569e8974710c4c3cc72 30-Nov-2016 Alan Viverette <alanv@google.com> New error type for removal of deprecated targets

Does NOT cover removal of deprecated parameters or packages. Adds
gradle test target. Fixes a handful of tests that were preventing
tests from compiling. Fixes support for only passing the old and
new API files without removed API files, which was needed for
tests. Adds tests for the removal of deprecated targets. Also adds
missing tests for add/remove methods.

Bug: 33069269
Test: ./gradlew doclava:test
Change-Id: I9bd623657fb5ee1354ffea62c3ae27d9e6ee6d02
/external/doclava/src/com/google/doclava/ClassInfo.java
d894e7de44cda4d042358f10681d2d170c021ec4 24-Nov-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Suppress deprecation warning for classes from jar files

Classes from jar files that had their comments stripped
may erroneously trigger the deprecation warning because
of missing "@deprecated" doc tag. This change
makes the deprecation warning require that containing
class be in "included" set (this implies not originating
from a classpath jar file).

Test: make -j docs, tested it works with a synthetic
@deprecated javadoc/annotation mismatch
Bug: 32651845

Change-Id: I5db5c509d4c0015ee950a4f093af03c384baed4b
/external/doclava/src/com/google/doclava/ClassInfo.java
2877f75d0084cab87f84b249dee5e9bb9498bcc3 03-Feb-2016 Michael Wright <michaelwr@google.com> DO NOT MERGE Keep track of method and class type variables.

Also, add consistency checks for parameterized classes and return
types.

Bug: 24265043
Change-Id: Iafe9762f15f6ea439e28cd35bc73277cf1f6e405
/external/doclava/src/com/google/doclava/ClassInfo.java
13f355933840a395d671afcc548e2ae4020d92ef 20-May-2015 C. Sean Young <csyoung@google.com> resolved conflicts for merge of 552b5f66 to mnc-dev

Change-Id: I1dfe65d9cccf3d0aae7800215cf8f5e66a0d7347
a7e5c7e9b5250e738ff36521c03f6a3b76bc1c08 08-May-2015 C. Sean Young <csyoung@google.com> Make CheckApi error messages more consisent and informative.

Make CheckApi error messages involving methods print out signature rather than just qualified name.
Previously, only constructor related additions and removals did this.
This made it difficult to tell which overload of a method had an API change.

Updates constructor related messages to use the fully qualified name of the class.

Also makes deprecation status change messages consistent (fields and classes now show before and after,
in addition to methods).

Change-Id: I83f06e96bf20e234fcc432ebec8d0b8ae04a22d2
/external/doclava/src/com/google/doclava/ClassInfo.java
f9b7c1bf84c3d4eeb7b99af30e4ffe159c9fdaee 25-Apr-2015 Guang Zhu <guangzhu@google.com> add new option to ApiCheck to look for new API methods

When 'newapi' option is needed, ApiCheck will be in "diff" mode:
* when classes are checked for consistency, newly added methods
and constructors are kept in lists
* when packages are checked for consistency, newly added classes
and classes with new API methods are kept in list
* when APIs are checked for consistency, newly added packages
and pakages with new/modified classes are added
* the accumulated deltas are then exported in XML format

Change-Id: I3fed989e2836109e334c0e665639190196f14f4c
/external/doclava/src/com/google/doclava/ClassInfo.java
fc7a245ce318f44d2315efbfc7984ecf19810562 02-Apr-2015 Ying Wang <wangying@google.com> Merge "Fix overridden method check in apicheck."
67e440be60f3547e3280c9840af9547f521c28b3 31-Mar-2015 Ying Wang <wangying@google.com> Fix overridden method check in apicheck.

In ClassInfo.isConsistent(), if an added method is implementing an
abstract method, we should fail, because the newly added method affects how
users use it.

Bug: 19914248
Change-Id: I5dc1f8892b775db79a85e53b4fc408b8455c55a8
/external/doclava/src/com/google/doclava/ClassInfo.java
b2a6c0413706468ba1dc6bcdd4e29d8eee20fffe 27-Mar-2015 Jeff Arneson <jarneson@google.com> Generate documentation based on annotations attached to classes and methods

Allow users to pass in a text file of the format:
annotationname:Documentation String
annotation2:More Documentation
that will get inserted into the docs when a class or method has
that annotation.

Bug: 19931569
Change-Id: Ic2334dd2fcba638526cf2d67e25e27cf8e39b6fe
/external/doclava/src/com/google/doclava/ClassInfo.java
f2aaefa64d6f026c68872cd4eb41432492a64114 02-Dec-2014 Jeff Arneson <jarneson@google.com> am d6570b0b: Fix docs for classes that implement or extend generics with type parameters

* commit 'd6570b0b7f66519ba50c18d9e08db423bdf1341e':
Fix docs for classes that implement or extend generics with type parameters
d6570b0b7f66519ba50c18d9e08db423bdf1341e 29-Oct-2014 Jeff Arneson <jarneson@google.com> Fix docs for classes that implement or extend generics with type parameters

The type paramater data was being lost on interfaces and base classes
when iterating through the hierarchy. This is fixed by passing along
TypeInfos that keep track of the parameterized types to the superclasses,
interfaces, and methods in the inheritance chains.

Bug: 18078691
Change-Id: I8a614e6f51862c5550766d58e33205040dab3dfb
/external/doclava/src/com/google/doclava/ClassInfo.java
a2769edc45485149708af8eaa08156623ba72313 11-Sep-2014 Brett Chabot <brettchabot@google.com> Prevent NPE when converting api to xml.

If a stub ClassInfo is generated, calling 'showAnnotations' on it
would throw a NPE.

Bug: 14063625
Change-Id: Ic3af51ab7e488c599b87449b30b46e2ecfe03112
(cherry picked from commit baf6bc51adf56a5ed569f9ab1edb31980324fee6)
/external/doclava/src/com/google/doclava/ClassInfo.java
9ee73fde5ad41d815ddfdc4e058cc5e49c81fe51 08-Oct-2014 Jeff Arneson <jarneson@google.com> Inner classes export showAnnotations from their containing class

Updated the makeHDF methods on ClassInfo to grab showAnnotations
recursively from the containing classes if they exist.
getAnnotationsIncludeOuters is the helper method to do this.

Nothing was changed about deciding visibility of said inner classes,
as it seems to work really well already.

Change-Id: Idbe7a2ee8fd5c455bb08bb3e53424630ec772267
Bug: 17900353
/external/doclava/src/com/google/doclava/ClassInfo.java
b84c41b0cd0531aa83f51a791d7457b4819bee7a 13-Aug-2014 Jeff Arneson <jarneson@google.com> DO NOT MERGE Spit out annotations used in showAnnotations param

Update Class, Member, and Method infos to track what annotations
were used to bypass @hide and the like. Pass those out as an
array to be rendered in the HTML.

Bug: 16848303
Change-Id: I98ebc574d4b8eaaa1134e260518ddc2ddd43f99f
(cherry picked from commit 051dace82cf6a43923b17f95974d93a23ed3dd87)
/external/doclava/src/com/google/doclava/ClassInfo.java
53d13be6dc155a3d7ae0607f3eafc2c3b98a909f 25-Jun-2014 Florian Uunk <feuunk@google.com> Fixes for generating APIs that use external libraries.

Two fixes:
- Add stubs for interfaces that are outside of the codebase
- Consider interfaces that are outside of the codebase for API
consistency

Change-Id: Ia4c5a7ec92d169d519d7d580ae36dd60f480dabc
/external/doclava/src/com/google/doclava/ClassInfo.java
3acc9d1825a2ed73954d10e0a11f2a0de9dd76e5 22-May-2014 Tim Murray <timmurray@google.com> Revert "Warn when showAnnotation is on unhidden element."

This reverts commit e1b2ef4ed6d4ff2aa1506ce8ca2f6a35266c3039.

Change-Id: I64539af1032f919f588fcb5dad853950a2ce1c2e
/external/doclava/src/com/google/doclava/ClassInfo.java
e1b2ef4ed6d4ff2aa1506ce8ca2f6a35266c3039 14-Feb-2014 Adam Metcalf <gamblore@google.com> Warn when showAnnotation is on unhidden element.

Bug: 12935050
Change-Id: I131210bd3d655b61a3b547e4342f44b33df7fb7d
/external/doclava/src/com/google/doclava/ClassInfo.java
5118ffe3bf77ec4efa070f36a7a62fd5d1bf16bf 18-Feb-2014 Hui Shu <hush@google.com> Add support for @removed tag.

@removed tags can be applied to packages, classes, methods, fields
that were once public API, but later removed. Things annotated by
@removed cannot be used by outside developers. But applications compiled
against the old API where the @removed API were still public should
continue to work and we must not delete the @removed APIs from the
source. This fix makes sure of that.

BUG: b/11293324

Change-Id: Iab3a8bdcaa0cb0742501c33e29b8121bc169bf1b
/external/doclava/src/com/google/doclava/ClassInfo.java
2902ec8ac40c9aa9a8e7e092eef0fffeea4fdb63 28-Oct-2013 Narayan Kamath <narayan@google.com> am 775e8d9f: am f607faf9: Merge "Work around a couple of doclet API bugs."

* commit '775e8d9fbbf4e0c5d9393b18b3f8771e85b0cc14':
Work around a couple of doclet API bugs.
775e8d9fbbf4e0c5d9393b18b3f8771e85b0cc14 28-Oct-2013 Narayan Kamath <narayan@google.com> am f607faf9: Merge "Work around a couple of doclet API bugs."

* commit 'f607faf92243699f3251980e7bc9f95e9cd09c06':
Work around a couple of doclet API bugs.
b1b0ee7431822a163552601a529e4db7cb3114c8 24-Oct-2013 Narayan Kamath <narayan@google.com> Work around a couple of doclet API bugs.

- We sometimes receive spurious duplicate ClassInfo
objects from the root doc that are poorly formed (have
a "null" position). Discard them.
- Don't call ClassInfo#findClass with an empty string,
it returns a bogus ClassInfo object.

Change-Id: Ie8b857fc906402993f84df8465e1550be95a5e5d
/external/doclava/src/com/google/doclava/ClassInfo.java
f2d2e93f552d699dc3dc58fb450b7e7a50128da0 20-Aug-2013 Adam Metcalf <gamblore@google.com> Unhide package of class that is shown by annotation.

Change-Id: Ia3c6817ef984b30d5a9a89dcd49f53f7baf34df0
/external/doclava/src/com/google/doclava/ClassInfo.java
09ce528ec5786254f6f1af6359c344d673ca80ad 14-Aug-2013 Scott Main <smain@google.com> am 18904806: fix doclava to tag enums with \'since\' info

* commit '189048062a7df2d2fba4ff075c6416bfbf05a094':
fix doclava to tag enums with 'since' info
189048062a7df2d2fba4ff075c6416bfbf05a094 07-Aug-2013 Scott Main <smain@google.com> fix doclava to tag enums with 'since' info

In order for the output to behave properly, this CL depends
on the following change that adds the enum values to the public
API list for all API levels lower than 14.
I1f88e8f9f3e2655d17eea628611318e207cbb535

bug: 10220616

Change-Id: I424e71d8a8b69c1c348e10b60b60f77aa0b2468d
/external/doclava/src/com/google/doclava/ClassInfo.java
864c6b3a9873601593ad12a656de938ac37c7240 13-Jun-2013 Elliott Hughes <enh@google.com> am 73609593: Merge "Check that return types are assignable instead of exact."

* commit '736095934f50fede95f2cb1bb54cc24493c6e69a':
Check that return types are assignable instead of exact.
11b179627c411772f1eac023d915ab8532e55211 08-Jun-2013 Mathieu <mathieu.a.chartier@gmail.com> Check that return types are assignable instead of exact.

We now check that the new return type is assignable to the old
return type instead of just comparing the types as strings when
checking the consistency of two APIs.

Fixes:
https://android-review.googlesource.com/#/c/58843/

Change-Id: I6a18a76e5296d58c05f1bb59341cdaa820f0c540
/external/doclava/src/com/google/doclava/ClassInfo.java
8de1e455a8415726b390785e5d7c20f5d7d9ee1d 06-Jun-2013 Elliott Hughes <enh@google.com> am 4c54273b: Merge "Check superclasses recursively for changed superclasses."

* commit '4c54273b5fcc7012024858387dc36033d6d37d50':
Check superclasses recursively for changed superclasses.
ffecf3c5c207d0275d480970fd025cb9526b1905 06-Jun-2013 Mathieu <mathieu.a.chartier@gmail.com> Check superclasses recursively for changed superclasses.

We now check superclasses recursively instead of just doing a string comparison.
This means that we no longer treat cases where the new superclass extends the old
superclass as an error.

Fixes https://android-review.googlesource.com/#/c/58400/1

Change-Id: I77ebb7312d0de83faed7dce0195682848256af73
/external/doclava/src/com/google/doclava/ClassInfo.java
722ac6ad427cab1d8d6daba6bd100afa9dd94fb7 02-Apr-2013 Jeff Brown <jeffbrown@google.com> apicheck: Handle more special cases for final.

It's ok to make a method final if it belongs to a class
that is effectively final (no public constructors).

Change-Id: I6c497e68a91f99eee124e9dbe3d075c6672c4615
/external/doclava/src/com/google/doclava/ClassInfo.java
43d2ac8017a651b5678c8a9753248663d8bfe9a7 01-Apr-2013 Jeff Brown <jeffbrown@google.com> apicheck: Allow safe addition and removal of final qualifier.

Split the CHANGED_FINAL error into ADDED_FINAL,
ADDED_FINAL_UNINSTANTIABLE and REMOVED_FINAL so that the
API check scripts can more precisely target policy around
changes to the final qualifier.

ADDED_FINAL_UNINSTANTIABLE covers the case of a class
that has become final but that was previously not
instantiable. This change is safe since applications could
not have declared subclasses of their own.

Change-Id: I36a143bdbcffd04379788a55ff996b47398ba4fe
/external/doclava/src/com/google/doclava/ClassInfo.java
9b316c84e2e15268db79772d9cef60da1df488ec 28-Jan-2013 Dirk Dougherty <ddougherty@google.com> Doclava: add support for a second html dir and associated output. This is primarily for devsite online docs builds. Also move ca151a9bbea066b0efd0e423bcade8895a83db71 and related changes into production docs branch.

Change-Id: Idc95c4e396713eb592b8d1ffd60d93ee89472e97
/external/doclava/src/com/google/doclava/ClassInfo.java
40ad14799644f497483efe6d1350c856d46bc4da 25-Oct-2012 Scott Main <smain@google.com> cherrypick Change-Id: Ic7cc0864518fef95b106ab3d392c47eb225404bf
Add HDF meta-data for the version in which an API was deprecated

Change-Id: Iadaceb6d61d2fbc75d219295da2d8d7b52bd2eeb
/external/doclava/src/com/google/doclava/ClassInfo.java
6ba612efffba42bec102ac58a1540496158f747e 21-Jun-2011 Andrew Sapperstein <asapperstein@google.com> Parsing entire tree and resolving all conflicts.

Unfortunately, this takes 3 passes (1 parse and 2 resolve passes)
due to one corner case (where you refer to something that is inside a superclass
that is in a different package). Fortunately, there are only
3 or 4 resolutions on the third pass.

Change-Id: I14dc6e61e002058132b8065a7b31abb87ac8f2a1
/external/doclava/src/com/google/doclava/ClassInfo.java
d6eaacbb9eb56763d38a3815fc509b92ed98a585 20-May-2011 Andrew Sapperstein <asapperstein@google.com> Modified old doclava to use LinkedLists instead of arrays

Functioning java parsing as well. Needs to be wired up into doclava proper.

Change-Id: Ifa38ca7312e6c23a8f663a9d0638afb9a29bf19d
/external/doclava/src/com/google/doclava/ClassInfo.java
132afe44b3b7963e47d4c32948b2667ddc00062c 01-Jun-2011 Joe Onorato <joeo@google.com> Put the enum constants into the api file.

Bug: 4292741
Change-Id: I87d298511984a7f99192015a3f81bce07c106692
/external/doclava/src/com/google/doclava/ClassInfo.java
040992567205c3b6e4ee01bfb2893bceb915357c 09-Mar-2011 Joe Onorato <joeo@google.com> Add support for new API file format.

Change-Id: I7db4d1559d24906365f447652d28c4b04a20805d
/external/doclava/src/com/google/doclava/ClassInfo.java
5935135f7cffb7a730d978a8ea25ae5951a7f6ba 02-Mar-2011 Joe Onorato <joeo@google.com> Add an isDerivedFrom() that takes a class name, in addition to the one that takes a ClassInfo.

Change-Id: I053c7124d1076bde9d7dac118af05281d1a044c4
/external/doclava/src/com/google/doclava/ClassInfo.java
331b8a2511bb860ab6b96f159748c35a01080f65 02-Mar-2011 Jesse Wilson <jessewilson@google.com> Always show enum constants.

Enums were not identifying themselves as constants. This may be
caused by the upgrade to Java 6. All enum constants should be
shown; the check is unnecessary.

Change-Id: I290b5b3000d685b0524a9e7131bd5ca19a63bbdf
http://code.google.com/p/android/issues/detail?id=15038
/external/doclava/src/com/google/doclava/ClassInfo.java
920dbbbaca6aa578f3b26d89e99d12754c26ed60 05-Aug-2010 Ben Dodson <bjdodson@google.com> Initial import of Doclava project

Change-Id: Ia5ae56f1700fce98e0ae6954fa2df617ec0537bb
/external/doclava/src/com/google/doclava/ClassInfo.java