Releases: ethereumjs/ethereumjs-common
v1.5.0 - MuirGlacier HF Support
v1.4.0 - Full Istanbul Support
First release with full Istanbul
support regarding parameter introductions/updates and HF block numbers set for supported chains.
Relevant PRs:
- Added
Istanbul
block numbers formainnet
,goerli
andrinkeby
, PR #68 - Added
Petersburg
andConstantinople
fork blocks torinkeby
, PR #71 - Added
EIP-2200
(rebalance net-metered SSTORE gas costs) parameters forIstanbul
, PR #65
Other noteworthy changes:
v1.3.2 - Istanbul Gas Costs / Kovan Genesis
v1.3.1 - Istanbul Gas Costs
Added missing Istanbul gas costs for:
- ChainID opcode (EIP-1344, as base param in
hardforks/chainstart.json
) - Blake2b precompile (EIP-2129/152)
- Calldata gas cost reduction (EIP-2028)
See PR #58.
v1.3.0 - Easier Custom Chain Creation
- Add a static factory method
Custom.forCustomChain
to make working with
custom/private chains easier.
v1.2.1 - Istanbul DRAFT EIP-1108 (Candidate) Support
- Added
Istanbul
HF candidate EIP-1108
(DRAFT
) updatedalt_bn128
precompile gas costs (seehardforks/istanbul.json
)
v1.2.0 - DRAFT Istanbul Support
DRAFT Istanbul Hardfork Support
Draft support for the upcoming Istanbul
hardfork planned for October 2019,
use istanbul
as constructor hardfork
parameter to activate. Parameters
relevant to new EIPs accepted for the HF will be added along subsequent 1.2.x
releases, the finalized HF version will be released along a subsequent 1.x.0
release (likely 1.3.0
).
See new hardforks/istanbul.json
file as well as PR
#51.
v1.1.0 - Petersburg / Goerli Support
Petersburg Hardfork Support
This release now supports the new Petersburg
(aka
constantinopleFix
) HF removing support for EIP 1283. Petersburg
is conceptualized
within the library as a separate delta-containing HF, only removing EIP 1283
support and containing nothing else. It should therefore always be applied
together with the Constantinople
HF, either by using the same block number to
update on both (mainnet
scenario) or applying subsequently on subsequent
block numbers (ropsten
scenario).
HF related changes (from PR #44):
- New
hardforks/petersburg.json
HF file constantinople
andpetersburg
block numbers forropsten
andmainnet
- Updated tests, new
petersburg
related tests
Launched/Final Goerli Configuration Support
The release now supports the final Goerli
cross-client testnet configuration.
Goerli related changes (from PR #48):
- Updated
chains/goerli.json
configuration file (chainId
-> 5,
networkId
-> 5, genesis parameters) - HF block numbers up to
petersburg
hardfork - Updated bootstrap nodes
- Updated
genesisStates/goerli.json
genesis state - Test updates
Other Changes
v1.0.0 - TypeScript Release
First TypeScript
based release of the library (for details see
PR #38),
so release coming with type declaration files and additional type safety! 😄
Breaking Changes
Library Import
TypeScript
handles ES6
transpilation
a bit differently (at the
end: cleaner) than babel
so require
syntax of the library slightly changes to:
const Common = require('ethereumjs-common').default
Genesis State Import/Usage
Import path and usage API of genesis state has changed, see also the
docs on this,
PR #39:
const mainnetGenesisState = require('ethereumjs-common/dist/genesisStates/mainnet')
Or by accessing dynamically:
const genesisStates = require('ethereumjs-common/dist/genesisStates')
const mainnetGenesisState = genesisStates.genesisStateByName('mainnet')
const mainnetGenesisState = genesisStates.genesisStateById(1) // alternative via network Id
Removed hybridCasper
(draft) hardfork
Not likely that anyone has used this, but just in case:
The once anticipated hybridCasper
(draft) hardfork has been removed from the
list of hardforks, see PR #37