-
Notifications
You must be signed in to change notification settings - Fork 772
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
Breaking/Deprecation Tracking Issue #3216
Comments
To align the JSON RPC names we should consider the official (?) spec for the names: https://github.com/ethereum/execution-apis/tree/main/src/eth. (And while we are doing it, check all, so also block, or eth_call methods) |
There is something which I keep noticing, and keep getting confused about: ethereumjs-monorepo/packages/vm/src/runTx.ts Lines 264 to 267 in d8f7544
This is NOT the base fee as in EIP-1559, but it is the "base fee" of the transaction. This is the cost of the tx (21000) plus the data fee (depends on calldata) and extra fee if this is a CREATE transaction. However we also have this |
Linking #3479 (make |
I think this is what EIPs usually refer to as |
Ok, I will open a PR to make these terms more clear :) I'll check the EIPs what terms they use but I think I indeed remember |
Tracking issue for breaking changes and deprecation tasks for an eventual round of breaking releases (roughly August/September 2024). A release round would follow the
v7
releases from #2945 (Summer 2023).Note: We have done so many additional breaking changes since this write-up (which are already completed) that it's not worth to continue to maintain or update this list. There are some remaining tasks to be extracted (in some updated form), otherwise treat this TODO list as rather outdated.
General
Browser / Bundle Size / Performance
events
witheventemitter3
#3330@ethereumjs/util
bytes
module and think what consistent (and eventually more length-strict) strategy we want to persue there, also regarding to the new length-specific helpers newly introduced by @gabrocheleauPrefixedHexString | string
as types, and restrict the type to only acceptPrefixedHexString
. Addressed by refactor: restrict PrefixedHexString types #3510@ethereumjs/common
networkId
(superseeded bychainId
), see Why isnetworkId
explicitly required now? #3046 (might need validation) Common/Monorepo: Remove NetworkId #3513GasPrices
naming #3037getAppliedKey
method introduced by client: save preimages feature #3143 non-optional.@ethereumjs/trie
trie
option ingenWithdrawalsTrieRoot()
andgenTransactionTrieRoot()
mandatory to always have the eventual WASM crypto passed to the trie, see https://github.com/ethereumjs/ethereumjs-monorepo/pull/3192/files#r1448613272 for contextreadable-steam
Dependency Removal/Replacement Options #3218 once the old stream method is deprecated) Stream dependency replacement with walk all value nodes #3519createFromProof()
vsfromProof()
(likely better), also have a look at StateManager in this context)- [ ] Try to revive Web Streams API implementation (needed to be removed for browser compatibility reasons) in some alternative way (external scripts + generally remove all hard-wired stream functionality? Needs to be decided/discussed), also affects SM, see Readable stream analysis refactor #3231 and Remove nodejs import from trie.ts #3280 for contextnot applicable with Stream dependency replacement with walk all value nodes #3519nibblesToBytes
andnibblestoBytes
Breaking Trie/Statemanager -> Consolidate nibbles <-> bytes utility methods #3521@ethereumjs/statemanager
getContractCode
not throw MakegetContractStorage
not throw if the account does not exist #3479@ethereumjs/tx
v
inecsign
(somewhere else?) in a clean way!!!, see also e.g. Add a method wrapper to directly extract the recovery bit value from ecsign. #1607, Util: Add support for EIP-1559 in ecsign() method #1597, Util: Signature ecsign / ecrecover functionality #1961, Util: Remove signature module in favor of direct ethereum-cryptography usage (needs analysis) #1845tx.getBaseFee()
to something which does not use the term "base fee". (Also change the error in VM). See: Breaking/Deprecation Tracking Issue #3216 (comment)@ethereumjs/block
getValidationErrors()
(and the like) in tx, block to something likeisValidWithErrors()
deposits
in main block constructors (move beforeopts
) - see e.g. EIP-6110: Supply Validator Deposits on Chain #3303 (executionWitness
can/should likely remain where it is until Verkle is integrated)@ethereumjs/verkle
StateManager
e.g.) which abstracts away to a greater extend the need for a Verkle/Trie distinction (at least for some places/usages, might also turn out to be only a subset of the functionality)The text was updated successfully, but these errors were encountered: