Remove JaCoCo from build script dependencies as there is no use
of it and it was using a different version than JaCoCo used
for test execution.
Also fix some clumsy Gradle usages:
- duplicate keys in gradle.properties
- casting string jacocoVersion property to string
Created a variable and used it for the required secondary locations
The project-level version definition is required or jacocoAnt gets the wrong version
The android-block version definition is required or the Jacoco agent is the wrong version
- de-couple api + AnkiDroid by making sure all evaulation may be done separately
- fork and incremental compile
- scale concurrent tests by CPU count, mindful of containerization
All of these are intended to have no impact on CI or small machines
But if you have a lot of cores and RAM and run tests a lot (my case) you feel this
There was one optimization that didn't pan out - setting the heap big enough to
dex in process - but other than this is the full suite of recommended gradle optimizations
- fix api gradle deprecation, add warn comment in gradle wrapper
- buildtools 27.0.3 needs to be added w/license accepted
- install SDK API 16 to match emulator API 16, remove extra tools
- tools components entry twice per Travis docs
- only including build-tools 26.0.2 as it is default per my read
- only including one android API for the build
- removing non-existent extra-android-support
- changing from API-22 emulator to API-16 per performance documentation on web
- removing "no-skin" emulator argument as it is not supported
- upgrade to gradle 4.5.1 / gradle plugin 3.1.2
- alter gradle dependencies to modern fine-grained declarations
- move api build targetSdk to match main build targetSdk