Skip to content
This repository has been archived by the owner on Jan 6, 2025. It is now read-only.

LSPS1: Update message format and get client working #140

Merged
merged 11 commits into from
Dec 3, 2024

Conversation

tnull
Copy link
Collaborator

@tnull tnull commented Jul 9, 2024

Closes #87
Closes #144
Closes #146

We refactor LSPS1-related client code and remove the cfg gate for these parts. Should be good for review, we can always iterate to improve the API etc. over time.

@tnull tnull marked this pull request as draft July 9, 2024 11:28
@tnull tnull force-pushed the 2024-07-update-lsps1 branch 3 times, most recently from af8a822 to e8a06f8 Compare July 11, 2024 10:07
@tnull tnull changed the title LSPS1: Update and get it working LSPS1: Update message format and get client working Aug 8, 2024
@tnull tnull force-pushed the 2024-07-update-lsps1 branch from 0e647a5 to 5210925 Compare August 8, 2024 11:45
@tnull tnull force-pushed the 2024-07-update-lsps1 branch 5 times, most recently from ed65742 to b014a08 Compare August 14, 2024 10:36
.. to make it easier to switch back-and-forth when testing.
We previously didn't advertise the supported protocols, even if the
corresponding service handlers were available.
@tnull tnull force-pushed the 2024-07-update-lsps1 branch 2 times, most recently from 87e37fd to 177ff80 Compare November 28, 2024 13:09
@tnull tnull marked this pull request as ready for review November 28, 2024 13:38
@tnull
Copy link
Collaborator Author

tnull commented Nov 28, 2024

CI failure on the beta channel is unrelated: lightningdevkit/rust-lightning#3424

@tnull tnull requested review from G8XSU and arik-so November 28, 2024 13:47
src/lsps1/client.rs Show resolved Hide resolved
src/lsps1/msgs.rs Show resolved Hide resolved
tnull added 4 commits December 3, 2024 09:33
.. we tremendously simplify the client logic, also dropping any state
tracking for now (possibly to be re-added in the future).

We also get the LSPS1 API closer to LSPS2 and make sure the API/docs is
more consistent.

To this end, we also rename a bunch of types
(`OrderParams`->`OrderParameters`, `OptionsSupported`->`LSPS1Options`)
for improved clarity and, since we're not using them, drop the
`AChannelManager` and `Filter` arguments of `LSPS1ClientHandler`.
.. as we have no real way to check the network at the point of
deserialzation, and we want to handle `bitcoin::Addresses`, not uncheck
addresses, in particular when it comes to serialization.
We allow de/serializing if the field is absent and mirror it back in
`CreateOrderResponse`, as per recent spec change.
.. as per spec.
@tnull tnull force-pushed the 2024-07-update-lsps1 branch from 177ff80 to 4a9af52 Compare December 3, 2024 08:35
@tnull tnull merged commit c80eb75 into lightningdevkit:main Dec 3, 2024
0 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
2 participants