/EIP-Notes

Ethereum Improvement Proposal Notes https://eips.ethereum.org/all

Ethereum Improvement Proposal Notes

I've put this off far too long and if your reading this you have too. I finally got sick of putting off sitting down and reading all proposals and taking notes on them (Review/Draft/Stagnant/Withdrawn coming soon). Some of it is word for word but I find typing them out myself helps it stick better. Use to just open them up to reference but no longer. I would start with Meta category for they go through all hard forks, what EIPs were added and any other changes. Then go through EIPs not added via hard fork in Core, Networking and Interface.

Note: I don't plan on doing notes on the ERC section. For most of them, no matter what when reviewing code I'll always have them up for referencing.

Catagory
Meta
Core
Networking
Interface

Meta

Number Title
EIP-606 Hardfork Meta: Homestead
EIP-607 Hardfork Meta: Spurious Dragon
EIP-608 Hardfork Meta: Tangerine Whistle
EIP-609 Hardfork Meta: Byzantium
EIP-779 Hardfork Meta: DAO Fork
EIP-1013 Hardfork Meta: Constantinople
EIP-1679 Hardfork Meta: Istanbul
EIP-1716 Hardfork Meta: Petersburg
EIP-2387 Hardfork Meta: Muir Glacier

Core

Number Title
EIP-2 Homestead Hard-fork Changes
EIP-5 Gas Usage for RETURN and CALL*
EIP-7 DELEGATECALL
EIP-100 Change difficulty adjustment to target mean block time including uncles
EIP-140 REVERT instruction
EIP-141 Designated invalid EVM instruction
EIP-145 Bitwise shifting instructions in EVM
EIP-150 Gas cost changes for IO-heavy operations
EIP-152 Add BLAKE2 compression function F precompile
EIP-155 Simple replay attack protection
EIP-158 State clearing
EIP-160 EXP cost increase
EIP-161 State trie clearing (invariant-preserving alternative)
EIP-170 Contract code size limit
EIP-196 Precompiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128
EIP-197 Precompiled contracts for optimal ate pairing check on the elliptic curve alt_bn128
EIP-198 Big integer modular exponentiation
EIP-211 New opcodes: RETURNDATASIZE and RETURNDATACOPY
EIP-214 New opcode STATICCALL
EIP-225 Clique proof-of-authority consensus protocol
EIP-649 Metropolis Difficulty Bomb Delay and Block Reward Reduction
EIP-658 Embedding transaction status code in receipts
EIP-1014 Skinny CREATE2
EIP-1052 EXTCODEHASH opcode
EIP-1108 Reduce alt_bn128 precompile gas costs
EIP-1234 Constantinople Difficulty Bomb Delay and Block Reward Adjustment
EIP-1283 Net gas metering for SSTORE without dirty maps
EIP-1344 ChainID opcode
EIP-1559 Fee market change for ETH 1.0 chain
EIP-1884 Repricing for trie-size-dependent opcodes
EIP-2028 Transaction data gas cost reduction
EIP-2200 Structured Definitions for Net Gas Metering
EIP-2384 Muir Glacier Difficulty Bomb Delay
EIP-2565 ModExp Gas Cost
EIP-2681 Limit account nonce to 2^64-1
EIP-2718 Typed Transaction Envelope
EIP-2929 Gas cost increases for state access opcodes
EIP-2930 Optional access lists
EIP-3198 BASEFEE opcode
EIP-3529 Reduction in refunds
EIP-3541 Reject new contract code starting with the 0xEF byte
EIP-3554 Difficulty Bomb Delay to December 2021
EIP-3607 Reject transactions from senders with deployed code
EIP-3675 Upgrade consensus to Proof-of-Stake
EIP-4345 Difficulty Bomb Delay to June 2022
EIP-4399 Supplant DIFFICULTY opcode with PREVRANDAO
EIP-5133 Delaying Difficulty Bomb to mid-September 2022

Networking

Number Title
EIP-8 devp2p Forward Compatibility Requirements for Homestead
EIP-627 Whisper Specification
EIP-706 DEVp2p snappy compression
EIP-778 Ethereum Node Records (ENR)
EIP-868 Node Discovery v4 ENR Extension
EIP-2124 Fork identifier for chain compatibility checks
EIP-2364 eth/64: forkid-extended protocol handshake
EIP-2464 eth/65: transaction announcements and retrievals
EIP-2976 Typed Transactions over Gossip

Interface

Number Title
EIP-6 Renaming SUICIDE opcode
EIP-234 Add blockHash to JSON-RPC filter options
EIP-695 Create eth_chainId method for JSON-RPC
EIP-712 Typed structured data hashing and signing
EIP-1193 Ethereum Provider JavaScript API
EIP-2159 Common Prometheus Metrics Names for Clients
EIP-2696 JavaScript request method RPC transport
EIP-2700 JavaScript Provider Event Emitter