Skip to content

Commit

Permalink
Publish latest SDK version
Browse files Browse the repository at this point in the history
Version 2.0.0
  • Loading branch information
pavelreiter authored Jun 20, 2024
1 parent ab5b2b6 commit 9364726
Show file tree
Hide file tree
Showing 237 changed files with 5,733 additions and 4,648 deletions.
27 changes: 25 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@
<a name="unreleased"></a>
## [Unreleased]

## [2.0.0]

### Bug Fixes
- Thread updates are delivered to all listeners

### Code Refactoring
- BREAKING CHANGE Enum case name consistency

### Dependency Change
- Bump androidx.core:core-ktx from 1.13.0 to 1.13.1
- Update com.squareup.retrofit2 2.9.0 -> 2.10.0
### Features
- BREAKING CHANGE Deprecate legacy plugins
- BREAKING CHANGE Add LiveChat support
- Sdk doesn't allow messaging to archived thread
- Add support for autolinking in text messages
- Align Single-threaded Channel Behavior with iOS implementation
- File upload restrictions are now published by the SDK
- SDK enforces published file restrictions
- Update DeviceFingerprint
- Handle EventInS3 meta-event

## [1.3.1]
### Bug Fixes
- EventContactInboxAssigneeChanged.agent is nullable
Expand Down Expand Up @@ -198,10 +220,11 @@
- failure
- typing start/end

[Unreleased]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.3.1...HEAD
[Unreleased]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/2.0.0...HEAD
[2.0.0]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.3.1...2.0.0
[1.3.1]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.3.0...1.3.1
[1.3.0]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.2.1...1.3.0
[1.2.1]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.2.1...1.2.0
[1.2.1]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.2.0...1.2.1
[1.2.0]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.1.0...1.2.0
[1.1.0]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.0.1...1.1.0
[1.0.1]: https://github.com/nice-devone/nice-cxone-mobile-sdk-android/compare/1.0.0...1.0.1
67 changes: 40 additions & 27 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,25 @@ import io.gitlab.arturbosch.detekt.DetektPlugin
import io.gitlab.arturbosch.detekt.report.ReportMergeTask

plugins {
id "org.jetbrains.kotlin.android" version "$kotlinVersion" apply false
id "org.jetbrains.kotlin.jvm" version "$kotlinVersion" apply false
id "com.android.library" version "$androidGradlePluginVersion" apply false
id "com.android.application" version "$androidGradlePluginVersion" apply false
id "org.jetbrains.dokka" version "$dokkaVersion" apply true
id "com.vanniktech.maven.publish" version "0.27.0" apply false
id "com.google.gms.google-services" version "4.4.1" apply false
id "androidx.navigation.safeargs" version "2.7.7" apply false
id "io.gitlab.arturbosch.detekt" version "$detektVersion"
id "nl.neotech.plugin.rootcoverage" version "1.7.1" apply false
id "com.dipien.semantic-version" version "2.0.0" apply false
id "com.google.firebase.appdistribution" version "4.0.1" apply false
id 'com.google.firebase.crashlytics' version '2.9.9' apply false
id "com.google.devtools.ksp" version "1.9.22-1.0.17" apply false
id "me.tylerbwong.gradle.metalava" version "0.3.5" apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.jvm) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.android.application) apply false
alias(libs.plugins.dokka) apply true
alias(libs.plugins.maven.publish) apply false
alias(libs.plugins.google.services) apply false
alias(libs.plugins.androidx.safeargs) apply false
alias(libs.plugins.detekt)
alias(libs.plugins.rootcoverage) apply true
alias(libs.plugins.semantic.version) apply false
alias(libs.plugins.firebase.appdistribution) apply false
alias(libs.plugins.firebase.crashlytics) apply false
alias(libs.plugins.ksp) apply false
alias(libs.plugins.metalava) apply false
}

group = GROUP
version = "1.3.1" // Fallback version
version = "2.0.0" // Fallback version

