Update to gradle 3.0 style dependencies.

Use api, androidTestImplementation, and testImplementation
when specifying project dependencies.

Cherry-pick of ag/2492803

Test: ./gradlew assemble
Change-Id: I014e51be73f3f7c086c5739c4bdbd27145a834bc
Merged-In: I014e51be73f3f7c086c5739c4bdbd27145a834bc
diff --git a/compat/build.gradle b/compat/build.gradle
index 7724a29..5f9e079 100644
--- a/compat/build.gradle
+++ b/compat/build.gradle
@@ -2,17 +2,17 @@
 archivesBaseName = 'support-compat'
 
 dependencies {
-    compile project(':support-annotations')
+    api project(':support-annotations')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/core-ui/build.gradle b/core-ui/build.gradle
index 2cd1806..e25b916 100644
--- a/core-ui/build.gradle
+++ b/core-ui/build.gradle
@@ -2,18 +2,18 @@
 archivesBaseName = 'support-core-ui'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
+    api project(':support-annotations')
+    api project(':support-compat')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/core-utils/build.gradle b/core-utils/build.gradle
index 380f1f6..234ae39 100644
--- a/core-utils/build.gradle
+++ b/core-utils/build.gradle
@@ -2,17 +2,17 @@
 archivesBaseName = 'support-core-utils'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
+    api project(':support-annotations')
+    api project(':support-compat')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/customtabs/build.gradle b/customtabs/build.gradle
index 6bc7dd5..2576d29 100644
--- a/customtabs/build.gradle
+++ b/customtabs/build.gradle
@@ -2,18 +2,16 @@
 archivesBaseName = 'customtabs'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-annotations')
+    api project(':support-compat')
+    api project(':support-annotations')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/design/build.gradle b/design/build.gradle
index d76642d..0bc6809 100644
--- a/design/build.gradle
+++ b/design/build.gradle
@@ -2,27 +2,27 @@
 archivesBaseName = 'design'
 
 dependencies {
-    compile project(':support-v4')
-    compile project(':support-appcompat-v7')
-    compile project(':support-recyclerview-v7')
-    compile project(':support-transition')
+    api project(':support-v4')
+    api project(':support-appcompat-v7')
+    api project(':support-recyclerview-v7')
+    api project(':support-transition')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_contrib) {
+    androidTestImplementation (libs.espresso_contrib) {
         exclude group: 'com.android.support'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
-    androidTestCompile libs.multidex
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
+    androidTestImplementation libs.multidex
 
-    testCompile libs.junit
-    testCompile ("$libs.test_runner") {
+    testImplementation libs.junit
+    testImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/dynamic-animation/build.gradle b/dynamic-animation/build.gradle
index 49cfbfc..d51c8b9 100644
--- a/dynamic-animation/build.gradle
+++ b/dynamic-animation/build.gradle
@@ -2,16 +2,16 @@
 archivesBaseName = 'support-dynamic-animation'
 
 dependencies {
-    compile project(':support-core-utils')
+    api project(':support-core-utils')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/emoji/appcompat/build.gradle b/emoji/appcompat/build.gradle
index 42cba1e..b95842e 100644
--- a/emoji/appcompat/build.gradle
+++ b/emoji/appcompat/build.gradle
@@ -18,18 +18,18 @@
 archivesBaseName = 'support-emoji-appcompat'
 
 dependencies {
-    compile fileTree(include: ['*.jar'], dir: 'libs')
-    compile project(':support-emoji')
-    compile project(':support-appcompat-v7')
+    api fileTree(include: ['*.jar'], dir: 'libs')
+    api project(':support-emoji')
+    api project(':support-appcompat-v7')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/emoji/bundled/build.gradle b/emoji/bundled/build.gradle
index 05fb17f..34a644f 100644
--- a/emoji/bundled/build.gradle
+++ b/emoji/bundled/build.gradle
@@ -19,7 +19,7 @@
 }
 
 dependencies {
-    compile project(path: ':support-emoji')
+    api project(':support-emoji')
 }
 
 supportLibrary {
diff --git a/emoji/core/build.gradle b/emoji/core/build.gradle
index c9f29dc..69dd124 100644
--- a/emoji/core/build.gradle
+++ b/emoji/core/build.gradle
@@ -7,18 +7,18 @@
 
 evaluationDependsOn(':noto-emoji-compat')
 dependencies {
-    compile project(':support-compat')
-    compile files(project(':noto-emoji-compat').configurations.parser.artifacts.getFiles())
+    api project(':support-compat')
+    api files(project(':noto-emoji-compat').configurations.parser.artifacts.getFiles())
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/exifinterface/build.gradle b/exifinterface/build.gradle
index 583ed93..634fd28 100644
--- a/exifinterface/build.gradle
+++ b/exifinterface/build.gradle
@@ -2,9 +2,9 @@
 archivesBaseName = 'exifinterface'
 
 dependencies {
-    compile project(':support-annotations')
+    api project(':support-annotations')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/fragment/build.gradle b/fragment/build.gradle
index 79921a2..b50b691 100644
--- a/fragment/build.gradle
+++ b/fragment/build.gradle
@@ -2,18 +2,18 @@
 archivesBaseName = 'support-fragment'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-core-ui')
-    compile project(':support-core-utils')
+    api project(':support-compat')
+    api project(':support-core-ui')
+    api project(':support-core-utils')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/graphics/drawable/animated/build.gradle b/graphics/drawable/animated/build.gradle
index 00a3688..5fc9edd 100644
--- a/graphics/drawable/animated/build.gradle
+++ b/graphics/drawable/animated/build.gradle
@@ -2,14 +2,15 @@
 archivesBaseName = 'animated-vector-drawable'
 
 dependencies {
-    compile project(':support-vector-drawable')
-    androidTestCompile (libs.test_runner) {
+    api project(':support-vector-drawable')
+    api project(':support-core-ui')
+
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    compile project(path: ':support-core-ui')
 }
 
 android {
diff --git a/graphics/drawable/static/build.gradle b/graphics/drawable/static/build.gradle
index 996a855..913729a 100644
--- a/graphics/drawable/static/build.gradle
+++ b/graphics/drawable/static/build.gradle
@@ -2,9 +2,10 @@
 archivesBaseName = 'support-vector-drawable'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
-    androidTestCompile (libs.test_runner) {
+    api project(':support-annotations')
+    api project(':support-compat')
+
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/media-compat/build.gradle b/media-compat/build.gradle
index 9d28f80..be72952 100644
--- a/media-compat/build.gradle
+++ b/media-compat/build.gradle
@@ -2,18 +2,18 @@
 archivesBaseName = 'support-media-compat'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
+    api project(':support-annotations')
+    api project(':support-compat')
 
-    androidTestCompile(libs.test_runner) {
+    androidTestImplementation(libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile(libs.espresso_core) {
+    androidTestImplementation(libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/percent/build.gradle b/percent/build.gradle
index 90c2962..bd129d7 100644
--- a/percent/build.gradle
+++ b/percent/build.gradle
@@ -2,11 +2,12 @@
 archivesBaseName = 'percent'
 
 dependencies {
-    compile project(':support-compat')
-    androidTestCompile (libs.test_runner) {
+    api project(':support-compat')
+
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/recommendation/build.gradle b/recommendation/build.gradle
index 9becae9..86743d3 100644
--- a/recommendation/build.gradle
+++ b/recommendation/build.gradle
@@ -2,7 +2,7 @@
 archivesBaseName = 'recommendation'
 
 dependencies {
-    compile project(':support-v4')
+    api project(':support-v4')
 }
 
 android {
diff --git a/samples/Support13Demos/build.gradle b/samples/Support13Demos/build.gradle
index c63312f..4c015ae 100644
--- a/samples/Support13Demos/build.gradle
+++ b/samples/Support13Demos/build.gradle
@@ -1,7 +1,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-v13')
+    implementation project(':support-v13')
 }
 
 android {
diff --git a/samples/Support4Demos/build.gradle b/samples/Support4Demos/build.gradle
index 836b212..e265698 100644
--- a/samples/Support4Demos/build.gradle
+++ b/samples/Support4Demos/build.gradle
@@ -1,7 +1,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-v4')
+    implementation project(':support-v4')
 }
 
 android {
diff --git a/samples/Support7Demos/build.gradle b/samples/Support7Demos/build.gradle
index 618cfab..49b38ec 100644
--- a/samples/Support7Demos/build.gradle
+++ b/samples/Support7Demos/build.gradle
@@ -1,12 +1,12 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-appcompat-v7')
-    compile project(':support-cardview-v7')
-    compile project(':support-gridlayout-v7')
-    compile project(':support-mediarouter-v7')
-    compile project(':support-palette-v7')
-    compile project(':support-recyclerview-v7')
+    implementation project(':support-appcompat-v7')
+    implementation project(':support-cardview-v7')
+    implementation project(':support-gridlayout-v7')
+    implementation project(':support-mediarouter-v7')
+    implementation project(':support-palette-v7')
+    implementation project(':support-recyclerview-v7')
 }
 
 android {
diff --git a/samples/SupportAnimationDemos/build.gradle b/samples/SupportAnimationDemos/build.gradle
index c619f6b..d1ea614 100644
--- a/samples/SupportAnimationDemos/build.gradle
+++ b/samples/SupportAnimationDemos/build.gradle
@@ -1,7 +1,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-dynamic-animation')
+    implementation project(':support-dynamic-animation')
 }
 
 android {
diff --git a/samples/SupportAppNavigation/build.gradle b/samples/SupportAppNavigation/build.gradle
index bb48f2f..c7d03b8 100644
--- a/samples/SupportAppNavigation/build.gradle
+++ b/samples/SupportAppNavigation/build.gradle
@@ -17,7 +17,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-v4')
+    implementation project(':support-v4')
 }
 
 android {
diff --git a/samples/SupportDesignDemos/build.gradle b/samples/SupportDesignDemos/build.gradle
index 7987f52..48dfc9c 100644
--- a/samples/SupportDesignDemos/build.gradle
+++ b/samples/SupportDesignDemos/build.gradle
@@ -1,7 +1,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-design')
+    implementation project(':support-design')
 }
 
 android {
diff --git a/samples/SupportEmojiDemos/build.gradle b/samples/SupportEmojiDemos/build.gradle
index 230e478..c5be42e 100644
--- a/samples/SupportEmojiDemos/build.gradle
+++ b/samples/SupportEmojiDemos/build.gradle
@@ -21,9 +21,9 @@
 }
 
 dependencies {
-    compile project(':support-emoji')
-    compile project(':support-emoji-bundled')
-    compile project(':support-emoji-appcompat')
+    implementation project(':support-emoji')
+    implementation project(':support-emoji-bundled')
+    implementation project(':support-emoji-appcompat')
 }
 
 android {
diff --git a/samples/SupportLeanbackDemos/build.gradle b/samples/SupportLeanbackDemos/build.gradle
index ea6ed9e..4ec403e 100644
--- a/samples/SupportLeanbackDemos/build.gradle
+++ b/samples/SupportLeanbackDemos/build.gradle
@@ -1,8 +1,8 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-leanback-v17')
-    compile project(':support-preference-leanback-v17')
+    implementation project(':support-leanback-v17')
+    implementation project(':support-preference-leanback-v17')
 }
 
 android {
diff --git a/samples/SupportLeanbackJank/build.gradle b/samples/SupportLeanbackJank/build.gradle
index 44346f7..4900a65 100644
--- a/samples/SupportLeanbackJank/build.gradle
+++ b/samples/SupportLeanbackJank/build.gradle
@@ -1,9 +1,9 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile 'com.github.bumptech.glide:glide:3.6.1'
-    compile project(':support-leanback-v17')
-    compile project(':support-preference-leanback-v17')
+    implementation 'com.github.bumptech.glide:glide:3.6.1'
+    implementation project(':support-leanback-v17')
+    implementation project(':support-preference-leanback-v17')
 }
 
 android {
diff --git a/samples/SupportPercentDemos/build.gradle b/samples/SupportPercentDemos/build.gradle
index 7990a21..863da83 100644
--- a/samples/SupportPercentDemos/build.gradle
+++ b/samples/SupportPercentDemos/build.gradle
@@ -1,7 +1,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-percent')
+    implementation project(':support-percent')
 }
 
 android {
diff --git a/samples/SupportPreferenceDemos/build.gradle b/samples/SupportPreferenceDemos/build.gradle
index 5bee5e9..d09e3db 100644
--- a/samples/SupportPreferenceDemos/build.gradle
+++ b/samples/SupportPreferenceDemos/build.gradle
@@ -1,12 +1,12 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-appcompat-v7')
-    compile project(':support-recyclerview-v7')
-    compile project(':support-preference-v7')
-    compile project(':support-preference-v14')
-    compile project(':support-leanback-v17')
-    compile project(':support-preference-leanback-v17')
+    implementation project(':support-appcompat-v7')
+    implementation project(':support-recyclerview-v7')
+    implementation project(':support-preference-v7')
+    implementation project(':support-preference-v14')
+    implementation project(':support-leanback-v17')
+    implementation project(':support-preference-leanback-v17')
 }
 
 android {
diff --git a/samples/SupportTransitionDemos/build.gradle b/samples/SupportTransitionDemos/build.gradle
index 7eda8b3..2a4fffc 100644
--- a/samples/SupportTransitionDemos/build.gradle
+++ b/samples/SupportTransitionDemos/build.gradle
@@ -1,8 +1,8 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-transition')
-    compile project(':support-appcompat-v7')
+    implementation project(':support-transition')
+    implementation project(':support-appcompat-v7')
 }
 
 android {
diff --git a/samples/SupportVectorDrawableDemos/build.gradle b/samples/SupportVectorDrawableDemos/build.gradle
index 8520eb1..79383ca 100644
--- a/samples/SupportVectorDrawableDemos/build.gradle
+++ b/samples/SupportVectorDrawableDemos/build.gradle
@@ -17,9 +17,9 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-vector-drawable')
-    compile project(':support-animated-vector-drawable')
-    compile project(':support-appcompat-v7')
+    implementation project(':support-vector-drawable')
+    implementation project(':support-animated-vector-drawable')
+    implementation project(':support-appcompat-v7')
 }
 
 android {
diff --git a/samples/SupportWearDemos/build.gradle b/samples/SupportWearDemos/build.gradle
index a4d0c61..4a22995 100644
--- a/samples/SupportWearDemos/build.gradle
+++ b/samples/SupportWearDemos/build.gradle
@@ -17,7 +17,7 @@
 apply plugin: 'com.android.application'
 
 dependencies {
-    compile project(':support-wear')
+    implementation project(':support-wear')
 }
 
 android {
diff --git a/transition/build.gradle b/transition/build.gradle
index decde29..ef23aef 100644
--- a/transition/build.gradle
+++ b/transition/build.gradle
@@ -3,17 +3,17 @@
 archivesBaseName = 'transition'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-v4')
+    api project(':support-annotations')
+    api project(':support-v4')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/tv-provider/build.gradle b/tv-provider/build.gradle
index 23146c9..e16394e 100644
--- a/tv-provider/build.gradle
+++ b/tv-provider/build.gradle
@@ -2,9 +2,10 @@
 archivesBaseName = 'support-tv-provider'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
-    androidTestCompile (libs.test_runner) {
+    api project(':support-annotations')
+    api project(':support-compat')
+
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/v13/build.gradle b/v13/build.gradle
index 9c25738..477f31d 100644
--- a/v13/build.gradle
+++ b/v13/build.gradle
@@ -2,17 +2,17 @@
 archivesBaseName = 'support-v13'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-v4')
+    api project(':support-annotations')
+    api project(':support-v4')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/v14/preference/build.gradle b/v14/preference/build.gradle
index e36ab82..7df48af 100644
--- a/v14/preference/build.gradle
+++ b/v14/preference/build.gradle
@@ -18,10 +18,10 @@
 archivesBaseName = 'preference-v14'
 
 dependencies {
-    compile project(':support-v4')
-    compile project(':support-appcompat-v7')
-    compile project(':support-recyclerview-v7')
-    compile project(':support-preference-v7')
+    api project(':support-v4')
+    api project(':support-appcompat-v7')
+    api project(':support-recyclerview-v7')
+    api project(':support-preference-v7')
 }
 
 android {
diff --git a/v17/leanback/build.gradle b/v17/leanback/build.gradle
index a2e7342..4fecc60 100644
--- a/v17/leanback/build.gradle
+++ b/v17/leanback/build.gradle
@@ -2,21 +2,21 @@
 archivesBaseName = 'leanback-v17'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-core-ui')
-    compile project(':support-media-compat')
-    compile project(':support-fragment')
-    compile project(':support-recyclerview-v7')
+    api project(':support-compat')
+    api project(':support-core-ui')
+    api project(':support-media-compat')
+    api project(':support-fragment')
+    api project(':support-recyclerview-v7')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile libs.multidex
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation libs.multidex
 }
 
 android {
diff --git a/v17/preference-leanback/build.gradle b/v17/preference-leanback/build.gradle
index 8de4c00..23672e3 100644
--- a/v17/preference-leanback/build.gradle
+++ b/v17/preference-leanback/build.gradle
@@ -2,12 +2,12 @@
 archivesBaseName = 'preference-leanback-v17'
 
 dependencies {
-    compile project(':support-v4')
-    compile project(':support-appcompat-v7')
-    compile project(':support-recyclerview-v7')
-    compile project(':support-preference-v7')
-    compile project(':support-preference-v14')
-    compile project(':support-leanback-v17')
+    api project(':support-v4')
+    api project(':support-appcompat-v7')
+    api project(':support-recyclerview-v7')
+    api project(':support-preference-v7')
+    api project(':support-preference-v14')
+    api project(':support-leanback-v17')
 }
 
 android {
diff --git a/v4/build.gradle b/v4/build.gradle
index 87bc171..d363eba 100644
--- a/v4/build.gradle
+++ b/v4/build.gradle
@@ -2,11 +2,11 @@
 archivesBaseName = 'support-v4'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-media-compat')
-    compile project(':support-core-utils')
-    compile project(':support-core-ui')
-    compile project(':support-fragment')
+    api project(':support-compat')
+    api project(':support-media-compat')
+    api project(':support-core-utils')
+    api project(':support-core-ui')
+    api project(':support-fragment')
 }
 
 android {
diff --git a/v7/appcompat/build.gradle b/v7/appcompat/build.gradle
index f604aa3..20d9393 100644
--- a/v7/appcompat/build.gradle
+++ b/v7/appcompat/build.gradle
@@ -2,20 +2,20 @@
 archivesBaseName = 'appcompat-v7'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-v4')
-    compile project(':support-vector-drawable')
-    compile project(':support-animated-vector-drawable')
+    api project(':support-annotations')
+    api project(':support-v4')
+    api project(':support-vector-drawable')
+    api project(':support-animated-vector-drawable')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 }
 
 android {
diff --git a/v7/cardview/build.gradle b/v7/cardview/build.gradle
index b5a08ef..e839aee 100644
--- a/v7/cardview/build.gradle
+++ b/v7/cardview/build.gradle
@@ -2,7 +2,7 @@
 archivesBaseName = 'cardview-v7'
 
 dependencies {
-    compile project(':support-annotations')
+    api project(':support-annotations')
 }
 
 android {
diff --git a/v7/gridlayout/build.gradle b/v7/gridlayout/build.gradle
index 63d149f..c66848f 100644
--- a/v7/gridlayout/build.gradle
+++ b/v7/gridlayout/build.gradle
@@ -2,13 +2,13 @@
 archivesBaseName = 'gridlayout-v7'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-core-ui')
+    api project(':support-compat')
+    api project(':support-core-ui')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/v7/mediarouter/build.gradle b/v7/mediarouter/build.gradle
index f971a0b..eabc5e3 100644
--- a/v7/mediarouter/build.gradle
+++ b/v7/mediarouter/build.gradle
@@ -2,16 +2,16 @@
 archivesBaseName = 'mediarouter-v7'
 
 dependencies {
-    compile project(":support-appcompat-v7")
-    compile project(":support-palette-v7")
+    api project(":support-appcompat-v7")
+    api project(":support-palette-v7")
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.test_rules
+    androidTestImplementation libs.test_rules
 }
 
 android {
diff --git a/v7/palette/build.gradle b/v7/palette/build.gradle
index 6ab7995..915ef13 100644
--- a/v7/palette/build.gradle
+++ b/v7/palette/build.gradle
@@ -2,10 +2,10 @@
 archivesBaseName = 'palette-v7'
 
 dependencies {
-    compile project(':support-compat')
-    compile project(':support-core-utils')
+    api project(':support-compat')
+    api project(':support-core-utils')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
 }
diff --git a/v7/preference/build.gradle b/v7/preference/build.gradle
index a7ad709..3f81093 100644
--- a/v7/preference/build.gradle
+++ b/v7/preference/build.gradle
@@ -18,18 +18,18 @@
 archivesBaseName = 'preference-v7'
 
 dependencies {
-    compile project(':support-v4')
-    compile project(':support-appcompat-v7')
-    compile project(':support-recyclerview-v7')
+    api project(':support-v4')
+    api project(':support-appcompat-v7')
+    api project(':support-recyclerview-v7')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {
diff --git a/v7/recyclerview/build.gradle b/v7/recyclerview/build.gradle
index 2c8bef3..06cdc53 100644
--- a/v7/recyclerview/build.gradle
+++ b/v7/recyclerview/build.gradle
@@ -2,24 +2,24 @@
 archivesBaseName = 'recyclerview-v7'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-compat')
-    compile project(':support-core-ui')
+    api project(':support-annotations')
+    api project(':support-compat')
+    api project(':support-core-ui')
 
-    androidTestCompile (libs.test_runner) {
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.junit
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
-    androidTestCompile project(':support-testutils')
+    androidTestImplementation libs.junit
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
+    androidTestImplementation project(':support-testutils')
 
-    testCompile libs.junit
-    testCompile libs.mockito_core
-    testCompile ("$libs.test_runner") {
+    testImplementation libs.junit
+    testImplementation libs.mockito_core
+    testImplementation ("$libs.test_runner") {
         exclude module: 'support-annotations'
     }
 }
diff --git a/wear/build.gradle b/wear/build.gradle
index d81f84e..1e39dfc 100644
--- a/wear/build.gradle
+++ b/wear/build.gradle
@@ -2,18 +2,19 @@
 archivesBaseName = 'wear'
 
 dependencies {
-    compile project(':support-annotations')
-    compile project(':support-core-ui')
-    compile project(':support-percent')
-    compile project(':support-recyclerview-v7')
-    androidTestCompile (libs.test_runner) {
+    api project(':support-annotations')
+    api project(':support-core-ui')
+    api project(':support-percent')
+    api project(':support-recyclerview-v7')
+
+    androidTestImplementation (libs.test_runner) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile (libs.espresso_core) {
+    androidTestImplementation (libs.espresso_core) {
         exclude module: 'support-annotations'
     }
-    androidTestCompile libs.mockito_core
-    androidTestCompile libs.dexmaker_mockito
+    androidTestImplementation libs.mockito_core
+    androidTestImplementation libs.dexmaker_mockito
 }
 
 android {