2023 Jan 27
Had a crazy dream where I was using helix keybindings to navigate maps lol
Saw in LDK discord persisting channel update monitor updates asynchronously needs to be fixed
[workspace]
+members=["...",...]
+exclude=["...",...]
in Cargo.toml allows for you to manage multiple packages together (share dependencies, build scripts, etc. “Packages that are members of a workspace can depend on each other, and when you build or run tests for one package, Cargo will automatically build or test all the other packages in the workspace as well.” - ChatGPTWas intimidated because I saw a lot of lines of code in this PR but most of it is documentation! Lovely!
Look into these - they seem like prerequisites for this macro?
use lightning::ln::peer_handler::CustomMessageHandler; use lightning::ln::wire::{CustomMessageReader, self};
What is this PR doing?
Defines a macro that makes a custom message handler. This takes in custom types and as long as they have certain serialization traits defined, it can compose messages with them
What is a custom message? What’s it for?
Why is a separate crate needed? read description
Why is
foo_bar_type_ids
an OR of the two type ids?Very weird:
$($field_vis:vis $field:ident: $type:ty),*
just matches a comma separated list, you have to add a$(,)*
at the end to include trailing commas (and it doesn’t account for extra commas which I thought would be the reason for*
over?
…but it appears they do the same thing here…)Right now, does peermanager support multiple custom message handlers?
Pretty cool, learned about the different frag spec keywords in rust macros
Glossary of types used throughout BOLTs - has
point
andshort_channel_id
which I’ve gone out of my way to look for in the pastMaybe I should make my own lisp at some point