From e3ecb7d8fd2df52b9d762286394d35d4c7022bfc Mon Sep 17 00:00:00 2001 From: Harsh Date: Thu, 14 May 2026 04:52:01 +0530 Subject: [PATCH 1/2] ci: add MSRV and feature matrix checks, fix rust-version to 1.88 --- .github/workflows/rust.yml | 49 +++++++++++++++++++++++++++++++++++++- Cargo.toml | 6 ++++- 2 files changed, 53 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 43b2061..01c4d5a 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -39,4 +39,51 @@ jobs: run: cargo doc --no-deps --all-features - name: Build - run: cargo build --verbose \ No newline at end of file + run: cargo build --verbose + + msrv: + name: MSRV (Rust 1.88) + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Rust 1.88 + uses: dtolnay/rust-toolchain@1.88 + + - name: Cache dependencies + uses: Swatinem/rust-cache@v2 + + - name: Remove incompatible lockfile + run: rm -f Cargo.lock + + - name: Check + run: cargo check --all-features + + - name: Test + run: cargo test --all-features + + features: + name: Feature matrix + runs-on: ubuntu-latest + + strategy: + matrix: + features: ["--no-default-features", "", "--all-features"] + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Rust + uses: dtolnay/rust-toolchain@stable + + - name: Cache dependencies + uses: Swatinem/rust-cache@v2 + + - name: Check + run: cargo check ${{ matrix.features }} + + - name: Test + run: cargo test ${{ matrix.features }} \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index 351f02f..e0a28b4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,7 @@ name = "contextvm-sdk" version = "0.1.1" edition = "2021" -rust-version = "1.70" +rust-version = "1.88" description = "Rust SDK for the ContextVM protocol — MCP over Nostr" license = "MIT" readme = "README.md" @@ -58,6 +58,10 @@ required-features = ["rmcp"] name = "native_echo_client" required-features = ["rmcp"] +[[test]] +name = "e2e_happy_path" +required-features = ["rmcp", "test-utils"] + [[test]] name = "transport_integration" required-features = ["test-utils"] From 4ea6ce4f5fee3aff2dbf2d66366a6f8a6b95097a Mon Sep 17 00:00:00 2001 From: Harsh Date: Thu, 14 May 2026 05:02:17 +0530 Subject: [PATCH 2/2] ci: consolidate feature matrix into main ci job --- .github/workflows/rust.yml | 38 +++++++++++++------------------------- 1 file changed, 13 insertions(+), 25 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 01c4d5a..ab73c36 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -41,6 +41,18 @@ jobs: - name: Build run: cargo build --verbose + - name: Check (no-default-features) + run: cargo check --no-default-features + + - name: Test (no-default-features) + run: cargo test --no-default-features + + - name: Check (default features) + run: cargo check + + - name: Test (default features) + run: cargo test + msrv: name: MSRV (Rust 1.88) runs-on: ubuntu-latest @@ -62,28 +74,4 @@ jobs: run: cargo check --all-features - name: Test - run: cargo test --all-features - - features: - name: Feature matrix - runs-on: ubuntu-latest - - strategy: - matrix: - features: ["--no-default-features", "", "--all-features"] - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install Rust - uses: dtolnay/rust-toolchain@stable - - - name: Cache dependencies - uses: Swatinem/rust-cache@v2 - - - name: Check - run: cargo check ${{ matrix.features }} - - - name: Test - run: cargo test ${{ matrix.features }} \ No newline at end of file + run: cargo test --all-features \ No newline at end of file