How yzyf1312/rust-build-tool works
Rust Build Tool is a command-line utility for producing optimized Rust executables and running optional quality checks or unused-dependency removal. Its main workflow dispatches build options, validates prerequisites, optionally runs checks and cleanup, builds for the selected target, optionally compresses the executable, and reports its size and path. The separate depcheck workflow scans dependencies, asks for confirmation, and removes selected entries. The graph follows the sampled CLI, build, and dependency-check source; README capabilities without inspected implementation are represented only where their invoking code is explicit.
Main entry points: main.rs CLI dispatch · build_system.rs Build orchestration · dependency_checker.rs Unused dependency scan · tool_checker.rs Tool checks
Components 22
Command workflows
- CLI dispatch
src/main.rs
Optimized builds
- Build configuration
src/build_system.rs - Prerequisite validation
src/build_system.rs - Build orchestration
src/build_system.rs - Clean output
src/build_system.rs - Optimized compilation
src/build_system.rs - Artifact discovery
src/build_system.rs - UPX compression
src/build_system.rs - Build result report
src/build_system.rs
Quality and dependencies
- Clippy checks
src/build_system.rs - Dependency audits
src/build_system.rs - Unused dependency scan
src/dependency_checker.rs - Scan output parser
src/dependency_checker.rs - Dependency removal
src/dependency_checker.rs - Removal confirmation
src/util.rs
External tools
- Tool checks
src/tool_checker.rs - Cargo
- Nightly Rust
- cargo-udeps
- UPX
- Cargo.toml
Cargo.toml
Other components
- User
Connections 32
- User → CLI dispatch: invokes
- CLI dispatch → Build configuration: configures build
- CLI dispatch → Prerequisite validation: validates build
- CLI dispatch → Build orchestration: runs build
- CLI dispatch → Clippy checks: runs checks
- CLI dispatch → Unused dependency scan: starts scan
- CLI dispatch → Dependency audits: runs audits
- Build configuration → Prerequisite validation: creates validated build
- Prerequisite validation → Tool checks: checks prerequisites
- Prerequisite validation → UPX: checks LZMA support
- Build orchestration → Clean output: cleans optionally
- Build orchestration → Optimized compilation: builds
- Build orchestration → UPX compression: compresses optionally
- Build orchestration → Build result report: reports result
- Clean output → Cargo: runs clean
- Optimized compilation → Cargo: runs release build
- Optimized compilation → Artifact discovery: emits JSON stream
- Artifact discovery → Build result report: provides executable path
- UPX compression → UPX: compresses executable
- Build result report → Artifact discovery: reads file metadata
- Clippy checks → Cargo: runs clippy
- Dependency audits → Cargo: runs deny check
- Unused dependency scan → Tool checks: checks availability
- Unused dependency scan → cargo-udeps: scans dependencies
- cargo-udeps → Scan output parser: returns output
- Unused dependency scan → Removal confirmation: requests approval
- Removal confirmation → User: requests response
- Unused dependency scan → Dependency removal: removes approved items
- Dependency removal → Cargo.toml: reads dependency sections
- Dependency removal → Cargo: runs cargo remove
- Tool checks → Cargo: checks command
- Tool checks → Nightly Rust: checks installation