Add Claude Code GitHub Workflow - #20
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 Installing Claude Code GitHub App
This PR adds a GitHub Actions workflow that enables Claude Code integration in our repository.
What is Claude Code?
Claude Code is an AI coding agent that can help with:
How it works
Once this PR is merged, we'll be able to interact with Claude by mentioning @clhi, thank you for developing this project!
I encountered some compilation issues when building the
abpcrate for Android targets. After investigation I found the root cause and would like to share for your reference.Problem
When compiling
crates/abpfor Android targets usingcargo-ndk, there are 16 type mismatch errors. The root cause is that Android Bionic'slibc::c_charisu8, whileio.rshardcodesas *const i8. Similarly,st_modeandS_IFMTconstants have different widths on Android compared to Linux glibc.My environment
Build commands
Error output
There are 10 similar errors in
io.rs(open,stat,mkdir,rmdir,unlink,rename,symlink,chmod,access,opendir). Additionally,remove.rs:143andverify.rs:239have type mismatches in bitwise operations betweenst_modeandS_IFMT.My workaround
I made the following changes locally, and both arm64 and arm32 targets now compile successfully. The binaries were verified to run correctly on an Android device:
crates/abp/src/io.rs— Replaceas *const i8withas *const libc::c_char(10 places). This is compatible with bothc_char = i8(glibc/musl) andc_char = u8(Bionic):crates/abp/src/remove.rs:143andcrates/abp/src/verify.rs:239— Addas u32casts tost_modeandS_IFMTconstants:Build verification
Build results after the fix:
Device runtime test (arm64 emulator):
I'm not sure if this is a known issue or if there's a better approach (e.g., conditional compilation for Android in the build pipeline). Happy to submit a PR i
fix-android-cross-compile.patch
f that would be helpful. Thanks!aude in a pull request or issue comment.
Once the workflow is triggered, Claude will analyze the comment and surrounding context, and execute on the request in a GitHub action.
Important Notes
Security
There's more information in the Claude Code action repo.
After merging this PR, let's try mentioning @claude in a comment on any PR to get started!