Skip to content

Khazad-dûm (v1.8.14)

Compare
Choose a tag to compare
@karalabe karalabe released this 22 Aug 08:46
· 577 commits to release/1.8 since this release
316fc7e

Geth v1.8.14 is our regular maintenance release, the current one focusing on heavy miner improvements and general polishes throughout the code base. Big shout-out to @rjl493456442 for championing this release and @ppratscher for helping test it.

First up, the newly introduced miner features:

  • Track multiple miner work packages concurrently, permitting miners to start working on an empty block and replace it in the background with a full one, reducing mining delay by 200+ ms on mainnet (#15853, #17323).
  • Insert uncles instantly into active work packages instead of waiting till the next block (#17320, #17469).
  • Recommit active mining work every 3 seconds, maximizing block fullness and miner fees (#17413).
  • Configurable recommit interval with dynamic adjustment in case of system overload (#17444).
  • Support miner push notifications for new work packages via HTTP POST requests (#17347).
  • Support priority mining for local transactions, specifiable via --txpool.locals (#17472).
  • Log block fullness and expected fees for current miner work package (#17416, #17426).
  • Remote mining will use memory mapped ethash DAGs instead of caches (#17405).
  • Clean up miner CLI flags and deprecate old ones (#17402).

Note, there are two minor breaking changes wrt mining: 1) remote mining requires the --mine flag from now on and will not automatically start on a eth_getWork request; 2) --mine will not start a CPU miner, you need to explicitly specify --miner.threads=N in addition.

Other smaller features:

  • Light client checkpoint support for Rinkeby and Clique in general to avoid long sync times (#17466).
  • Light client CHT and log bloom indexers are supported in light client mode too (16534, #17419, 17465).
  • Support trusted peer management (addition/removal) via RPC API function calls (#16333).
  • Support specifying the block gas limit for simulated test chains (minor API break) (#17358).
  • Support specifying pubkey identity files into puppeth connection strings (#17407).
  • Gracefully shut down puppeth instances when deploying new versions (#17311).
  • Add missing bn256 license, release package under BSD-3 (#17451).

Noteworthy bugfixes:

  • Fix a trie GC error in the transaction tracer that occasionally resulted in panics (#17357).
  • Fix a transaction chain tracing panic if an invalid parametrization was specified (#17460).
  • Fix a crash in the mobile framework when setting a transaction recipient to nil (#17310).
  • Fix the alltools cross compiled bundles to properly build every binary (#17288).
  • Fix a puppeth nil panic caused by non responsive remote servers (#17412).
  • Update Constantinople CREATE2 contract formula to the new spec (#17393).
  • Break accidental PPA dependency of Geth -> Swarm (#17425).
  • Fix compilation issues on Go 1.11 (#17368, #17467).

For a full rundown of the changes please consult the Geth 1.8.14 release milestone.

Geth binaries and mobile libraries are available on the Geth download page.


This release contains Swarm v0.3.2, which among many bugfixes features:

  • Access control to content in Swarm using password or Elliptic Curve keys (#17404).
  • Updated Swarm bootnodes (#17414).
  • MRU panic fix (#17313).

You can download stable versions of Swarm using the ethereum-swarm debian package through the well known Ethereum PPA repository.

Swarm binaries are available on the Swarm download page.