aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.agent.rt
AgeCommit message (Collapse)Author
2018-01-24Further modify jacoco runtime to reduce deps on core libs.Pete Gillin
This changes it from eagerly creating an ExecutionDataStore to only eagerly creating a HashMap<Long, ExecutionData>, which was one of the two fields in ExecutionDataStore. This makes it possible to instrument 7 of the 10 previously blacklisted classes in java.util without creating a circular dependency at runtime. Bug: 64836607 Test: mvn clean install -Djdk.version=1.9 -Dbytecode.version=1.9 (in org.jacoco.build/) Test: `cts-tradefed run cts-dev -m CtsLibcoreTestCases --test-arg com.android.compatibility.testtype.LibcoreTest:coverage:true` on a build with EMMA_INSTRUMENT=true and EMMA_INSTRUMENT_FRAMEWORK=true Change-Id: I30dfeab8922b7d53f82fdab81020e4a7f0ef4e3e
2018-01-23Modify jacoco runtime to reduce dependencies on core libs.Pete Gillin
Previously, Offline's static initializer would eagerly create an Agent, a process which has lots of dependencies. With this change, Offline only eagerly creates an ExecutionDataStore, which is much more lightweight. The Agent is only created when it's actually needed. This makes it possible to instrument a lot of more core libraries without creating a circular dependency at runtime (e.g. all of java.io and java.nio, and most of java.util). Bug: 64836607 Test: mvn clean install -Djdk.version=1.9 -Dbytecode.version=1.9 (in org.jacoco.build/) Test: `cts-tradefed run cts-dev -m CtsLibcoreTestCases --test-arg com.android.compatibility.testtype.LibcoreTest:coverage:true` on a build with EMMA_INSTRUMENT=true and EMMA_INSTRUMENT_FRAMEWORK=true Change-Id: Ib1bd1adcd1ea58935a588f442dc57f958841c6aa
2018-01-05Merge tag 'v0.8.0' from 'aosp/upstream-master' into master.android-wear-p-preview-2android-wear-8.0.0_r1android-p-preview-4android-p-preview-3android-p-preview-2android-p-preview-1android-o-mr1-iot-release-1.0.2android-o-mr1-iot-release-1.0.1android-o-mr1-iot-release-1.0.0android-o-mr1-iot-preview-8android-o-mr1-iot-preview-7android-n-iot-release-smart-displayandroid-n-iot-release-polk-at1android-n-iot-release-lg-thinq-wk7o-mr1-iot-preview-8o-mr1-iot-preview-7Allen Hair
* 6a0c097f (tag: v0.8.0) Prepare release v0.8.0 * b9d1b54e Happy New Year 2018! * 6f375769 Consolidate change log for 0.8.0 release (#632) * 0c50b210 Restore exec files compatibility regarding Java 9 class files (#636) * 7f7c246f Offline instrumentation should not damage module-info (#634) * e050f194 Instrumentation should not damage structured locking (#627) * 4c0b93e8 Fix ExecutionData.merge JavaDoc (#630) * ff001947 Add filter for duplicates of finally blocks (#604) * 00f06ecc Fix typos Bug: 69463998 Test: m EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true SKIP_BOOT_JARS_CHECK=true WITH_DEXPREOPT=false tests Change-Id: I00f3079bdbb0618141b4414cac0b83dcf9c0c2d5
2018-01-02Prepare release v0.8.0Evgeny Mandrikov
2018-01-01Happy New Year 2018!Evgeny Mandrikov
2018-01-01Restore exec files compatibility regarding Java 9 class files (#636)Evgeny Mandrikov
2017-12-21Merge remote-tracking branch 'aosp/upstream-master' into masterColin Cross
* e1502d10 Add build with JDK 10-ea * dd7809ac Cleanup AgentTest (#618) * 8f046096 Remove obsolete phase binding (#617) * cdd0ec17 Fix test that doesn't pass bytecode verification of Eclipse OpenJ9 JVM * 45223410 Use default environment in Travis instead of deprecated * caa820ed Upgrade ASM to 6.0 (#600) * ec6287a6 Add filter for methods annotated with @groovy.transform.Generated (#610) * 88d7b01d Fix test to not require additional settings on JDK 9 (#611) * bdfa45fe Add test of offline instrumentation of Java 9 module-info (#608) * 11ac0663 Document contract for In/OutputStream resources and fix example (#605) * 4d6ca957 Descriptive names for all tests in FrameSnapshotTest (#609) * 99244757 Add test of ASM bug 317792 (#607) * b060c251 Update links to ASM issues * e094d693 Add test of ASM bug 317793 (#606) * ac25a3f5 Apply naming convention and add missing tests * b19911c2 Suppress compiler warning * 1962cf59 Yak shaving: add ability to merge coverage of several instructions (#601) * aca2da1d Show in StringSwitchTest that filter works for complex expressions (#599) * 4109d66f Yak shaving: determine covered branches for each instruction (#598) * 04f923c1 Add filter for bytecode that javac generates for String in switch (#596) * 8cd32471 Happy birthday JDK 9! * 8a2822d1 Describe correct agent option in MBeanClient example (#582) * 4d08365f Add "--verbose" option to "classinfo" CLI command (#578) * 424251f1 Fix build in Travis * 90a1416c Fix build in Travis * 4b471ef7 Remove duplicate line from the file header * 4b7fd7cc Add link about integration of JaCoCo into Shippable (#579) * 5a745a38 Fix assertions for JDK 8 >= u152 (#576) * 765bf090 Remove unused SVN keyword "Id" * fcf9baf8 Remove unused MAVEN_OPTS * bb2ecb52 Add Artifact.SCOPE_PROVIDED artifacts to aggregate report (#572) * 86856fef Use proper exception type in documentation (#557) * 31575a30 For Java 9 add "Automatic-Module-Name" to manifests of JAR files (#565) * 98a2a41e Relocate 3rd party libs in CLI nodeps JAR (#561) * 63d375fd Fix build for JDK 9 >= b175 (#558) * c85fd2a4 Update documentation about Maven artifacts (#540) * 05a2aa7d Descriptor of jacoco-maven-plugin should include "help" mojo (#559) * c10af135 Reduce chance of conflict with other agents (#555) * 2a2f1619 Use dest argument as folder in any case (#543) * 817d0ae1 Merge pull request #541 from jacoco/issue-541 |\ | * 1b959434 Add location to IOException when unable to read stream during analysis |/ * 13f12d39 Add Command Line Interface (#525) * 10f3ff0d ExecDumpClient should report error when no data is retrieved (#538) * 938b0b4e Merge pull request #536 from mattnelson/percentages * 129201d6 Update documentation for limit configuration as percent. * c39e3d26 create reusable parseValue method for ratio limits * d9caed9d Support limit ratios as percents Bug: 69669951 Test: m EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true SKIP_BOOT_JARS_CHECK=true WITH_DEXPREOPT=false tests Change-Id: I484df66b7890b2b6d3d0d9401a60239a4a189260
2017-07-18For Java 9 add "Automatic-Module-Name" to manifests of JAR files (#565)Evgeny Mandrikov
2017-06-29Reduce chance of conflict with other agents (#555)Evgeny Mandrikov
2017-06-27Revert "Move WildcardMatcher into new 'matcher' package"Jeff Gaston
This reverts commit 8da25e49bc72ec3a2455080c53c0dc2006decd7d. Reason for revert: moving filtering out of Jacoco and into Make Change-Id: I976ae531b8bdd15b87c4c7fcfb1899d379bbc929
2017-06-15Move WildcardMatcher into new 'matcher' packageJeff Gaston
Change-Id: If7997e60d9fbcc53c297793530eeafa97b38d7ee
2017-05-19Merge remote-tracking branch 'aosp/upstream-master' into masterJeff Gaston
Bug: 36792868 Test: m -j Change-Id: I93e18d46e04d41256c56d3d7939914e631b29a98
2017-02-06Prepare for next development iterationEvgeny Mandrikov
2017-02-05Prepare release v0.7.9Evgeny Mandrikov
2017-02-05Consolidate .gitignore files (#485)Evgeny Mandrikov
2017-01-17Generate OSGi Manifests (#211)Evgeny Mandrikov
2017-01-03Happy New Year 2017!Evgeny Mandrikov
2016-12-11Prepare for next development iterationEvgeny Mandrikov
2016-12-10Prepare release v0.7.8Evgeny Mandrikov
2016-12-09No need to sign JARs using maven-jarsigner-plugin (#466)Evgeny Mandrikov
2016-11-02Remove obsolete build config files (#458)Marc R. Hoffmann
Since we don't use Tycho starting from commit c58a91d2701fe0bc81f958e715801f4705d60b4a there is no need for PDE/Tycho specific build configuration.
2016-06-06Prepare for next development iterationEvgeny Mandrikov
2016-06-06Prepare release v0.7.7Evgeny Mandrikov
2016-04-01Build jacoco from sourcesandroid-wear-n-preview-3android-wear-n-preview-2android-wear-n-preview-1android-wear-7.1.1_r1android-n-preview-5android-n-preview-4android-n-preview-3android-n-preview-2android-n-iot-preview-2nougat-mr1-wear-releasen-iot-preview-2Sebastien Hertz
Excludes source files that depend on non-Android classes and modifies the source code when necessary. Adds a README.android file to describe those changes and the process to build jacoco. Bug: 27719795 Change-Id: I2cdb91030b15e24e6d90f343bc71deec3f26343d
2016-02-18Prepare for next development iterationEvgeny Mandrikov
2016-02-18Prepare release v0.7.6Evgeny Mandrikov
2016-01-13GitHub #288: New agent option 'inclnolocationclasses'Marc R. Hoffmann
With the new agent option 'inclnolocationclasses' classes without source location can be optionally included. This helps to retrieve code coverage for environments like Android where no source location is provided at runtime.
2016-01-12Happy New Year 2016!Marc R. Hoffmann
2015-05-25Prepare for next development iterationEvgeny Mandrikov
2015-05-24Prepare release v0.7.5Evgeny Mandrikov
2015-02-27Prepare for next development iterationEvgeny Mandrikov
2015-02-27Prepare for next development iterationEvgeny Mandrikov
2015-02-26Prepare release v0.7.4Evgeny Mandrikov
2015-02-20Prepare for next development iterationEvgeny Mandrikov
2015-02-19Prepare release 0.7.3Evgeny Mandrikov
2015-01-20Configure Eclipse projects for M2E.Marc R. Hoffmann
2015-01-19GitHub #272: Exclude dynamically generated classesMarc R. Hoffmann
Exclude dynamically generated classes from instrumentation for better interoperability with JMockit.
2015-01-04Happy New Year 2015!Marc R. Hoffmann
2014-12-26GitHub #262: Variable replacement for offline agent configuration.Marc R. Hoffmann
For offline agent configuration properties can now contain variables in ${name} format which will be replaced with system properties at runtime. Based on original PR by user 'debugger'.
2014-09-13Prepare for next development iterationEvgeny Mandrikov
2014-09-12Prepare release 0.7.2Evgeny Mandrikov
2014-07-07GitHub #225: Use unique file names for dumped classes.Marc R. Hoffmann
2014-05-20GitHub #49: New agent option inclbootstrapclasses Marc R. Hoffmann
Consistent and shorter naming.
2014-05-19GitHub #49: New agent option includebootstrapclasses Marc R. Hoffmann
New configuration option for the JaCoCo agent includebootstrapclasses to also instrument classes from the bootstrap class loader.
2014-05-11Prepare for next development iterationEvgeny Mandrikov
2014-05-08Prepare release 0.7.1Evgeny Mandrikov
2014-03-23GitHub #35: Better interoperability with JMockit.Marc R. Hoffmann
2014-03-19Prepare for next development iterationEvgeny Mandrikov
2014-03-18Prepare release 0.7.0Evgeny Mandrikov
2014-03-04Prepare for next development iterationEvgeny Mandrikov