Browse Source

pylightning - allow unicode symbols in the description to be passed as-is to the daemon

addresses issue #2753.

Formatting the JSON with the default parameters will escape the unicode
symbols in a way that c-lightning won't allow, leading to an exception.

Changelog-Fixed: `pylightning` now handles unicode characters in JSON-RPC requests and responses correctly.
travis-debug
Jarret Dyrbye 5 years ago
committed by Christian Decker
parent
commit
d712f732d8
  1. 2
      contrib/pyln-client/pyln/client/lightning.py
  2. 1
      tests/test_misc.py

2
contrib/pyln-client/pyln/client/lightning.py

@ -172,7 +172,7 @@ class UnixDomainSocketRpc(object):
self.next_id = 0
def _writeobj(self, sock, obj):
s = json.dumps(obj, cls=self.encoder_cls)
s = json.dumps(obj, ensure_ascii=False, cls=self.encoder_cls)
sock.sendall(bytearray(s, 'UTF-8'))
def _readobj(self, sock, buff=b''):

1
tests/test_misc.py

@ -2000,7 +2000,6 @@ def test_new_node_is_mainnet(node_factory):
assert os.path.isfile(os.path.join(basedir, "lightningd-bitcoin.pid"))
@pytest.mark.xfail(strict=True)
def test_unicode_rpc(node_factory):
node = node_factory.get_node()
desc = "Some candy 🍬 and a nice glass of milk 🥛."

Loading…
Cancel
Save