2b66f0d4590876056ec77f3855299a6e58a8d54c
interfaces we have created. Existing code has the concept of pending servers, where a connection thread is started but has not sent a connection notification, and and interfaces which have received the notification. This separation caused a couple of minor bugs, and given the cleaner semantics of unifying the two I don't think the separation is beneficial. The bugs: 1) When stopping the network, we only stopped the connected interface threads, not the pending ones. This would leave Python hanging on exit if we don't make them daemon threads. 2) start_interface() did not check pending servers before starting a new thread. Some of its callers did, but not all, so it was possible to initiate two threads to one server and "lose" one thread. Apart form fixing the above two issues, unification causes one more change in semantics: we are now willing to switch to a connection that is pending (we don't switch to failed interfaces). I don't think that is a problem: if it times out we'll just switch again when we receive the disconnect notification, and previously the fact that an interface was in the interaces dictionary wasn't a guarantee the connection was good anyway: we might not have processed a pending disconnection notification.
Electrum - lightweight Bitcoin client Licence: GNU GPL v3 Author: Thomas Voegtlin Language: Python Homepage: https://electrum.org/ 1. GETTING STARTED ------------------ To run Electrum from this directory, just do: ./electrum If you install Electrum on your system, you can run it from any directory. If you have pip, you can do: python setup.py sdist sudo pip install --pre dist/Electrum-2.0.tar.gz If you don't have pip, install with: python setup.py sdist sudo python setup.py install To start Electrum from your web browser, see http://electrum.org/bitcoin_URIs.html 2. HOW OFFICIAL PACKAGES ARE CREATED ------------------------------------ python mki18n.py pyrcc4 icons.qrc -o gui/qt/icons_rc.py python setup.py sdist --format=zip,gztar On Mac OS X: # On port based installs sudo python setup-release.py py2app # On brew installs ARCHFLAGS="-arch i386 -arch x86_64" sudo python setup-release.py py2app --includes sip sudo hdiutil create -fs HFS+ -volname "Electrum" -srcfolder dist/Electrum.app dist/electrum-VERSION-macosx.dmg
Description
Languages
Python
89.1%
QML
8.4%
Shell
2%
Dockerfile
0.2%
Java
0.2%
Other
0.1%