Skip to content

perf(build): speed up local CLI rebuilds#1387

Merged
johntmyers merged 1 commit into
mainfrom
fix/protobuf-build-speed/johntmyers
May 14, 2026
Merged

perf(build): speed up local CLI rebuilds#1387
johntmyers merged 1 commit into
mainfrom
fix/protobuf-build-speed/johntmyers

Conversation

@johntmyers
Copy link
Copy Markdown
Collaborator

Summary

Speeds up local OpenShell CLI rebuilds by removing avoidable build invalidation and expensive protobuf compilation work from the dev path.

Related Issue

N/A

Changes

  • Removed protobuf-src so openshell-core no longer compiles the C++ protobuf library from source during local builds.
  • Updated protobuf codegen to use protoc from PATH, with a mise fallback for direct cargo usage.
  • Stopped watching .git/HEAD and .git/refs/tags in the core build script so commits, checkouts, and branch switches do not cascade a full CLI rebuild.
  • Added [profile.dev.build-override] opt-level = 2 so build scripts and proc macros run optimized after their first compile.
  • Updated Docker build images that compile Rust crates directly to install protobuf-compiler now that protobuf-src is gone.
  • Updated the local scripts/bin/openshell wrapper to disable RUSTC_WRAPPER by default for faster iterative rebuilds; set OPENSHELL_CLI_USE_SCCACHE=1 to opt back into sccache.
  • Fixed plaintext HTTP gateway health checks so macOS dev builds do not require native root CA loading for http:// endpoints.

Testing

  • RUSTC_WRAPPER= cargo check -p openshell-core
  • RUSTC_WRAPPER= cargo test -p openshell-cli http_health_check_supports_plain_http_endpoints -- --nocapture
  • scripts/bin/openshell --help repeat invocation after rebuild completed in ~0.2s locally
  • mise run pre-commit

Checklist

  • Tests added or updated where appropriate
  • Documentation updated where appropriate
  • Security considerations reviewed

@johntmyers johntmyers merged commit 668c712 into main May 14, 2026
30 checks passed
@johntmyers johntmyers deleted the fix/protobuf-build-speed/johntmyers branch May 14, 2026 18:44
drew added a commit that referenced this pull request May 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants