move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

move static channelmanager functions into their own file - #2739

Merged
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils
Nov 29, 2023
Merged

move static channelmanager functions into their own file#2739
valentinewallace merged 1 commit into
lightningdevkit:mainfrom
Evanfeenstra:channelmanager-utils

Conversation

@Evanfeenstra

@EvanfeenstraEvanfeenstra commented Nov 16, 2023

Copy link
Copy Markdown
Contributor
  • new ln::onion_payment file with static functions from channelmanager.rs.
  • cleaned up test_peel_payment_onion and moved into ln::onion_payment.
  • made PendingHTLCInfo.payment_hash public (mistake from peel_payment_onion static fn in channelmanager #2700).
  • made UpdateAddHTLC.onion_routing_packet public, so that peel_payment_onion can be used externally.
  • some better comments on newly public fields.

@jkczyz

Copy link
Copy Markdown
Contributor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The refactoring looks fantastic on my initial review, and the additional comments are really helpful! I'll take another pass at the added code to see if there are any further improvements we can make to this pull request. Superb work!

Comment threadlightning/src/ln/channelmanager.rs Outdated
incoming_cltv_expiry: u32,
/// Optional shared secret for phantom node.
/// Shared secret derived using a phantom node secret key. If this field is Some, the
/// payment was sent to a phantom node (one hop behond the current node), but can be

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit:

Suggested change
/// payment was sent to a phantom node (one hop behond the current node), but can be
/// payment was sent to a phantom node (one hop behind the current node), but can be

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe thanks for catching that!

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

I think channelmanager_utils is too broad. Let's use a more restrictive name lest it become another grab bag of utilities, even if only related to ChannelManager. Examples of other modules that we've refactored out are inbound_payment and outbound_payment. Maybe onion_payment in contrast to onion_message? Open to other ideas.

Good point, I renamed the module to onion_payment

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK mod nit.

This is a refactoring PR that moves static channelmanger functions to their own file.

I have used the following line command to notice the essential differences introduced by refactoring:

git diff HEAD^ --color-moved-ws=ignore-all-space --color-moved=dimmed-zebra

Essential Changes in the PR:

  1. Updated comments for members of PendingHTLCRouting enum. The comments look clean and clear and present a better understanding of the member variables.
  2. Modified the visibility of moved code to pub(super). Since these are utilities of channelManager and are not meant to be used in the rest of the codebase, this visibility is the most apt one for it.
  3. Removed create_payment_onion function. Instead, use the create_payment_onion function defined in ln::onion_utils::create_payment_onion;

The refactoring looks clean and clear, and other than the small nits, this PR is good to be merged.

Comment threadlightning/src/ln/channelmanager.rs Outdated
@@ -118,14 +119,19 @@ pub enum PendingHTLCRouting {
short_channel_id: u64, // This should be NonZero<u64> eventually when we bump MSRV
},
/// An HTLC paid to an invoice we generated.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit:

In the following line, we are saying we don't know yet if the invoice was generated by us. So adding a "supposedly" will make the comments more coherent here.

Suggested change
/// An HTLC paid to an invoice we generated.
/// An HTLC paid to an invoice (supposedly) generated by us.

Comment threadlightning/src/ln/onion_payment.rs Outdated
/// acceptance. If the payment is to be received, and the amount matches the expected amount for
/// a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
/// channel, will generate an [`Event::PaymentClaimable`].
///

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
///
///

Comment threadlightning/src/ln/onion_payment.rs Outdated
@@ -0,0 +1,499 @@
//! Utilities for channelmanager.rs
//!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit by linter:

Suggested change
//!
//!

@codecov-commenter

codecov-commenter commented Nov 25, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (70ea110) 88.55% compared to head (8c588cf) 88.51%.
Report is 29 commits behind head on main.

❗ Current head 8c588cf differs from pull request most recent head 9f4dcd0. Consider uploading reports for the commit 9f4dcd0 to get more accurate results

FilesPatch %Lines
lightning/src/ln/onion_payment.rs90.10%29 Missing and 7 partials ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@ Coverage Diff @@## main #2739 +/- ##
==========================================
- Coverage 88.55% 88.51% -0.04% 
==========================================
Files 113 114 +1 Lines 89323 89305 -18 Branches 89323 89305 -18 ==========================================
- Hits 79097 79052 -45 - Misses 7860 7882 +22 - Partials 2366 2371 +5 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

ok, rebased to main and incorporated the nits by @shaavan

@shaavanshaavan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review ACK

valentinewallace
valentinewallace previously approved these changes Nov 27, 2023

@valentinewallacevalentinewallace left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to save these for follow-up if we want to get the initial code move in.

Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
Comment threadlightning/src/ln/onion_payment.rs Outdated
Comment threadlightning/src/ln/channelmanager.rs Outdated
@Evanfeenstra

Copy link
Copy Markdown
ContributorAuthor

Fine to save these for follow-up if we want to get the initial code move in.

Ok I went ahead and incorporated these nits. Thanks!

@valentinewallace

Copy link
Copy Markdown
Contributor

Will wait til @TheBlueMatt ACK's the docs to merge.

@valentinewallace

Copy link
Copy Markdown
Contributor

Going to land this since it's largely a code move and we can continue iterating on the docs if necessary in #2752.

@valentinewallace
valentinewallace merged commit f07f4b9 into lightningdevkit:mainNov 29, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@Evanfeenstra@jkczyz@codecov-commenter@valentinewallace@shaavan