Repository navigation
feat(networks): default --base to Denim - #92
Merged
Merged
Conversation
Bare --base, --base with no value, the serde bool form, and the auto-enabled Base chain IDs (8453, 84532, 84538453) now select Denim instead of Cobalt. Explicit --base <upgrade> selections are unchanged. Update the clap default_missing_value, its drift-guard test, and the bare --base CLI parse test to match.
Retarget base-common-precompiles / base-common-chains to base/base main 990694fce8f1358b71cf0854e871f74e2a3e2cb9 via ./script/bump-base.sh. This picks up base/base#6124, which schedules Denim on Base mainnet at 1793901600 (2026-11-05 18:00 UTC), plus the precompile changes on main since f9d7bf5. main stays on revm 43 / alloy-evm 0.39 / reth base-v2.7.0.x, so the EVM alignment from #90 is unchanged. Pinning the v1.5.1 tag instead would downgrade to revm 42 / reth base-v2.5.2.8. Cargo.lock changes only the base/base source lines. (cherry picked from commit 2cf0160)
3 tasks
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
Bare
--basestill selects Cobalt. Denim is scheduled on Base mainnet for 2026-11-05 18:00 UTC (base/base v1.5.1), and consumers that run a base-anvil build without passing a fork (for example a transaction simulator) silently get the previous hardfork.DEFAULT_BASE_UPGRADE's doc comment says to bump it as new upgrades land.This PR also carries the base/base pin bump from #91 (cherry-picked with
-x, original authorship kept), so one merge produces a build with both the Denim default and the mainnet Denim schedule. If #91 merges first, this PR's copy of that commit becomes a no-op on rebase.Solution
DEFAULT_BASE_UPGRADEis nowBaseUpgrade::Denim.990694f(Cargo.toml,Cargo.lock), from chore(networks): bump base/base pin for mainnet Denim #91.default_missing_valueis now"denim", with its drift-guard test and comments updated.--baseparse test incrates/anvil/src/cmd.rsexpectsDenim.No other files change beyond the pin bump. Explicit
--base <upgrade>selections (beryl,cobalt,denim) are unchanged.Testing (macOS arm64):
cargo test -p foundry-evm-networks: 3 passed.cargo test -p anvil --lib base: 4 passed.Breaking change note
The default also applies through
with_chain_idwhen forking chain IDs 8453, 84532, or 84538453 without an explicit--base <upgrade>. A mainnet fork would therefore run Denim logic before the real activation on 2026-11-05 18:00 UTC, so it can differ from mainnet at the current block until then. Callers that need to match mainnet today should pass--base cobaltexplicitly. Reviewers: if you would rather hold this until activation, I can keep it as a draft and merge on or after 2026-11-05.PR Checklist