Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encrypt tls key updates #8

Open
wants to merge 786 commits into
base: encrypt-tls-key
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
786 commits
Select commit Hold shift + click to select a range
0dcaa51
Merge pull request #6341 from guggero/remote-signer-signoutputraw
guggero Mar 24, 2022
72c9582
multi: bump btcd to taproot aware version
guggero Mar 18, 2022
f130edd
multi: use prev output fetcher where possible
guggero Mar 18, 2022
c73cf03
multi: add p2tr keyspend wallet support
guggero Mar 18, 2022
108f49f
input+signer: test wallet script import
guggero Mar 18, 2022
5109c55
itest: assert P2TR on-chain fund recovery
guggero Mar 18, 2022
78db46b
multi: add p2tr tapscript signing capabilities
guggero Mar 18, 2022
ef98f2d
multi: add p2tr tapscript key path signing capabilities
guggero Mar 18, 2022
3b5585c
multi: fix and test v1 output spend ntfns
guggero Mar 18, 2022
f500892
docs: add release notes
guggero Mar 24, 2022
dceb101
Merge pull request #6263 from guggero/schnorr-taproot-signet
Roasbeef Mar 25, 2022
b19f5b9
Fix error in log message in Makefile ios task
hsjoberg Mar 26, 2022
f015d88
mobile: Add macos Makefile task for compiling xcframework for macOS
hsjoberg Mar 26, 2022
a97b194
mobile: Add apple Makefile task for compiling xcframework for all App…
hsjoberg Mar 26, 2022
cc21ae1
Add info about `macos` and `apple` Makefile tasks to 0.15.0 release n…
hsjoberg Mar 26, 2022
1516310
channelarbitrator: fix typo in comment [skip ci]
antonilol Mar 27, 2022
6e2214f
Merge pull request #6365 from antonilol/some_typos
guggero Mar 28, 2022
f817463
build: update to latest btcutil/psbt version
Roasbeef Mar 30, 2022
5fd9df3
Merge pull request #6383 from Roasbeef/update-btcutil-psbt-fix
guggero Mar 30, 2022
485d8f0
btcwallet: always make sure default scopes exist
guggero Mar 29, 2022
28a99fc
docs: add release notes
guggero Mar 29, 2022
ba83c11
Merge pull request #6346 from thinkmassive/docker-tag-master
guggero Mar 30, 2022
c6e96c6
lncfg: normal TCP resolution for unspecified IPs
ellemouton Mar 28, 2022
c582438
lncfg: use net pkg IsLoopback method
ellemouton Mar 29, 2022
6275a78
Merge pull request #6379 from guggero/wallet-default-scopes
guggero Mar 30, 2022
40358d4
lnrpc: fix websocket proxy data race
guggero Mar 29, 2022
de9d309
docs: add release notes
guggero Mar 29, 2022
8072b20
Merge pull request #6380 from guggero/websocket-proxy-race-fix
guggero Mar 30, 2022
2bf2939
go.mod: update btcd to include tor resolver fix
ellemouton Mar 31, 2022
1786fdf
mobile: Add iossimulator gomobile target to ios Makefile task
hsjoberg Mar 31, 2022
359ef6a
Merge pull request #6376 from ellemouton/useTCPResolverForAllInterfac…
guggero Mar 31, 2022
0f85895
Merge pull request #6373 from hsjoberg/macos-makefile
guggero Apr 1, 2022
a0b7680
cmd/lncli: changepassworderror message [skip ci]
gabbyprecious Apr 1, 2022
d2f016c
lnrpc: add peers `.proto` files
positiveblue Nov 26, 2021
9db17d7
lnrpc: add peersrpc subsever
positiveblue Nov 27, 2021
d4021c5
lnrpc: fix `log.go` files
positiveblue Dec 3, 2021
5ab0cbd
lnrpc: add `updatenodeannouncement` to `Peers` service
positiveblue Jan 2, 2022
e4e0935
lnrpc/peers: skeleton logic for `updateNodeAnnouncement`
positiveblue Dec 6, 2021
ce48139
lnrpc/peers: handle alias changes in updateNodeAnnouncement
positiveblue Jan 8, 2022
aacb256
lnrpc/peers: handle color changes in updateNodeAnnouncement
positiveblue Jan 20, 2022
76196db
lnrpc/peers: handle net address changes in updateNodeAnnouncement
positiveblue Jan 20, 2022
ae2aa56
lnrpc/peers: handle feature bit changes in updateNodeAnnouncement
positiveblue Jan 2, 2022
f3fdf8d
lncli: add `peers updatenodeannouncement`
positiveblue Apr 1, 2022
fdfdd10
docs: add release notes
positiveblue Apr 1, 2022
50ec394
rpcperms: fix typo [skip ci]
C-Otto Apr 4, 2022
8109c9c
Merge pull request #6392 from C-Otto/fix-typo
guggero Apr 4, 2022
3dc5ddc
fix typos [skip ci]
hitanshu-mehta Apr 5, 2022
65dc3ef
Merge pull request #6349 from gabbyprecious/unlock-error-message#2529
guggero Apr 11, 2022
e13e5f8
cmd/lncli: fix linter issues after contributor PR [skip ci]
guggero Apr 11, 2022
954d5cf
Merge pull request #6403 from guggero/fix-linter
Roasbeef Apr 11, 2022
427a518
lnrpc: ignore legacy onion payload as an option for SendToRoute
Roasbeef Mar 31, 2022
060fcaf
docs/release-notes: add entry for `SendToRoute` legacy payload deprec…
Roasbeef Mar 31, 2022
e6fd93e
Merge pull request #6385 from Roasbeef/tlv-all-day-err-day
Roasbeef Apr 12, 2022
2fd900b
Merge pull request #5587 from positiveblue/5466-update-node-announcem…
Roasbeef Apr 12, 2022
bae0b6b
htlcswitch/test: isolate test packets
joostjager Mar 23, 2022
13dff2f
htlcswitch: interceptor expiry check
joostjager Jan 28, 2022
8047f23
Merge pull request #6212 from bottlepay/interceptor-check
guggero Apr 12, 2022
3d5f33a
routing: fail in-flight attempts cleanly on terminal payment failure
bhandras Mar 21, 2022
70ac007
docs: update release notes 0.15.0
bhandras Mar 22, 2022
1ad6679
Merge pull request #6393 from hitanshu-mehta/fix-typo
guggero Apr 12, 2022
dabb74f
Merge pull request #6352 from bhandras/stuck-payment
Roasbeef Apr 12, 2022
2a069b8
rpcserver: copy success variable of channel close update
guggero Apr 12, 2022
1e72d67
lnrpc+itest: fix panic with missing UTXO info
guggero Apr 12, 2022
9281e7a
docs: add release notes
guggero Apr 12, 2022
4bdc3c9
Merge pull request #6407 from guggero/multi-fixes
guggero Apr 12, 2022
a90dfff
build: update to Go 1.18
Roasbeef Mar 15, 2022
d6b2283
docs/INSTALL.md: update min Go version to 1.18
Roasbeef Mar 15, 2022
2fadc60
docs/release-notes: add note entry for Go 1.18
Roasbeef Mar 30, 2022
57e08df
htlcswitch: refactor interceptForward
joostjager Mar 20, 2022
7265a5e
beacon: add constructor
joostjager Apr 13, 2022
c392e00
beacon: add witness cache interface
joostjager Apr 13, 2022
721fb4e
contractcourt: add onchain interception
joostjager Feb 4, 2022
70c01e5
mod: bump btcwallet to p2tr unused addr fix
guggero Apr 1, 2022
f37ebb6
docs: add release notes
guggero Apr 1, 2022
c0d4308
Merge pull request #6389 from guggero/p2tr-addr-used
Roasbeef Apr 13, 2022
269a8e7
routing: refactor reliability penalty calculation
joostjager Nov 23, 2021
ba5abdc
routing: add time_pref parameter to queryroutes and sendpayment
joostjager Nov 23, 2021
044286a
Merge pull request #6024 from lightningriders/timepref
guggero Apr 13, 2022
135e27d
zpay32: add payment metadata field
joostjager Jan 11, 2022
9195f29
routing+channeldb: send payment metadata from invoice
joostjager Oct 4, 2021
62ae038
htlcswitch+invoices: log payment metadata
joostjager Jan 11, 2022
cd8a87c
Merge pull request #6219 from bottlepay/onchain-interceptor
Roasbeef Apr 13, 2022
440f4d9
Merge pull request #5810 from bottlepay/payment-metadata
Roasbeef Apr 13, 2022
d397e3e
Merge pull request #6340 from Roasbeef/go-1-18
Roasbeef Apr 13, 2022
c54cc6e
multi: announce Keysend feature bit
ellemouton Apr 14, 2022
0b20dcc
Merge pull request #6414 from ellemouton/keysendFeatureBit
Roasbeef Apr 15, 2022
02d17bb
tlv: update go mod to include `require`
yyforyongyu Apr 14, 2022
4ddb5c5
tlv: add `MakeBigSizeRecord` to save space
yyforyongyu Apr 14, 2022
b1f6bc9
#4939 Add socks proxy support to lncli
hieblmi Apr 16, 2022
b6e1d2a
mod+docs: bump btcutil/psbt library to v1.1.3
guggero Apr 19, 2022
b08df84
Merge pull request #6428 from guggero/psbt-1-1-3
guggero Apr 19, 2022
2195c71
chainview: fix formatting
guggero Mar 22, 2022
1c0b4fd
chainview: increase connection timeout in test
guggero Mar 22, 2022
3f757e5
docs: add release notes
guggero Mar 22, 2022
eca2ac8
scripts: add gpg key for ellemouton [skip ci]
ellemouton Apr 19, 2022
51a7566
Merge pull request #6354 from guggero/fix-unit-tests
guggero Apr 19, 2022
3133154
Merge pull request #6421 from yyforyongyu/tlv-compress
Roasbeef Apr 19, 2022
fcb314b
channeldb: add more verbose docs
yyforyongyu Mar 10, 2022
5f508f9
channeldb: replace method RevocationLogTail
yyforyongyu Mar 16, 2022
fea9769
contractcourt: remove unused bucket justice-txn
yyforyongyu Mar 15, 2022
acde626
lnwallet+htlcswitch: remove the redundant param in OweCommitment
yyforyongyu Mar 19, 2022
9a4589d
lnwallet: remove unused field PendingHTLCs
yyforyongyu Mar 16, 2022
291a8e4
contractcourt: move breach handling into its own function
yyforyongyu Apr 6, 2022
22f8f6e
channeldb+lnwallet: save initial balances during channel opening
yyforyongyu Apr 7, 2022
8b289e7
channeldb+migration: export commonly used methods
yyforyongyu Apr 16, 2022
c9843fd
channeldb+migration: add migration to save the initial balances
yyforyongyu Apr 16, 2022
7eaf0d0
channeldb+migration: add migration test for patching balances
yyforyongyu Apr 12, 2022
f42d1f2
multi: remove function `BalancesAtHeight`
yyforyongyu Apr 7, 2022
4609ac2
channeldb: deprecate old revocation log bucket
yyforyongyu Apr 6, 2022
c41175f
channeldb: re-introduce revocationLogBucket
yyforyongyu Apr 6, 2022
dc137be
channel: move deprecated log handling into the new file
yyforyongyu Apr 7, 2022
a129930
channeldb: add unit test for revocation log
yyforyongyu Apr 6, 2022
df81011
lnwallet: add method to compute output indexes
yyforyongyu Apr 7, 2022
37b11c4
channeldb+lnwallet: store revocation log using the new format
yyforyongyu Apr 7, 2022
9537679
multi: use txid instead of tx in BreachRetribution
yyforyongyu Apr 10, 2022
22d98ca
multi: use new revocation log when creating breach retribution
yyforyongyu Apr 13, 2022
7c5daaf
mod: update tlv's package version
yyforyongyu Apr 15, 2022
b288284
channeldb: use BigSize to encode htlc amount
yyforyongyu Apr 15, 2022
591dbb1
docs: add release note for revocation log removal
yyforyongyu Apr 16, 2022
747161a
lnd: add config option for specifying particular peers to connect to
orbitalturtle Mar 24, 2021
8d11a90
itest: test config option for picking particular peers
orbitalturtle Mar 24, 2021
565e94a
Update release notes with peering config option
orbitalturtle Apr 15, 2022
1e04f19
Merge pull request #6402 from asvdf/master
GordianLN Apr 19, 2022
ef83370
contractcourt: deadlock fix via temporary unmerged map
Crypt-iQ Mar 8, 2022
0f74c6b
release-notes: update for 0.15.0
Crypt-iQ Mar 9, 2022
b6c5603
Merge pull request #5157 from orbitalturtle/addPeer-flag
guggero Apr 20, 2022
0ce449f
neutrinorpc: config
ErikEk Aug 23, 2021
b2646ed
neutrinorpc: logger
ErikEk Aug 23, 2021
3d7d936
Merge pull request #6422 from hieblmi/lncli-socks-proxy
guggero Apr 20, 2022
9c97d26
scripts: add gpg key for ellemouton [skip ci] (#6429)
Roasbeef Apr 20, 2022
89209ec
config: Add bitcoind.{config,rpccookie} configuration options
dongcarl Dec 6, 2021
1c16f40
Add release-notes entry for #6064
dongcarl Apr 21, 2022
9572b49
Merge pull request #6064 from dongcarl/2021-12-admin-cli-args
Roasbeef Apr 21, 2022
3ad9a42
rpcserver: remove unnecessary conversion
joostjager Apr 25, 2022
caf11d2
rpcserver: expose interceptor required flag on info call
joostjager Apr 24, 2022
0845c4d
Merge pull request #6454 from bottlepay/require-interceptor-info
guggero Apr 25, 2022
a94466e
peer: add createChanCloser function to de-dupe NewChanCloser sites
Crypt-iQ Apr 22, 2022
d881679
peer+chancloser: allow restarting coop close process
Crypt-iQ Apr 26, 2022
5ec6aaf
peer: make linter happy
Crypt-iQ Apr 26, 2022
caeb650
release-notes: update for 0.15.0
Crypt-iQ Apr 26, 2022
de6fcf1
Merge pull request #6419 from Crypt-iQ/shutdown_coop_restart
Roasbeef Apr 29, 2022
be704b0
mod: bump btcec to MuSig2 version, require go 1.17
guggero Apr 27, 2022
dfac94b
tools+lint: fix linter for Go 1.18
guggero Apr 27, 2022
fee2b28
itest: refactor taproot test
guggero Apr 27, 2022
8fc99fb
input+btcwallet: add MuSig2 signing operations
guggero Apr 27, 2022
f7275c7
multi: implement MuSig2 RPCs and remote signing
guggero Apr 27, 2022
e31aab5
multi: fix inclusion proof size
guggero Apr 27, 2022
3ba6421
itest: add MuSig2 end-to-end tests
guggero Apr 27, 2022
63e93ae
itest: add taproot SignOutputRaw Bip86 signing test
guggero Apr 27, 2022
93e069f
docs: add MuSig2 doc and release notes
guggero Apr 27, 2022
9bbee09
Merge pull request #6361 from guggero/musig2
guggero Apr 29, 2022
bfed7a0
htlcswitch: introduce resolutionStore to persist cnct messages
Crypt-iQ Feb 11, 2022
f7b3da4
htlcswitch+lntest: modify Switch to persist resolution messages
Crypt-iQ Feb 11, 2022
eeedb09
release-notes: update for 0.15.0
Crypt-iQ Feb 11, 2022
635cffa
multi: add sub-server dep
ErikEk Aug 23, 2021
8c7be4e
neutrinorpc: subserver functionality
ErikEk Aug 23, 2021
57036d0
neutrinorpc: command interface
ErikEk Aug 23, 2021
3e306f8
doc: release notes
ErikEk Feb 9, 2022
d6db386
chainrpc: clarify documentation
torkelrogstad Apr 30, 2022
aca2299
Merge pull request #6481 from torkelrogstad/2022-04-30-chain-notifier
guggero May 2, 2022
63f02c2
Merge pull request #6250 from Crypt-iQ/resolutionmsg_handoff
guggero May 2, 2022
eff52ef
fix typo for scanInvoicesOnStart [skip ci]
bufo24 May 2, 2022
c42330d
channeldb: add CountTotal option to payment query
guggero Apr 26, 2022
a44e56b
lnrpc: add new request/response fields for payment count
guggero Apr 26, 2022
ab6e101
cmd/lncli: add --count_total_payments flag
guggero Apr 26, 2022
bf03d11
docs: add release notes
guggero Apr 26, 2022
30a857b
zmq: remove port check error
ErikEk Apr 30, 2022
68fad0c
Merge pull request #6478 from bufo24/master
guggero May 3, 2022
cd21918
Merge pull request #6483 from ErikEk/remove-zmq-check
guggero May 3, 2022
05fd4f9
Merge pull request #6463 from guggero/num-payments
guggero May 3, 2022
5ae2ce9
multi: typo fixes [skip ci]
tvolk131 Apr 16, 2022
bd9904e
channeldb: remove empty files
tvolk131 May 3, 2022
54adc69
Merge pull request #6322 from Crypt-iQ/handoff_deadlock_fix
Roasbeef May 3, 2022
9ec2632
build: update to version of neutrino w/ BIP 155 support
Roasbeef Apr 27, 2022
b5fed36
Merge pull request #6468 from Roasbeef/neutrino-tor
Roasbeef May 3, 2022
12b82d0
Merge pull request #5652 from ErikEk/neutrino-sub-server
Roasbeef May 3, 2022
f77388e
lnwire: add TestDecodeUnknownAddressType
ellemouton Apr 20, 2022
fa0512f
lnwire: add new type OpaqueAddrs
ellemouton Apr 21, 2022
1477c75
lnwire: store unknown address type as OpaqueAddrs
ellemouton Apr 21, 2022
f40e268
lnwire: add randOpaqueAddrs for fuzz test
ellemouton Apr 21, 2022
fa5d419
docs/release-notes: update release notes
ellemouton Apr 20, 2022
771d77d
signrpc: add MuSig2Cleanup RPC
guggero May 4, 2022
95ff670
multi: add MuSig2Cleanup method to MuSig2 signer
guggero May 4, 2022
7e11f64
rpcwallet: only shut down on RPC error
guggero May 4, 2022
52e42fc
lnrpc+itest: implement MuSig2Cleanup RPC
guggero May 4, 2022
17e0f99
docs: add release notes
guggero May 4, 2022
48695dd
Merge pull request #6495 from guggero/musig2-session-cleanup
guggero May 4, 2022
dec389d
build: update CI to build against bitcoind 23
Roasbeef Apr 26, 2022
bdd1c5c
Merge pull request #6423 from tvolk131/fix_typos
guggero May 5, 2022
f8dd032
Merge pull request #6465 from Roasbeef/bitcoind23
guggero May 5, 2022
d9654f4
docs/INSTALL.md: add list of build tags
sangaman Apr 30, 2022
9966960
build: update release tags
sangaman Apr 30, 2022
1b50c9e
add release-notes entry for #6486
sangaman Apr 30, 2022
0ec88b5
Merge pull request #6347 from yyforyongyu/5388-rm-revc-log
Roasbeef May 5, 2022
8c3b9e7
Merge pull request #6435 from ellemouton/ignoreUnknownAddressInNA
Roasbeef May 5, 2022
a4b486c
Merge pull request #6486 from sangaman/install-tags
guggero May 6, 2022
ddf0571
itest: cover musig2 combine without all signatures ready
bhandras May 6, 2022
c4c188f
signer: fix crash when musig combine doesn't have final sig
bhandras May 5, 2022
bbe953d
docs: update release notes 0.15.0
bhandras May 5, 2022
5d8fba6
Merge pull request #6502 from bhandras/musig-fix
guggero May 6, 2022
a2db074
lnrpc: remove confirmation_height from PendingOpenChannel proto
tvolk131 May 6, 2022
a99da35
gitrelease-notes: update release notes for 0.15.0
tvolk131 May 6, 2022
10f7213
Merge pull request #6472 from tvolk131/document_confirmation_height
guggero May 9, 2022
8980471
chanfunding: support p2tr input fee calculation
guggero May 10, 2022
631b2af
btcwallet: support p2tr input info type detection
guggero May 10, 2022
18cf06d
chanfunding: fix sighash type for p2tr inputs
guggero May 10, 2022
e27a9fe
lntest: rename sendCoins to SendCoinsOfType
guggero May 10, 2022
fd7fe2a
itest: use SendCoinsUnconfirmed in funding test
guggero May 10, 2022
4fd43b4
itest: add new funding test with all input types
guggero May 10, 2022
066fe07
docs: add release notes
guggero May 10, 2022
ddeccf8
Merge pull request #6521 from guggero/p2tr-open-channel
guggero May 10, 2022
5e4d349
cmd/lncli: make hop hint inclusion opt-in for addinvoice
Roasbeef May 11, 2022
5a08788
multi: update btcwallet to v0.15.0
ellemouton Apr 28, 2022
c76d04e
multi: make ZmqReadDeadline configurable
ellemouton Apr 28, 2022
33e1f9b
routing/chainview: add bitcoind rpc polling test
ellemouton May 4, 2022
f766268
lnwallet/test: test against bitcoind-rpc-polling backend
ellemouton May 4, 2022
0459ccf
chainntnfs: test both zmq and rpc bitcoind modes
ellemouton May 4, 2022
7509af1
multi: add rpcpolling config options
orbitalturtle Mar 10, 2022
e789107
multi: new bitcoind rpcpolling backend for itests
ellemouton Mar 10, 2022
a4bd389
docs: update release notes
ellemouton Mar 18, 2022
0051e39
Merge pull request #6345 from ellemouton/bitcoind-rpc-polling
guggero May 11, 2022
5395a0f
rpcwallet: attempt to locate UTXO information in prev output fetcher
guggero Apr 27, 2022
99cda74
input: define new signing method constants
guggero Apr 27, 2022
630fc36
multi: introduce and use new TapTweak and SignMethod fields
Roasbeef Apr 27, 2022
0e098ed
mod: update to btcd/btcutil/psbt v1.1.4
guggero Apr 27, 2022
e4aa32f
btcwallet: prepare for supporting new signing methods
guggero Apr 27, 2022
0f32a44
btcwallet: support taproot key spend signing in PSBT
guggero Apr 27, 2022
35dd2d2
btcwallet: support taproot script signing in PSBT
guggero Apr 27, 2022
7f4e977
lntest+rpcwallet: support remote p2tr key spend signing
guggero Apr 27, 2022
d1a1510
lntest+rpcwallet: support remote p2tr script spend signing
guggero Apr 27, 2022
fe30b9e
itest: refactor PSBT signing itest
guggero Apr 28, 2022
6c495c1
itest: add Taproot PSBT signing tests
guggero Apr 28, 2022
cc6e864
docs: add release notes
guggero Apr 28, 2022
9f4f0e9
multi: avoid direct use of dcrec/secp256k1 library
guggero May 9, 2022
8dbf78f
Merge pull request #6523 from Roasbeef/hop-hints-opt-in
guggero May 11, 2022
c2adb03
Merge pull request #6450 from guggero/taproot-psbt
guggero May 11, 2022
3e51a7a
Makefile: Mobile builds: expose main sub-servers + set SUBSERVER_PREF…
kaloudis May 11, 2022
e9feefa
gen_bindings.sh: Mobile builds: expose main sub-servers by default
kaloudis May 11, 2022
dea15d5
mobile/README: explain new API objects for sub-servers in LND v0.15+
kaloudis May 11, 2022
e0d6b2d
docs: update release notes 0.15.0 - PR #6464
kaloudis May 11, 2022
8086ff4
Merge pull request #6464 from kaloudis/mobile-build-subservers
guggero May 11, 2022
228d53e
lnencrypt: Moves the crypto functions in the chanbackup package into …
gkrizek Jul 12, 2020
b980382
keychain: change KeyFamilyStaticBackup name to reflect its new, broad…
orbitalturtle Feb 2, 2022
dcb6e99
lntest+lnencrypt+chanbackup: move to mock key in lntest for testing
orbitalturtle Feb 2, 2022
1219ce5
lncfg+lnd+server+watchtower+tor: Add --tor.encryptkey flag functional…
gkrizek Nov 3, 2021
2d511e9
docs: Add a section in configuring_tor about the --tor.encryptkey flag
gkrizek Jul 12, 2020
59bd631
docs: update release notes
orbitalturtle Feb 4, 2022
a356e1b
lnd: refactor getTLSConfig
orbitalturtle Feb 8, 2022
38cfff4
config+lnd+cert: Add support in lnd for encrypting the TLS private key.
gkrizek Oct 30, 2021
c570988
docs: update release notes
orbitalturtle Feb 13, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 19 additions & 12 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
#### Pull Request Checklist

- [ ] All changes are Go version 1.16 compliant
- [ ] Your PR passes all CI checks. If a check cannot be passed for a justifiable reason, that reason must be stated in the commit message and PR description.
- [ ] If this is your first time contributing, we recommend you read the [Code Contribution Guidelines](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md)
- [ ] The code being submitted is commented according to [Code Documentation and Commenting](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md#CodeDocumentation)
- [ ] Commits have a logical structure according to [Ideal Git Commit Structure](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md#IdealGitCommitStructure)
- [ ] For new code: Code is accompanied by tests which exercise both the positive and negative (error paths) conditions (if applicable)
- [ ] For bug fixes: If possible, code is accompanied by new tests which trigger the bug being fixed to prevent regressions
- [ ] Any new logging statements use an appropriate subsystem and logging level
- [ ] For code and documentation: lines are wrapped at 80 characters (the tab character should be counted as 8 characters, not 4, as some IDEs do per default)
- [ ] A description of your changes [should be added to running the release notes](https://github.com/lightningnetwork/lnd/tree/master/docs/release-notes) for the milestone your change will land in.
## Change Description
Description of change / link to associated issue.

## Steps to Test
Steps for reviewers to follow to test the change.

## Pull Request Checklist
### Testing
- [ ] Your PR passes all CI checks.
- [ ] Tests covering the positive and negative (error paths) are included.
- [ ] Bug fixes contain tests triggering the bug to prevent regressions.

### Code Style and Documentation
- [ ] The change obeys the [Code Documentation and Commenting](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md#CodeDocumentation) guidelines, and lines wrap at 80.
- [ ] Commits follow the [Ideal Git Commit Structure](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md#IdealGitCommitStructure).
- [ ] Any new logging statements use an appropriate subsystem and logging level.
- [ ] [There is a change description in the release notes](https://github.com/lightningnetwork/lnd/tree/master/docs/release-notes), or `[skip ci]` in the commit message for small changes.

📝 Please see our [Contribution Guidelines](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md) for further guidance.
15 changes: 13 additions & 2 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ on:
push:
tags:
- 'v*'
schedule:
# Every day at midnight (UTC).
- cron: '0 0 * * *'

defaults:
run:
Expand All @@ -30,15 +33,23 @@ jobs:
password: ${{ secrets.DOCKER_API_KEY }}

- name: Set env
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
run: |
echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
echo "IMAGE_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV

- name: Set daily tag
if: github.event.schedule == '0 0 * * *'
run: |
echo "RELEASE_VERSION=master" >> $GITHUB_ENV
echo "IMAGE_TAG=daily-testing-$(date -u +%Y%m%d),${DOCKER_REPO}/${DOCKER_IMAGE}:daily-testing-only" >> $GITHUB_ENV

- name: Build and push
id: docker_build
uses: lightninglabs/gh-actions/[email protected]
with:
push: true
platforms: linux/amd64,linux/arm64
tags: "${{ env.DOCKER_REPO }}/${{ env.DOCKER_IMAGE }}:${{ env.RELEASE_VERSION }}"
tags: "${{ env.DOCKER_REPO }}/${{ env.DOCKER_IMAGE }}:${{ env.IMAGE_TAG }}"
build-args: checkout=${{ env.RELEASE_VERSION }}

- name: Image digest
Expand Down
12 changes: 8 additions & 4 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ env:
# go needs absolute directories, using the $HOME variable doesn't work here.
GOCACHE: /home/runner/work/go/pkg/build
GOPATH: /home/runner/work/go
BITCOIN_VERSION: 0.20.1
BITCOIN_VERSION: "23.0"

# If you change this value, please change it in the following files as well:
# /.travis.yml
# /Dockerfile
# /dev.Dockerfile
# /make/builder.Dockerfile
# /.github/workflows/release.yml
GO_VERSION: 1.17.1
GO_VERSION: 1.18

jobs:
########################
Expand Down Expand Up @@ -206,8 +206,9 @@ jobs:
matrix:
unit_type:
- btcd unit-cover
- unit tags="kvdb_etcd kvdb_postgres"
- travis-race
- unit tags="kvdb_etcd"
- unit tags="kvdb_postgres"
- btcd unit-race
steps:
- name: git checkout
uses: actions/checkout@v2
Expand Down Expand Up @@ -258,6 +259,8 @@ jobs:
args: backend=bitcoind
- name: bitcoind-notxindex
args: backend="bitcoind notxindex"
- name: bitcoind-rpcpolling
args: backend="bitcoind rpcpolling"
- name: bitcoind-etcd
args: backend=bitcoind dbbackend=etcd
- name: bitcoind-postgres
Expand Down Expand Up @@ -292,6 +295,7 @@ jobs:

- name: Zip log files on failure
if: ${{ failure() }}
timeout-minutes: 1 # timeout after 1 minute
run: 7z a logs-itest-${{ matrix.name }}.zip lntest/itest/**/*.log

- name: Upload log files on failure
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ env:
# /dev.Dockerfile
# /make/builder.Dockerfile
# /.github/workflows/main.yml
GO_VERSION: 1.17.1
GO_VERSION: 1.18

jobs:
main:
Expand Down Expand Up @@ -94,7 +94,7 @@ jobs:

Our release binaries are fully reproducible. Third parties are able to verify that the release binaries were produced properly without having to trust the release manager(s). See our [reproducible builds guide](https://github.com/lightningnetwork/lnd/tree/master/build/release) for how this can be achieved.
The release binaries are compiled with `go${{ env.GO_VERSION }}`, which is required by verifiers to arrive at the same ones.
They include the following build tags: `autopilotrpc`, `signrpc`, `walletrpc`, `chainrpc`, `invoicesrpc`, `routerrpc`, `watchtowerrpc` and `monitoring`. Note that these are already included in the release script, so they do not need to be provided.
They include the following build tags: `autopilotrpc`, `signrpc`, `walletrpc`, `chainrpc`, `invoicesrpc`, `neutrinorpc`, `routerrpc`, `watchtowerrpc`, `monitoring`, `peersrpc`, `kvdb_postrgres`, and `kvdb_etcd`. Note that these are already included in the release script, so they do not need to be provided.

The `make release` command can be used to ensure one rebuilds with all the same flags used for the release. If one wishes to build for only a single platform, then `make release sys=<OS-ARCH> tag=<tag>` can be used.

Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,6 @@ profile.tmp

# Coverage test
coverage.txt

# Visual Studio cache/options directory
.vs/
99 changes: 96 additions & 3 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,15 @@ run:
build-tags:
- autopilotrpc
- chainrpc
- dev
- invoicesrpc
- neutrinorpc
- peersrpc
- signrpc
- walletrpc
- watchtowerrpc
- kvdb_etcd
- kvdb_postgres

linters-settings:
govet:
Expand All @@ -27,6 +32,20 @@ linters-settings:
gofmt:
# simplify code: gofmt with `-s` option, true by default
simplify: true
tagliatelle:
case:
rules:
json: snake
whitespace:
multi-func: true
multi-if: true
gosec:
excludes:
- G402 # Look for bad TLS connection settings.
- G306 # Poor file permissions used when writing to a new file.
staticcheck:
go: "1.18"
checks: ["-SA1019"]

linters:
enable-all: true
Expand All @@ -38,25 +57,69 @@ linters:
# even longer by marking them as 'nolint'.
- lll

# We don't care (enough) about misaligned structs to lint that.
- maligned
# We want to allow short variable names.
- varnamelen

# We want to allow TODOs.
- godox

# We have long functions, especially in tests. Moving or renaming those would
# trigger funlen problems that we may not want to solve at that time.
- funlen

# Disable for now as we haven't yet tuned the sensitivity to our codebase
# yet. Enabling by default for example, would also force new contributors to
# yet. Enabling by default for example, would also force new contributors to
# potentially extensively refactor code, when they want to smaller change to
# land.
- gocyclo
- gocognit
- cyclop

# Instances of table driven tests that don't pre-allocate shouldn't trigger
# the linter.
- prealloc

# Init functions are used by loggers throughout the codebase.
- gochecknoinits

# Causes stack overflow, see https://github.com/polyfloyd/go-errorlint/issues/19.
- errorlint

# Deprecated linters. See https://golangci-lint.run/usage/linters/.
- interfacer
- golint
- maligned
- scopelint

# New linters that need a code adjustment first.
- wrapcheck
- nolintlint
- paralleltest
- tparallel
- testpackage
- gofumpt
- gomoddirectives
- ireturn
- maintidx
- nlreturn
- dogsled
- gci
- containedctx
- contextcheck
- errname
- exhaustivestruct
- goerr113
- gomnd
- ifshort
- noctx
- nestif
- wsl
- exhaustive
- forcetypeassert
- nilerr
- nilnil
- stylecheck
- thelper

issues:
# Only show newly introduced problems.
Expand All @@ -68,6 +131,36 @@ issues:
- path: _test\.go
linters:
- gosec
- path: test*
linters:
- gosec

# Allow duplicated code and fmt.Printf() in DB migrations.
- path: channeldb/migration*
linters:
- dupl
- forbidigo
- godot

# Allow duplicated code and fmt.Printf() in DB migration tests.
- path: channeldb/migtest
linters:
- dupl
- forbidigo
- godot

# Allow fmt.Printf() in lncli.
- path: cmd/lncli/*
linters:
- forbidigo

# Allow fmt.Printf() in config parsing.
- path: config\.go
linters:
- forbidigo
- path: lnd\.go
linters:
- forbidigo

# Fix false positives because of build flags in itest directory.
- path: lntest/itest/.*
Expand Down
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ go:
# /make/builder.Dockerfile
# /.github/workflows/main.yml
# /.github/workflows/release.yml
- "1.17.x"
- "1.18.x"

env:
global:
- GOCACHE=$HOME/.go-build
- BITCOIN_VERSION=0.20.1
- BITCOIN_VERSION="22.0"

sudo: required

Expand Down
5 changes: 3 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# /make/builder.Dockerfile
# /.github/workflows/main.yml
# /.github/workflows/release.yml
FROM golang:1.17.1-alpine as builder
FROM golang:1.18-alpine as builder

# Force Go to use the cgo based DNS resolver. This is required to ensure DNS
# queries required to connect to linked containers succeed.
Expand All @@ -14,13 +14,14 @@ ENV GODEBUG netdns=cgo
# image to be built from a specified Git state. The default image
# will use the Git tip of master by default.
ARG checkout="master"
ARG git_url="https://github.com/lightningnetwork/lnd"

# Install dependencies and build the binaries.
RUN apk add --no-cache --update alpine-sdk \
git \
make \
gcc \
&& git clone https://github.com/lightningnetwork/lnd /go/src/github.com/lightningnetwork/lnd \
&& git clone $git_url /go/src/github.com/lightningnetwork/lnd \
&& cd /go/src/github.com/lightningnetwork/lnd \
&& git checkout $checkout \
&& make release-install
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (C) 2015-2018 Lightning Labs and The Lightning Network Developers
Copyright (C) 2015-2022 Lightning Labs and The Lightning Network Developers

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
Loading