From 926eb4f8f32d3b7a7dbcb280f471d5c853cc4768 Mon Sep 17 00:00:00 2001 From: nig Date: Thu, 23 Jan 2025 16:22:17 +0100 Subject: [PATCH] remove all default members from workspace commands like `cargo test`, `cargo clippy` or `cargo check` now require the `--all` or `--package` flags to choose which workspace members they should run for. this prevents the mobile apps from building node-mimimi --- .../{tuta-sdk-test.yml => rust-test.yml} | 13 +++++++------ Cargo.toml | 5 +++++ tuta-sdk/android/sdk/build.gradle.kts | 16 +++++++++++++++- 3 files changed, 27 insertions(+), 7 deletions(-) rename .github/workflows/{tuta-sdk-test.yml => rust-test.yml} (70%) diff --git a/.github/workflows/tuta-sdk-test.yml b/.github/workflows/rust-test.yml similarity index 70% rename from .github/workflows/tuta-sdk-test.yml rename to .github/workflows/rust-test.yml index 439895002003..6749d752aace 100644 --- a/.github/workflows/tuta-sdk-test.yml +++ b/.github/workflows/rust-test.yml @@ -5,7 +5,8 @@ on: types: [ opened, synchronize, edited ] paths: - 'tuta-sdk/**' - - '.github/workflows/tuta-sdk-test.yml' + - 'packages/node-mimimi/**' + - '.github/workflows/rust-test.yml' push: branches: - dev-* @@ -35,9 +36,9 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 - uses: ./.github/shared/setup-rust - - name: sdk format + - name: rust format run: cargo fmt --check - - name: sdk warning check with clippy - run: cargo clippy --no-deps -- -Dwarnings # -Dwarnings changes warnings to errors so that the check fails - - name: sdk tests - run: cargo test + - name: rust warning check with clippy + run: cargo clippy --all --no-deps -- -Dwarnings # -Dwarnings changes warnings to errors so that the check fails + - name: rust tests + run: cargo test --all diff --git a/Cargo.toml b/Cargo.toml index 3e9db2e11551..f02873ff74ef 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,6 +21,11 @@ members = [ "tuta-sdk/rust/uniffi-bindgen", ] +# in most cases, we don't want to build everything. +# this requires passing --all or --package to +# cargo for almost anything +default-members = [] + [workspace.dependencies] thiserror = { version = "2.0" } base64 = { version = "0.22.1" } diff --git a/tuta-sdk/android/sdk/build.gradle.kts b/tuta-sdk/android/sdk/build.gradle.kts index 5767ebfae235..09c4a9a433fe 100644 --- a/tuta-sdk/android/sdk/build.gradle.kts +++ b/tuta-sdk/android/sdk/build.gradle.kts @@ -95,6 +95,7 @@ dependencies { } cargo { + extraCargoBuildArguments = listOf("--package", "tuta-sdk") module = "../../rust" libname = "tutasdk" prebuiltToolchains = true @@ -114,7 +115,20 @@ tasks.register("generateBinding") { exec { this.workingDir("../../rust") this.executable("cargo") - this.args("run", "--bin", "uniffi-bindgen", "generate", "--library", "${layout.buildDirectory.asFile.get()}/rustJniLibs/android/${dir}/libtutasdk.so", "--language", "kotlin", "--out-dir", "${layout.buildDirectory.asFile.get()}/generated-sources/tuta-sdk") + this.args( + "run", + "--package", + "uniffi-bindgen", + "--bin", + "uniffi-bindgen", + "generate", + "--library", + "${layout.buildDirectory.asFile.get()}/rustJniLibs/android/${dir}/libtutasdk.so", + "--language", + "kotlin", + "--out-dir", + "${layout.buildDirectory.asFile.get()}/generated-sources/tuta-sdk" + ) } } }