Releases: ethereum/go-ethereum
Peachest (v1.5.8)
Geth v1.5.8 is a patch release to address bugs and annoyances. For a full rundown of the changes please see the 1.5.8 milestone.
Notable changes:
- Gas estimation now does binary search to find the right amount of gas even in complex refund conditions where the required gas is higher that the final consumption. (#3587)
- ECDSA signing uses a deterministic nonce. This change affects transaction signing. (#3561)
- A new developer tool,
cmd/wnode
, allows testing the Whisper v5 protocol. (#3580)
Binaries and mobile libraries are available on our download page.
Peacher (v1.5.7)
This is a bug fix release that resolves several regressions related to hex handling in the RPC API.
See the 1.5.7 milestone for more details.
There are a few other changes in this release:
- The geth console now uses web3.js v0.18.1 (#3545)
--olympic
is gone (#3553)- A hang in the light client is resolved (#3568)
As always, you can install/update via your favorite package manager, or download pre-built binaries from our downloads page at https://geth.ethereum.org/downloads/
Peach (v1.5.6)
Geth 1.5.6 - Peach (:peach:) is a refactor and clean up (plumping) release.
This release also improves the EVMs call stack (#3378) and improves the overal EVM performance by 40% and is a pre-patch for the next 64bit gas counting PR. It will also allow for unmetered EVM calls for non-consensus critical execution (e.g. eth_call
), however at this point this has not yet been integrated.
Feature(s)
- Support for swarm CORS headers #3388
Bug fix(es)
- Ropsten chain dump file import fix #3515
- Allow zero priced txs #3454
- RPC APIs no longer accept hex values without 0x prefix. #3475
- Fixed hex handling for signing functions #3453
- Enforce chain ancestry and fixed future block imports #3433
eth_compileSolidity
once again produces identical results for each compilation #3522- Error reporting of the Swarm HTTP API is improved #3468 #3469 #3470
Go API Changes
vm.Log
has moved to core/types to reduce dependencies of package ethclient. #3518types.SignECDSA
is now calledtypes.SignTx
. TheSignECDSA
method ofTransaction
has been removed. #3516- Go functions dealing with signatures now expect a V value of 0 or 1.
crypto.SignEthereum
and related APIs have been removed. You can convert the signature to ethereum format with a V value of 27 or 28 usingsig[64] += 27
. #3455 - accounts/abi handles more Solidity types. #3403 #3464 #3533
Binaries are available on our download page
Doesn't look like anything to me (1.5.5)
Geth 1.5.5 is a patch release, mostly fixing bugs and annoyances.
The brave soul/sole feature of the release is support for exporting the blockchain to- and importing it from gzipped data streams (#3427) too. This can be useful for private network development purposes to back up and restore snapshots of the chain and for debugging/testing purposes. You can do compressed export/import operation simply via specifying a chain output file name ending in .gz
.
The built in netstats client was fixed to report a few infos that were not sent to the netstats server in the previous release due to an oversight (#3370, #3373, #3390). This should help sort out the issues seen on the netstats page that certain charts had missing data in them. Further it adds support for historical data queries that are relevant mostly for private netstats servers with only Geth nodes reporting (#3425).
A few data race issues were fixed in the transaction pool (#3412, #3429) that should help with some duplicate nonce allocations during heavy/parallel transaction publishes; and in the miner (#3431, #3430) that were harmless, just found and fixed. The tracking of mined but not yet conformed blocks was reworked to make it nicer and stabler (if by any chance you relied on these logs having a certain format, be advised that they have changed slightly).
The release fixes a bug in the Windows installer that occasionally corrupted the PATH
environment variable (#3419); and contains a batch of tweaks and fixes for the light client (#3413) and swarm (3421).
As of 13th December, Canonical deprecated Ubuntu Wily and dropped support for building and distributing launchpad PPA packages for that version of their OS. As a result, we had to remove those PPA builds from out build service too (#3439). However, you can still download bundles binaries from our downloads page which will work on any Linux distribution (based on libc).
Beside the above, a handful of minor patches were also included in theis release. For a full rundown, please see the 1.5.5 milestone page.
Binaries are available on our downloads page.
PS: Honorable mention goes to Razvan, Viorel and Vlad of the Ethereum Cluj meetup for helping find 5 of the bugs fixed above and providing the motivation for 3 awesome features planned for the next release ;)
Stat it (v1.5.4)
This release fixes minor bugs and adds exciting features.
New Features
Geth now includes a built-in netstats reporter. Use --ethstats "<nodename>:<secret>@ethstats.net"
to get listed on ethstats.net. (#3336) Assignment: find secret Skype room with ethstats password 😉
Network communication can now be restricted to a list of IP subnetworks. This feature is intended for private chains (and meetups!). For example, geth --netrestrict 192.168.0.0/16
only allows connections in the commonly used LAN range. (#3325)
RPC filters can now filter logs in the pending block. (#3219)
Fixed Bugs
- Two bugs in ethclient were squashed. (#3330, #3328)
- go-ethereum should once again build with git 1.7 and later. (#3352)
- For the full list of changes, see the 1.5.4 milestone.
Binaries are available on our download page
Note About Go API Freeze
We originally planned to freeze the Go API of certain packages by the 1.5.4 release. We will delay the
freeze by a couple of versions because we're still discovering edge cases as we continue to build
libraries and apps on top of it.
Touch Revert (v1.5.3)
This release fixes the consensus failure that occurred at block 2686351.
Geth was failing to revert empty account deletions when the transaction causing the
deletions of empty accounts ended with an an out-of-gas exception. An additional issue
was found in Parity, where the Parity client incorrectly failed to revert empty account
deletions in a more limited set of contexts involving out-of-gas calls to precompiled
contracts; the new Geth behaviour matches Parity's, and empty accounts will cease to be a
source of concern in general in about one week once the state clearing process finishes.
Binaries are available on our download page
Ropsten Testnet
With 1.5.3 --testnet
now selects the Ropsten network. If you have a blockchain database
for the Morden network, run geth --testnet removedb
to remove it.
Cry uncle (v1.5.2)
This release fixes a regression that caused geth to fail to full sync past the previous (EIP150) hard fork at block number 2463000.
- Fix a regression that caused the uncle on block 2463002 to be mistakenly determined to be invalid.
1.5.1 Release notes
This release fixes typo that set the EIP155 hard fork block to zero in --testnet mode.
For other changes in this release, please see the 1.5.1 milestone.
1.5.0 Release notes
Geth 1.5 contains about 8 months of work and includes many new features and fixes. The
most prominent features include:
- Ethereum hard fork No. 4 containing EIP155 (replay
protection), EIP161 (state clearing), and EIP170 (code size limit). - Improvements to the RPC API (see below)
- Initial release of the stable Go API, iOS and Android support. APIs are released as a
preview and will receive more changes in the upcoming weeks. We expect to freeze certain
Go APIs in the 1.5.4 release.
For a full rundown and a more detailed post about the changes please see the Whoa ... Geth 1.5.
This release overhauls the build infrastructure. Release packages are now built on Travis,
AppVeyor and CircleCI. Archives are available from geth.ethereum.org
Database Upgrade
The 1.5.0 release changes the structure of the blockchain database. Geth will upgrade the database
during normal operation, but you cannot revert to the previous 1.4.x releases. If you
do want to revert, you'll need to keep a backup of the chaindata directory or resync.
Changes to the RPC API
- Breaking Change:
eth_sign
prepends a known string to the input and hashes the
message on the server side. See PR #2940 for more information. - We have also added
personal_sign
andpersonal_recover
. - Block responses now include the
mixDigest
. - Transaction responses include
v
,r
ands
values. - In receipt responses, the
root
field is now prefixed with0x
. personal_importRawKey
makes it possible to import an unencrypted private key via RPC.eth_getRawTransaction
returns the RLP encoding of a transaction.debug_traceTransaction
can filter the EVM through an arbitrary JavaScript map/reduce
function on the server side. See documentation for more details.- You can subscribe to real time events when using the WebSocket and IPC
transports. See Pub/Sub documentation for more details.
Changes for Go Developers (and people building from git)
- Go dependencies are now vendored using the
vendor/
directory. If you use Go 1.5 or Go 1.6, you
need to setGO15VENDOREXPERIMENT=1
in your environment. - The
develop
branch is deprecated. All development will happen on themaster
branch.
This makes it easier for you to get the latest changes. We will continue to keep the
develop branch in sync with master for one more month to ease the transition. - If you want to stick to stable releases only, please use the
release/1.5
branch. - Releases will happen more frequently (promise).
Experimental Features
Note that these features are highly experimental. Expect bugs and breakage while we
stabilise them over the next couple of releases.
- Geth can now run in light client mode with the
--light
flag. Light client mode syncs
recent block headers and fetches state values on demand. Note that very few light client
servers are available yet. You too can be a server using the--lightserv
flag. - The Swarm daemon (
bzzd
) and associated helper tools are included and somewhat
functional. - Whisper v5 PoC code is included in the repository, but not enabled yet.
- You can now use go-ethereum as a library in Android (Java) and iOS (ObjC/Swift)
projects.abigen
has gained preliminary support for creating Java bindings to Ethereum
contracts.
Please report any issues you encounter.
You can find GPG-signed binaries for all supported platforms on https://geth.ethereum.org/downloads.
Let There Be Less Typos (v1.5.1)
This release fixes typo that set the EIP155 hard fork block to zero in --testnet mode.
For other changes in this release, please see the 1.5.1 milestone.
1.5.0 Release notes
Geth 1.5 contains about 8 months of work and includes many new features and fixes. The
most prominent features include:
- Ethereum hard fork No. 4 containing EIP155 (replay
protection), EIP161 (state clearing), and EIP170 (code size limit). - Improvements to the RPC API (see below)
- Initial release of the stable Go API, iOS and Android support. APIs are released as a
preview and will receive more changes in the upcoming weeks. We expect to freeze certain
Go APIs in the 1.5.4 release.
For a full rundown and a more detailed post about the changes please see the Whoa ... Geth 1.5.
This release overhauls the build infrastructure. Release packages are now built on Travis,
AppVeyor and CircleCI. Archives are available from geth.ethereum.org
Database Upgrade
The 1.5.0 release changes the structure of the blockchain database. Geth will upgrade the database
during normal operation, but you cannot revert to the previous 1.4.x releases. If you
do want to revert, you'll need to keep a backup of the chaindata directory or resync.
Changes to the RPC API
- Breaking Change:
eth_sign
prepends a known string to the input and hashes the
message on the server side. See PR #2940 for more information. - We have also added
personal_sign
andpersonal_recover
. - Block responses now include the
mixDigest
. - Transaction responses include
v
,r
ands
values. - In receipt responses, the
root
field is now prefixed with0x
. personal_importRawKey
makes it possible to import an unencrypted private key via RPC.eth_getRawTransaction
returns the RLP encoding of a transaction.debug_traceTransaction
can filter the EVM through an arbitrary JavaScript map/reduce
function on the server side. See documentation for more details.- You can subscribe to real time events when using the WebSocket and IPC
transports. See Pub/Sub documentation for more details.
Changes for Go Developers (and people building from git)
- Go dependencies are now vendored using the
vendor/
directory. If you use Go 1.5 or Go 1.6, you
need to setGO15VENDOREXPERIMENT=1
in your environment. - The
develop
branch is deprecated. All development will happen on themaster
branch.
This makes it easier for you to get the latest changes. We will continue to keep the
develop branch in sync with master for one more month to ease the transition. - If you want to stick to stable releases only, please use the
release/1.5
branch. - Releases will happen more frequently (promise).
Experimental Features
Note that these features are highly experimental. Expect bugs and breakage while we
stabilise them over the next couple of releases.
- Geth can now run in light client mode with the
--light
flag. Light client mode syncs
recent block headers and fetches state values on demand. Note that very few light client
servers are available yet. You too can be a server using the--lightserv
flag. - The Swarm daemon (
bzzd
) and associated helper tools are included and somewhat
functional. - Whisper v5 PoC code is included in the repository, but not enabled yet.
- You can now use go-ethereum as a library in Android (Java) and iOS (ObjC/Swift)
projects.abigen
has gained preliminary support for creating Java bindings to Ethereum
contracts.
Please report any issues you encounter.
You can find GPG-signed binaries for all supported platforms on https://geth.ethereum.org/downloads.
Let There Be Light (v1.5.0)
Geth 1.5 contains about 8 months of work and includes many new features and fixes. The
most prominent features include:
- Ethereum hard fork No. 4 containing EIP155 (replay
protection), EIP161 (state clearing), and EIP170 (code size limit). - Improvements to the RPC API (see below)
- Initial release of the stable Go API, iOS and Android support. APIs are released as a
preview and will receive more changes in the upcoming weeks. We expect to freeze certain
Go APIs in the 1.5.4 release.
For a full rundown and a more detailed post about the changes please see the Whoa ... Geth 1.5.
This release overhauls the build infrastructure. Release packages are now built on Travis,
AppVeyor and CircleCI. Archives are available from geth.ethereum.org
Database Upgrade
The 1.5.0 release changes the structure of the blockchain database. Geth will upgrade the database
during normal operation, but you cannot revert to the previous 1.4.x releases. If you
do want to revert, you'll need to keep a backup of the chaindata directory or resync.
Changes to the RPC API
- Breaking Change:
eth_sign
prepends a known string to the input and hashes the
message on the server side. See PR #2940 for more information. - We have also added
personal_sign
andpersonal_recover
. - Block responses now include the
mixDigest
. - Transaction responses include
v
,r
ands
values. - In receipt responses, the
root
field is now prefixed with0x
. personal_importRawKey
makes it possible to import an unencrypted private key via RPC.eth_getRawTransaction
returns the RLP encoding of a transaction.debug_traceTransaction
can filter the EVM through an arbitrary JavaScript map/reduce
function on the server side. See documentation for more details.- You can subscribe to real time events when using the WebSocket and IPC
transports. See Pub/Sub documentation for more details.
Changes for Go Developers (and people building from git)
- Go dependencies are now vendored using the
vendor/
directory. If you use Go 1.5 or Go 1.6, you
need to setGO15VENDOREXPERIMENT=1
in your environment. - The
develop
branch is deprecated. All development will happen on themaster
branch.
This makes it easier for you to get the latest changes. We will continue to keep the
develop branch in sync with master for one more month to ease the transition. - If you want to stick to stable releases only, please use the
release/1.5
branch. - Releases will happen more frequently (promise).
Experimental Features
Note that these features are highly experimental. Expect bugs and breakage while we
stabilise them over the next couple of releases.
- Geth can now run in light client mode with the
--light
flag. Light client mode syncs
recent block headers and fetches state values on demand. Note that very few light client
servers are available yet. You too can be a server using the--lightserv
flag. - The Swarm daemon (
bzzd
) and associated helper tools are included and somewhat
functional. - Whisper v5 PoC code is included in the repository, but not enabled yet.
- You can now use go-ethereum as a library in Android (Java) and iOS (ObjC/Swift)
projects.abigen
has gained preliminary support for creating Java bindings to Ethereum
contracts.
Please report any issues you encounter.
You can find GPG-signed binaries for all supported platforms on https://geth.ethereum.org/downloads.