Browse Source

pylightning: Fix the compat of `txprepare`

travis-debug
trueptolemy 6 years ago
committed by neil saitug
parent
commit
24575c9fa4
  1. 23
      contrib/pylightning/lightning/lightning.py

23
contrib/pylightning/lightning/lightning.py

@ -891,7 +891,19 @@ class LightningRpc(UnixDomainSocketRpc):
return self.call("withdraw", payload) return self.call("withdraw", payload)
def txprepare(self, outputs, feerate=None, minconf=None, utxos=None): def _deprecated_txprepare(self, destination, satoshi, feerate=None, minconf=None):
warnings.warn("txprepare now takes output arg: expect removal"
" in Mid-2020",
DeprecationWarning)
payload = {
"destination": destination,
"satoshi": satoshi,
"feerate": feerate,
"minconf": minconf,
}
return self.call("txprepare", payload)
def txprepare(self, *args, **kwargs):
""" """
Prepare a bitcoin transaction which sends to [outputs]. Prepare a bitcoin transaction which sends to [outputs].
The format of output is like [{address1: amount1}, The format of output is like [{address1: amount1},
@ -901,6 +913,13 @@ class LightningRpc(UnixDomainSocketRpc):
Outputs will be reserved until you call txdiscard or txsend, or Outputs will be reserved until you call txdiscard or txsend, or
lightningd restarts. lightningd restarts.
""" """
if 'destination' in kwargs or 'satoshi' in kwargs:
return self._deprecated_txprepare(*args, **kwargs)
if not isinstance(args[0], list):
return self._deprecated_txprepare(*args, **kwargs)
def _txprepare(outputs, feerate=None, minconf=None, utxos=None):
payload = { payload = {
"outputs": outputs, "outputs": outputs,
"feerate": feerate, "feerate": feerate,
@ -909,6 +928,8 @@ class LightningRpc(UnixDomainSocketRpc):
} }
return self.call("txprepare", payload) return self.call("txprepare", payload)
return _txprepare(*args, **kwargs)
def txdiscard(self, txid): def txdiscard(self, txid):
""" """
Cancel a bitcoin transaction returned from txprepare. The outputs Cancel a bitcoin transaction returned from txprepare. The outputs

Loading…
Cancel
Save