Skip to content

tx: add eip-7594 peerdas blob transactions in osaka #3976

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 54 commits into from
May 29, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
051807b
tx: add peerdas blob transactions support
g11tech Apr 14, 2025
2fa5705
add eip 7594 network wrapper for blob tx
g11tech Apr 17, 2025
9bb92ac
add eip 7594 checks and engine api changes
g11tech Apr 17, 2025
f1a0ac1
add 7594 to osaka hf and fix the network wrapper validation
g11tech Apr 18, 2025
7e4fe66
improve networkwrapper vals
g11tech Apr 18, 2025
1dc6128
update proof validation for cell proofs network version
g11tech Apr 18, 2025
79368b2
temp use ckzg
g11tech Apr 18, 2025
af23ab2
fixes
g11tech Apr 18, 2025
7387066
load trusted setup on ckzg
g11tech Apr 18, 2025
be2ac95
load trusted setup on ckzg
g11tech Apr 18, 2025
830b79a
load trusted setup on ckzg
g11tech Apr 18, 2025
c76a769
move prague genesis to testdata and add/generate osaka genesis and up…
g11tech Apr 25, 2025
bbe4e3d
add blobs to cell and proofs util
g11tech Apr 25, 2025
6eee3fc
build and add getpayloadv5 end to end client spec, test/fix the issues
g11tech Apr 25, 2025
eea7090
ci build
g11tech Apr 25, 2025
71494e8
ci build
g11tech Apr 25, 2025
e79bdbc
fix ci
g11tech Apr 25, 2025
995f14b
add 7594 network wrapper tx tests and fix isssues
g11tech Apr 26, 2025
2583d89
fix ckzg import
g11tech May 4, 2025
96c7e72
debug requests
g11tech May 5, 2025
1d86e0d
add further debugging log
g11tech May 5, 2025
5f8cfe4
ckzg for testing revert later
g11tech May 5, 2025
c31b869
fix rebae
g11tech May 5, 2025
33b93e5
add blobs bundle debug log
g11tech May 5, 2025
c769a9c
more debug log
g11tech May 8, 2025
601283a
remove old format transactions
g11tech May 8, 2025
64c8b07
reject old format tx acceptance
g11tech May 8, 2025
06bb61a
add debug log
g11tech May 8, 2025
b50fd36
exclude selection of 7594 txs if hardfork not yet happened
g11tech May 12, 2025
5b06d5e
exclude selection of 7594 txs if hardfork not yet happened
g11tech May 12, 2025
e05db51
remove additional console logs
g11tech May 12, 2025
31be335
fix breaking client tests
g11tech May 13, 2025
08da3b0
update the microkzg signer to 0.15 and fix the imports everywhere
g11tech May 24, 2025
3924a57
fix kzg spec by proxing wasm cell methods to jskzg
g11tech May 24, 2025
979f0fd
remove unnecessary docker pkg
g11tech May 24, 2025
f7ca457
lint
g11tech May 24, 2025
0b50953
fix the issues with trustedsetup by using fast peerdas
g11tech May 24, 2025
37f4ce8
add the validations in buildblock for proper blob format tx
g11tech May 24, 2025
984f589
zero down to the issues in getpayloadv5 spec
g11tech May 24, 2025
429f0a6
zero down to the issues in getpayloadv5 spec
g11tech May 24, 2025
db8a7eb
fix statemanager breaking spec
g11tech May 24, 2025
35ebee9
add back a deleted comment
g11tech May 24, 2025
c5e1699
active some more codeflow for escaping lint errors
g11tech May 24, 2025
2e0450c
better word error
g11tech May 24, 2025
33ad579
use the new microsigner lib in 7594 tx spec
g11tech May 24, 2025
5b3e9d8
remove c-kzg
g11tech May 24, 2025
645d8e2
lint
g11tech May 24, 2025
ebc28b6
fix tsc issues
g11tech May 24, 2025
de0c766
Clean up tests
acolytec3 May 26, 2025
475fd24
add ckzg to client for getpayloadv5 ttest
g11tech May 26, 2025
447cc64
client: bump rpc keepAliveTimeout to fix micro-eth-signer blocking (?…
jochem-brouwer May 28, 2025
25cceeb
Revert "add ckzg to client for getpayloadv5 ttest"
g11tech May 29, 2025
bf4d8a4
handle structured clone for browser
g11tech May 29, 2025
cf60e44
handle structued clone undefined
g11tech May 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM node:22-alpine
RUN apk update && apk add --no-cache bash git g++ make python3 && rm -rf /var/cache/apk/*
FROM node:22.4-slim
RUN apt-get update && apt-get install -y git g++ make python3 python3-setuptools && apt-get clean && rm -rf /var/lib/apt/lists/*

WORKDIR /ethereumjs-monorepo

Expand Down
3 changes: 2 additions & 1 deletion config/cspell-ts.json
Original file line number Diff line number Diff line change
Expand Up @@ -640,6 +640,7 @@
"blobschedule",
"hoodi",
"peerdas",
"getpayload"
"getpayload",
"ckzg"
]
}
173 changes: 36 additions & 137 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions packages/block/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -215,9 +215,9 @@ import { createBlock } from '@ethereumjs/block'
import { Common, Hardfork, Mainnet } from '@ethereumjs/common'
import { createBlob4844Tx } from '@ethereumjs/tx'
import { createAddressFromPrivateKey } from '@ethereumjs/util'
import { trustedSetup } from '@paulmillr/trusted-setups/fast.js'
import { trustedSetup } from '@paulmillr/trusted-setups/fast-peerdas.js'
import { randomBytes } from 'crypto'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg.js'

const main = async () => {
const kzg = new microEthKZG(trustedSetup)
Expand Down
4 changes: 2 additions & 2 deletions packages/block/examples/4844.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import { createBlock } from '@ethereumjs/block'
import { Common, Hardfork, Mainnet } from '@ethereumjs/common'
import { createBlob4844Tx } from '@ethereumjs/tx'
import { createAddressFromPrivateKey } from '@ethereumjs/util'
import { trustedSetup } from '@paulmillr/trusted-setups/fast.js'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg'
import { trustedSetup } from '@paulmillr/trusted-setups/fast-peerdas.js'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg.js'

const main = async () => {
const kzg = new microEthKZG(trustedSetup)
Expand Down
4 changes: 2 additions & 2 deletions packages/block/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@
},
"devDependencies": {
"@ethereumjs/testdata": "1.0.0",
"@paulmillr/trusted-setups": "^0.1.2",
"micro-eth-signer": "^0.14.0"
"@paulmillr/trusted-setups": "^0.2.0",
"micro-eth-signer": "^0.15.0"
},
"engines": {
"node": ">=18"
Expand Down
4 changes: 2 additions & 2 deletions packages/block/test/eip4844block.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import {
getBlobs,
randomBytes,
} from '@ethereumjs/util'
import { trustedSetup } from '@paulmillr/trusted-setups/fast.js'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg'
import { trustedSetup } from '@paulmillr/trusted-setups/fast-peerdas.js'
import { KZG as microEthKZG } from 'micro-eth-signer/kzg.js'
import { assert, describe, it } from 'vitest'

import { fakeExponential, getNumBlobs } from '../src/helpers.ts'
Expand Down
Loading
Loading