-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
State Rent Change A EIP placeholder - State counters contract #2029
Conversation
Never mind, I see it in the rationale. |
EIPS/eip-2029.md
Outdated
`PUSH1 32 PUSH1 0 DUP1 DUP1 CALLDATALOAD SLOAD SWAP1 MSTORE RETURN` | ||
Call to this contract accepts one 32-byte argument, `x`, and returns the value of the storage item [`x`]. | ||
|
||
This contract is deployed using `CREATE2` opcode in such a way that it has the same address on any networks. |
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.
How would this work with CREATE2? Wouldn't you have to create a contract to deploy the contract, and that first contract's address would have to be the same? Would it be simpler to use Nick's method here?
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 was about to suggest this =) This does mean we have to create a signature which can be replayed, right, not an EIP 155 sig? (To my understanding EIP 155 is on wallet level not on protocol level?)
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.
However why not introduce this contract as a system contract at a certain address?
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 do not see why use Nick's method, because CREATE2 just makes it so much more simple (when Nick wrote it, CREATE2 did not exist). As to the "system" contract, we do not really have a notion of a "system" contract yet
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 just don't see how CREATE2 could be used in this instance though. The address for a CREATE2 depends on the address of the creator, and CREATE2 is also an opcode so would have to be done from another contract, whose address depends on the creator's address. So to get a constant CREATE2'd contract address across chains, you'd have to use Nick's method to create the initial contract that creates the state counters contract. Which is more complicated than just using Nick's method.
## Simple Summary | ||
<!--"If you can't explain it simply, you don't understand it well enough." Provide a simplified and layman-accessible explanation of the EIP.--> | ||
A smart contract is deployed on all Ethereum networks (including testnets), with the code that simply reads the slot in its storage specified by the | ||
only parameter. Later, this contract becomes "special" in that Ethereum start writing state counters (number of total transactions, number of accounts, |
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 like how EIP 210 describes how to store these things. I think it is more pure to use the proposed system account here and do a transaction to said contract. Clients themselves can optimize this, but on the definition level this looks more pure to me.
EIPS/eip-2029.md
Outdated
|
||
## Simple Summary | ||
<!--"If you can't explain it simply, you don't understand it well enough." Provide a simplified and layman-accessible explanation of the EIP.--> | ||
A smart contract is deployed on all Ethereum networks (including testnets), with the code that simply reads the slot in its storage specified by the |
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.
You don't have to specify on which network this EIP gets implemented. That's what the Meta is for. It will require the network fork block numbers. You could specify that the contracts have to be active before or at a specific FORK_BLOCKNUMBER
.
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.
Thank you, I wanted to emphasize that the address of that contract will be the same everywhere, so it does not need to be configured differently in different networks. Modified now
EIPS/eip-2029.md
Outdated
|
||
## Abstract | ||
<!--A short (~200 word) description of the technical issue being addressed.--> | ||
It is part of the State Rent roadmap. This particular change introduces a place in the Ethereum state where various state counters can be stored. At 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.
ItThis is part of the State Rent roadmap
How about a display of the roadmap and highlighting this fork in it?
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.
The roadmap is not fixed, and it is going to keep changing, that is why I did not link it here
EIPS/eip-2029.md
Outdated
|
||
## Implementation | ||
<!--The implementations must be completed before any EIP is given status "Final", but it need not be completed before the EIP is accepted. While there is merit to the approach of reaching consensus on the specification and rationale before writing code, the principle of "rough consensus and running code" is still useful when it comes to resolving many discussions of API details.--> | ||
Implementation is envisaged as a transaction that can be posted from any Etheruem address and will cause the deployment of the state counter contract. |
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.
Etheruem Ethereum
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.
Fixed, thank you
EIPS/eip-2029.md
Outdated
`PUSH1 32 PUSH1 0 DUP1 DUP1 CALLDATALOAD SLOAD SWAP1 MSTORE RETURN` | ||
Call to this contract accepts one 32-byte argument, `x`, and returns the value of the storage item [`x`]. | ||
|
||
This contract is deployed using `CREATE2` opcode in such a way that it has the same address on any networks. |
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.
Any network
One 's' too many.
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.
Thank you, fixed
|
||
## Motivation | ||
<!--The motivation is critical for EIPs that want to change the Ethereum protocol. It should clearly explain why the existing protocol specification is inadequate to address the problem that the EIP solves. EIP submissions without sufficient motivation may be rejected outright.--> | ||
Ethereum currently does not have a special place in the state for tracking state counters such as number of transactions or number of accounts. |
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.
Why does it need to be in the state? If a client keeps track of the counters in their database, then shouldn't that be enough?
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.
It needs to be in the state so that one does not need to modify things like snapshot synchronisation. If you just imply it is in the database, but not in the state, snapshot sync needs to also include these data. Having it in the state makes implementation of the counters less intrusive
approach is the impact on the software what is currently coupled with the particular way the state root is constructed. Particularly it affects the software | ||
that deals with merkle proofs derived from the state root. | ||
2. Extended State Oracle ([EIP-2014](https://eips.ethereum.org/EIPS/eip-2014)). Under such proposal, there will be a precompile contract with standardised interface, capable of returning | ||
current values of the counters. However, the actual data being returned by such oracle is not explicitly in the state, and is not Merkelised. It means that all the counters need to be added to the snapshots when the snapshot sync is perform, so they still present in the state, but implicitly. |
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 true, however EIP-2014 also states it could be changed into something with a state. To be discussed later anyway.
I think this is now valid according to EIP-1, lets move discussions to the |
* Automatically merged updates to draft EIP(s) 1898 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679, 233 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Minor updates to EIP-1319 (ethereum#1966) * EIP-1895: Support for an Elliptic Curve Cycle (ethereum#1895) * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Scalable Rewards (ethereum#1973) * added EIP * spacing * reorder * reorder * formats * <> brackets * edit * eip number * renaminng * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1559: Fee market change for ETH 1.0 chain (ethereum#1943) * Automatically merged updates to draft EIP(s) 1884 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Fix authors and type-fields in eip-1559.md (ethereum#1974) * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1344 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 777 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Remove obsolete layer field (ethereum#1978) * Document eip_validator and eip-automerger (ethereum#1977) * EIP-1803: Rename opcodes for clarity (ethereum#1803) * Change the citation format in README to point to EIP-1 * Automatically merged updates to draft EIP(s) 1679, 1803 Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1057 Update progpow test-vectors (ethereum#1855) * Add editors * Automatically merged updates to draft EIP(s) 1155 (ethereum#1993) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#1995) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1775 - App Keys, application specific wallet accounts (ethereum#1775) * Automatically merged updates to draft EIP(s) 1155 (ethereum#1997) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#1998) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 777 (ethereum#1945) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * ERC777: Move to final (ethereum#1999) * Automatically merged updates to draft EIP(s) 1108 (ethereum#1987) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Fix typos (ethereum#1899) * Fixed typos and grammar (ethereum#1847) * Automatically merged updates to draft EIP(s) 1679 (ethereum#1988) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1344 (ethereum#2004) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1108 (ethereum#2005) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2006) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2007) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2008) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * fix github pull request links (ethereum#2000) * Automatically merged updates to draft EIP(s) 1679 (ethereum#1830) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2011) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2012) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2013) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Re-order EIP categories (ethereum#1989) * Automatically merged updates to draft EIP(s) 1679 (ethereum#2016) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2017) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2023) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Call strict gas (ethereum#1950) * CALL with strict gas * fix date * 1930 * update with explicit code change * add link to discussion * update * fix link * EIP-2015: Wallet Update Chain Method (ethereum#2015) * Create eip-2015.md * Include JSON RPC method in title * add requires 155 * update nativeCurrency field for wallet_updateChain * EIP-2015 format review changes * Update EIP-2015 discussions-to link * Automatically merged updates to draft EIP(s) 1679 (ethereum#2034) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 663 (ethereum#2038) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 (ethereum#2043) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 615 (ethereum#2044) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Calldata gas cost reduction (ethereum#2028) * Calldata gas cost reduction Added a draft of EIP to reduce the gas cost of Calldata * changed name to 2028 * Added EIP-2028 to meta eip-1679 * Added discussion url * edited 'motivation' & 'specification' Edited motivation to increase readability. Edited specification to clarify terms. * Automatically merged updates to draft EIP(s) 1155 (ethereum#2049) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1965 Method to check if a chainID is valid at a specific block Number (ethereum#1965) * Run spelling checks on CI (ethereum#2040) * Automatically merged updates to draft EIP(s) 1679, 1965 (ethereum#2047) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 (ethereum#1990) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Add special requirement for mentioning EVM instructions * EIP-1710: URL Format for Web3 Browsers (ethereum#1710) * EIP 1523: Standard for storing insurance policies as extension of ERC-721 token (ethereum#1512) * Automatically merged updates to draft EIP(s) 2028 (ethereum#2052) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EC arithmetics and pairings with runtime definitions (ethereum#1962) * Automatically merged updates to draft EIP(s) 663 (ethereum#2056) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Mention that the header is also called "front matter" in EIP1 (ethereum#2037) * Add EIP-1474 as a requirement to RPC ERCs * Fix Wrong Input Length - ERC165 Example (ethereum#1640) * Wrong input size - noThrowCall ERC165 Input should be 36 bytes (4 signature bytes + 32 bytes parameter) Solidity 5 validates the length of msg.data, reverting on the 32 bytes input, all contracts using the broken 'doesContractImplementInterface' will not be able to read an ERC165 implementation targetting Solidity 5. A legacy-compatible strategy should be defined to make all the "ERC165 readers" sending a 32 bytes sized data compatible with ERC165 contracts compiled targeting this new version of the compiler. A possible solution could be to add a keyword on Solidity to disable the validation of the calldata length. * Add version history section to EIP165 * EIP 1640 -> PR 1640 * Automatically merged updates to draft EIP(s) 1155 (ethereum#2063) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2064) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * State Rent change H placeholder EIP - fixed rent prepayment for all accounts (ethereum#2026) * Fix author fields (ethereum#2065) * Sane limits for certain EVM parameters (ethereum#1985) * sane * some clarifications * remove cruft * some clarifications * propose spec changes * limit the scope to EVM only * more rationale * group affected opcodes by ranges * Rename to EIP-1985 * Add discussion URL to EIP-1985 * Include a reference to EIP106 * Add more rationale * fix typo * Remove unfounded worry * mention timestamp being 64-bit value in Aleth * resolved an TODO item as Rationale entry * Reduced gas cost for static calls made to precompiles (ethereum#2046) * Reduced gas cost for static calls made to precompiles * Rename to EIP-2046 * Add discussion URL * Add 2046 to Istanbul * Fix header * Add draft for ESO (extended state oracle) (ethereum#2014) * Add draft for ESO (extended state oracle) * Add mention of revert to ESO * Add EIP-2014 number and rename file * Add reference to EIP-1959 and EIP-1965 * Add discussions-to URL * Update eip-181.md * Update eip-162.md * State Rent Change A EIP placeholder - State counters contract (ethereum#2029) * Create eip-StateRentACountersContract.md * Update eip-StateRentACountersContract.md * Rename eip-StateRentACountersContract.md to eip-2029.md * Update eip-2029.md * Update eip-2029.md * Fix typos * Make EIP-2014 into a proper link * New Opcode to check if a chainID is part of the history of chainIDs (ethereum#1959) * Automatically merged updates to draft EIP(s) 1679 (ethereum#2055) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Copyright 107 (ethereum#2068) * add copyrights for 107 * use github username * Automatically merged updates to draft EIP(s) 1155 (ethereum#2074) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * State Rent change C draft EIP - Net contract storage size accounting (ethereum#2027) * State Rent change C draft EIP * Update eip-draft_StateRentCnetContractSizes.md * Update eip-draft_StateRentCnetContractSizes.md * Rename eip-draft_StateRentCnetContractSizes.md to eip-2027.md * Update eip-2027.md * Update eip-2027.md * Update eip-2027.md * Quote "block C" properly * Update eip-2027.md * State Rent change B placeholder EIP - net transaction counter (ethereum#2031) * Create eip-draft_StateRentBNetTransactionCounter.md * Update and rename eip-draft_StateRentBNetTransactionCounter.md to eip-2031.md * Update eip-2031.md * Update eip-2031.md * Update eip-2031.md * Fix some typos * Use canonical link to EIP-2029 * Update eip-2031.md * Update eip-2031.md * Stateless Clients: Repricing SLOAD and SSTORE to pay for block proofs (ethereum#2035) * Create eip-draft_StatelessClientGasRepricing.md * Update and rename eip-draft_StatelessClientGasRepricing.md to eip-2035.md * Update eip-2035.md * Update eip-2035.md * Update eip-2035.md * Update eip-2035.md * Update eip-2035.md * Update eip-2035.md * Fix typos * Use canonical links to other EIPs * Update eip-2035.md * Fix link to EIP-2028 * Automatically merged updates to draft EIP(s) 1679 (ethereum#2036) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1930 (ethereum#2076) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1679 (ethereum#2042) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1418 (ethereum#2078) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1108 (ethereum#2067) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2083) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2084) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2085) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1930 (ethereum#2086) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 778 (ethereum#2087) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2088) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2089) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Last call for ERC-1155 (ethereum#2091) * add EIP for particle gas costs (ethereum#2045) * add EIP for fractional gas costs * use EIP number 2045, add references, discussion-to * add EIP-2045 to Istanbul * Formatting * Add ewasm to rationale * Clarify cost reduction examples * Clarify the increase of particles * link to eip-2035, edit for clarity * add reference to eip-2035 * add axic as author * rename title to "particle gas costs", edit ewasm section * fix header * Automatically merged updates to draft EIP(s) 1803 (ethereum#2093) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1803, 663 (ethereum#2094) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1193 (ethereum#2092) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2096) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 778 (ethereum#2097) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2101) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1261 (ethereum#2102) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * fix typo: "as follows" (ethereum#2099) see: https://ell.stackexchange.com/a/31673 * EIP-2003 - EVMC modules for implementations of precompiled contracts (ethereum#2003) * Automatically merged updates to draft EIP(s) 1261 (ethereum#2107) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2108) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2109) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2110) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 2003 (ethereum#2112) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2113) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2114) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2116) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2117) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2118) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1155 (ethereum#2120) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * ERC-1155 Final Status (ethereum#2122) * Automatically merged updates to draft EIP(s) 1344 (ethereum#2079) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Propose to move EIP-695 to last call status (ethereum#1566) * Propose to move EIP-695 to last call status * Add a discussion link * Formatting fix * Fix @sorpaas handle in author field * Use EIP155 formatting for `CHAIN_ID` * Formatting fix for "chain ID" The document had places where we use lowercase "id" and uppercase "ID". This unify them to use uppercase "ID". * Update eip-695.md * Move EIP-695 to Last Call status and add 155 requirement (ethereum#2128) * Update eip-1577.md (ethereum#1670) * Automatically merged updates to draft EIP(s) 1702 (ethereum#2130) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1702 (ethereum#2131) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 695 (ethereum#2133) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1202 (ethereum#2134) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1702 (ethereum#2140) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1702 (ethereum#2141) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Funding ETH1.X through a Developer Block Reward for 18 Months (ethereum#2025) * Automatically merged updates to draft EIP(s) 1702 (ethereum#2149) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP 747: wallet_watchAsset (ethereum#1426) * Initial draft * Add eip-747: watchToken * Update discussion link * Update eip-747 to watchAsset * Add image specification and examples EIP747 * Add asset type error * Respond to feedback * Depends on 1474 * Correct type to standards track * Correct spelling * Add eip images locally (ethereum#2150) * Automatically merged updates to draft EIP(s) 823 (ethereum#2151) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1193 (ethereum#2057) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * ERC-1948: Non-fungible Data Token (ethereum#1948) * first draft * remove boilerplate * fix indentations * typos * ethereum code highlights * moved file to id * syntax * naming * link to erc721 * make interface an interface * typo * better comments * Automatically merged updates to draft EIP(s) 1679, 233 (ethereum#2081) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1702 (ethereum#2152) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Introduced Abandoned status in EIP-1 (ethereum#2051) * Introduced Abandoned status in EIP-1 * Fix typo * EIP-1967: Standard Proxy Storage Slots (ethereum#1967) * Proxy storage slots EIP * Apply suggestions from code review Co-Authored-By: spalladino <spalladino@gmail.com> * Add reference to vyper storage slots * Fix links to EIPs Co-Authored-By: spalladino <spalladino@gmail.com> * Apply suggestions from code review Co-Authored-By: spalladino <spalladino@gmail.com> * Applied suggestions by elopio and nventuro * Add discussions-to * Add EIP number * Rename eip file * Fix type attribute * Use zOS independent hash preimage * Implement suggestion by axic * Automatically merged updates to draft EIP(s) 1474 (ethereum#2155) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1613 (ethereum#2163) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1066 (ethereum#2164) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Mark EIP-158 proper superseded and not replaced (ethereum#2160) * Update eip_validator to 0.8.2 (ethereum#2161) * Fix Markdown formatting in EIP-1186 * Update eip_validator to 0.8.2 * Abandone EIP-1355 "Ethash 1a" (ethereum#1785) * Add information EIP: Common Prometheus metrics (ethereum#2159) * Add common metrics EIP. * Fix spelling error. * Assign EIP number, added more information on what Prometheus does. * Add link to prometheus website for further info. * Fix link. * Fix discussion link. * Switch to standards track - interface instead of informational. * Add motivation. * superseded-by EIP 1 (ethereum#2165) * Automatically merged updates to draft EIP(s) 1702 (ethereum#2167) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1753 - Define a smart contract interface for permits and licences (ethereum#1753) * First draft * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update eip-x.md * Update authors * Update eip-x.md * Rename eip md * Rollback * Rename md * Add copyright * WIP: Re adding specificaiton * Update example solidity * Update eip-1753.md * Update eip-1753.md * Update eip-1753.md * Update eip-1753.md * Update eip-1753.md * Update eip-1753.md * Do not touch eip-X * Fix typo * EIP-1895: Improvements (ethereum#2153) * EIP-1895: Better constants and address range description Address @Arachnid's comments about presenting constants and how an address value is limited. * EIP-1985: Fix a typo * EIP-1985: Use "instructions" instead of "opcodes" * eip-225: mark as final (ethereum#1954) * set EIP875 to last call and correct errors (ethereum#1549) * Automatically merged updates to draft EIP(s) 1571 (ethereum#2168) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 999 (ethereum#2170) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 2159 (ethereum#2174) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1884 (ethereum#2175) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 2028 (ethereum#2176) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1901: Add OpenRPC Service Discovery To JSON-RPC Services (ethereum#1901) * EIP-????: Add OpenRPC Service Discovery To JSON-RPC Services * fix: * fix(openrpc): add openrpc.json to eip assets * fix(openrpc): reference eip asset * Update EIPS/eip-1901.md - document link * Delete openrpc.json * Update eip-1901: move link to spec to top * fix(1901): preamble + author github usernames * fix(1901): add copyright info * fix(1901): add link to eth json rpc spec * fix(1901): type and category in preamble + spelling * fix(1901): motivation section and use vendored assets * fix(1901): add link to multi-geth OpenRPC discovery * fix(1901): change ordering + small fixes * fix(1901): typo * Automatically merged updates to draft EIP(s) 1108 (ethereum#2177) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * Automatically merged updates to draft EIP(s) 1102 (ethereum#2178) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing * EIP-1900 Decentralized Type System for EVM (ethereum#1900) * Automatically merged updates to draft EIP(s) 1884 (ethereum#2180) Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing
…um#2029) * Create eip-StateRentACountersContract.md * Update eip-StateRentACountersContract.md * Rename eip-StateRentACountersContract.md to eip-2029.md * Update eip-2029.md * Update eip-2029.md * Fix typos * Make EIP-2014 into a proper link
When opening a pull request to submit a new EIP, please use the suggested template: https://github.com/ethereum/EIPs/blob/master/eip-X.md
We have a GitHub bot that automatically merges some PRs. It will merge yours immediately if certain criteria are met: