Rethereum 1.13.0 - Gaspar + Krontos Testnet
This is a required update
A network fork will happen on block 1,354,811
EVM Upgrade
In this update we will bring Rethereum EVM upto the version from the Ethereum Shangai update. Because of the EVM update reliance on the Merge fork and child forks thereon we have created our own forks to enable these EVM upgrades on our own chain, this fork will be known as Gaspar.
Testnet
In 1.13 we will enable a testnet on Rethereum with the above EVM upgrade enabled from the start, the testnet will be know as Krontos. The chain id will be 622301.
You can load up the testnet using --krontos
start parameter.
Complete Separation from Ethereum Codebase
Some of the remaining code used in Rethereum would pull from Ethereums github repositories. We have made significant changes for this to no longer be the case, this makes Rethereum code completely self contained.
You may notice that the code is labeled version 1.13.3, we had to do some falsey releases in order to complete the seperation and register the project pkg.go.dev
Change Log:
[Blockchain/Params] Defined Gaspar fork
[Blockchain/Params] Defined Krontos Testnet
[EVM] Enable Merge upgrade
[EVM] Enable Shanghai upgrade
[EVM] Enabled PUSH0 Opcode
[EVM] Enabled SELFDESTRUCT Opcode
[EVM] Enabled SSTORE Opcode
[EVM] Enabled BASEFEE Opcode
[EVM] Enabled PREVRANDAO Opcode
[EVM] Limit the maximum size of initcode to 49152 and apply extra gas cost of 2 for every 32-byte chunk of initcode
[Blockchain/Params] Update chain snapshot to epoch 35
[ALL] Removed all refrences to go-ethereum code and replaced them with go-rethereum.
[Network] Changed hidden hardcoded network ID's to Rethereum network ID, this caused random undebuggable failures for some nodes (fuck you ethereum devs)
[StateDB] Fixed missing key starting with 0xFF
[StateDB] Update fastcache from 3 year old version
[TXPool] Initialize new block transcations map to a known size
[TXPool] Resize pending transcations pool map to a known size
[Events] Initialize submitted transcations map to a known size
[Memory] Initialize memory cached block map to known size
[P2P] Optimize discovery communication.
[EthAPI] eth_call can now be ran on a specific block. Used for backtesting and execution simulation
[Internal] blockchain variables are now atomic
[EthAPI] Fixed crash when requesting a block as soon as it has been mined and not finalized
[TXPool] Moved EIP1559 into a package
[Geth/cmd] Correctly report invalid blocks on importing a chain
[EthAPI] Change blocknumber constants for pendingBlock, latestBlock to correct values.
[CoreState] Removed dead code paths
[Core] Fixed consensys gnark-crypto allowing signature malleability vulnrability CVE-2023-44273
Full Changelog: v1.12.2...v1.13.3