From 5e546b3abd36dc4e9c19146020dbd8b2f68ed8ec Mon Sep 17 00:00:00 2001 From: Charles Holtzkampf Date: Thu, 24 Oct 2019 11:09:31 +0100 Subject: [PATCH 1/3] add getnetworkinfo RPC getnetworkinfo seems to replace getinfo on later versions. Version > 0.18.0 no longer support getinfo() --- bitcoin/rpc.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bitcoin/rpc.py b/bitcoin/rpc.py index 51f24ac9..0fb964cc 100644 --- a/bitcoin/rpc.py +++ b/bitcoin/rpc.py @@ -516,6 +516,10 @@ def getinfo(self): if 'paytxfee' in r: r['paytxfee'] = int(r['paytxfee'] * COIN) return r + + def getnetworkinfo(self): + """Return a JSON object containing various state info""" + return self._call('getnetworkinfo') def getmininginfo(self): """Return a JSON object containing mining-related information""" From 660518dacd7a7d5e49c4e6961264a1012b766a80 Mon Sep 17 00:00:00 2001 From: Charles Holtzkampf Date: Wed, 30 Oct 2019 08:19:22 +0000 Subject: [PATCH 2/3] add try and except to getinfo() --- bitcoin/rpc.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/bitcoin/rpc.py b/bitcoin/rpc.py index 0fb964cc..97f4f052 100644 --- a/bitcoin/rpc.py +++ b/bitcoin/rpc.py @@ -509,13 +509,17 @@ def getblockhash(self, height): (self.__class__.__name__, ex.error['message'], ex.error['code'])) def getinfo(self): - """Return a JSON object containing various state info""" - r = self._call('getinfo') - if 'balance' in r: - r['balance'] = int(r['balance'] * COIN) - if 'paytxfee' in r: - r['paytxfee'] = int(r['paytxfee'] * COIN) - return r + try: + """Return a JSON object containing various state info""" + r = self._call('getinfo') + if 'balance' in r: + r['balance'] = int(r['balance'] * COIN) + if 'paytxfee' in r: + r['paytxfee'] = int(r['paytxfee'] * COIN) + return r + except: + print("getnetworkinfo replaces getinfo on versions > 0.16.0, please use getnetworkinfo()") + return self._call('getnetworkinfo') def getnetworkinfo(self): """Return a JSON object containing various state info""" From 16a3e9220ef1c44dff85441726d13010fe081912 Mon Sep 17 00:00:00 2001 From: Charles Holtzkampf Date: Mon, 4 Nov 2019 11:54:36 +0000 Subject: [PATCH 3/3] added DepreciationWarning - use python -Wd flags to see warning --- bitcoin/rpc.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/bitcoin/rpc.py b/bitcoin/rpc.py index 97f4f052..4b828dbc 100644 --- a/bitcoin/rpc.py +++ b/bitcoin/rpc.py @@ -37,6 +37,7 @@ import os import platform import sys +import warnings try: import urllib.parse as urlparse except ImportError: @@ -510,16 +511,18 @@ def getblockhash(self, height): def getinfo(self): try: - """Return a JSON object containing various state info""" - r = self._call('getinfo') - if 'balance' in r: - r['balance'] = int(r['balance'] * COIN) - if 'paytxfee' in r: - r['paytxfee'] = int(r['paytxfee'] * COIN) - return r + """Return a JSON object containing various state info""" + r = self._call('getinfo') + if 'balance' in r: + r['balance'] = int(r['balance'] * COIN) + if 'paytxfee' in r: + r['paytxfee'] = int(r['paytxfee'] * COIN) + return r except: - print("getnetworkinfo replaces getinfo on versions > 0.16.0, please use getnetworkinfo()") - return self._call('getnetworkinfo') + warnings.warn( + "getinfo is deprecated from version 0.16.0, use getnetworkinfoinstead", + DeprecationWarning + ) def getnetworkinfo(self): """Return a JSON object containing various state info"""