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

clightning: 0.6.2 -> 0.6.3 #53732

Merged
merged 1 commit into from Jan 15, 2019

Conversation

@jb55
Copy link
Contributor

commented Jan 10, 2019

Added

  • JSON API: New command check checks the validity of a JSON API call without running it.
  • JSON API: getinfo now returns num_peers num_pending_channels,
    num_active_channels and num_inactive_channels fields.
  • JSON API: use \n\n to terminate responses, for simplified parsing (pylightning now relies on this)
  • JSON API: fundchannel now includes an announce option, when false it will keep channel private. Defaults to true.
  • JSON API: listpeers's channels now includes a private flag to indicate if channel is announced or not.
  • Plugins: Added plugins to lightningd, including option passthrough and JSON-RPC passthrough.

Changed

  • JSON API: pay and decodepay accept and ignore lightning: prefixes.
  • pylightning: Allow either keyword arguments or positional arguments.
  • JSON-RPC: messages are now separated by 2 consecutive newlines.
  • JSON-RPC: jsonrpc:2.0 now included in json-rpc command calls. complies with spec.

Deprecated

Note: You should always set allow-deprecated-apis=false to test for
changes.

  • pylightning: Support for pre-2-newline JSON-RPC (<= 0.6.2 lightningd) is deprecated.

Removed

  • option_data_loss_protect is now only offered if EXPERIMENTAL_FEATURES is enabled, since it seems incompatible with lnd and has known bugs.

Fixed

  • JSON API: uppercase invoices now parsed correctly (broken in 0.6.2).
  • JSON API: commands are once again read even if one hasn't responded yet (broken in 0.6.2).
  • Protocol: allow lnd to send update_fee before funding_locked.
  • Protocol: fix limit on how much funder can send (fee was 1000x too small)
  • Protocol: don't send invalid onion errors if peer says onion was bad.
  • Protocol: don't crash when peer sends a 0-block-expiry HTLC.
  • pylightning: handle multiple simultanous RPC replies reliably.

Signed-off-by: William Casarin jb55@jb55.com

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@jb55 jb55 force-pushed the jb55:clightning-0.6.3rc1 branch from 3345852 to 7c87ac5 Jan 11, 2019

@jb55 jb55 changed the title clightning: 0.6.2 -> 0.6.3rc1 clightning: 0.6.2 -> 0.6.3 Jan 11, 2019

@jb55

This comment has been minimized.

Copy link
Contributor Author

commented Jan 11, 2019

cc @roconnor not sure who else to ping here 😅


