You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

186 lines
7.1 KiB

===========
ChangeLog
===========
.. note:: It is strongly recommended you upgrade to Python 3.7, which
fixes bugs in asyncio that caused an ever-growing open file count
and memory consumption whilst serving clients. Those problems
should not occur with Python 3.7.
Version 1.7.2 (01 Aug 2018)
============================
* fix `#538`_
Version 1.7.2 (29 Jul 2018)
============================
* require aiorpcX 0.5.9; 0.5.8 didn't work on Python 3.7
Version 1.7.1 (28 Jul 2018)
============================
* switch to aiorpcX 0.5.8 which implements some curio task management
primitives on top of asyncio that make writing correct async code
much easier, as well as making it simpler to reason about
* use those primitives to restructure the peer manager, which is now
fully concurrent again, as well as the block processor and
controller
* fix `#534`_ introduced in 1.7
* minor coin tweaks (ghost43, cipig)
Version 1.7 (25 Jul 2018)
==========================
* completely overhauled mempool and address notifications
implementation. Cleaner and a lot more efficient, especially for
initial synchronization of the mempool. Mempool handling is fully
asynchronous and doesn't hinder client responses or block
processing.
* peer discovery cleaned up, more work remains
* cleaner shutdown process with clear guarantees
* aiohttp min version requirement raised to 2.0
* onion peers are ignored if no tor proxy is available
* add Motion coin (ocruzv), MinexCoin (joesixpack)
Version 1.6 (19 July 2018)
===========================
* implement :ref:`version 1.4` of the protocol, with benefit for light
clients, particularly mobile
* implement header proofs and merkle caches
* implement :func:`blockchain.transaction.id_from_pos` (ghost43)
* large refactoring of session and controller classes
* recent blocks are now stored on disk. When backing up in a reorg
ElectrumX uses these rather than asking the daemon for the blocks --
some daemons cannot correctly handle orphaned block requests after
a reorg. Fixes `#258`_, `#315`_, `#479`_
* minor fixes: nijel
Version 1.5.2
=============
* package renamed from elctrumX-kyuupichan to electrumX
* split merkle logic out into lib/merkle.py
* fix `#523`_ for daemons based on older releases of core
Version 1.5.1
=============
Fixes a couple of issues found in 1.5 after release:
* update peer discovery code for :ref:`version 1.3` of the protocol
* setup.py would not run in a clean environment (e.g. virtualenv)
* logging via aiorpcX didn't work with the logging hierarchy updates
* log Python interpreter version on startup
Version 1.5
===========
.. note:: The two main scripts, :file:`electrumx_server` and
:file:`electrumx_rpc` were renamed to drop the `.py` suffix. You
will probably need to update your run script accordingly.
* support :ref:`version 1.3` of the protocol
* increase minimum supported protocol version to :ref:`version 1.1`
* split out history handling in preparation for new DB format
* force close stubborn connections that refuse to close gracefully
* RPC getinfo returns server version (erasmospunk)
* add new masternode methods; document them all (elmora-do)
* make electrumx a Python package (eukreign)
* hierarchical logging, Env to take a coin class directly,
server_listening event (eukreign)
* decred coin removed as mainnet does not sync
* issues fixed: `#414`_, `#443`_, `#455`_, `#480`_, `#485`_, `#502`_,
`#506`_, `#519`_ (wakiyamap)
* new or updated coins: Feathercoin (lclc), NewYorkCoin Testnet(nicovs),
BitZeny (wakiyamap), UFO (bushstar), GAME (cipig), MAC (nico205),
Xuez (ddude), ZCash (wo01), PAC (elmora-do), Koto Testnet (wo01),
Dash Testnet (ser), BTG all nets (wilsonmeier), Polis + ColossusXT +
GoByte + Monoeci (cronos-polis), BitcoinCash Regtest (eukreign)
* minor tweaks: romanz, you21979, SuBPaR42, sangaman, wakiyamap, DaShak
Version 1.4.3
=============
* Fix `#442`_.
Version 1.4.2
=============
* proxy remote IP reported properly if :envvar:`FORCE_PROXY` is set.
Fixes `#301`_.
* requires aiorpcx 0.5.5
Version 1.4.1
=============
* minor bugfixes - cleaner shutdown; group handling
* set PROTOCOL_MIN to 1.0; this will prevent 2.9.x clients from connecting
and encourage upgrades to more recent clients without the security hole
* requires aiorpcx 0.5.4
Version 1.4
===========
* switch to `aiorpcX <https://github.com/kyuupichan/aiorpcX>`_ for all
networking, ``JSON RPC`` and proxy handling
* proxy detection improvements
* `documentation <https://electrumx.readthedocs.io/>`_ rewrite
* new environment variable :envvar:`LOG_FORMAT` to control logging format
* new environment variable :envvar:`DROP_CLIENT` to cut off unsupported
client software
* coin updates: Litecoin (pooler), bitbayd (kongeo), BTG (wilsonmeier),
danny91, wakiyamap, snowgem, Dash (theLazier), fujicoin
* new coins: Decred (cipherzzz), axe (-k),
* typo fixes (dax, romanz)
.. note:: the Dash-specific undocumented ``masternode.subscribe()``
RPC call was not following the JSON RPC spec; this was shown up by
the switch to aiorpcX. I had to modify the code but it may break
Dash clients.
The Decred implementation doesn't work on mainnet; I will remove it
if this remains unfixed.
Version 1.3
===========
* Switch to :ref:`version 1.2` of the protocol.
:func:`mempool.get_fee_histogram` implementation contributed by ecdsa,
verbose mode of :func:`blockchain.transaction.get` by gdassori.
* :func:`blockchain.scripthash.listunspent` now takes into account mempool
spends and receipts.
* Improved client notification handling.
* Wait for mempool to fully sync before serving.
* Documentation moved to `readthedocs.io
<https://electrumx.readthedocs.io/>`_. Rewritten and improved
protocol documentation.
* new/updated coins: Chips (cipig), Feathercoin (lclc), Zclassic(heyrhett),
Dash (thelazier), NYC (xarakas), Koto (wo01), BitcoinZ (cipig), BitCore
(cipig), Fujicoin (fujicoin), Bitcoin Atom (erasmospunk), Deanrius (carsenk),
SNG (blackjok3rtt).
* Minor fixes and improvements: duckartes, blin00, bauerj,
erasmospunk, SomberNight, romanz.
**Neil Booth** kyuupichan@gmail.com https://github.com/kyuupichan
bitcoincash:qzxpdlt8ehu9ehftw6rqsy2jgfq4nsltxvhrdmdfpn
.. _#258: https://github.com/kyuupichan/electrumx/issues/258
.. _#301: https://github.com/kyuupichan/electrumx/issues/301
.. _#315: https://github.com/kyuupichan/electrumx/issues/315
.. _#414: https://github.com/kyuupichan/electrumx/issues/414
.. _#442: https://github.com/kyuupichan/electrumx/issues/442
.. _#443: https://github.com/kyuupichan/electrumx/issues/443
.. _#455: https://github.com/kyuupichan/electrumx/issues/455
.. _#479: https://github.com/kyuupichan/electrumx/issues/479
.. _#480: https://github.com/kyuupichan/electrumx/issues/480
.. _#485: https://github.com/kyuupichan/electrumx/issues/485
.. _#502: https://github.com/kyuupichan/electrumx/issues/50
.. _#506: https://github.com/kyuupichan/electrumx/issues/506
.. _#519: https://github.com/kyuupichan/electrumx/issues/519
.. _#523: https://github.com/kyuupichan/electrumx/issues/523
.. _#534: https://github.com/kyuupichan/electrumx/issues/534
.. _#538: https://github.com/kyuupichan/electrumx/issues/538