From ab0b5e9e99783604ba57e9c38e8162ae18ad2105 Mon Sep 17 00:00:00 2001 From: Soutaro Matsumoto Date: Thu, 12 Mar 2026 14:43:20 +0900 Subject: [PATCH 1/2] Use `raw::c_char` type to avoid environment dependent type errors --- rust/ruby-rbs/src/node/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ruby-rbs/src/node/mod.rs b/rust/ruby-rbs/src/node/mod.rs index 28d09e5ef..75bdb5b15 100644 --- a/rust/ruby-rbs/src/node/mod.rs +++ b/rust/ruby-rbs/src/node/mod.rs @@ -14,7 +14,7 @@ use std::ptr::NonNull; /// ``` pub fn parse(rbs_code: &[u8]) -> Result, String> { unsafe { - let start_ptr = rbs_code.as_ptr() as *const i8; + let start_ptr = rbs_code.as_ptr() as *const std::os::raw::c_char; let end_ptr = start_ptr.add(rbs_code.len()); let bytes = rbs_code.len() as i32; From a35ad17c304bbdaf85c78730ef2263d9ab91fa84 Mon Sep 17 00:00:00 2001 From: Soutaro Matsumoto Date: Thu, 12 Mar 2026 14:45:13 +0900 Subject: [PATCH 2/2] Extract `publish-dry-run` job Because the job fails when C API is changed. --- .github/workflows/rust.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 018a58e3a..47afd4d83 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -41,6 +41,26 @@ jobs: run: | cd rust cargo test --verbose + + publish-dry-run: + name: cargo:publish-dry-run + runs-on: ubuntu-latest + continue-on-error: true + steps: + - uses: actions/checkout@v6 + - name: Install Rust tools + run: | + rustup update --no-self-update stable + rustup default stable + - uses: actions/cache@v5 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + rust/target + key: ${{ runner.os }}-cargo-${{ hashFiles('rust/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo- - name: Test publish crates run: | cd rust