Files
flipper/build.gradle
Harold Martin cdb72db5a9 Fix LeakCanary plugin UI, Upgrade LC dependency and make it compile only (#3367)
Summary:
**Currently, the Leak Canary plugins is broken, see this screenshot (unable to expand):**
<img width="1359" alt="Screen Shot 2022-01-29 at 2 06 33 PM" src="https://user-images.githubusercontent.com/745166/151679662-9d8e8eb6-c19c-4008-9821-1c2c1af92351.png">

**This fix repairs and improves the UI:**
<img width="1350" alt="Screen Shot 2022-01-29 at 2 06 03 PM" src="https://user-images.githubusercontent.com/745166/151679677-7965604c-dd04-4ee5-bc8e-d53a82da1bd7.png">

## Changelog

- Fixes UI to enable showing leak trace
- Upgrades LackCanary dependency from 2.6 to 2.8.1
- Makes Kotlin and LC `compileOnly` dependencies in order to prevent conflict for the users
- Updates documentation

Pull Request resolved: https://github.com/facebook/flipper/pull/3367

Test Plan:
See demo at https://github.com/hbmartin/leakcanary/tree/flipper-demo/leakcanary-android-sample

**Static Docs Preview: flipper**
|[Full Site](https://our.intern.facebook.com/intern/staticdocs/eph/D33915179/V3/flipper/)|

|**Modified Pages**|

Reviewed By: passy

Differential Revision: D33915179

Pulled By: cekkaewnumchai

fbshipit-source-id: 9698dba23ab475c8cd84e4c222dfc41712b05a1e
2022-02-03 01:37:28 -08:00

108 lines
4.8 KiB
Groovy

/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.0'
classpath 'com.vanniktech:gradle-maven-publish-plugin:0.18.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$KOTLIN_VERSION"
classpath "org.jetbrains.dokka:dokka-gradle-plugin:1.6.10"
}
}
plugins {
id 'de.undercouch.download' version '4.1.2'
id 'com.github.ben-manes.versions' version '0.41.0'
}
ext.isSnapshot = { VERSION_NAME.endsWith('-SNAPSHOT') }
ext.isRelease = { ['publish', 'publishToMavenLocal'].any { gradle.startParameter.taskNames.contains(it) } }
subprojects {
repositories {
google()
mavenLocal()
mavenCentral()
if (isSnapshot()) {
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
}
}
// We don't build Javadoc at this time.
tasks.withType(Javadoc).all {
enabled = false
}
}
ext {
minSdkVersion = 15
targetSdkVersion = 31
compileSdkVersion = 31
buildToolsVersion = '30.0.3'
ndkVersion = '23.0.7599858'
}
ext.deps = [
// Android support
supportAnnotations : "androidx.annotation:annotation:$ANDROIDX_VERSION",
supportAppCompat : "androidx.appcompat:appcompat:$ANDROIDX_VERSION",
supportCoreUi : "androidx.legacy:legacy-support-core-ui:$ANDROIDX_VERSION",
supportRecyclerView: "androidx.recyclerview:recyclerview:$ANDROIDX_VERSION",
supportConstraintLayout: "androidx.constraintlayout:constraintlayout:2.1.2",
supportSqlite : "androidx.sqlite:sqlite-framework:2.2.0",
supportEspresso : 'androidx.test.espresso:espresso-core:3.4.0',
supportEspressoIntents : 'androidx.test.espresso:espresso-intents:3.4.0',
supportTestRunner : 'androidx.test:runner:1.4.0',
// Arch
archPaging : 'android.arch.paging:runtime:1.0.1',
// First-party
soloader : 'com.facebook.soloader:soloader:0.10.3',
fbjni : 'com.facebook.fbjni:fbjni:0.3.0',
screenshot : 'com.facebook.testing.screenshot:core:0.14.0',
boltsTasks : 'com.parse.bolts:bolts-tasks:1.4.0',
websocket : 'org.java-websocket:Java-WebSocket:1.5.2',
// Annotations
jsr305 : 'com.google.code.findbugs:jsr305:3.0.2',
inferAnnotations : 'com.facebook.infer.annotation:infer-annotation:0.18.0',
proguardAnnotations: 'com.facebook.yoga:proguard-annotations:1.19.0',
// Litho
lithoAnnotations : "com.facebook.litho:litho-annotations:$LITHO_VERSION",
lithoCore : "com.facebook.litho:litho-core:$LITHO_VERSION",
lithoEditorCore : "com.facebook.litho:litho-editor-core:$LITHO_VERSION",
lithoEditorFlipper : "com.facebook.litho:litho-editor-flipper:$LITHO_VERSION",
lithoSectionsAnnotations: "com.facebook.litho:litho-sections-annotations:$LITHO_VERSION",
lithoSectionsDebug : "com.facebook.litho:litho-sections-debug:$LITHO_VERSION",
lithoSectionsCore : "com.facebook.litho:litho-sections-core:$LITHO_VERSION",
lithoSectionsWidget : "com.facebook.litho:litho-sections-widget:$LITHO_VERSION",
lithoWidget : "com.facebook.litho:litho-widget:$LITHO_VERSION",
lithoProcessor : "com.facebook.litho:litho-processor:$LITHO_VERSION",
lithoSectionsProcessor: "com.facebook.litho:litho-sections-processor:$LITHO_VERSION",
lithoFresco : "com.facebook.litho:litho-fresco:$LITHO_VERSION",
lithoTesting : "com.facebook.litho:litho-testing:$LITHO_VERSION",
// Debugging and testing
guava : 'com.google.guava:guava:23.0',
robolectric : 'org.robolectric:robolectric:4.5.1',
junit : 'junit:junit:4.13.2',
hamcrest : 'org.hamcrest:hamcrest-library:2.2',
mockito : 'org.mockito:mockito-core:4.3.1',
okhttp3 : 'com.squareup.okhttp3:okhttp:4.9.3',
leakcanary : 'com.squareup.leakcanary:leakcanary-android:1.6.3',
leakcanary2 : 'com.squareup.leakcanary:leakcanary-android:2.8.1',
protobuf : 'com.google.protobuf:protobuf-java:3.19.4',
testCore : 'androidx.test:core:1.4.0',
testRules : 'androidx.test:rules:1.4.0',
// Plugin dependencies
frescoFlipper : 'com.facebook.fresco:flipper:2.6.0',
frescoStetho : 'com.facebook.fresco:stetho:2.6.0',
fresco : 'com.facebook.fresco:fresco:2.6.0'
]