-
Notifications
You must be signed in to change notification settings - Fork 784
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
Berlin Releases #1151
Berlin Releases #1151
Conversation
Codecov Report
Flags with carried forward coverage won't be shown. Click here to find out more. |
da3a642
to
3e293cb
Compare
91 files changed and counting. Ugh. This is getting really dense. |
…, updated upstream dependency versions
… for browser detection
…eam dependency versions
… updated upstream dependency versions
…upstream dependencies
…updated upstream dependency versions
2e35251
to
a6a155d
Compare
Ok, this is now ready for review. 😄 (which doesn't mean that we could not take 1-3 other changes and/or fixes in, it would just be good if this would be reviewed early on so that this can then easily be re-approved upon an eventual rebase) |
Files changed: 119. Argh. 😁 |
packages/tx/README.md
Outdated
const tx = AccessListEIP2930Transaction.fromTxData(txData, { common }) | ||
``` | ||
|
||
A mechanism to generate access lists from tx data based on a certain network state in not part of this library. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any advice that can be given about how to identify storage slots? i.e associate them with a contract variable?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cgewecke it is possible to derive the storage keys for a contract from its own code (check out this example), however getting the access list for a more complex transaction can be tricky as it can change based on the latest network state.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I definitely think we should introduce some tools to help generate access lists though, I expect that it will be requested if it helps lower the cost of transactions. Perhaps it's better suited at the library layer in web3.js and ethers where there is a connection to an Ethereum node.
Do we think there will be JSON-RPC endpoints or helper tools from wallets like MetaMask to generate contract transactions containing access lists? Etherscan would actually be in a really good position to generate them when creating a tx on their "write contract" page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we'll relatively for sure add this as a feature to the VM - see also #1152 - since this is just dropping out there on the sideline and will likely also have it's use cases, not sure if it is applicable for these kind of usages since there is still this "where to get the state from" problem?
Would this be another case for an RPC-based StateManager
(this was in discussion sometime ago somewhere 😛 ) retrieving all the state by RPC on demand? This would be really cool in general, thinking about this once again (and actually might also work for use cases like MetaMask I would say for generating access lists?).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is huge! Everything LGTM 💯
Really exciting release I think. Looks great!
(Down to just a handful of test failures in the Hardhat upgrade - am not anticipating any last minute surprises coming from over there fwiw.)
looks great! found just a few small typos but other than that great job adding thorough notes to the changelogs and readmes :) |
@ryanio thanks 🥳 , do we want to add your block generation method in the release as well or do you rather want to give this a bit more time? |
Co-authored-by: Ryan Ghods <[email protected]>
BlockBuilder still needs some work #1158, I would then continue here with the planned release schedule and target a release for tomorrow. Can someone give this a final review? 😄 |
(respectively eventually just re-approve, was already reviewed by @cgewecke but I dismissed by applying some typo corrections (these situation are always a bit annoying, on the one side on does not want to leave this in the code, on the other hand it's a bit laborious to have this whole process triggered again. Not sure what's the solution for this)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
No description provided.