Browse Source

Merge JoinMarket-Org/joinmarket-clientserver#1390: jmbitcoin: eliminate dependency on urldecode

5b8ef40bd6 jmbitcoin: eliminate dependency on urldecode (Matt Whitlock)

Pull request description:

  `urllib.parse.unquote_plus()` serves the same purpose as `url_decode.urldecode()`, and moreover it correctly decodes UTF-8 sequences into Unicode characters rather than generating mojibake.

ACKs for top commit:
  kristapsk:
    ACK 5b8ef40bd6

Tree-SHA512: b8598efdcc48914f56036d32309e3d1ee52aa58c0cbbd41dbc66748588d28cfccd5e62869954f07cb3e25b9e7290bab9e1752dbdd3a662f71a7e59dda2f490b3
master
Kristaps Kaupe 3 years ago
parent
commit
cf3d65ba5d
No known key found for this signature in database
GPG Key ID: 33E472FE870C7E5D
  1. 5
      jmbitcoin/jmbitcoin/bip21.py
  2. 2
      jmbitcoin/setup.py

5
jmbitcoin/jmbitcoin/bip21.py

@ -4,8 +4,7 @@
# this are expected to do address validation independently anyway.
from jmbitcoin import amount_to_sat
from urllib.parse import quote, parse_qs, urlencode, urlparse
from url_decode import urldecode
from urllib.parse import parse_qs, quote, unquote_plus, urlencode, urlparse
import re
@ -40,7 +39,7 @@ def decode_bip21_uri(uri):
# Convert amount to sats, as used internally by JM
result['amount'] = amount_to_sat(amount_str + "btc")
else:
result[key] = urldecode(params[key][0])
result[key] = unquote_plus(params[key][0])
return result

2
jmbitcoin/setup.py

@ -10,5 +10,5 @@ setup(name='joinmarketbitcoin',
license='GPL',
packages=['jmbitcoin'],
python_requires='>=3.6',
install_requires=['python-bitcointx==1.1.3', 'pyaes', 'urldecode'],
install_requires=['python-bitcointx==1.1.3', 'pyaes'],
zip_safe=False)

Loading…
Cancel
Save