with stdenv.lib;
stdenv.mkDerivation rec {
name = "clightning-${version}";
version = "0.6.2";
version = "0.6.3";

src = fetchFromGitHub {

This comment has been minimized.

Copy link
@jb55

jb55 Jan 11, 2019

Author Contributor

this should probably be using the official release zips now

This comment has been minimized.

Copy link
@jb55

jb55 Jan 11, 2019

Author Contributor

nm the zip releases are broken atm

@jb55 jb55 referenced this pull request Jan 11, 2019
@jonasnick

This comment has been minimized.

Copy link
Contributor

commented Jan 13, 2019

Doesn't work for me for the same reason as the test builder https://github.com/NixOS/nixpkgs/pull/53732/checks?check_run_id=48749093.

(Quite confusing that github wrongly says "All checks have passed")

@jb55

This comment has been minimized.

Copy link
Contributor Author

commented Jan 13, 2019

@jonasnick hmm weird, for some reason worked for me... fixing...

@jb55

This comment has been minimized.

Copy link
Contributor Author

commented Jan 13, 2019

@grahamc for some reason the nix-build -A clightning --argstr system x86_64-linux failed build returns neutral?

@jb55 jb55 force-pushed the jb55:clightning-0.6.3rc1 branch from 7c87ac5 to 4f1a16f Jan 13, 2019

clightning: 0.6.2 -> 0.6.3
[0.6.3] - 2019-01-09: "The Smallblock Conspiracy"

This release named by @molxyz and @ctrlbreak

Added

- JSON API: New command `check` checks the validity of a JSON API call without
  running it.
- JSON API: `getinfo` now returns `num_peers` `num_pending_channels`,
  `num_active_channels` and `num_inactive_channels` fields.
- JSON API: use `\n\n` to terminate responses, for simplified
  parsing (pylightning now relies on this)
- JSON API: `fundchannel` now includes an `announce` option, when false it will
  keep channel private. Defaults to true.
- JSON API: `listpeers`'s `channels` now includes a `private` flag to indicate
  if channel is announced or not.
- Plugins: experimental plugin support for `lightningd`, including option
  passthrough and JSON-RPC passthrough.

Changed

- JSON API: `pay` and `decodepay` accept and ignore `lightning:` prefixes.
- pylightning: Allow either keyword arguments or positional arguments.
- JSON-RPC: messages are now separated by 2 consecutive newlines.
- JSON-RPC: `jsonrpc`:`2.0` now included in json-rpc command calls. complies
  with spec.

Deprecated

Note: You should always set `allow-deprecated-apis=false` to test for
changes.

- pylightning: Support for pre-2-newline JSON-RPC (<= 0.6.2 lightningd) is
  deprecated.

Removed

- option_data_loss_protect is now only offered if EXPERIMENTAL_FEATURES is
  enabled, since it seems incompatible with lnd and has known bugs.

Fixed

- JSON API: uppercase invoices now parsed correctly (broken in 0.6.2).
- JSON API: commands are once again read even if one hasn't responded yet (broken in 0.6.2).
- Protocol: allow lnd to send `update_fee` before `funding_locked`.
- Protocol: fix limit on how much funder can send (fee was 1000x too small)
- Protocol: don't send invalid onion errors if peer says onion was bad.
- Protocol: don't crash when peer sends a 0-block-expiry HTLC.
- pylightning: handle multiple simultanous RPC replies reliably.

@jb55 jb55 force-pushed the jb55:clightning-0.6.3rc1 branch from 4f1a16f to ca67e65 Jan 13, 2019

@jb55

This comment has been minimized.

Copy link
Contributor Author

commented Jan 13, 2019

since github screwed up the range-diff, here's v1 -> v2

1:  114dd7ab3e0 ! 1:  e767a781d7b clightning: 0.6.2 -> 0.6.3
@@ -58,31 +58,43 @@
 @@
  { stdenv, python3, pkgconfig, which, libtool, autoconf, automake,
 -  autogen, sqlite, gmp, zlib, fetchFromGitHub, fetchpatch }:
-+  autogen, sqlite, gmp, zlib, fetchFromGitHub, git }:
++  autogen, sqlite, gmp, zlib, fetchzip }:
  
  with stdenv.lib;
  stdenv.mkDerivation rec {
    name = "clightning-${version}";
 -  version = "0.6.2";
-+  version = "0.6.3";
- 
-   src = fetchFromGitHub {
-     fetchSubmodules = true;
-     owner = "ElementsProject";
-     repo = "lightning";
-     rev = "v${version}";
+-
+-  src = fetchFromGitHub {
+-    fetchSubmodules = true;
+-    owner = "ElementsProject";
+-    repo = "lightning";
+-    rev = "v${version}";
 -    sha256 = "18yns0yyf7kc4p4n1crxdqh37j9faxkx216nh2ip7cxj4x8bf9gx";
-+    sha256 = "1c50z7f75m55mjcy6j9wwsv8s4mdmjxlzyal7zqx0a6yaqmq5ccz";
++  version = "0.6.3";
++
++  src = fetchzip {
++    #
++    # NOTE 0.6.3 release zip was bugged, this zip is a fix provided by the team
++    # https://github.com/ElementsProject/lightning/issues/2254#issuecomment-453791475
++    #
++    # replace url with:
++    #   https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip
++    # for future relases
++    #
++    url = "https://github.com/ElementsProject/lightning/files/2752675/clightning-v0.6.3.zip";
++    sha256 = "0k5pwimwn69pcakiq4a7qnjyf4i8w1jlacwrjazm1sfivr6nfiv6";
    };
  
    enableParallelBuilding = true;
- 
--  nativeBuildInputs = [ autoconf autogen automake libtool pkgconfig which ];
-+  nativeBuildInputs = [ git autoconf autogen automake libtool pkgconfig which ];
+@@
+   nativeBuildInputs = [ autoconf autogen automake libtool pkgconfig which ];
    buildInputs = [ sqlite gmp zlib python3 ];
  
-   makeFlags = [ "prefix=$(out)" ];
-@@
+-  makeFlags = [ "prefix=$(out)" ];
++  makeFlags = [ "prefix=$(out) VERSION=v${version}" ];
+ 
+   configurePhase = ''
      ./configure --prefix=$out --disable-developer --disable-valgrind
    '';
  
@jonasnick

This comment has been minimized.

Copy link
Contributor

commented Jan 13, 2019

awesome, that works

@jonasnick

This comment has been minimized.

Copy link
Contributor

commented Jan 15, 2019

Is there a way to prioritize a merge? This fixes a remote DoS which is a coin stealing vulnerability in the Lightning security model.

@Mic92

This comment has been minimized.

Copy link
Contributor

commented Jan 15, 2019

@GrahamcOfBorg build clightning

@Mic92 Mic92 merged commit 8349329 into NixOS:master Jan 15, 2019

12 of 13 checks passed

nix-build -A clightning --argstr system x86_64-darwin Build Results
Details
grahamcofborg-eval ^.^!
Details
grahamcofborg-eval-check-maintainers matching changed paths to changed attrs...
Details
grahamcofborg-eval-check-meta config.nix: checkMeta = true
Details
grahamcofborg-eval-nixos-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A manual
Details
grahamcofborg-eval-nixos-options nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A options
Details
grahamcofborg-eval-nixpkgs-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A manual
Details
grahamcofborg-eval-nixpkgs-tarball nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A tarball
Details
grahamcofborg-eval-nixpkgs-unstable-jobset nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A unstable
Details
grahamcofborg-eval-package-list nix-env -qa --json --file .
Details
grahamcofborg-eval-package-list-no-aliases nix-env -qa --json --file . --arg config { allowAliases = false; }
Details
nix-build -A clightning --argstr system aarch64-linux Build Results
Details
nix-build -A clightning --argstr system x86_64-linux Build Results
Details
@Mic92

This comment has been minimized.

Copy link
Contributor

commented Jan 15, 2019

backport:

[detached HEAD 2db6bf88a9b] clightning: 0.6.1 -> 0.6.2
 Author: William Casarin <jb55@jb55.com>
 Date: Sat Nov 17 14:54:03 2018 -0800
 1 file changed, 12 insertions(+), 3 deletions(-)
Press Enter to continue
[detached HEAD 7ee5f604387] clightning: split native build inputs
 Author: Renaud <c0bw3b@users.noreply.github.com>
 Date: Thu Nov 22 19:16:36 2018 +0100
 1 file changed, 2 insertions(+), 1 deletion(-)
Press Enter to continue
[detached HEAD de3cb685f1c] clightning: 0.6.2 -> 0.6.3
 Author: William Casarin <jb55@jb55.com>
 Date: Wed Jan 9 14:34:19 2019 -0800
 1 file changed, 15 insertions(+), 19 deletions(-)
Press Enter to continue
@jb55

This comment has been minimized.

Copy link
Contributor Author

commented Jan 15, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.