Skip to content

Commit acece60

Browse files
committed
Merge remote-tracking branch 'origin/optimism' into seb/geth-v1.15.0-fixup
2 parents c31cb46 + 00cc4f2 commit acece60

29 files changed

+168
-63
lines changed

.circleci/ci-docker-tag-op-geth-release.sh

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,11 @@ fi
2727
echo "Tagging $SOURCE_IMAGE_TAG with '$IMAGE_TAG'"
2828
gcloud container images add-tag -q "$SOURCE_IMAGE_TAG" "$TARGET_IMAGE_TAG"
2929

30-
# Do not tag with latest if the release is a release candidate.
31-
if [[ "$IMAGE_TAG" == *"rc"* ]]; then
32-
echo "Not tagging with 'latest' because the release is a release candidate."
30+
# Only tag finalized releases with 'latest'
31+
if ! [[ "$IMAGE_TAG" =~ ^v1\.[0-9]+\.[0-9]+$ ]]; then
32+
echo "Not tagging with 'latest' because the release is not finalized."
3333
exit 0
3434
fi
3535

3636
echo "Tagging $SOURCE_IMAGE_TAG with 'latest'"
3737
gcloud container images add-tag -q "$SOURCE_IMAGE_TAG" "$TARGET_IMAGE_TAG_LATEST"
38-

.circleci/config.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 2.1
33
orbs:
44
gcp-cli: circleci/[email protected]
55
slack: circleci/[email protected]
6-
utils: ethereum-optimism/circleci-utils@0.0.8
6+
utils: ethereum-optimism/circleci-utils@1.0.13
77

88
parameters:
99
go_version:
@@ -84,10 +84,6 @@ jobs:
8484
if [ "$CIRCLE_PROJECT_REPONAME" == "op-geth" ] && [ "$CIRCLE_PROJECT_USERNAME" == "ethereum-optimism" ]; then
8585
echo "op-geth.optimism.io" > /tmp/pages/CNAME
8686
fi
87-
- utils/get-github-access-token:
88-
private-key-str: GITHUB_APP_KEY
89-
app-id: GITHUB_APP_ID
90-
repo: $CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME
9187
- utils/github-pages-deploy:
9288
src-pages-dir: /tmp/pages
9389
docker-release:

cmd/evm/internal/t8ntool/execution.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,10 @@ func (pre *Prestate) Apply(vmConfig vm.Config, chainConfig *params.ChainConfig,
367367
core.ProcessConsolidationQueue(&requests, evm)
368368
}
369369

370+
if chainConfig.IsIsthmus(vmContext.Time) {
371+
requests = [][]byte{}
372+
}
373+
370374
// Commit block
371375
root, err := statedb.Commit(vmContext.BlockNumber.Uint64(), chainConfig.IsEIP158(vmContext.BlockNumber), chainConfig.IsCancun(vmContext.BlockNumber, vmContext.Time))
372376
if err != nil {

cmd/geth/config.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,11 @@ func makeFullNode(ctx *cli.Context) *node.Node {
218218
cfg.Eth.OverrideOptimismIsthmus = &v
219219
}
220220

221+
if ctx.IsSet(utils.OverrideOptimismJovian.Name) {
222+
v := ctx.Uint64(utils.OverrideOptimismJovian.Name)
223+
cfg.Eth.OverrideOptimismJovian = &v
224+
}
225+
221226
if ctx.IsSet(utils.OverrideOptimismInterop.Name) {
222227
v := ctx.Uint64(utils.OverrideOptimismInterop.Name)
223228
cfg.Eth.OverrideOptimismInterop = &v

cmd/geth/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,9 @@ var (
7070
utils.OverrideOptimismFjord,
7171
utils.OverrideOptimismGranite,
7272
utils.OverrideOptimismHolocene,
73-
utils.OverrideOptimismInterop,
7473
utils.OverrideOptimismIsthmus,
74+
utils.OverrideOptimismJovian,
75+
utils.OverrideOptimismInterop,
7576
utils.EnablePersonal, // deprecated
7677
utils.TxPoolLocalsFlag,
7778
utils.TxPoolNoLocalsFlag,

cmd/utils/flags.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -273,14 +273,19 @@ var (
273273
Usage: "Manually specify the Optimism Granite fork timestamp, overriding the bundled setting",
274274
Category: flags.EthCategory,
275275
}
276+
OverrideOptimismHolocene = &cli.Uint64Flag{
277+
Name: "override.holocene",
278+
Usage: "Manually specify the Optimism Holocene fork timestamp, overriding the bundled setting",
279+
Category: flags.EthCategory,
280+
}
276281
OverrideOptimismIsthmus = &cli.Uint64Flag{
277282
Name: "override.isthmus",
278283
Usage: "Manually specify the Optimism Isthmus fork timestamp, overriding the bundled setting",
279284
Category: flags.EthCategory,
280285
}
281-
OverrideOptimismHolocene = &cli.Uint64Flag{
282-
Name: "override.holocene",
283-
Usage: "Manually specify the Optimism Holocene fork timestamp, overriding the bundled setting",
286+
OverrideOptimismJovian = &cli.Uint64Flag{
287+
Name: "override.jovian",
288+
Usage: "Manually specify the Optimism Jovian fork timestamp, overriding the bundled setting",
284289
Category: flags.EthCategory,
285290
}
286291
OverrideOptimismInterop = &cli.Uint64Flag{

core/chain_makers.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,11 @@ func (b *BlockGen) collectRequests(readonly bool) (requests [][]byte) {
332332
// EIP-7251
333333
ProcessConsolidationQueue(&requests, evm)
334334
}
335+
336+
if b.cm.config.IsIsthmus(b.header.Time) {
337+
requests = [][]byte{}
338+
}
339+
335340
return requests
336341
}
337342

core/genesis.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -298,6 +298,7 @@ type ChainOverrides struct {
298298
OverrideOptimismGranite *uint64
299299
OverrideOptimismHolocene *uint64
300300
OverrideOptimismIsthmus *uint64
301+
OverrideOptimismJovian *uint64
301302
OverrideOptimismInterop *uint64
302303
ApplySuperchainUpgrades bool
303304
}
@@ -367,6 +368,9 @@ func (o *ChainOverrides) apply(cfg *params.ChainConfig) error {
367368
cfg.IsthmusTime = o.OverrideOptimismIsthmus
368369
cfg.PragueTime = o.OverrideOptimismIsthmus
369370
}
371+
if o.OverrideOptimismJovian != nil {
372+
cfg.JovianTime = o.OverrideOptimismJovian
373+
}
370374
if o.OverrideOptimismInterop != nil {
371375
cfg.InteropTime = o.OverrideOptimismInterop
372376
}

core/rlp_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,7 @@ func TestBlockRlpEncodeDecode(t *testing.T) {
207207
config := *params.OptimismTestConfig
208208
config.ShanghaiTime = &zeroTime
209209
config.IsthmusTime = &zeroTime
210+
config.CancunTime = &zeroTime
210211
require.True(t, config.IsOptimismIsthmus(zeroTime))
211212

212213
block := getBlock(&config, 10, 2, 50)

core/state_processor.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@ func (p *StateProcessor) Process(block *types.Block, statedb *state.StateDB, cfg
118118
ProcessConsolidationQueue(&requests, evm)
119119
}
120120

121+
if p.config.IsIsthmus(block.Time()) {
122+
requests = [][]byte{}
123+
}
124+
121125
// Finalize the block, applying any consensus engine specific extras (e.g. block rewards)
122126
p.chain.engine.Finalize(p.chain, header, tracingStateDB, block.Body())
123127

0 commit comments

Comments
 (0)