Rusty Russell
45143cc731
pytest: Remove onion test vectors containing legacy onions.
...
I thought about fixing them up, but really these should be in
lnprototest anyway. Turns out they're from the spec, so we should
actually fix them up there.
I moved the vector files into contrib/pyln-proto, since that still
needs them.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-03-18 09:20:11 +10:30
Michael Schmoock
a01e2740ef
pyln-proto: fix port typo in example script
...
Changelog-None
2022-03-11 16:42:45 +10:30
Christian Decker
74fd685219
pyln: Fix the pyln-proto version and migrate to PEP 517 (poetry)
2022-03-08 05:00:36 +10:30
Christian Decker
ef579e7e9f
gci: Pin down a couple more dependencies
2021-09-28 18:34:43 +02:00
Christian Decker
478c43cd9c
pyln: Derive version from git for pyln-proto
2021-09-28 18:34:43 +02:00
Rusty Russell
487facf1f0
pyln-client/gossmap: more fixes, make mypy happier.
...
Mainly fixing type annotations, but some real fixes:
1. GossmapHalfchannel.from_str() should be a classmethod.
2. update_channel had weird, unusable default values (fields can't be NULL,
since we use it below).
[ There was one more occurence where isinstance should be used above
type() == xyz comparison. -- MS ]
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-09-08 09:34:14 +09:30
Michael Schmoock
ac27217114
pyln-client/gossmap: adds __repr__ functions
2021-09-08 09:34:14 +09:30
Rusty Russell
0ce473c656
pyln-proto: expose ShortChannelId and PublicKey.
...
They're generally useful.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-09-08 09:34:14 +09:30
Vincenzo Palazzo
b40812494d
Move to minimum required mypy dependeces
...
This fix some dependencies error with lnprototest
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2021-08-30 12:12:32 +09:30
Christian Decker
0112bbbeb7
pyln: Add E741 as excluded flake warnings
...
This is the ambiguous variable name warning which newer versions will
complain about.
2021-07-30 19:17:47 +02:00
Rusty Russell
de12c540ee
pyln.{proto,client,testing}: bump version numbers to match release.
...
I left pyln.proto.spec, since it's unchanged (and completely independent of
c-lightning anyway).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-07-30 19:17:47 +02:00
Rusty Russell
c0eba75b1d
pyln.proto.message: add new BOLT12 fundamental types.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-07-30 19:17:47 +02:00
Rusty Russell
85b4400d8d
pyln.proto.message: export two more symbols, remove unused __version__ from message.py
...
It gets the version of pyln.proto.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-07-30 19:17:47 +02:00
Rusty Russell
edee0793d3
pyln.proto: fix receiving unknown fields in TLVs.
...
We can still convert these (e.g. k=1) to Python, by just using hex strings.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-24 19:46:38 +09:30
Rusty Russell
ca3680246e
pyln.proto: fix handling of subtypes in TLVs.
...
This was revealed by using lnprototest on channel_types.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-24 19:46:38 +09:30
Christian Decker
8e0d0c3e7b
pyln: Pin mypy to version 0.790 since later has import path issues
2021-04-08 10:34:14 +09:30
Christian Decker
6b0a7b173c
pyln: Change the setup.py file not to import the package
...
This would lead to errors about missing dependencies when attempting
to install using `pyhon setup.py install`. This is because the
`setup.py` file effectively is the manifest file used to discover
which dependencies are needed, so when using it to detect dependencies
we obviously don't have them yet.
See https://packaging.python.org/guides/single-sourcing-package-version/
2021-04-08 10:34:14 +09:30
niftynei
cbde1f8158
pyln-proto: make an error message more detailed
...
Easier to figure out what's going wrong
2021-03-30 13:44:34 +10:30
niftynei
5142dc81f6
pyln-proto: write out length of arrays of subtypes to wire
...
We weren't writing out the length of a nested subtype's
dynamicarraylenght, now we do. The trick is to iterate through the
fields on a subtype (since the length field is added separately)
and to also iterate down through the otherfield values as we 'descend'
2021-03-30 13:44:34 +10:30
Christian Decker
fc677e331a
pyln: Update dependencies for all pyln packages
...
We were getting a number of incompatibility warning due to the
dependencies being expressed too rigidly. This losens the requirement
definitions to being compatible with a known good version, and while
we're at it we also bump all outdated requirements.
2021-01-29 10:29:09 +10:30
Christian Decker
6bed85bac2
pyln: Bump pyln version to 0.9.3 before publishing on PyPI
...
Let's just keep pyln synched up with the c-lightning version
2021-01-27 11:29:56 +01:00
Christian Decker
483579f8b6
pyln: Pin the mypy dependency to 0.790 since 0.800 has a regression
2021-01-26 15:45:13 +01:00
Christian Decker
a91254de11
pyln: Add ammag key to onion keyset
...
This was missing, and is required to wrap error responses.
2021-01-08 19:28:30 +01:00
Christian Decker
68d08fc7d7
pyln: Add TOR and SOCKS5 support in pyln.proto.wire.connect
...
I wanted to talk to TOR-based nodes, so here comes TOR support :-)
2020-12-11 11:39:18 +10:30
Christian Decker
62f7e646ec
pyln: Bump cryptography dependency to 3.2 due to upstream bug
...
https://cryptography.io/en/latest/changelog.html
Changelog-None
2020-10-29 11:11:48 +10:30
Christian Decker
9a0327cd25
pyln-proto: Add compactsize alias for varint_{encode,decode}
...
We were mistakenly calling it varint, while Bitcoin refers to it as
CompactSize.
2020-10-29 11:11:48 +10:30
Sergi Delgado Segura
9de5f438c4
pyln: Adds type annotations to zbase32 functions
2020-10-22 13:56:57 +02:00
Sergi Delgado Segura
3779c0b6ee
pyln: Moves old zbase32 test from primitives
2020-10-22 13:56:57 +02:00
Sergi Delgado Segura
f497b90ee8
pyln: Adds tests to zbase32
2020-10-22 13:56:57 +02:00
Sergi Delgado Segura
26f651f71f
pyln: Adds one-liner docs to zbase32 functions
2020-10-22 13:56:57 +02:00
Sergi Delgado Segura
1da29305fc
pyln: Improve zbase32 encoding / decoding
...
- Adds bitarray filling so mesages of any length can be encoded, instead of forcing the encoding to be of messages with length multiple of 5.
- Adds checks for encoding / decoding and raises expections if the inputs are not as expected.
- Flags functions that are supposed to be internal as "private".
2020-10-22 13:56:57 +02:00
Christian Decker
cafaad741b
pyln: Add type-annotations to pyln-proto
2020-09-28 09:19:46 +09:30
Christian Decker
1d2c2b6aaf
pyln: Parametrize and unify Makefiles for pyln package
2020-09-28 09:19:46 +09:30
Christian Decker
a351b9bf2f
pyln: Migrate from binascii.hexlify to bytes.hex
...
Suggested-by: Lisa <@niftynei>
2020-09-24 11:14:22 +09:30
Christian Decker
04462f6a64
pyln: Add code to unwrap an encrypted onion at the intended node
...
Changelog-Added: pyln-proto: Added pure python implementation of the sphinx onion creation and processing functionality.
2020-09-24 11:14:22 +09:30
Christian Decker
e8dcd59b24
pyln: Add a warning that pyln-proto is not safe for production use
2020-09-24 11:14:22 +09:30
Christian Decker
96b182a084
pyln: Implement sphinx onion packet generation in python
...
Suggested-by: Rusty Russell <@rustyrussell>
Signed-off-by: Christian Decker <@cdecker>
2020-09-24 11:14:22 +09:30
Christian Decker
49ec800a07
pyln: Add type-annotations to plugin.py
...
This should help users that have type-checking enabled.
2020-09-23 14:45:12 +09:30
Sergi Delgado Segura
f1d5fdf323
pyln: Sets remote_pubkey for LightningConnection if node is not the initiator
...
Currently ``LightningConnection.remote_pubkey`` is set to ``None`` if the node is not the handshake initiator. This sets it to ``rs`` in act three from the receiver side
2020-09-12 15:06:08 +09:30
Christian Decker
f5dd393113
pyln: Bump proto version to match pyln-bolt*
...
Since pyln-bolt* specify the 0.8.4 version which we didn't upload, and the
requirements.txt specify ==0.8.4, we need to backfill that version, even if we
could just bump it directly to 0.9.1.
2020-09-10 20:01:41 +09:30
niftynei
b3cbb0b653
tests: plugin for dual-funding tests in ln-prototest
...
FIXME: requires wallycore
2020-09-09 19:54:20 +09:30
niftynei
c8579b99d0
pyln-proto: use vals for subtype parsing
2020-08-27 10:20:16 +09:30
Sergi Delgado Segura
3edbacbb3c
pyln: hexlify -> bytes.hex() in pyln.proto.wire
2020-08-26 06:09:53 +09:30
Sergi Delgado Segura
27e495efa5
pyln: Updates proto to use coincurve for Public and Private keys
2020-08-26 06:09:53 +09:30
Rusty Russell
06372e13d8
pyln.proto.message: don't let Message() init set implicit lengths.
...
We'll override them from field length anyway!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-08-06 17:53:25 +02:00
Rusty Russell
74abd30da5
pyln-proto, pyln-spec: fix 'make prod-release' target.
...
rusty$ make prod-release
make: *** No rule to make target 'test', needed by 'prod-release'. Stop.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-06-29 18:01:12 +02:00
Rusty Russell
93ae190c19
pyln.proto: bump version to 0.8.3.
...
Changelog-Changed: pyln.proto version now 0.8.3 to indicate pyln.proto.message
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-06-25 10:08:58 +02:00
Rusty Russell
014ede0585
pyln.proto: fix test-release target
...
1. version was 0.0.2 in setup.py, which means we didn't get the dist/ files we expected.
2. We need 'bdist_wheel' to make the .whl file.
3. --no-site-packaged was apparently removed in 0.20.0, and was default long before that.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-06-25 10:08:58 +02:00
Rusty Russell
902d8f7dab
pyln.proto.message: remove incorrect fundamental types now spec update.
...
See 9e8e29af9b
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-06-25 10:08:58 +02:00
Rusty Russell
41e914fb37
pyln.proto.message, pyln.proto.spec*: do magic to expose mypy types.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2020-06-25 10:08:58 +02:00