Skip to content

More post Prague re-factors #1159

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

Draft
wants to merge 41 commits into
base: forks/prague
Choose a base branch
from

Conversation

gurukamath
Copy link
Collaborator

@gurukamath gurukamath commented Mar 17, 2025

(closes #1126 )
(closes #992 )

What was wrong?

Some of the updates from Prague need to be back-ported to other forks. Also, some planned code refactoring needs to be implemented before the Osaka fork creation.

How was it fixed?

Implement the following planned re-factors / back-ports

  • Update gas variable names to use tx_gas_used_before_refund and tx_gas_used_after_refund
  • Correct the documentation of functions in interpreter.py

Cute Animal Picture

Cute Animals - 1 of 1

gurukamath and others added 30 commits January 21, 2025 16:33
* enable testing for all forks

* catch invalid signatures

* refactor validate_transaction

* define accessed_addresses at the start

* update variable name to BLOB_BASE_FEE_UPDATE_FRACTION

* refund_counter definition

* create encode_receipt function

* create process_system_transaction

* update gas calc

* explicitly define code_address in call*

* fix decode_receipt
SamWilsn and others added 10 commits February 13, 2025 16:34
* refactor blob gas logic

There are parallels between how the regular block gas is handled and how the blob gas is handled. This commit
refactors blob gas canculation to bring them in line with block gas

* create BlockEnvironment and TransactionEnvironment

Create the BlockEnvironment and TransactionEnvironment dataclasses

BlockEnvironment holds data that is chain or block scoped
TransactionEnvironment holds data that is transaction scoped
Message holds data that is specific to a message call

* refactor validate_header

* update t8n

* update evm tracing

* backport changes to cancun

* port to shanghai

* port changes to paris

* port to london

* port berlin

* port istanbul

* port constantinople

* port byzantium

* port spurious_dragon

* port older forks

* fix t8n receipts

* update testing

* process_withdrawals update

* fixes for doc

* remove execution_spec_tests entry

The tests from execution_spec_tests should now be a part of EEST

* use default_factory in BlockOutput

* minor fixes 1

* define current_block_number in block_hash opcode

* rename tx_index to index_in_block

* fix vm test runs
…m#1138)

* validate_transaction now raises InvalidTransaction

* Update src/ethereum/cancun/transactions.py

Co-authored-by: Guruprasad Kamath <[email protected]>

* Update src/ethereum/cancun/transactions.py

Co-authored-by: Guruprasad Kamath <[email protected]>

* Update src/ethereum/cancun/transactions.py

Co-authored-by: Guruprasad Kamath <[email protected]>

* exception specified within InvalidTransaction

* isort formatting issue resolved

* fix issues from static checks

---------

Co-authored-by: Guruprasad Kamath <[email protected]>
Co-authored-by: Guruprasad Kamath <[email protected]>
@gurukamath gurukamath changed the base branch from master to forks/prague March 17, 2025 09:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants