From 0ead2c37efe34278a859edbce40e8bba7bf021fd Mon Sep 17 00:00:00 2001 From: diogo464 Date: Thu, 10 Jul 2025 22:20:34 +0100 Subject: Add GitHub Actions release workflow and build scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add .github/workflows/release.yml for automated releases on version tags - Add scripts/build-static.sh for building statically linked binaries - Add scripts/prepare-release.sh for preparing release artifacts - Optimize Cargo.toml for smaller binary size (reduced from 4.5MB to 2.9MB) - Add scripts/README.md with usage documentation The workflow automatically builds binaries for Linux (musl) and macOS (Intel/ARM) when a version tag is pushed. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- Cargo.toml | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'Cargo.toml') diff --git a/Cargo.toml b/Cargo.toml index 447b346..ade2d8c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,3 +14,16 @@ thiserror = "2.0.12" tokio = { version = "1.46.1", features = ["full"] } tracing = "0.1.41" tracing-subscriber = { version = "0.3.19", features = ["env-filter"] } + +[profile.release] +# Optimize for size +opt-level = "z" # Optimize for size +lto = true # Enable Link Time Optimization +codegen-units = 1 # Compile crates one after another for better optimizations +strip = true # Strip symbols from binary +debug = false # Disable debug info + +# Additional size optimizations +[profile.release.package."*"] +opt-level = "z" +strip = "symbols" -- cgit