diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c57ca7..f4b68d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,164 @@ All notable changes to this project will be documented in this file. +## [0.3.0] - 2025-09-27 + +### Bug Fixes + +- Unneeded clone on pay_offer +- Use correct google.rpc.Status with structured error details + +### Documentation + +- Add docker and docker-compose support +- Remove make and use just to run tests +- Add error handling guide with grpcurl examples +- Change link to cargo-dist + +### Miscellaneous Tasks + +- Update readme +- Upgrade ring dependency +- Upgrade ubuntu image +- Use corepc-node instead of bitcoind +- Upgrade lnd to 0.18.5-beta +- Add simple nix flake +- Itest behind cfg and feature +- Add components to rust build ci +- Upgrade lnd protos +- Bump lightning and bitcoin to latest version +- Bump `rust-toolchain` to `1.85.0` +- Add justfile to handle commands +- Remove makefile +- Bump corepc-node to 0.8 +- Bump ldk-sample +- Bump rand_core and rand_chacha +- Bump tonic related crates +- Bump mockall to 0.13.1 +- Standardize error responses, adding stable machine codes +- Add LndError enum for improved LND error handling +- Bump dist from 0.28.0 to 0.30.0 +- Bump install-nix-action to v31.7.0 +- Use machine error codes in cli +- Replace nested LndStatus with String messages in error enums + +### Refactor + +- Move TLS utilities from server to main module +- Simplify quantity parsing by removing error handling +- Improve error handling in Bolt12InvoiceString conversion +- Extract repeated gRPC client setup and metadata handling + +### Testing + +- Upgrade bitcoind to 28_0 +- Store stderr and stdout logs lnd itest +- Upgrade integration tests +- Move `test_transient_keys` from integration to `lnd_requests` +- Use `create_reply_path` from `lnd_requests` in integration +- Test get_invoice flow on integration tests +- After LND is running check that node address is in sync +- Add more channel capacity default network +- Add `wait_for_addresses_to_sync` helper +- Add integration test for check pay offer + +### Cfg + +- Point logs to the correct location + +### Ci + +- Add cli bin unit tests +- Use just to run tests on CI + +### Cli + +- Look in correct directory for tls cert +- Add tests reading certs and args +- Fix decode-invoice encoding docs +- Add fees limits args to pay_invoice and pay_offer +- Test fees args validations + +### Handler + +- Remove harmful unwrap of context +- Remove unauthenticated logs +- Remove payments from active hashmap when receiving error +- Do not respond invoice after verifying +- Refactor nested match condition when receiving invoice +- Remove unused payment states +- Extract `send_payment` and `track_payment` to `lnd_requests` +- Remove unused `Option` in `send_invoice_request` +- Fix clippy warnings +- Abstract `get_node_id_from_scid` in a separate method +- Respond to invoice requests with invoices +- Send `Invoice` message through LND +- Retry `pay_invoice` on failure for each blinded path + +### Itest + +- Extract setup ldk node to different function +- Add `wait_for_nodes_addresses` on lnd +- Add route error handling +- Fix flaky test on building network test payment retry +- Testing same node with multiple channels + +### Messager + +- Remove shutdown triggers +- Add a task that subscribe to custom message stream + +### Messenger + +- Close server on lnd kill +- Implement `ConnectionNeeded` event handling +- Add retryable wrapper +- Add a integration test to check reconnection. +- Increase sleep time on integration test +- Add an additional comment about the reconnection +- Add retry intents on connect to peer + +### Multi + +- Add logs when tracking payments + +### Nix + +- Add just to dev shell + +### Offers + +- Refactor code into a modular structure +- Add create_offer functionality +- Better peer selection for offers + +### Onion_messenger + +- Place subscribe to custom message in a loop. +- Add custom MessageRouter implementation + +### Readme + +- Update installation docs +- Correct required protoc version + +### Ref + +- Build ExpandedKey from lnd signature message +- Use larger invoices on lnd + +### Server + +- Default lndk conf in lndk dir + +### Server+cli + +- Expose create_offer + +### Trait + +- Implement `PeerConnector` to lightning client + ## [0.2.0] - 2024-09-02 ### Documentation @@ -348,5 +506,3 @@ All notable changes to this project will be documented in this file. ### Workflows - Remove frozen tag from cargo test - - diff --git a/Cargo.lock b/Cargo.lock index c1b1b19..5a0bcfa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1293,7 +1293,7 @@ checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lndk" -version = "0.2.0" +version = "0.3.0" dependencies = [ "async-trait", "async_fn_traits", diff --git a/Cargo.toml b/Cargo.toml index 9a62b29..41ba98b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lndk" -version = "0.2.0" +version = "0.3.0" edition = "2021" repository = "https://github.com/lndk-org/lndk"