Skip to content
This repository was 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
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
Development

Successfully merging this pull request may close these issues.

LSPS1: Deprecate CANCELLED state LSPS1: Accommodate refund_onchain_address LSPS1: Disallow compiler warnings once implementation is finished
2 participants