Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
This release is the second minor release for the application! Several bugs have been fixed on the backend. Additionally, the UI has received a few minimal updates, making the application much easier to use and understand.
NOTE: the version of
lnd packaged includes a breaking change. As a result, before updating we recommend that users close out all their active channels, and also transfer any testnet coins they wish to hold onto to an external wallet before updating.
Before updating, users will need to remove all data from
lnd's home data directory. This is required as there have been some breaking changes in
neutrino, the light client that
lnd uses to interact with Bitcoin's test network. Depending on your operating system, the data directory will be found in a different location on the file system:
Verifying the Release
In order to verify the release, you'll need to have
gpg2 installed on your system. Once you've obtained a copy (and hopefully verified that as well), you'll first need to import
roasbeef's key if you haven't done so already:
curl https://keybase.io/roasbeef/pgp_keys.asc | gpg --import
The keybase page of
roasbeef includes several attestations across distinct platforms in order to provoide a degree of confidence that this release was really signed by "roasbeef".
Once you have his PGP key you can verify the release (assuming
manifest-v0.1.2-alpha.txt.gpg are in the current directory) with:
gpg --verify manifest-v0.1.2-alpha.txt.sig
That will verify the signature on the main manifest page which ensures integrity and authenticity of the binaries you've downloaded locally. Next, depending on your operating system you should then re-calculate the
sha256 sum of the binary, and compare that with the following hashes (which are included in the manifest file):
65bcc48822af6b1ad8ab91847d8b836cc3619950ca0610ba2949eb036066e3f8 Lightning-darwin-x64v0.1.2.zip f9b1e0d5de8b1e09ca0c50805a704fa5ed87e6aa9beb96854da35708fd4a1645 Lightning-linux-x64v0.1.2.tar.gz e71fa98c21234a82863f60d75a31a983c67b75ebb97fc3c7b641b095f015099a Lightning-win32-x64v0.1.2.zip
One can use the
shasum -a 256 <file name here> tool in order to re-compute the
sha256 hash of the target binary for your operating system. The produced hash should be compared with the hashes listed above and they should match exactly.
This release can also be found in
roasbeef's public keybase folder.
Full txid's and public keys are now properly displayed within the UI. Previously, they would be cut off short by a trailing ellipsis, rendering them unable to be properly copied.
Commas have been inserted in all instances where satoshis are displayed for better readability for users. Additionally, minor UI tweaks have been made to ensure the currency units no longer wrap around in certain viewport sizes.
It is now possible to right click on-chain addresses, and payment requests as w'eve added a proper right-click context menu to them. On certain operating systems, the prior "click to copy into paste buffer" would not always properly work. This fix has been extended to the the menu when creating channels, in order to allow users to paste in values for any of the fields.
The application will now properly utilize the macaroons feature of
lnd when making RPC requests. As a result, the
lnd instance started will now automatically fully enforce the presentation of the appropriate macaroon credential when making RPC requests.
When running the application in dev mode,
lnd will now properly read the
lnd.conf from the default data directory. This allows developers to experiment with different configurations, and even point their dev instance at a local
btcd node using the RPC mode.
node.js is now disabled within the rendering process. This reduces the attack suerfce as it is no longer possible to access the main process from the rendering process via arbitrary `node.js code.
A DNS fallback has been added which will attempt the DNS query of TCP if UDP initially fails. The DNS resolvers of many users would filter out the response to our
SRV record as they were too large for many resolvers.
lnd will now detect if the initial request fails, and will fallback to a TCP based DNS resolution instead.
Payment requests have been updated to take into account a recent change within the
lightning-rfc set of specifications. The receiver will now manually specify a CLTV expiry delta value to use for the final hop. As a result, if you receive a payment request from an updated receiver, you may be unable to complete the payment as they have a distinct policy.
A bug in the way fees were calculated for multi-hop transactions has been fixed. The existence of this bug would at times render users unable to complete a multi-hop payment with a path length greater than 3.
The state machine that handles channel updates has been modified slightly to use a different scheme to assign identifiers to each HTLC. As a result, users will be unable to complete channel updates on their existing channels, and may also be unable to update newly opened channels, if they're extended to an un upgraded node.
Several possible deadlock scenarios within the peer management logic have been addressed, eliminating a large class of peer related application freezes.
lnd will now properly handle re-orgs on-chain. This means that if a channel is re-org'd out,
lnd will no longer interpret it as being active and routable.
neutrino has been updated to a new version which properly implements the new light client protocol as specified within the updated BIP. As a result, if old clients were manually pointed at an un-updated
btcd node, then after this update they may not be able to sync, as the protocol messages have changed slightly.
Contributors (Alphabetical Order):
- Brijan (DaReaper)
- Bryan Vu
- Case Sandberg
- Jason Tanner