allprojects {
group = rootProject.group
Expand All @@ -45,12 +45,25 @@ tasks.register('metalavaCheckCompatibility') {
dependsOn subprojects.collect { it.tasks.matching { it.name == "metalavaCheckCompatibilityRelease" } }
}

// Disabled until the support for AGP 8 is resolved - https://github.com/NeoTech-Software/Android-Root-Coverage-Plugin/issues/82
//rootCoverage {
// generateXml true
// generateHtml false
// excludes = ["**/internal/model/**", "com/nice/cxonechat/sample/**", "dagger/**", "hilt*/**"]
//}
// This task mirrors the tests that will eventually be performed in various github actions
// and can be used as a final check before submitting a PR.
tasks.register('precheck') {
// Syntax Checks
dependsOn(':chat-sdk-core:check')
dependsOn(':chat-sdk-ui:check')
dependsOn(':store:check')
dependsOn(':store:lintVitalRelease')
// Build Check
dependsOn(':store:assembleRelease')
// API compatibility check
dependsOn(':metalavaCheckCompatibility')
}

rootCoverage {
generateXml true
generateHtml false
excludes = ["**/internal/model/**", "com/nice/cxonechat/sample/**"]
}

/**
* Combines base version with branch and replaces all `/` with `-` from the final string.
Expand Down Expand Up @@ -78,18 +91,18 @@ static String getGitCurrentBranch(Project project) {
return branch
}

task clean(type: Delete) {
delete rootProject.buildDir
tasks.register('clean', Delete) {
delete rootProject.layout.buildDirectory
}

task reportMerge(type: ReportMergeTask) {
tasks.register('reportMerge', ReportMergeTask) {
output = rootProject.layout.buildDirectory.file("reports/detekt/merge.sarif")
}

subprojects {
afterEvaluate {
plugins.withType(DetektPlugin) {
tasks.withType(Detekt) { detektTask ->
plugins.withType(DetektPlugin).configureEach {
tasks.withType(Detekt).configureEach { detektTask ->
finalizedBy(reportMerge)

reportMerge.configure { mergeTask ->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ android {
}

packagingOptions {
pickFirst "META-INF/AL2.0"
pickFirst "META-INF/LGPL2.1"
dex {
useLegacyPackaging false
}
Expand Down
5 changes: 5 additions & 0 deletions buildSrc/src/main/groovy/android-library-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,9 @@ android {
defaultConfig {
targetSdk 34
}

packagingOptions {
pickFirst "META-INF/AL2.0"
pickFirst "META-INF/LGPL2.1"
}
}
4 changes: 2 additions & 2 deletions buildSrc/src/main/groovy/android-test-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,6 @@ android {
}

dependencies {
androidTestImplementation "androidx.test:runner:1.5.2"
androidTestImplementation "androidx.test.espresso:espresso-core:3.5.1"
androidTestImplementation libs.androidx.test.runner
androidTestImplementation libs.androidx.test.espesso
}
19 changes: 9 additions & 10 deletions buildSrc/src/main/groovy/android-ui-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,16 @@ android {
}

dependencies {
implementation "androidx.appcompat:appcompat:1.6.1"
implementation "androidx.core:core-ktx:1.12.0"
implementation "androidx.datastore:datastore-preferences:1.0.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2"
implementation libs.androidx.appcompat
implementation libs.androidx.ktx
implementation libs.androidx.datastore
implementation libs.androidx.lifecycle.viewmodel

implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3"
implementation libs.kotlin.coroutines

//Navigation
def axNavigationVersion = "2.7.3"
implementation "androidx.navigation:navigation-fragment-ktx:$axNavigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$axNavigationVersion"
implementation "androidx.navigation:navigation-runtime-ktx:$axNavigationVersion"
implementation("androidx.navigation:navigation-compose:$axNavigationVersion")
implementation libs.androidx.navigation.fragment
implementation libs.androidx.navigation.ui
implementation libs.androidx.navigation.runtime
implementation libs.androidx.navigation.compose
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ detekt {
}

dependencies {
detektPlugins "io.gitlab.arturbosch.detekt:detekt-formatting:$detektVersion"
detektPlugins libs.detekt.formatting
detektPlugins project(":cxone-detekt-rules")
}

Expand Down
2 changes: 1 addition & 1 deletion buildSrc/src/main/groovy/docs-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@ plugins {
}

dependencies {
dokkaHtmlPlugin "org.jetbrains.dokka:kotlin-as-java-plugin:$dokkaVersion"
dokkaHtmlPlugin libs.dokka
}
13 changes: 5 additions & 8 deletions buildSrc/src/main/groovy/koin-conventions.gradle
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
dependencies {
def koinVersion = "3.5.1"
def koinAndroidVersion = "3.5.0"
def koinAnnotationsVersion = "1.3.0"
implementation platform(libs.koin.bom)
implementation libs.koin.android
implementation libs.koin.androidx.compose

implementation platform("io.insert-koin:koin-bom:$koinVersion")
implementation "io.insert-koin:koin-android:$koinAndroidVersion"

implementation "io.insert-koin:koin-annotations:$koinAnnotationsVersion"
ksp "io.insert-koin:koin-ksp-compiler:$koinAnnotationsVersion"
implementation libs.koin.annotations
ksp libs.koin.compiler
}
4 changes: 2 additions & 2 deletions buildSrc/src/main/groovy/kotlin-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

dependencies {

implementation "org.jetbrains.kotlin:kotlin-stdlib"
implementation "org.jetbrains:annotations:23.0.0"
implementation libs.kotlin.stdlib
implementation libs.jetbrains.annotations

}
4 changes: 2 additions & 2 deletions buildSrc/src/main/groovy/library-style-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ detekt {
}

dependencies {
detektPlugins "io.gitlab.arturbosch.detekt:detekt-formatting:$detektVersion"
detektPlugins "io.gitlab.arturbosch.detekt:detekt-rules-libraries:$detektVersion"
detektPlugins libs.detekt.formatting
detektPlugins libs.detekt.rules.libraries
detektPlugins project(":cxone-detekt-rules")
}
11 changes: 6 additions & 5 deletions buildSrc/src/main/groovy/test-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@
*/

dependencies {
testImplementation "io.github.diareuse:strucut:[1,2["
testImplementation "io.mockk:mockk:1.13.8"
testImplementation "junit:junit:4.13.2"
testImplementation "org.jetbrains.kotlin:kotlin-reflect"
testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
testImplementation libs.strucut
testImplementation libs.mockk
testImplementation libs.junit
testImplementation libs.kotlin.reflection
testImplementation libs.kotlin.test.junit
testImplementation libs.kotest.assertions.core
}
24 changes: 12 additions & 12 deletions buildSrc/src/main/groovy/ui-compose-conventions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@ android {
}

composeOptions {
kotlinCompilerExtensionVersion = "1.5.8"
kotlinCompilerExtensionVersion = "1.5.10"
}
}

dependencies {
// Compose
implementation "androidx.constraintlayout:constraintlayout-compose:1.0.1"
implementation platform('androidx.compose:compose-bom:2023.10.01')
implementation "androidx.activity:activity-compose:1.7.2"
implementation "androidx.compose.material:material"
implementation "androidx.compose.material:material-icons-extended"
implementation "androidx.lifecycle:lifecycle-runtime-compose:2.6.2"
implementation "androidx.compose.ui:ui"
implementation "androidx.compose.ui:ui-graphics"
implementation "androidx.compose.ui:ui-tooling-preview"
implementation libs.androidx.constraintlayout.compose
implementation platform(libs.androidx.compose.bom)
implementation libs.androidx.compose.activity
implementation libs.androidx.material
implementation libs.androidx.material.icons.extended
implementation libs.androidx.lifecycle.runtime.compose
implementation libs.androidx.compose.ui
implementation libs.androidx.compose.ui.graphic
implementation libs.androidx.compose.ui.tooling.preview

// Preview support?
debugImplementation "androidx.compose.ui:ui-tooling"
debugImplementation "androidx.compose.ui:ui-test-manifest"
debugImplementation libs.androidx.compose.ui.tooling
debugImplementation libs.androidx.compose.ui.test.manifest
}
Loading

0 comments on commit 9364726

Please sign in to comment.