Skip to content

EIP-7892: Blob Parameter Only Hardforks#14843

Merged
yperbasis merged 12 commits into
mainfrom
eip-7892
May 5, 2025
Merged

EIP-7892: Blob Parameter Only Hardforks#14843
yperbasis merged 12 commits into
mainfrom
eip-7892

Conversation

@yperbasis

@yperbasis yperbasis commented May 1, 2025

Copy link
Copy Markdown
Member

Implement EIP-7892: Blob Parameter Only Hardforks, which is scheduled in Fusaka.

Now chain.Config must be copied with jinzhu/copier because I added a sync.Once field (see getBlobConfig).

@yperbasis yperbasis linked an issue May 1, 2025 that may be closed by this pull request
@yperbasis yperbasis marked this pull request as ready for review May 2, 2025 08:38
@yperbasis yperbasis marked this pull request as draft May 2, 2025 08:46
@yperbasis yperbasis marked this pull request as ready for review May 4, 2025 11:03
@somnergy

somnergy commented May 4, 2025

Copy link
Copy Markdown
Member

Just an idea:
Maybe the EIP and the config layout should be modified to look like the parsed config, and there should be a validation done once. (This has value)
Instead of the two string pointers:

"cancun": { ... }
"prague": { ... }

we could propose

"${cancunTime}": { ... }
"${pragueTime}": { ... }

But I do think abstracting away the parsed json Config object, from how/where it's actually called/used further down, is neater. (This only has aesthetic value, if at all)

@yperbasis

Copy link
Copy Markdown
Member Author

@somnathb1 Arguably the current version in the EIP (with "cancun", "prague", etc.) is more readable. I don't have the conviction to propose to change it to the "${cancunTime}", etc. But I don't have a strong view on this.

@yperbasis yperbasis enabled auto-merge (squash) May 5, 2025 09:22
Comment thread erigon-lib/chain/chain_config.go
BaseFeeUpdateFraction uint64 `json:"baseFeeUpdateFraction"`
}

var DefaultCancunBlobConfig = BlobConfig{

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest not keeping the default configs anymore

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need it in some form so that chain.Config returns Ethereum's default blob values when no explicit blobSchedule is provided.

@yperbasis yperbasis merged commit 4e8ce54 into main May 5, 2025
@yperbasis yperbasis deleted the eip-7892 branch May 5, 2025 14:58
somnergy added a commit that referenced this pull request May 6, 2025
somnergy added a commit that referenced this pull request May 7, 2025
This reverts commit
4e8ce54.

Also adds parallelism flag to EEST workflow runner
yperbasis added a commit that referenced this pull request May 15, 2025
yperbasis added a commit that referenced this pull request May 15, 2025
yperbasis added a commit that referenced this pull request May 29, 2025
Restores reverted PR #14843 + changes to the following
[agreed](https://discord.com/channels/595666850260713488/1360267444911865876)
format:
```
{
    "blobSchedule": {
        "cancun": {
            "target": 3,
            "max": 6,
            "baseFeeUpdateFraction": 3338477
        },
        "prague": {
            "target": 6,
            "max": 9,
            "baseFeeUpdateFraction": 5007716
        },
        "osaka": {
            "target": 6,
            "max": 9,
            "baseFeeUpdateFraction": 5007716
        },
        "bpo1": {
            "target": 6,
            "max": 9,
            "baseFeeUpdateFraction": 5007716
        },
        "bpo2": {
            "target": 12,
            "max": 18,
            "baseFeeUpdateFraction": 5007716
        },
        "bpo3": {
            "target": 6,
            "max": 9,
            "baseFeeUpdateFraction": 5007716
        },
        "bpo4": {
            "target": 12,
            "max": 18,
            "baseFeeUpdateFraction": 5007716
        },
        "bpo5": {
            "target": 6,
            "max": 9,
            "baseFeeUpdateFraction": 5007716
        }
    },
    "cancunTime": 0,
    "pragueTime": 0,
    "osakaTime": 1747387400,
    "bpo1Time": 1747387400,
    "bpo2Time": 1747387784,
    "bpo3Time": 1747388168,
    "bpo4Time": 1747388552,
    "bpo5Time": 1747388936
}
```

N.B. Hive EEST tests are
[green](https://github.com/erigontech/erigon/actions/runs/15167327678)
after
05ca140.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement EIP-7892: Blob Parameter Only Hardforks

2 participants