diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index fc8ec6b5e..9084fbd90 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -15,7 +15,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - + - uses: actions/setup-java@v3 + with: + distribution: 'adopt' + java-version: '17' - name: Gradle Run ktlint run: ./gradlew ktlintCheck --continue - uses: actions/upload-artifact@v2 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8cfeff822..13068a92a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,7 +19,7 @@ jobs: - uses: actions/setup-java@v3 with: distribution: 'adopt' - java-version: '11' + java-version: '17' - name: Setup Gradle uses: gradle/gradle-build-action@v2 - name: Validate Gradle Wrapper @@ -39,8 +39,8 @@ jobs: - name: Configure JDK uses: actions/setup-java@v4 with: - distribution: 'zulu' - java-version: 11 + distribution: 'adopt' + java-version: '17' - name: Enable KVM group perms run: | echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules diff --git a/build.gradle b/build.gradle index c5ec9fcf9..861d2b9f7 100644 --- a/build.gradle +++ b/build.gradle @@ -9,8 +9,8 @@ //} plugins { - id 'com.android.application' version '7.3.1' apply false - id 'com.android.library' version '7.3.1' apply false + id 'com.android.application' version '8.0.0' apply false + id 'com.android.library' version '8.0.0' apply false id 'org.jetbrains.kotlin.android' version '1.8.0' apply false id 'io.github.gradle-nexus.publish-plugin' version "1.2.0" id "org.jetbrains.dokka" version "1.8.10" diff --git a/example/build.gradle b/example/build.gradle index 5bfe01bbc..1b6255d73 100644 --- a/example/build.gradle +++ b/example/build.gradle @@ -1,6 +1,6 @@ buildscript { ext { - lifecycle_version = '2.6.0' + lifecycle_version = '2.7.0' } } @@ -36,34 +36,31 @@ android { } } compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = '11' + jvmTarget = '17' } buildFeatures { viewBinding true } - configurations { - all*.exclude module: "bcprov-jdk15to18" // Needed for dev.pinkroom.walletconnectkit - } } dependencies { implementation project(':library') - implementation 'androidx.core:core-ktx:1.9.0' + implementation 'androidx.core:core-ktx:1.12.0' implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" implementation 'androidx.appcompat:appcompat:1.6.1' - implementation 'com.google.android.material:material:1.8.0' - implementation 'com.google.firebase:firebase-messaging:23.1.2' + implementation 'com.google.android.material:material:1.11.0' + implementation 'com.google.firebase:firebase-messaging:23.4.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation 'androidx.fragment:fragment-ktx:1.5.5' - implementation 'androidx.activity:activity-ktx:1.6.1' + implementation 'androidx.fragment:fragment-ktx:1.6.2' + implementation 'androidx.activity:activity-ktx:1.8.2' implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' - implementation 'androidx.recyclerview:recyclerview:1.3.0' + implementation 'androidx.recyclerview:recyclerview:1.3.2' implementation 'org.web3j:crypto:5.0.0' // WalletConnect V2: core library + WalletConnectModal @@ -72,7 +69,7 @@ dependencies { implementation("com.walletconnect:walletconnect-modal") //Navigation Component - def nav_version = "2.7.5" + def nav_version = "2.7.6" implementation "androidx.navigation:navigation-fragment-ktx:$nav_version" implementation "androidx.navigation:navigation-ui-ktx:$nav_version" diff --git a/gradle.properties b/gradle.properties index 3c5031eb7..a2e90d87b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -20,4 +20,6 @@ kotlin.code.style=official # Enables namespacing of each library's R class so that its R class includes only the # resources declared in the library itself and none from the library's dependencies, # thereby reducing the size of the R class for that library -android.nonTransitiveRClass=true \ No newline at end of file +android.nonTransitiveRClass=true +android.defaults.buildfeatures.buildconfig=true +android.nonFinalResIds=false \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index da450a2a9..474c74efe 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Tue Dec 20 09:09:47 PST 2022 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME diff --git a/library/build.gradle b/library/build.gradle index fe4aadb9e..aee6d99ff 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -20,11 +20,11 @@ ktlint { android { namespace 'org.xmtp.android.library' - compileSdk 33 + compileSdk 34 defaultConfig { minSdk 23 - targetSdk 33 + targetSdk 34 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" @@ -37,14 +37,14 @@ android { } } compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } testOptions { animationsDisabled = true } kotlinOptions { - jvmTarget = '11' + jvmTarget = '17' } publishing { singleVariant("release") { @@ -78,11 +78,11 @@ protobuf { } dependencies { - implementation 'com.google.crypto.tink:tink-android:1.7.0' + implementation 'com.google.crypto.tink:tink-android:1.8.0' implementation 'io.grpc:grpc-kotlin-stub:1.3.0' implementation 'io.grpc:grpc-okhttp:1.51.1' implementation 'io.grpc:grpc-protobuf-lite:1.51.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3' implementation 'org.web3j:crypto:5.0.0' implementation "net.java.dev.jna:jna:5.13.0@aar" api 'com.google.protobuf:protobuf-kotlin-lite:3.22.3' @@ -90,7 +90,7 @@ dependencies { testImplementation 'junit:junit:4.13.2' androidTestImplementation 'app.cash.turbine:turbine:0.12.1' - androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4' + androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.7.3' androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' }