Releases: ethereum/go-ethereum
Release 0.9.30 - Consolation
This is release "Consolation" and addresses the following issues and improvements:
- Optimisations on the VM 1228
- Structured logging
- Program Counter change
- A new RPC layer and added IPC 1200
- Downloader improvements
- GPO (Gas Price Oracle). The GPO advices on gas price. Please refer to the GPO article for more information.
- P2P improvements 1261
- Transaction pool improvement 1260. This issue fixes network load.
- Implemented a new console (
make console
) which communicates over IPC.
For a list of changes included in this release please see Milestone 0.9.30
Release 0.9.28
This is a stability and security fix and is required for all users.
Highlights
- Security issue EC Recover and right padding up to 128
- Downloader security improvements
- Chucking of max size blocks and transactions
- Improved parallelisation of nonce checks during import
- Improved transaction handling
- Automated ARM builds
For a full list of changes check v0.9.26 / v0.9.28
Fork slayer (0.9.26)
This is a mandatory update and helps to improve the network's stability through several upgrade mechanism and download policies.
This release will go down in history as the fork slayer :-)
Olympic Release (0.9.25)
This update fixes two things:
- Hardcode a block's header hash so that when it encounters it in your blockchain revert back the valid parent and from there on get back on the right track. All clients which catch up from anything previous to the invalid block won't have any issue and might not even notice the bad chain.
- Fixes an issue within the Ethereum VM's memory when doing a sub-call (op codes
CALL
&CALLCODE
). When doing a sub-call you reserve a bit of memory for the sub-calls return data and write to that memory region when the sub-call returns. The subtle change is that previously Geth would zero out the memory and then write, now it doesn't zero and write directly. Here's an example of the before and after
Before:
Mem before call = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call = [6,6,0,0,0,0,0,0,0,0]
After:
Mem before call = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call = [6,6,1,1,1,1,1,1,1,1]
This update also includes a re-work of the p2p
dialing mechanism.
Olympic Release (0.9.24)
This update fixes two things:
- Hardcode a block's header hash so that when it encounters it in your blockchain revert back the valid parent and from there on get back on the right track. All clients which catch up from anything previous to the invalid block won't have any issue and might not even notice the bad chain.
- Fixes an issue within the Ethereum VM's memory when doing a sub-call (op codes
CALL
&CALLCODE
). When doing a sub-call you reserve a bit of memory for the sub-calls return data and write to that memory region when the sub-call returns. The subtle change is that previously Geth would zero out the memory and then write, now it doesn't zero and write directly. Here's an example of the before and after
Before:
Mem before call = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call = [6,6,0,0,0,0,0,0,0,0]
After:
Mem before call = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call = [6,6,1,1,1,1,1,1,1,1]
This update also includes a re-work of the p2p
dialing mechanism.
Olympic Release (0.9.23)
This Olympic release comes with fixes in the following areas:
- BUG: fixes for creation transactions.
- FEATURE: AOT DAG generation
- BUG: uncle fix during GPU mining
- BUG: coinbase fix
- FEATURE: parallel nonce checking during block processing
- BUG: downloader fixes and vuln patches
- FEATURE: multi CORS for RPC
- FEATURE:
removedb
implemented for killing your local chain - FEATURE: multiple account unlocks from CLI
- FEATURE: solidity compiler accepts multi-contract source (API change)
Installation instructions
Build instructions for OSX, Windows and Linux can be found here.
Upgrade from <0.9.20
If you have accounts in your wallet that you'd like to keep you need export them first first with the gethkey
tool found here. Download and install and run the following for each of the accounts you'd like to keep:
mkdir -p ~/export_keys
gethkey <account_address> ~/export_keys/account_address
geth account import ~/export_keys/account_address
When you've verified and imported all of your keys rm -rf ~/export_keys
.
Resources
Olympic Release (0.9.21.1)
Olympic release comes with many improvements to the CLI tools and includes a fully programmable JavaScript interface and JavaScript REPL (Read Evaluate Print Loop). We've also added support for solidity using the solidity stand-alone compiler: solc
.
The CLI has seen a massive overhaul in usability and CLI utilities. For a complete list of utils and tools please run geth help
or get help topic
for a detailed description.
We're also in the process of writing a Frontier GitBook. Please note that this book is a work in progress and will serve as the main guide for frontier once released.
Installation instructions
Build instructions for OSX, Windows and Linux can be found here.
Upgrade from <0.9.20
If you have accounts in your wallet that you'd like to keep you need export them first first with the gethkey
tool found here. Download and install and run the following for each of the accounts you'd like to keep:
mkdir -p ~/export_keys
gethkey <account_address> ~/export_keys/account_address
geth account import ~/export_keys/account_address
When you've verified and imported all of your keys rm -rf ~/export_keys
.
If you've been encountering INVALID block #xxxx
run a geth upgradedb
after you've updated (ignore any errors it encounters). When it's done re-run geth as you normally do.
Resources
Olympic Release (0.9.21)
Olympic release comes with many improvements to the CLI tools and includes a fully programmable JavaScript interface and JavaScript REPL (Read Evaluate Print Loop). We've also added support for solidity using the solidity stand-alone compiler: solc
.
The CLI has seen a massive overhaul in usability and CLI utilities. For a complete list of utils and tools please run geth help
or get help topic
for a detailed description.
We're also in the process of writing a Frontier GitBook. Please note that this book is a work in progress and will serve as the main guide for frontier once released.
Installation instructions
Build instructions for OSX, Windows and Linux can be found here.
Upgrade from <0.9.20
If you have accounts in your wallet that you'd like to keep you need export them first first with the gethkey
tool found here. Download and install and run the following for each of the accounts you'd like to keep:
mkdir -p ~/export_keys
gethkey <account_address> ~/export_keys/account_address
geth account import ~/export_keys/account_address
When you've verified and imported all of your keys rm -rf ~/export_keys
.
If you've been encountering INVALID block #xxxx
run a geth upgradedb
after you've updated (ignore any errors it encounters). When it's done re-run geth as you normally do.
Resources
Olympic Release (0.9.20)
Olympic release comes with many improvements to the CLI tools and includes a fully programmable JavaScript interface and JavaScript REPL (Read Evaluate Print Loop). We've also added support for solidity using the solidity stand-alone compiler: solc
.
The CLI has seen a massive overhaul in usability and CLI utilities. For a complete list of utils and tools please run geth help
or get help topic
for a detailed description.
We're also in the process of writing a Frontier GitBook. Please note that this book is a work in progress and will serve as the main guide for frontier once released.
Installation instructions
Build instructions for OSX, Windows and Linux can be found here.
Upgrade from <0.9.20
If you have accounts in your wallet that you'd like to keep you need export them first first with the gethkey
tool found here. Download and install and run the following for each of the accounts you'd like to keep:
mkdir -p ~/export_keys
gethkey <account_address> ~/export_keys/account_address
geth account import ~/export_keys/account_address
When you've verified and imported all of your keys rm -rf ~/export_keys
.
If you've been encountering INVALID block #xxxx
run a geth upgradedb
after you've updated (ignore any errors it encounters). When it's done re-run geth as you normally do.