Skip to content

perf(evm): apply the release profile from the workspace root - #59

Merged
kyscott18 merged 1 commit into
mainfrom
perf/cargo-release-profile
Oct 13, 2026
Merged

kyscott18 merged 1 commit into
mainfrom
perf/cargo-release-profile

Conversation

@kyscott18

@kyscott18 kyscott18 commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Cargo ignores [profile.*] in workspace members. When the root workspace was added (ed2541e), lto = "thin" and codegen-units = 1 stopped applying to the native addon, and cargo printed a warning on every lint run. This PR moves the profile to the root Cargo.toml.

Results

typewriter-evm execute benchmark: erc20 transfer 18.8 µs → 15.2 µs, counter 8.9 µs → 7.9 µs. The release build time does not change (~28 s).

Test plan

  • bun run lint (the "profiles for the non root package will be ignored" warning is gone), bun run typecheck, bun run test

🤖 Generated with Claude Code

RetriggerConfidence Score: 5/5

This PR appears safe to merge.

Summary

Moves lto = "thin" and codegen-units = 1 to the workspace root so Cargo applies them to release builds.

  • Cargo now applies the release profile to the EVM workspace build.

Reviews (1) · Last reviewed commit: "perf(evm): apply the release profile fro..." · Reviewed by Greptile

Cargo ignores [profile.*] in workspace members, so lto = "thin" and
codegen-units = 1 stopped applying when the root workspace was added.
Move them to the root Cargo.toml.

typewriter-evm execute benchmark: erc20 transfer 18.8us -> 15.2us,
counter 8.9us -> 7.9us.
@kyscott18
kyscott18 merged commit 8f55952 into main Oct 13, 2026
8 checks passed
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.

1 participant