From a11a6e857212739603146ed0bfe42066280dfdce Mon Sep 17 00:00:00 2001 From: Wellington Costa Date: Sat, 22 Aug 2026 19:57:20 -0300 Subject: [PATCH 1/3] Fix samples --- .../CrashKiOSSampleIOS/Podfile.lock | 4 +-- .../gradle/wrapper/gradle-wrapper.properties | 2 +- samples/sample-bugsnag/settings.gradle.kts | 2 ++ .../sample-bugsnag/shared/build.gradle.kts | 5 ---- samples/sample-bugsnag/shared/shared.podspec | 4 +++ samples/sample-crashlytics/app/.gitignore | 1 - .../app/google-services.json | 29 +++++++++++++++++++ samples/sample-crashlytics/build.gradle.kts | 7 ++--- .../gradle/libs.versions.toml | 2 -- .../gradle/wrapper/gradle-wrapper.properties | 2 +- samples/sample-crashlytics/ios/Podfile.lock | 4 +-- .../shared/build.gradle.kts | 6 ---- .../sample-crashlytics/shared/shared.podspec | 6 +++- 13 files changed, 49 insertions(+), 25 deletions(-) create mode 100644 samples/sample-crashlytics/app/google-services.json diff --git a/samples/sample-bugsnag/CrashKiOSSampleIOS/Podfile.lock b/samples/sample-bugsnag/CrashKiOSSampleIOS/Podfile.lock index 3c62a8c..aaebae2 100644 --- a/samples/sample-bugsnag/CrashKiOSSampleIOS/Podfile.lock +++ b/samples/sample-bugsnag/CrashKiOSSampleIOS/Podfile.lock @@ -16,8 +16,8 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Bugsnag: d7b2e5e78eaf66246d635240c61a6c8a18e3922c - shared: db2bfa2f9309d3a03ed92c95da4d0b121dfc7d02 + shared: 0235f9a55259ea208721ea8394d950385abca2ed PODFILE CHECKSUM: 334109894bf80203c54092dcc680f36bc85b527c -COCOAPODS: 1.12.1 +COCOAPODS: 1.17.0 diff --git a/samples/sample-bugsnag/gradle/wrapper/gradle-wrapper.properties b/samples/sample-bugsnag/gradle/wrapper/gradle-wrapper.properties index e411586..b413873 100644 --- a/samples/sample-bugsnag/gradle/wrapper/gradle-wrapper.properties +++ b/samples/sample-bugsnag/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/samples/sample-bugsnag/settings.gradle.kts b/samples/sample-bugsnag/settings.gradle.kts index 36f7b33..5733f28 100644 --- a/samples/sample-bugsnag/settings.gradle.kts +++ b/samples/sample-bugsnag/settings.gradle.kts @@ -22,6 +22,8 @@ includeBuild("../..") { dependencySubstitution { substitute(module("co.touchlab.crashkios:bugsnag")) .using(project(":bugsnag")).because("we want to auto-wire up sample dependency") + substitute(module("co.touchlab.crashkios.bugsnaglink:co.touchlab.crashkios.bugsnaglink.gradle.plugin")) + .using(project(":bugsnag-ios-link")).because("we want to auto-wire up sample dependency") } } diff --git a/samples/sample-bugsnag/shared/build.gradle.kts b/samples/sample-bugsnag/shared/build.gradle.kts index 557662d..b9e591d 100644 --- a/samples/sample-bugsnag/shared/build.gradle.kts +++ b/samples/sample-bugsnag/shared/build.gradle.kts @@ -7,7 +7,6 @@ * * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("com.android.library") @@ -28,10 +27,6 @@ android { } } -tasks.withType { - kotlinOptions.jvmTarget = "1.8" -} - version = "0.0.1" kotlin { diff --git a/samples/sample-bugsnag/shared/shared.podspec b/samples/sample-bugsnag/shared/shared.podspec index c24fe48..8eb8b05 100644 --- a/samples/sample-bugsnag/shared/shared.podspec +++ b/samples/sample-bugsnag/shared/shared.podspec @@ -22,6 +22,10 @@ Pod::Spec.new do |spec| Alternatively, proper pod installation is performed during Gradle sync in the IDE (if Podfile location is set)" end + spec.xcconfig = { + 'ENABLE_USER_SCRIPT_SANDBOXING' => 'NO', + } + spec.pod_target_xcconfig = { 'KOTLIN_PROJECT_PATH' => ':shared', 'PRODUCT_MODULE_NAME' => 'shared', diff --git a/samples/sample-crashlytics/app/.gitignore b/samples/sample-crashlytics/app/.gitignore index 2abde4a..796b96d 100644 --- a/samples/sample-crashlytics/app/.gitignore +++ b/samples/sample-crashlytics/app/.gitignore @@ -1,2 +1 @@ /build -/google-services.json diff --git a/samples/sample-crashlytics/app/google-services.json b/samples/sample-crashlytics/app/google-services.json new file mode 100644 index 0000000..e9c67a5 --- /dev/null +++ b/samples/sample-crashlytics/app/google-services.json @@ -0,0 +1,29 @@ +{ + "project_info": { + "project_number": "262996390724", + "project_id": "crashkiossample", + "storage_bucket": "crashkiossample.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:262996390724:android:7a848afa4b4ca8448add11", + "android_client_info": { + "package_name": "co.touchlab.crashkiossamplecrashlog" + } + }, + "oauth_client": [], + "api_key": [ + { + "current_key": "AIzaSyAEDOEwsd0-F3kg5QbOGqc9fNPsF5Ergbs" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [] + } + } + } + ], + "configuration_version": "1" +} diff --git a/samples/sample-crashlytics/build.gradle.kts b/samples/sample-crashlytics/build.gradle.kts index 845045f..0a95540 100644 --- a/samples/sample-crashlytics/build.gradle.kts +++ b/samples/sample-crashlytics/build.gradle.kts @@ -15,7 +15,6 @@ buildscript { dependencies { classpath(libs.google.services) classpath(libs.firebase.crashlytics.gradle) - classpath(libs.crashkios.utils) } } plugins { @@ -24,9 +23,9 @@ plugins { alias(projectLibs.plugins.crashkios.crashlyticslink) apply false } -allprojects{ - repositories{ +allprojects { + repositories { mavenCentral() google() } -} \ No newline at end of file +} diff --git a/samples/sample-crashlytics/gradle/libs.versions.toml b/samples/sample-crashlytics/gradle/libs.versions.toml index 47609e0..a912d6b 100644 --- a/samples/sample-crashlytics/gradle/libs.versions.toml +++ b/samples/sample-crashlytics/gradle/libs.versions.toml @@ -2,7 +2,6 @@ firebase-bom = "32.2.3" firebase-crashlytics-gradle = "2.9.9" google-services = "4.3.15" -utils = "0.7.1-alpha3" [libraries] firebase-bom = { module = "com.google.firebase:firebase-bom", version.ref = "firebase-bom" } @@ -10,4 +9,3 @@ firebase-analytics = { module = "com.google.firebase:firebase-analytics-ktx" } firebase-crashlytics = { module = "com.google.firebase:firebase-crashlytics-ktx" } firebase-crashlytics-gradle = { module = "com.google.firebase:firebase-crashlytics-gradle", version.ref = "firebase-crashlytics-gradle" } google-services = { module = "com.google.gms:google-services", version.ref = "google-services" } -crashkios-utils = { module = "co.touchlab.crashkios:utils", version.ref = "utils" } diff --git a/samples/sample-crashlytics/gradle/wrapper/gradle-wrapper.properties b/samples/sample-crashlytics/gradle/wrapper/gradle-wrapper.properties index e411586..b413873 100644 --- a/samples/sample-crashlytics/gradle/wrapper/gradle-wrapper.properties +++ b/samples/sample-crashlytics/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/samples/sample-crashlytics/ios/Podfile.lock b/samples/sample-crashlytics/ios/Podfile.lock index 0b6da4f..2b52e73 100644 --- a/samples/sample-crashlytics/ios/Podfile.lock +++ b/samples/sample-crashlytics/ios/Podfile.lock @@ -73,8 +73,8 @@ SPEC CHECKSUMS: GoogleUtilities: 8de2a97a17e15b6b98e38e8770e2d129a57c0040 nanopb: a0ba3315591a9ae0a16a309ee504766e90db0c96 PromisesObjC: 68159ce6952d93e17b2dfe273b8c40907db5ba58 - shared: 789ad2911128b118351fd54e4c01aada5f53b520 + shared: 628313d3401ca262e9c0f21500e026f0ede751b8 PODFILE CHECKSUM: 0ff799ecfce730b0f52c42ff7c611152c6705e26 -COCOAPODS: 1.12.1 +COCOAPODS: 1.17.0 diff --git a/samples/sample-crashlytics/shared/build.gradle.kts b/samples/sample-crashlytics/shared/build.gradle.kts index 74aa206..589fe78 100644 --- a/samples/sample-crashlytics/shared/build.gradle.kts +++ b/samples/sample-crashlytics/shared/build.gradle.kts @@ -7,7 +7,6 @@ * * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("com.android.library") @@ -28,10 +27,6 @@ android { } } -tasks.withType { - kotlinOptions.jvmTarget = "1.8" -} - version = "0.1.2" kotlin { @@ -51,7 +46,6 @@ kotlin { commonTest { dependencies { implementation(kotlin("test")) - } } } diff --git a/samples/sample-crashlytics/shared/shared.podspec b/samples/sample-crashlytics/shared/shared.podspec index fb2eba1..ab42daf 100644 --- a/samples/sample-crashlytics/shared/shared.podspec +++ b/samples/sample-crashlytics/shared/shared.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |spec| spec.summary = 'Sample for CrashKiOS' spec.vendored_frameworks = 'build/cocoapods/framework/shared.framework' spec.libraries = 'c++' - spec.ios.deployment_target = '14.1' + spec.ios.deployment_target = '14.1' if !Dir.exist?('build/cocoapods/framework/shared.framework') || Dir.empty?('build/cocoapods/framework/shared.framework') @@ -22,6 +22,10 @@ Pod::Spec.new do |spec| Alternatively, proper pod installation is performed during Gradle sync in the IDE (if Podfile location is set)" end + spec.xcconfig = { + 'ENABLE_USER_SCRIPT_SANDBOXING' => 'NO', + } + spec.pod_target_xcconfig = { 'KOTLIN_PROJECT_PATH' => ':shared', 'PRODUCT_MODULE_NAME' => 'shared', From f262e17d18308440faa1146b468641345aef8882 Mon Sep 17 00:00:00 2001 From: Wellington Costa Date: Mon, 24 Aug 2026 12:42:53 -0300 Subject: [PATCH 2/3] Set `jvmTarget` to 1.8 --- bugsnag/build.gradle.kts | 10 ++++------ core/build.gradle.kts | 11 +++++------ crashlytics/build.gradle.kts | 10 ++++------ samples/sample-bugsnag/shared/build.gradle.kts | 12 +++++++----- samples/sample-crashlytics/shared/build.gradle.kts | 12 +++++++----- 5 files changed, 27 insertions(+), 28 deletions(-) diff --git a/bugsnag/build.gradle.kts b/bugsnag/build.gradle.kts index e74a79b..4f4508e 100644 --- a/bugsnag/build.gradle.kts +++ b/bugsnag/build.gradle.kts @@ -10,7 +10,7 @@ * or implied. See the License for the specific language governing permissions and limitations under * the License. */ -import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { id("com.android.library") @@ -28,12 +28,14 @@ group = GROUP version = VERSION_NAME kotlin { - @OptIn(ExperimentalKotlinGradlePluginApi::class) compilerOptions { freeCompilerArgs.add("-Xexpect-actual-classes") } androidTarget { publishAllLibraryVariants() + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) + } } macosX64() @@ -100,8 +102,4 @@ android { .get() .toInt() } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } } diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 09d95ad..d6d457e 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -10,7 +10,8 @@ * or implied. See the License for the specific language governing permissions and limitations under * the License. */ -import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi + +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { id("com.android.library") @@ -27,12 +28,14 @@ group = GROUP version = VERSION_NAME kotlin { - @OptIn(ExperimentalKotlinGradlePluginApi::class) compilerOptions { freeCompilerArgs.add("-Xexpect-actual-classes") } androidTarget { publishAllLibraryVariants() + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) + } } macosX64() @@ -72,10 +75,6 @@ android { .get() .toInt() } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } } apply(plugin = "com.vanniktech.maven.publish") diff --git a/crashlytics/build.gradle.kts b/crashlytics/build.gradle.kts index db207a0..7edd16a 100644 --- a/crashlytics/build.gradle.kts +++ b/crashlytics/build.gradle.kts @@ -10,7 +10,7 @@ * or implied. See the License for the specific language governing permissions and limitations under * the License. */ -import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { id("com.android.library") @@ -28,12 +28,14 @@ group = GROUP version = VERSION_NAME kotlin { - @OptIn(ExperimentalKotlinGradlePluginApi::class) compilerOptions { freeCompilerArgs.add("-Xexpect-actual-classes") } androidTarget { publishAllLibraryVariants() + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) + } } macosX64() @@ -98,8 +100,4 @@ android { .get() .toInt() } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } } diff --git a/samples/sample-bugsnag/shared/build.gradle.kts b/samples/sample-bugsnag/shared/build.gradle.kts index b9e591d..200fadd 100644 --- a/samples/sample-bugsnag/shared/build.gradle.kts +++ b/samples/sample-bugsnag/shared/build.gradle.kts @@ -8,6 +8,8 @@ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id("com.android.library") kotlin("multiplatform") @@ -21,16 +23,16 @@ android { defaultConfig { minSdk = projectLibs.versions.minSdk.get().toInt() } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } } version = "0.0.1" kotlin { - androidTarget() + androidTarget { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) + } + } iosX64() iosArm64() // Note: iosSimulatorArm64 target requires that all dependencies have M1 support diff --git a/samples/sample-crashlytics/shared/build.gradle.kts b/samples/sample-crashlytics/shared/build.gradle.kts index 589fe78..04a3b95 100644 --- a/samples/sample-crashlytics/shared/build.gradle.kts +++ b/samples/sample-crashlytics/shared/build.gradle.kts @@ -8,6 +8,8 @@ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id("com.android.library") kotlin("multiplatform") @@ -21,16 +23,16 @@ android { defaultConfig { minSdk = projectLibs.versions.minSdk.get().toInt() } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } } version = "0.1.2" kotlin { - androidTarget() + androidTarget { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) + } + } iosX64() iosArm64() // Note: iosSimulatorArm64 target requires that all dependencies have M1 support From 9ec5adacec09021de1059b2ecc29805ea57f433f Mon Sep 17 00:00:00 2001 From: Wellington Costa Date: Mon, 24 Aug 2026 15:37:29 -0300 Subject: [PATCH 3/3] Remove Google services files from the project --- samples/sample-crashlytics/app/.gitignore | 1 + .../app/google-services.json | 29 ------------------ samples/sample-crashlytics/ios-spm/.gitignore | 4 ++- .../ios-spm/ios/GoogleService-Info.plist | 30 ------------------- samples/sample-crashlytics/ios/.gitignore | 4 ++- .../ios/ios/GoogleService-Info.plist | 30 ------------------- 6 files changed, 7 insertions(+), 91 deletions(-) delete mode 100644 samples/sample-crashlytics/app/google-services.json delete mode 100644 samples/sample-crashlytics/ios-spm/ios/GoogleService-Info.plist delete mode 100644 samples/sample-crashlytics/ios/ios/GoogleService-Info.plist diff --git a/samples/sample-crashlytics/app/.gitignore b/samples/sample-crashlytics/app/.gitignore index 796b96d..2abde4a 100644 --- a/samples/sample-crashlytics/app/.gitignore +++ b/samples/sample-crashlytics/app/.gitignore @@ -1 +1,2 @@ /build +/google-services.json diff --git a/samples/sample-crashlytics/app/google-services.json b/samples/sample-crashlytics/app/google-services.json deleted file mode 100644 index e9c67a5..0000000 --- a/samples/sample-crashlytics/app/google-services.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "project_info": { - "project_number": "262996390724", - "project_id": "crashkiossample", - "storage_bucket": "crashkiossample.appspot.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:262996390724:android:7a848afa4b4ca8448add11", - "android_client_info": { - "package_name": "co.touchlab.crashkiossamplecrashlog" - } - }, - "oauth_client": [], - "api_key": [ - { - "current_key": "AIzaSyAEDOEwsd0-F3kg5QbOGqc9fNPsF5Ergbs" - } - ], - "services": { - "appinvite_service": { - "other_platform_oauth_client": [] - } - } - } - ], - "configuration_version": "1" -} diff --git a/samples/sample-crashlytics/ios-spm/.gitignore b/samples/sample-crashlytics/ios-spm/.gitignore index 508139c..9c2db79 100644 --- a/samples/sample-crashlytics/ios-spm/.gitignore +++ b/samples/sample-crashlytics/ios-spm/.gitignore @@ -135,4 +135,6 @@ Dependencies/ ### Xcode Patch ### **/xcshareddata/WorkspaceSettings.xcsettings -# End of https://www.gitignore.io/api/xcode,swift,objective-c \ No newline at end of file +# End of https://www.gitignore.io/api/xcode,swift,objective-c + +ios/GoogleService-Info.plist diff --git a/samples/sample-crashlytics/ios-spm/ios/GoogleService-Info.plist b/samples/sample-crashlytics/ios-spm/ios/GoogleService-Info.plist deleted file mode 100644 index 70889c6..0000000 --- a/samples/sample-crashlytics/ios-spm/ios/GoogleService-Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - API_KEY - AIzaSyAEDOEwsd0-F3kg5QbOGqc9fNPsF5Ergbs - GCM_SENDER_ID - 262996390724 - PLIST_VERSION - 1 - BUNDLE_ID - co.touchlab.crashkios.sample - PROJECT_ID - crashkiossample - STORAGE_BUCKET - crashkiossample.appspot.com - IS_ADS_ENABLED - - IS_ANALYTICS_ENABLED - - IS_APPINVITE_ENABLED - - IS_GCM_ENABLED - - IS_SIGNIN_ENABLED - - GOOGLE_APP_ID - 1:262996390724:ios:7a848afa4b4ca8448add11 - - \ No newline at end of file diff --git a/samples/sample-crashlytics/ios/.gitignore b/samples/sample-crashlytics/ios/.gitignore index 508139c..9c2db79 100644 --- a/samples/sample-crashlytics/ios/.gitignore +++ b/samples/sample-crashlytics/ios/.gitignore @@ -135,4 +135,6 @@ Dependencies/ ### Xcode Patch ### **/xcshareddata/WorkspaceSettings.xcsettings -# End of https://www.gitignore.io/api/xcode,swift,objective-c \ No newline at end of file +# End of https://www.gitignore.io/api/xcode,swift,objective-c + +ios/GoogleService-Info.plist diff --git a/samples/sample-crashlytics/ios/ios/GoogleService-Info.plist b/samples/sample-crashlytics/ios/ios/GoogleService-Info.plist deleted file mode 100644 index 70889c6..0000000 --- a/samples/sample-crashlytics/ios/ios/GoogleService-Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - API_KEY - AIzaSyAEDOEwsd0-F3kg5QbOGqc9fNPsF5Ergbs - GCM_SENDER_ID - 262996390724 - PLIST_VERSION - 1 - BUNDLE_ID - co.touchlab.crashkios.sample - PROJECT_ID - crashkiossample - STORAGE_BUCKET - crashkiossample.appspot.com - IS_ADS_ENABLED - - IS_ANALYTICS_ENABLED - - IS_APPINVITE_ENABLED - - IS_GCM_ENABLED - - IS_SIGNIN_ENABLED - - GOOGLE_APP_ID - 1:262996390724:ios:7a848afa4b4ca8448add11 - - \ No newline at end of file