0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard
, '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

0.0.11 - #608

Merged
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11
Apr 25, 2020
Merged

0.0.11#608
TheBlueMatt merged 8 commits into
lightningdevkit:masterfrom
TheBlueMatt:2020-04-0.0.11

Conversation

@TheBlueMatt

Copy link
Copy Markdown
Collaborator

Based on #598, which seems ready to go, bump versions.

Antoine Riardand others added 8 commits April 24, 2020 18:51
As channel_value last usage was for computing feerate but as this
one is static per-commitment and will always-be following specification,
we remove it.
In e46e183 we began tracking
whether a local commitment transaction had been signed and
broadcast in OnchainTxHandler, refusing to update the local
commitment transaction state in the ChannelMonitor on that basis.
This is fine, except that it doesn't make a lot of sense to store
the full local transaction state in OnchainTxHandler - we should be
providing it the unsigned local transaction at the time we wish to
broadcast and no more (just like we do all other transaction data).
This cleans up sign_local_commitment somewhat by returning a
Result<Signaure, ()> over the local commitment transaction instead
of modifying the struct which was passed in.
This is the first step in making LocalCommitmentTransaction a
completely pub struct, using it just to communicate enough
information to the user to allow them to construct a signaure
instead of having it contain a bunch of logic.
This should make it much easier to implement a custom ChannelKeys
by disconnecting the local commitment transaction signing from our
own datastructures.
1107ab0 introduced an API to have a
ChannelKeys implementer sign HTLC transactions by calling into the
LocalCommitmentTransaction object, which would then store the tx.
This API was incredibly awkward, both because it required an
external signer trust our own internal interfaces, but also because
it didn't allow for any inspection of what was about to be signed.
Further, it signed the HTLC transactions one-by-one in a somewhat
inefficient way, and there isn't a clear way to resolve this (as
the which-HTLC parameter has to refer to something in between the
HTLC's arbitrary index, and its index in the commitment tx, which
has "holes" for the non-HTLC outputs and skips some HTLCs).
We replace it with a new function in ChannelKeys which allows us
to sign all HTLCs in a given commitment transaction (which allows
for a bit more effeciency on the signers' part, as well as
sidesteps the which-HTLC issue). This may also simplify the signer
implementation as we will always want to sign all HTLCs spending a
given commitment transaction at once anyway.
We also de-mut the LocalCommitmentTransaction passed to the
ChanKeys, instead opting to make LocalCommitmentTransaction const
and avoid storing any new HTLC-related data in it.
Instead of adding signatures to LocalCommitmentTransactions, we
instead leave them unsigned and use them to construct signed
Transactions when we want them. This cleans up the guts of
LocalCommitmentTransaction enough that we can, and do, expose its
state to the world, allowing external signers to have a basic
awareness of what they're signing.
We should never be exposing our own TODOs to the world.
We don't need to assert that transaction structure is what we
expect when the transaction is created by a function twenty lines
up in the same file.
@TheBlueMattTheBlueMatt added this to the 0.0.11 milestone Apr 25, 2020
@codecov

codecovBot commented Apr 25, 2020

Copy link
Copy Markdown

Codecov Report

Merging #608 into master will increase coverage by 0.02%.
The diff coverage is 96.42%.

Impacted file tree graph

@@ Coverage Diff @@## master #608 +/- ##
==========================================
+ Coverage 91.05% 91.08% +0.02% 
==========================================
Files 34 34 Lines 20359 20447 +88 ==========================================
+ Hits 18538 18624 +86 - Misses 1821 1823 +2 
Impacted FilesCoverage Δ
lightning/src/ln/onchaintx.rs94.86% <93.69%> (-0.26%)⬇️
lightning/src/ln/channelmonitor.rs95.50% <95.34%> (-0.01%)⬇️
lightning/src/chain/keysinterface.rs96.98% <100.00%> (-0.07%)⬇️
lightning/src/ln/chan_utils.rs97.19% <100.00%> (+0.44%)⬆️
lightning/src/ln/channel.rs86.41% <100.00%> (-0.01%)⬇️
lightning/src/util/enforcing_trait_impls.rs100.00% <100.00%> (ø)
lightning/src/ln/functional_tests.rs97.04% <0.00%> (ø)
lightning/src/util/ser_macros.rs97.27% <0.00%> (+0.68%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dc0dd1...8b18d90. Read the comment docs.

@ariard

Copy link
Copy Markdown

SGTM 8b18d90

@TheBlueMatt
TheBlueMatt merged commit 12e2a81 into lightningdevkit:masterApr 25, 2020
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.

2 participants

@TheBlueMatt@ariard