Loading...
Loading...
Build Rust code with proper error handling and optimization for development, testing, and production
npx skill4agent add d-o-hub/rust-self-learning-memory build-compile| Mode | Use Case | Performance | Size | Flags |
|---|---|---|---|---|
| Development iteration | Fast | Large | |
| Production deployment | Optimized | Medium | |
| Performance analysis | Medium | Medium | |
| Fast validation | Fastest | N/A | |
| Artifact cleanup | N/A | N/A | |
# Quick development iteration
./scripts/build-rust.sh dev
# Production build
./scripts/build-rust.sh release
# Performance profiling
./scripts/build-rust.sh profile
# Fast type-check
./scripts/build-rust.sh check
# Clean artifacts
./scripts/build-rust.sh cleanCARGO_BUILD_JOBSCARGO_BUILD_JOBS=4 cargo buildcheck/usr/bin/time -v cargo buildcargo build -j 1checkcargo tree -e featurescargo updateCargo.tomlrustc --print target-listrustup target add <triple>#[cfg(target_os = "linux")]- name: Cache cargo registry
uses: actions/cache@v3
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}# Default: Number of CPU cores
export CARGO_BUILD_JOBS=4
# Measure optimal concurrency
hyperfine -N 'cargo build -j 1' 'cargo build -j 2' 'cargo build -j 4'# Save compiled dependencies
cargo build --release
# Strip debug symbols (80% size reduction)
strip target/release/memory-mcp
# Verify binary
ldd target/release/memory-mcp
./target/release/memory-mcp --versioncargo clippy -- -D warningscargo test --no-run#!/usr/bin/env bash
set -euxo pipefail
./scripts/code-quality.sh fmt
./scripts/code-quality.sh clippy --workspace
cargo build --release --workspace
cargo test --all
cargo doc --no-deps#!/usr/bin/env bash
cargo check -p memory-core
cargo test -p memory-core --lib
cargo build -p memory-core#!/usr/bin/env bash
cargo build --release --workspace
strip target/release/memory-*
upx --best --lzma target/release/memory-*
sha256sum target/release/memory-* > SHA256SUMScargo clean && cargo buildrm Cargo.lock && cargo generate-lockfilerustup update stable && rustup default stablerustup target add x86_64-unknown-linux-musl