Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
fa49506
Make cancun fork
SamWilsn Oct 27, 2023
50c2014
add cancun packages (#852)
gurukamath Oct 31, 2023
641f416
implement EIP-5656
gurukamath Oct 30, 2023
515538c
Apply post-docc changes
SamWilsn Jan 9, 2024
761d284
Implement EIP-1153
gurukamath Jan 23, 2024
a4b9563
Implement EIP-4788
gurukamath Jan 24, 2024
750cf8e
Update apply_body docs for cancun
SamWilsn Feb 1, 2024
a310f7e
EIP-1153 minor bug fix
gurukamath Jan 25, 2024
13bd33d
Impement EIP-4844
gurukamath Jan 25, 2024
672431c
Implement EIP-7516
gurukamath Jan 25, 2024
6553e52
post review updates
gurukamath Feb 5, 2024
c4be748
update eth2spec
gurukamath Feb 7, 2024
65d7ac5
add EIP 6780: only SELFDESTRUCT in same transaction
gballet Jan 27, 2024
797586b
EIP-6780 fix
gurukamath Jan 27, 2024
b05d25e
post-review updates
gurukamath Feb 9, 2024
0b58d3e
remove type ignore comment
gurukamath Feb 16, 2024
f11b3d5
Apply #887 to cancun
SamWilsn Feb 21, 2024
bd3933e
Apply #862 to cancun
SamWilsn Feb 5, 2024
8f571b4
handle undeployed beacon roots contract
gurukamath Feb 22, 2024
2063927
move blob_versioned_hashes from Message to Environment
gurukamath Feb 22, 2024
e03b089
Apply #883 to cancun
SamWilsn Mar 8, 2024
ba6dede
Fix cancun t8n
petertdavies Feb 21, 2024
f89e112
Create a daemon mode for ethereum-spec-tools.
SamWilsn Feb 22, 2024
1582180
Update to JSON format
SamWilsn Feb 22, 2024
1e12800
Bump to eth2specs with pyproject.toml
SamWilsn Feb 22, 2024
72887a3
Remove parser globals from evm_tool
SamWilsn Feb 26, 2024
9a9e7cf
Simplify read_excess_blob_gas
SamWilsn Feb 26, 2024
82766b0
create Fork Load class
gurukamath Feb 28, 2024
f382a05
cancun fix
gurukamath Mar 1, 2024
ee9b1f6
update t8n for cancun
gurukamath Mar 1, 2024
25b1795
refactor transaction loader
gurukamath Mar 4, 2024
8c071dd
post-review updates
gurukamath Mar 11, 2024
892262d
Minor fixes to evm_tools tests
SamWilsn Mar 12, 2024
c14dc87
Re-enable evm_tools tests
SamWilsn Mar 12, 2024
1ae6ecd
Remove test_t8n.py
SamWilsn Mar 13, 2024
df81ada
fix memory bloat
gurukamath Mar 20, 2024
3975a23
update to the latest tests
gurukamath Mar 20, 2024
15186a3
temporarily disable optimized tests in CI
gurukamath Mar 25, 2024
b855277
fix transient storage on commit
gurukamath Mar 23, 2024
3ca6512
check create/create2 code size upfront
gurukamath Mar 26, 2024
0b9c354
create transient storage snapshots for process_create_message
gurukamath Apr 1, 2024
9e1a5ce
Fixup cancun+master
SamWilsn Apr 5, 2024
9c58901
fix t8n system message call
gurukamath Apr 9, 2024
cb7e414
Add ethereum-spec-evm statetest
SamWilsn Mar 15, 2024
7cb5110
Support more arguments for statetest
SamWilsn Mar 18, 2024
0051e21
Use more specific OverflowError for integer types
SamWilsn Mar 18, 2024
63db3d9
Compute modexp's modulus_start after charging gas
SamWilsn Mar 18, 2024
1bcb612
Catch more specific error type in t8n
SamWilsn Mar 18, 2024
f49f659
Report actual op code on InvalidOp
SamWilsn Mar 18, 2024
8b11e5a
Use unbounded ints for gas fees
SamWilsn Mar 18, 2024
4dda8f5
Add statetest to setup.cfg
SamWilsn Mar 19, 2024
d0f01a1
Handle missing values in statetests
SamWilsn Mar 20, 2024
99b2167
Store opcode in InvalidOp
SamWilsn Mar 20, 2024
a91cf1f
Output result on stderr when not tracing
SamWilsn Mar 21, 2024
9c0b267
Support transient storage in optimized state
petertdavies Apr 2, 2024
0cea437
enable optimized tests in CI
gurukamath Apr 2, 2024
9b450c2
Incorporate changes in Cancun branch
petertdavies Apr 5, 2024
e50e108
Schedule cancun
SamWilsn Apr 11, 2024
3faa27f
Paper over differences
SamWilsn Apr 15, 2024
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
12 changes: 12 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ packages =
ethereum_spec_tools/evm_tools
ethereum_spec_tools/evm_tools/t8n
ethereum_spec_tools/evm_tools/b11r
ethereum_spec_tools/evm_tools/statetest
ethereum_spec_tools/evm_tools/loaders
ethereum_spec_tools/lint
ethereum_spec_tools/lint/lints
ethereum
Expand Down Expand Up @@ -97,6 +99,11 @@ packages =
ethereum/shanghai/vm
ethereum/shanghai/vm/instructions
ethereum/shanghai/vm/precompiled_contracts
ethereum/cancun
ethereum/cancun/utils
ethereum/cancun/vm
ethereum/cancun/vm/instructions
ethereum/cancun/vm/precompiled_contracts


package_dir =
Expand All @@ -107,6 +114,7 @@ install_requires =
pycryptodome>=3,<4
coincurve>=18,<19
typing_extensions>=4
eth2spec @ git+https://github.com/ethereum/consensus-specs.git@d302b35d40c72842d444ef2ea64344e3cb889804

[options.package_data]
ethereum =
Expand All @@ -119,6 +127,9 @@ ethereum =
assets/blocks/block_1234567.json
assets/blocks/block_12964999.json

ethereum_spec_tools =
py.typed

[options.entry_points]
console_scripts =
ethereum-spec-lint = ethereum_spec_tools.lint:main
Expand All @@ -145,6 +156,7 @@ test =
pytest-xdist>=3.3.1,<4
GitPython>=3.1.0,<3.2
filelock>=3.12.3,<3.13
platformdirs>=4.2,<5
requests

lint =
Expand Down
6 changes: 5 additions & 1 deletion src/ethereum/arrow_glacier/vm/exceptions.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,11 @@ class InvalidOpcode(ExceptionalHalt):
Raised when an invalid opcode is encountered.
"""

pass
code: int

def __init__(self, code: int) -> None:
super().__init__(code)
self.code = code


class InvalidJumpDestError(ExceptionalHalt):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ def modexp(evm: Evm) -> None:
modulus_length = U256.from_be_bytes(buffer_read(data, U256(64), U256(32)))

exp_start = U256(96) + base_length
modulus_start = exp_start + exp_length

exp_head = Uint.from_be_bytes(
buffer_read(data, exp_start, min(U256(32), exp_length))
Expand All @@ -51,6 +50,8 @@ def modexp(evm: Evm) -> None:

base = Uint.from_be_bytes(buffer_read(data, U256(96), base_length))
exp = Uint.from_be_bytes(buffer_read(data, exp_start, exp_length))

modulus_start = exp_start + exp_length
modulus = Uint.from_be_bytes(
buffer_read(data, modulus_start, modulus_length)
)
Expand Down
Loading