Browse Source

Merge branch 'master' into devel

patch-2
Neil Booth 7 years ago
parent
commit
7f28677549
  1. 12
      docs/changelog.rst
  2. 2
      docs/conf.py
  3. 2
      electrumx/__init__.py
  4. 6
      electrumx/server/block_processor.py
  5. 4
      electrumx/server/controller.py
  6. 4
      setup.py

12
docs/changelog.rst

@ -8,8 +8,15 @@
should not occur with Python 3.7.
Version 1.8.1 (in development)
==============================
Version 1.8.2 (09 Aug 2018)
===========================
* require aiorpcX 0.7.1 which along with an ElectrumX change restores clean
shutdown and flush functionality, particularly during initial sync
* fix `#564`_
Version 1.8.1 (08 Aug 2018)
===========================
* require aiorpcX 0.7.0 which fixes a bug causing silent shutdown of ElectrumX
* fix `#557`_, `#559`_
@ -206,3 +213,4 @@ bitcoincash:qzxpdlt8ehu9ehftw6rqsy2jgfq4nsltxvhrdmdfpn
.. _#538: https://github.com/kyuupichan/electrumx/issues/538
.. _#557: https://github.com/kyuupichan/electrumx/issues/557
.. _#559: https://github.com/kyuupichan/electrumx/issues/559
.. _#564: https://github.com/kyuupichan/electrumx/issues/564

2
docs/conf.py

@ -15,7 +15,7 @@
import os
import sys
sys.path.insert(0, os.path.abspath('..'))
VERSION="ElectrumX 1.8.1"
VERSION="ElectrumX 1.8.2"
# -- Project information -----------------------------------------------------

2
electrumx/__init__.py

@ -1,4 +1,4 @@
version = 'ElectrumX 1.8.2-dev'
version = 'ElectrumX 1.8.3-dev'
version_short = version.split()[-1]
from electrumx.server.controller import Controller

6
electrumx/server/block_processor.py

@ -184,8 +184,10 @@ class BlockProcessor(electrumx.server.db.DB):
# completes the data will be flushed and then we shut down.
# Take the state lock to be certain in-memory state is
# consistent and not being updated elsewhere.
async with self.state_lock:
return await asyncio.shield(run_in_thread(func, *args))
async def run_in_thread_locked():
async with self.state_lock:
return await run_in_thread(func, *args)
return await asyncio.shield(run_in_thread_locked())
async def _maybe_flush(self):
# If caught up, flush everything as client queries are

4
electrumx/server/controller.py

@ -80,8 +80,8 @@ class Controller(ServerBase):
'''Start the RPC server and wait for the mempool to synchronize. Then
start serving external clients.
'''
if not (0, 7) <= aiorpcx_version < (0, 8):
raise RuntimeError('aiorpcX version 0.7.x required')
if not (0, 7, 1) <= aiorpcx_version < (0, 8):
raise RuntimeError('aiorpcX version 0.7.x required with x >= 1')
env = self.env
min_str, max_str = env.coin.SESSIONCLS.protocol_min_max_strings()

4
setup.py

@ -1,5 +1,5 @@
import setuptools
version = '1.8.1'
version = '1.8.2'
setuptools.setup(
name='electrumX',
@ -12,7 +12,7 @@ setuptools.setup(
# "blake256" package is required to sync Decred network.
# "xevan_hash" package is required to sync Xuez network.
# "groestlcoin_hash" package is required to sync Groestlcoin network.
install_requires=['aiorpcX>=0.7,<0.8', 'attrs',
install_requires=['aiorpcX>=0.7.1,<0.8', 'attrs',
'plyvel', 'pylru', 'aiohttp >= 2'],
packages=setuptools.find_packages(include=('electrumx*',)),
description='ElectrumX Server',

Loading…
Cancel
Save