about summary refs log tree commit diff
path: root/pkgs/development/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools')
-rw-r--r--pkgs/development/tools/alloy/default.nix8
-rw-r--r--pkgs/development/tools/ameba/default.nix42
-rw-r--r--pkgs/development/tools/ammonite/default.nix1
-rw-r--r--pkgs/development/tools/analysis/bingrep/default.nix9
-rw-r--r--pkgs/development/tools/analysis/brakeman/default.nix8
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix5
-rw-r--r--pkgs/development/tools/analysis/nix-linter/default.nix45
-rw-r--r--pkgs/development/tools/analysis/oclgrind/default.nix4
-rw-r--r--pkgs/development/tools/analysis/rr/default.nix1
-rw-r--r--pkgs/development/tools/analysis/tflint/default.nix7
-rw-r--r--pkgs/development/tools/analysis/tfsec/default.nix22
-rw-r--r--pkgs/development/tools/analysis/valgrind/default.nix3
-rw-r--r--pkgs/development/tools/apktool/default.nix4
-rw-r--r--pkgs/development/tools/aws-sam-cli/default.nix22
-rw-r--r--pkgs/development/tools/azcopy/default.nix22
-rw-r--r--pkgs/development/tools/azcopy/deps.nix129
-rw-r--r--pkgs/development/tools/build-managers/apache-maven/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_rc.patch13
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix64
-rw-r--r--pkgs/development/tools/build-managers/bazel/src-deps.json16
-rw-r--r--pkgs/development/tools/build-managers/bazel/strict_action_env.patch13
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix13
-rw-r--r--pkgs/development/tools/build-managers/kati/default.nix23
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix12
-rw-r--r--pkgs/development/tools/build-managers/meson/fix-objc-linking.patch22
-rw-r--r--pkgs/development/tools/build-managers/meson/fix-rpath.patch47
-rw-r--r--pkgs/development/tools/build-managers/meson/gir-fallback-path.patch6
-rw-r--r--pkgs/development/tools/build-managers/mill/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/qbs/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/buildah/default.nix10
-rw-r--r--pkgs/development/tools/buildah/disable-go-module-mode.patch33
-rw-r--r--pkgs/development/tools/buildpack/default.nix10
-rw-r--r--pkgs/development/tools/ccloud-cli/default.nix33
-rw-r--r--pkgs/development/tools/chefdk/default.nix2
-rw-r--r--pkgs/development/tools/clang-tools/wrapper2
-rw-r--r--pkgs/development/tools/cmake-format/default.nix4
-rw-r--r--pkgs/development/tools/conftest/default.nix8
-rw-r--r--pkgs/development/tools/continuous-integration/fly/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/gocd-agent/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/gocd-server/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/cue/default.nix4
-rw-r--r--pkgs/development/tools/database/pgcli/default.nix13
-rw-r--r--pkgs/development/tools/doctl/default.nix6
-rw-r--r--pkgs/development/tools/erlang/hex2nix/default.nix21
-rw-r--r--pkgs/development/tools/flyway/default.nix14
-rw-r--r--pkgs/development/tools/godot/default.nix4
-rw-r--r--pkgs/development/tools/grabserial/default.nix4
-rw-r--r--pkgs/development/tools/hcloud/default.nix20
-rw-r--r--pkgs/development/tools/hcloud/deps.nix111
-rw-r--r--pkgs/development/tools/irony-server/default.nix14
-rw-r--r--pkgs/development/tools/jazzy/Gemfile.lock10
-rw-r--r--pkgs/development/tools/jazzy/gemset.nix20
-rw-r--r--pkgs/development/tools/kind/default.nix13
-rw-r--r--pkgs/development/tools/kind/deps.nix393
-rw-r--r--pkgs/development/tools/kubectx/default.nix4
-rw-r--r--pkgs/development/tools/kubeprompt/default.nix31
-rw-r--r--pkgs/development/tools/lazygit/default.nix6
-rw-r--r--pkgs/development/tools/micronaut/default.nix4
-rw-r--r--pkgs/development/tools/misc/binutils/default.nix34
-rw-r--r--pkgs/development/tools/misc/ccls/default.nix4
-rw-r--r--pkgs/development/tools/misc/direvent/default.nix21
-rw-r--r--pkgs/development/tools/misc/elfkickers/default.nix4
-rw-r--r--pkgs/development/tools/misc/gdb/default.nix10
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix2
-rw-r--r--pkgs/development/tools/misc/mkcert/default.nix14
-rw-r--r--pkgs/development/tools/misc/pwndbg/default.nix2
-rw-r--r--pkgs/development/tools/misc/reviewdog/default.nix8
-rw-r--r--pkgs/development/tools/misc/scc/default.nix6
-rw-r--r--pkgs/development/tools/misc/sqitch/default.nix6
-rw-r--r--pkgs/development/tools/misc/strace/default.nix6
-rw-r--r--pkgs/development/tools/misc/uncrustify/default.nix8
-rw-r--r--pkgs/development/tools/misc/usb-modeswitch/data.nix4
-rw-r--r--pkgs/development/tools/misc/usb-modeswitch/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/crunch/default.nix28
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix7
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix6
-rw-r--r--pkgs/development/tools/ocaml/merlin/default.nix14
-rw-r--r--pkgs/development/tools/ocaml/ocaml-top/default.nix12
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/default.nix14
-rw-r--r--pkgs/development/tools/ofono-phonesim/default.nix21
-rw-r--r--pkgs/development/tools/ofono-phonesim/qt5-compat.patch48
-rw-r--r--pkgs/development/tools/overcommit/Gemfile2
-rw-r--r--pkgs/development/tools/overcommit/Gemfile.lock17
-rw-r--r--pkgs/development/tools/overcommit/default.nix15
-rw-r--r--pkgs/development/tools/overcommit/gemset.nix33
-rw-r--r--pkgs/development/tools/packer/default.nix4
-rw-r--r--pkgs/development/tools/parsing/byacc/default.nix4
-rw-r--r--pkgs/development/tools/phantomjs2/default.nix4
-rw-r--r--pkgs/development/tools/profiling/EZTrace/default.nix2
-rw-r--r--pkgs/development/tools/profiling/pyflame/default.nix143
-rw-r--r--pkgs/development/tools/purescript/spago/default.nix47
-rw-r--r--pkgs/development/tools/pypi2nix/default.nix8
-rw-r--r--pkgs/development/tools/rubocop/Gemfile.lock6
-rw-r--r--pkgs/development/tools/rubocop/gemset.nix12
-rw-r--r--pkgs/development/tools/rust/bindgen/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-crev/default.nix26
-rw-r--r--pkgs/development/tools/rust/cargo-expand/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-geiger/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-make/Cargo.lock276
-rw-r--r--pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-raze/default.nix4
-rw-r--r--pkgs/development/tools/rust/cargo-xbuild/default.nix4
-rw-r--r--pkgs/development/tools/rust/rustup/default.nix8
-rw-r--r--pkgs/development/tools/simavr/default.nix4
-rw-r--r--pkgs/development/tools/skaffold/default.nix8
-rw-r--r--pkgs/development/tools/vagrant/default.nix4
-rw-r--r--pkgs/development/tools/vagrant/gemset.nix181
-rw-r--r--pkgs/development/tools/vim-vint/default.nix27
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch (renamed from pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock-for-rustPlatform.buildRustPackage-in-.patch)978
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/default.nix8
-rw-r--r--pkgs/development/tools/yarn/default.nix4
114 files changed, 1950 insertions, 1588 deletions
diff --git a/pkgs/development/tools/alloy/default.nix b/pkgs/development/tools/alloy/default.nix
index 056bbd859164..0b34055274d0 100644
--- a/pkgs/development/tools/alloy/default.nix
+++ b/pkgs/development/tools/alloy/default.nix
@@ -59,14 +59,14 @@ in rec {
     };
   };
 
-  alloy5 = let version = "5.0.0.1"; in generic {
+  alloy5 = let version = "5.1.0"; in generic {
     major = "5";
     inherit version;
     src = fetchurl {
-      sha256 = "0kz6i9av9ksjk62lx0dxx8xr542iqvbqd14m1f9h8xpf72c25xw4";
-      url = "https://github.com/AlloyTools/org.alloytools.alloy/releases/download/v${version}/Alloy-${version}.jar";
+      sha256 = "02k9khs4k5nc86x9pp5k3vcb0kiwdgcin46mlap4fycnr673xd53";
+      url = "https://github.com/AlloyTools/org.alloytools.alloy/releases/download/v${version}/org.alloytools.alloy.dist.jar";
     };
   };
 
-  alloy = alloy4;
+  alloy = alloy5;
 }
diff --git a/pkgs/development/tools/ameba/default.nix b/pkgs/development/tools/ameba/default.nix
new file mode 100644
index 000000000000..5ac6c5afa913
--- /dev/null
+++ b/pkgs/development/tools/ameba/default.nix
@@ -0,0 +1,42 @@
+{ stdenv, lib, fetchFromGitHub, crystal, shards }:
+
+stdenv.mkDerivation rec {
+  pname = "ameba";
+  version = "0.11.0";
+
+  src = fetchFromGitHub {
+    owner  = "crystal-ameba";
+    repo   = "ameba";
+    rev    = "v${version}";
+    sha256 = "0zjv59f555q2w8ahrvmpdzasrifwjgr0mk6rly9yss4ab3rj8cy2";
+  };
+
+  nativeBuildInputs = [ crystal shards ];
+
+  buildPhase = ''
+    runHook preBuild
+    shards build --release
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm755 -t $out/bin bin/ameba
+    runHook postInstall
+  '';
+
+  doCheck = true;
+
+  checkPhase = ''
+    runHook preCheck
+    crystal spec
+    runHook postCheck
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A static code analysis tool for Crystal";
+    homepage = https://crystal-ameba.github.io;
+    license = licenses.mit;
+    maintainers = with maintainers; [ kimburgess ];
+  };
+}
diff --git a/pkgs/development/tools/ammonite/default.nix b/pkgs/development/tools/ammonite/default.nix
index ad33edf004f0..69e81596574b 100644
--- a/pkgs/development/tools/ammonite/default.nix
+++ b/pkgs/development/tools/ammonite/default.nix
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
     sed -i '0,/java/{s|java|${jre}/bin/java|}' $out/bin/amm
   '' + optionalString (disableRemoteLogging) ''
     sed -i '0,/ammonite.Main/{s|ammonite.Main|ammonite.Main --no-remote-logging|}' $out/bin/amm
+    sed -i '1i #!/bin/sh' $out/bin/amm
   '';
 
   meta = {
diff --git a/pkgs/development/tools/analysis/bingrep/default.nix b/pkgs/development/tools/analysis/bingrep/default.nix
index 5fd6b402e0b0..2367e197f849 100644
--- a/pkgs/development/tools/analysis/bingrep/default.nix
+++ b/pkgs/development/tools/analysis/bingrep/default.nix
@@ -2,17 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bingrep";
-  version = "0.7.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "m4b";
     repo = pname;
-    # Currently doesn't tag versions so we're using the raw revision
-    rev = "33d56a4b020c4a3c111294fe41c613d5e8e9c7af";
-    sha256 = "0lg92wqknr584b44i5v4f97js56j89z7n8p2zpm8j1pfhjmgcigs";
+    rev = "v${version}";
+    sha256 = "1xig3lrw0jdaxibzirqnm50l8nj4si9pa9w0jypmyhf1lr6yzd0g";
   };
 
-  cargoSha256 = "1yxm7waldhilx7wh1ag79rkp8kypb9k1px4ynmzq11r72yl2p4m7";
+  cargoSha256 = "1fsp1ycfswrzldwnjw5cdwi809fd37pwshvrpf7sp0wmzx2bqhgm";
 
   meta = with stdenv.lib; {
     description = "Greps through binaries from various OSs and architectures, and colors them";
diff --git a/pkgs/development/tools/analysis/brakeman/default.nix b/pkgs/development/tools/analysis/brakeman/default.nix
index 121e1597eb77..edf37efbce99 100644
--- a/pkgs/development/tools/analysis/brakeman/default.nix
+++ b/pkgs/development/tools/analysis/brakeman/default.nix
@@ -4,13 +4,13 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "brakeman";
-  version = "4.7.1";
-  source.sha256 = "149ny2n82hzxw4g8xnimjavs2niq14wl9kwq8zlvadavdg4g9ind";
+  version = "4.7.2";
+  source.sha256 = "1j1svldxvbl27kpyp9yngfwa0fdqal926sjk0cha7h520wvnz79k";
 
   meta = with lib; {
     description = "Static analysis security scanner for Ruby on Rails";
-    homepage = https://brakemanscanner.org/;
-    license = [ licenses.cc-by-nc-sa-40 licenses.mit ];
+    homepage = "https://brakemanscanner.org/";
+    license = [ licenses.unfreeRedistributable ];
     platforms = ruby.meta.platforms;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index 2ecb660ff846..009458d41767 100644
--- a/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  version = "8.26";
+  version = "8.27";
   pname = "checkstyle";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "0q0jb0ip78vai2qcig51lgp9pbb4bsg9wlwjxq0gm61icbxw6vy3";
+    sha256 = "1x3klaww0x5ql0jrqfmirni7jbph4hybmkslc268f6knsbs5lijl";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 3fa2dabdcb0c..ecd8f3a17ec9 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.112.0";
+  version = "0.114.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "1l8aahvlj9hk93snvrqm7r0mxj5iw244q72s6wallsqm7j4g967h";
+    sha256 = "1dkp3v898b5vd0a9fl5xknwbbqv23v0icqml8ypyhzrv6wz5qiy3";
   };
 
   installPhase = ''
@@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A static type checker for JavaScript";
     homepage = https://flow.org/;
+    changelog = "https://github.com/facebook/flow/releases/tag/v${version}";
     license = licenses.mit;
     platforms = ocamlPackages.ocaml.meta.platforms;
     maintainers = with maintainers; [ marsam puffnfresh ];
diff --git a/pkgs/development/tools/analysis/nix-linter/default.nix b/pkgs/development/tools/analysis/nix-linter/default.nix
new file mode 100644
index 000000000000..5895be0208b5
--- /dev/null
+++ b/pkgs/development/tools/analysis/nix-linter/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, parallel-io
+, fixplate
+, pandoc
+, tasty
+, tasty-hunit
+, tasty-th
+, streamly
+, mtl
+, path-io
+, path
+, pretty-terminal
+, text
+, base
+, aeson
+, cmdargs
+, containers
+, hnix
+, bytestring
+}:
+
+mkDerivation rec {
+  pname = "nix-linter-unstable";
+  version = "2019-04-26";
+
+  src = fetchFromGitHub {
+    owner = "Synthetica9";
+    repo = "nix-linter";
+    rev = "4aaf60195cd2d9f9e2345fbdf4aac48e1451292c";
+    sha256 = "0c7rcjaxd8z0grwambsw46snv7cg66h3pszw3549z4xz0i60yq87";
+  };
+
+  isLibrary = false;
+  isExecutable = true;
+  libraryHaskellDepends = [ parallel-io fixplate pandoc ];
+  executableHaskellDepends = [ streamly mtl path-io path pretty-terminal text base aeson cmdargs containers hnix bytestring ];
+  testHaskellDepends = [ tasty tasty-hunit tasty-th ];
+
+  description = "Linter for Nix(pkgs), based on hnix";
+  homepage = "https://github.com/Synthetica9/nix-linter";
+  license = lib.licenses.bsd3;
+  maintainers = [ lib.maintainers.marsam ];
+}
diff --git a/pkgs/development/tools/analysis/oclgrind/default.nix b/pkgs/development/tools/analysis/oclgrind/default.nix
index 4d1b22a72b5c..f5e649d0354c 100644
--- a/pkgs/development/tools/analysis/oclgrind/default.nix
+++ b/pkgs/development/tools/analysis/oclgrind/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "oclgrind";
-  version = "18.3"; # see comment in all-packages.nix
+  version = "19.10";
 
   src = fetchFromGitHub {
     owner = "jrprice";
     repo = "oclgrind";
     rev = "v${version}";
-    sha256 = "0s42z3dg684a0gk8qyx2h08cbh95zkrdaaj9y71rrc5bjsg8197x";
+    sha256 = "12v5z5x3ls26p3y3yc4mqmh12cazc0nlrwvmfbn6cyg4af9dp0zn";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/analysis/rr/default.nix b/pkgs/development/tools/analysis/rr/default.nix
index 844fd38d9be6..a8d95eb05deb 100644
--- a/pkgs/development/tools/analysis/rr/default.nix
+++ b/pkgs/development/tools/analysis/rr/default.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     cmake libpfm zlib python2Packages.python python2Packages.pexpect which procps gdb capnproto
   ];
+  propagatedBuildInputs = [ gdb ]; # needs GDB to replay programs at runtime
   cmakeFlags = [
     "-DCMAKE_C_FLAGS_RELEASE:STRING="
     "-DCMAKE_CXX_FLAGS_RELEASE:STRING="
diff --git a/pkgs/development/tools/analysis/tflint/default.nix b/pkgs/development/tools/analysis/tflint/default.nix
index 65a5539028cc..79dedb3afba1 100644
--- a/pkgs/development/tools/analysis/tflint/default.nix
+++ b/pkgs/development/tools/analysis/tflint/default.nix
@@ -2,22 +2,23 @@
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.13.1";
+  version = "0.13.3";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ivvx1nbhzijyiv9q05b5953wxga5wdskamnhfvlwpniabic3gxi";
+    sha256 = "13azczm5lg9v5mvf1jx165qy2nj2941qlr9vvxa7q3gqmhxcg271";
   };
 
-  modSha256 = "0q1sc0bj4a29rzly4fk6m40b8i7syxa7ff9882jwi7gxjdiklch3";
+  modSha256 = "0xckzyfc144bc212amw1n63jkmdljbmj0rq0midr37h6bg5a10q3";
 
   subPackages = [ "." ];
 
   meta = with lib; {
     description = "Terraform linter focused on possible errors, best practices, and so on";
     homepage = "https://github.com/terraform-linters/tflint";
+    changelog = "https://github.com/terraform-linters/tflint/releases/tag/v${version}";
     license = licenses.mpl20;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/pkgs/development/tools/analysis/tfsec/default.nix b/pkgs/development/tools/analysis/tfsec/default.nix
new file mode 100644
index 000000000000..953e9f5b95af
--- /dev/null
+++ b/pkgs/development/tools/analysis/tfsec/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "tfsec";
+  version = "0.13.0";
+
+  src = fetchFromGitHub {
+    owner = "liamg";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1nv7wdchbgf3y265kghhy8rbyvbs03ys5gv9622v0f2kswscy9xl";
+  };
+
+  goPackagePath = "github.com/liamg/tfsec";
+
+  meta = with lib; {
+    homepage = "https://github.com/liamg/tfsec";
+    description = "Static analysis powered security scanner for your terraform code";
+    license = licenses.mit;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/development/tools/analysis/valgrind/default.nix b/pkgs/development/tools/analysis/valgrind/default.nix
index b5abff94c796..8e2db5caab1b 100644
--- a/pkgs/development/tools/analysis/valgrind/default.nix
+++ b/pkgs/development/tools/analysis/valgrind/default.nix
@@ -16,6 +16,9 @@ stdenv.mkDerivation rec {
   # Perl is needed for `callgrind_{annotate,control}'.
   buildInputs = [ gdb perl ]  ++ stdenv.lib.optionals (stdenv.isDarwin) [ bootstrap_cmds xnu ];
 
+  # Perl is also a native build input.
+  nativeBuildInputs = [ perl ];
+
   enableParallelBuilding = true;
   separateDebugInfo = stdenv.isLinux;
 
diff --git a/pkgs/development/tools/apktool/default.nix b/pkgs/development/tools/apktool/default.nix
index 56f9f98856cc..76037f98e1b5 100644
--- a/pkgs/development/tools/apktool/default.nix
+++ b/pkgs/development/tools/apktool/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "apktool";
-  version = "2.4.0";
+  version = "2.4.1";
 
   src = fetchurl {
     urls = [
       "https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_${version}.jar"
       "https://github.com/iBotPeaches/Apktool/releases/download/v${version}/apktool_${version}.jar"
     ];
-    sha256 = "1hdwgsw3ggmdzv523wq037kjxhxqp1xq8n8m1qb22vvdj7l1dwd0";
+    sha256 = "0ljsh8nx065isnyzzrwddypikkfhyqsww0w02cgwgh8x3lhndsxx";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/development/tools/aws-sam-cli/default.nix b/pkgs/development/tools/aws-sam-cli/default.nix
index 67abd284952d..43cb26a30d86 100644
--- a/pkgs/development/tools/aws-sam-cli/default.nix
+++ b/pkgs/development/tools/aws-sam-cli/default.nix
@@ -5,12 +5,11 @@
 let
   py = python.override {
     packageOverrides = self: super: {
-
-      aws-sam-translator = super.aws-sam-translator.overridePythonAttrs (oldAttrs: rec {
-        version = "1.14.0";
+      flask = super.flask.overridePythonAttrs (oldAttrs: rec {
+        version = "1.0.2";
         src = oldAttrs.src.override {
           inherit version;
-          sha256 = "1cghn1m7ana9s8kyg61dwp9mrism5l04vy5rj1wnmksz8vzmnq9w";
+          sha256 = "0j6f4a9rpfh25k1gp7azqhnni4mb4fgy50jammgjgddw1l3w0w92";
         };
       });
 
@@ -34,11 +33,11 @@ with py.pkgs;
 
 buildPythonApplication rec {
   pname = "aws-sam-cli";
-  version = "0.22.0";
+  version = "0.34.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1flbvqlj5llz7nrszmcf00v2a1pa36alv90r1l8lwn8zid5aabkn";
+    sha256 = "1ndgcbd6zr23lvmqn4wikgvnlwl0gj0wgyawaspwm3b0jlvxadik";
   };
 
   # Tests are not included in the PyPI package
@@ -58,14 +57,17 @@ buildPythonApplication rec {
     requests
     serverlessrepo
     six
+    tomlkit
   ];
 
   # fix over-restrictive version bounds
   postPatch = ''
-    substituteInPlace requirements/base.txt --replace "requests==2.20.1" "requests==2.22.0"
-    substituteInPlace requirements/base.txt --replace "serverlessrepo==0.1.9" "serverlessrepo~=0.1.9"
-    substituteInPlace requirements/base.txt --replace "six~=1.11.0" "six~=1.12.0"
-    substituteInPlace requirements/base.txt --replace "PyYAML~=3.12" "PyYAML~=5.1"
+    substituteInPlace requirements/base.txt \
+      --replace "requests==2.20.1" "requests==2.22.0" \
+      --replace "serverlessrepo==0.1.9" "serverlessrepo~=0.1.9" \
+      --replace "six~=1.11.0" "six~=1.12.0" \
+      --replace "python-dateutil~=2.6, <2.8.1" "python-dateutil~=2.6" \
+      --replace "PyYAML~=3.12" "PyYAML~=5.1"
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/azcopy/default.nix b/pkgs/development/tools/azcopy/default.nix
index 403d0ab745a9..e3e85ffcd406 100644
--- a/pkgs/development/tools/azcopy/default.nix
+++ b/pkgs/development/tools/azcopy/default.nix
@@ -1,20 +1,24 @@
-{ stdenv, fetchFromGitHub, buildGoPackage }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "azure-storage-azcopy";
-  version = "10.0.1-pre";
-  revision = "10.0.1";
-  goPackagePath = "github.com/Azure/azure-storage-azcopy";
-
-  goDeps= ./deps.nix;
+  version = "10.3.2";
 
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-storage-azcopy";
-    rev = revision;
-    sha256 = "0v1qli01nnx81186q1d2556w457qkbwypq6yy89ns52pqg941arp";
+    rev = "v${version}";
+    sha256 = "0n4yns81kwwx725smsgqg8hc693ygqlzrgkqdrhrfszkpm205479";
   };
 
+  subPackages = [ "." ];
+
+  modSha256 = "07cy2zi7m2pkbfdcy659x4k5j2w60cmjy8kxv1dcii3dc6ls4bvb";
+
+  postInstall = ''
+    ln -rs "$out/bin/azure-storage-azcopy" "$out/bin/azcopy"
+  '';
+
   meta = with stdenv.lib; {
     maintainers = with maintainers; [ colemickens ];
     license = licenses.mit;
diff --git a/pkgs/development/tools/azcopy/deps.nix b/pkgs/development/tools/azcopy/deps.nix
deleted file mode 100644
index cef400200d06..000000000000
--- a/pkgs/development/tools/azcopy/deps.nix
+++ /dev/null
@@ -1,129 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "github.com/Azure/azure-pipeline-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-pipeline-go";
-      rev =  "7571e8eb0876932ab505918ff7ed5107773e5ee2";
-      sha256 = "0i8n7jna9prq3zdbj0bsr1ha271lgg9233n71dw8li5qsiyg8bs2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-storage-blob-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-storage-blob-go";
-      rev =  "197d1c0aea1b9eedbbaee0a1a32bf81e879bde80";
-      sha256 = "0wslfah8x1i5l98ss4wxv47ddxfp8mbc90cnfi81v7qnf0bpjp2g";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-storage-file-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-storage-file-go";
-      rev =  "9227fd295d972e4395fd601e6f48cee2f5cda02b";
-      sha256 = "0sr5iqiddjs2lnma5ixrrdik9zciqqd74priivvpycgi3cyxyxyn";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/go-autorest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/go-autorest";
-      rev =  "39013ecb48eaf6ced3f4e3e1d95515140ce6b3cf";
-      sha256 = "1cbf1ay68lghr4swy2a0asfcjpzkamvz1cqxpdm6691b76j2x6cm";
-    };
-  }
-  {
-    goPackagePath  = "github.com/JeffreyRichter/enum";
-    fetch = {
-      type = "git";
-      url = "https://github.com/JeffreyRichter/enum";
-      rev =  "2567042f9cda26772f0afe08bab6e5105745f298";
-      sha256 = "1d2sjjlp0r2ynk1fb3sb7dgbqzbq4czipb7ffm9zdmjbz0gp6crr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/dgrijalva/jwt-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgrijalva/jwt-go";
-      rev =  "06ea1031745cb8b3dab3f6a236daf2b0aa468b7e";
-      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/inconshreveable/mousetrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/inconshreveable/mousetrap";
-      rev =  "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
-      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jiacfan/keychain";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jiacfan/keychain";
-      rev =  "55285221316b0547171a4258015906e3a4da4721";
-      sha256 = "0nfpmqmj33953awysp1948y6k28cmh4770q0i60jv88k35p10s56";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jiacfan/keyctl";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jiacfan/keyctl";
-      rev =  "988d05162bc59cf7789c35af405be8f1599a87a3";
-      sha256 = "1q4svv9z3s3n2x4ff8cyr53g5ln1yfrcmc3bvznhhwq190dhm94c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kr/pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pretty";
-      rev =  "73f6ac0b30a98e433b289500d779f50c1a6f0712";
-      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kr/text";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/text";
-      rev =  "e2ffdb16a802fe2bb95e2e35ff34f0e53aeef34f";
-      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev =  "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
-      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev =  "9a97c102cda95a86cec2345a6f09f55a939babf5";
-      sha256 = "005598piihl3l83a71ahj10cpq9pbhjck4xishx1b4dzc02r9xr2";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/check.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-check/check";
-      rev =  "788fd78401277ebd861206a03c884797c6ec5541";
-      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
-    };
-  }
-]
\ No newline at end of file
diff --git a/pkgs/development/tools/build-managers/apache-maven/default.nix b/pkgs/development/tools/build-managers/apache-maven/default.nix
index 89103ee540c5..9194eda33616 100644
--- a/pkgs/development/tools/build-managers/apache-maven/default.nix
+++ b/pkgs/development/tools/build-managers/apache-maven/default.nix
@@ -2,7 +2,7 @@
 
 assert jdk != null;
 
-let version = "3.6.2"; in
+let version = "3.6.3"; in
 stdenv.mkDerivation rec {
   pname = "apache-maven";
   inherit version;
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://apache/maven/maven-3/${version}/binaries/${pname}-${version}-bin.tar.gz";
-    sha256 = "1p6z6bmjfzda8kxy73jjg03yfkbssbb3vgvzspxxd0hljv8r5g1z";
+    sha256 = "1i9qlj3vy4j1yyf22nwisd0pg88n9qzp9ymfhwqabadka7br3b96";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_rc.patch b/pkgs/development/tools/build-managers/bazel/bazel_rc.patch
new file mode 100644
index 000000000000..a599ac3ec723
--- /dev/null
+++ b/pkgs/development/tools/build-managers/bazel/bazel_rc.patch
@@ -0,0 +1,13 @@
+diff --git a/src/main/cpp/option_processor.cc b/src/main/cpp/option_processor.cc
+index 8f8f15685f..a7ae52d1e4 100644
+--- a/src/main/cpp/option_processor.cc
++++ b/src/main/cpp/option_processor.cc
+@@ -56,7 +56,7 @@ OptionProcessor::OptionProcessor(
+     : workspace_layout_(workspace_layout),
+       startup_options_(std::move(default_startup_options)),
+       parse_options_called_(false),
+-      system_bazelrc_path_(BAZEL_SYSTEM_BAZELRC_PATH) {}
++      system_bazelrc_path_("@bazelSystemBazelRCPath@") {}
+ 
+ OptionProcessor::OptionProcessor(
+     const WorkspaceLayout* workspace_layout,
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index 4a5a1d4d44cd..e82bbb4aba1b 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -19,14 +19,17 @@
 , enableNixHacks ? false
 , gcc-unwrapped
 , autoPatchelfHook
+, file
+, substituteAll
+, writeTextFile
 }:
 
 let
-  version = "1.1.0";
+  version = "1.2.1";
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "1awm5wa4y4c37zy7d1ass83amwq5992wydkj5v9jx0zp7b4shrjb";
+    sha256 = "1qfk14mgx1m454b4w4ldggljzqkqwpdwrlynq7rc8aq11yfs8p95";
   };
 
   # Update with `eval $(nix-build -A bazel.updater)`,
@@ -50,7 +53,7 @@ let
        else srcs."java_tools_javac11_linux-v6.1.zip")
       srcs."coverage_output_generator-v2.0.zip"
       srcs.build_bazel_rules_nodejs
-      srcs."android_tools_pkg-0.11.tar.gz"
+      srcs."android_tools_pkg-0.12.tar.gz"
       srcs."0.28.3.tar.gz"
       srcs.rules_pkg
       srcs.rules_cc
@@ -91,7 +94,7 @@ let
     #        ],
     #     )
     #
-    [ bash coreutils findutils gawk gnugrep gnutar gnused gzip which unzip ];
+    [ bash coreutils findutils gawk gnugrep gnutar gnused gzip which unzip file zip ];
 
   # Java toolchain used for the build and tests
   javaToolchain = "@bazel_tools//tools/jdk:toolchain_host${buildJdkName}";
@@ -124,6 +127,18 @@ let
     '';
   };
 
+  bazelRC = writeTextFile {
+    name = "bazel-rc";
+    text = ''
+      build --override_repository=${remote_java_tools.name}=${remote_java_tools}
+      build --distdir=${distDir}
+      startup --server_javabase=${runJdk}
+
+      # load default location for the system wide configuration
+      try-import /etc/bazel.bazelrc
+    '';
+  };
+
 in
 stdenv.mkDerivation rec {
   pname = "bazel";
@@ -145,6 +160,24 @@ stdenv.mkDerivation rec {
     # This is breaking the build of any C target. This patch removes the last
     # argument if it's found to be an empty string.
     ./trim-last-argument-to-gcc-if-empty.patch
+
+    # --experimental_strict_action_env (which may one day become the default
+    # see bazelbuild/bazel#2574) hardcodes the default
+    # action environment to a non hermetic value (e.g. "/usr/local/bin").
+    # This is non hermetic on non-nixos systems. On NixOS, bazel cannot find the required binaries.
+    # So we are replacing this bazel paths by defaultShellPath,
+    # improving hermeticity and making it work in nixos.
+    (substituteAll {
+      src = ./strict_action_env.patch;
+      strictActionEnvPatch = defaultShellPath;
+    })
+
+    # bazel reads its system bazelrc in /etc
+    # override this path to a builtin one
+    (substituteAll {
+      src = ./bazel_rc.patch;
+      bazelSystemBazelRCPath = bazelRC;
+    })
   ] ++ lib.optional enableNixHacks ./nix-hacks.patch;
 
 
@@ -390,14 +423,6 @@ stdenv.mkDerivation rec {
           -e "/\$command \\\\$/a --host_java_toolchain='${javaToolchain}' \\\\" \
           -i scripts/bootstrap/compile.sh
 
-      # --experimental_strict_action_env (which will soon become the
-      # default, see bazelbuild/bazel#2574) hardcodes the default
-      # action environment to a value that on NixOS at least is bogus.
-      # So we hardcode it to something useful.
-      substituteInPlace \
-        src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java \
-        --replace /bin:/usr/bin ${defaultShellPath}
-
       # This is necessary to avoid:
       # "error: no visible @interface for 'NSDictionary' declares the selector
       # 'initWithContentsOfURL:error:'"
@@ -413,12 +438,6 @@ stdenv.mkDerivation rec {
       mv runfiles.bash.tmp tools/bash/runfiles/runfiles.bash
 
       patchShebangs .
-
-      # bazel reads its system bazelrc in /etc
-      # override this path to a builtin one
-      substituteInPlace \
-        src/main/cpp/option_processor.cc \
-        --replace BAZEL_SYSTEM_BAZELRC_PATH "\"$out/etc/bazelrc\""
     '';
     in lib.optionalString stdenv.hostPlatform.isDarwin darwinPatches
      + genericPatches;
@@ -470,15 +489,6 @@ stdenv.mkDerivation rec {
     cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
     mv ./bazel_src/output/bazel $out/bin/bazel-real
 
-    wrapProgram "$out/bin/bazel" --add-flags --server_javabase="${runJdk}"
-
-    # generates the system bazelrc
-    # warning: the name of the repository depends on the system, hence
-    # the reference to .name
-    mkdir $out/etc
-    echo "build --override_repository=${remote_java_tools.name}=${remote_java_tools}" > $out/etc/bazelrc
-    echo "build --distdir=${distDir}" >> $out/etc/bazelrc
-
     # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
     mv ./bazel_src/output/bazel-complete.bash $out/share/bash-completion/completions/bazel
diff --git a/pkgs/development/tools/build-managers/bazel/src-deps.json b/pkgs/development/tools/build-managers/bazel/src-deps.json
index 152cce5093e8..e86e6a1c9458 100644
--- a/pkgs/development/tools/build-managers/bazel/src-deps.json
+++ b/pkgs/development/tools/build-managers/bazel/src-deps.json
@@ -55,11 +55,11 @@
             "https://github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.tar.gz"
         ]
     },
-    "android_tools_pkg-0.11.tar.gz": {
-        "name": "android_tools_pkg-0.11.tar.gz",
-        "sha256": "6fc50151063bffdda700038ea7df99c89d54dc066e9377a5baff60d55d482ad2",
+    "android_tools_pkg-0.12.tar.gz": {
+        "name": "android_tools_pkg-0.12.tar.gz",
+        "sha256": "96c4eef4d195dd95e43a4259cf5b82a1e34f67333439e91955bbdc0e1c8e7a31",
         "urls": [
-            "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.11.tar.gz"
+            "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.12.tar.gz"
         ]
     },
     "bazel_j2objc": {
@@ -108,11 +108,11 @@
     },
     "com_google_googletest": {
         "name": "com_google_googletest",
-        "sha256": "0fb00ff413f6b9b80ccee44a374ca7a18af7315aea72a43c62f2acd1ca74e9b5",
-        "strip_prefix": "googletest-f13bbe2992d188e834339abe6f715b2b2f840a77",
+        "sha256": "9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb",
+        "strip_prefix": "googletest-release-1.10.0",
         "urls": [
-            "https://mirror.bazel.build/github.com/google/googletest/archive/f13bbe2992d188e834339abe6f715b2b2f840a77.tar.gz",
-            "https://github.com/google/googletest/archive/f13bbe2992d188e834339abe6f715b2b2f840a77.tar.gz"
+            "https://mirror.bazel.build/github.com/google/googletest/archive/release-1.10.0.tar.gz",
+            "https://github.com/google/googletest/archive/release-1.10.0.tar.gz"
         ]
     },
     "coverage_output_generator-v2.0.zip": {
diff --git a/pkgs/development/tools/build-managers/bazel/strict_action_env.patch b/pkgs/development/tools/build-managers/bazel/strict_action_env.patch
new file mode 100644
index 000000000000..1402c20f6bdb
--- /dev/null
+++ b/pkgs/development/tools/build-managers/bazel/strict_action_env.patch
@@ -0,0 +1,13 @@
+diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
+index a70b5559bc..10bdffe961 100644
+--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
++++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
+@@ -466,7 +466,7 @@ public class BazelRuleClassProvider {
+       // Note that --action_env does not propagate to the host config, so it is not a viable
+       // workaround when a genrule is itself built in the host config (e.g. nested genrules). See
+       // #8536.
+-      return "/bin:/usr/bin:/usr/local/bin";
++      return "@strictActionEnvPatch@";
+     }
+
+     String newPath = "";
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 6dd7f5a884cf..37a44f15e9ce 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, pkgconfig
+{ stdenv, lib, fetchurl, fetchpatch, pkgconfig
 , bzip2, curl, expat, libarchive, xz, zlib, libuv, rhash
 , buildPackages
 # darwin attributes
@@ -19,12 +19,12 @@ stdenv.mkDerivation rec {
           + lib.optionalString useNcurses "-cursesUI"
           + lib.optionalString withQt5 "-qt5UI"
           + lib.optionalString useQt4 "-qt4UI";
-  version = "3.15.4";
+  version = "3.15.5";
 
   src = fetchurl {
     url = "${meta.homepage}files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
     # compare with https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}-SHA-256.txt
-    sha256 = "0ypd051rh3nxhjfb5wcmnxi78p1d1qbzrhazn94lwdr1xa4ia8ca";
+    sha256 = "1d5y8d92axcc6rfqlsxamayfs3fc1vdby91hn5mx1kn02ppprpgv";
   };
 
   patches = [
@@ -36,6 +36,13 @@ stdenv.mkDerivation rec {
 
     # Derived from https://github.com/libuv/libuv/commit/1a5d4f08238dd532c3718e210078de1186a5920d
     ./libuv-application-services.patch
+
+    # Fix for harfbuzz with pango versions > 1.43.
+    # Should be removed with cmake >= 3.16
+    (fetchpatch {
+      url = "https://gitlab.kitware.com/cmake/cmake/commit/effafca77eacbb4988006b1f3f4d9154df6c33f8.diff";
+      sha256 = "0vxam5kka1dffygp1nd0g21ib9qk8kds8iprbfga2gimzyrlfmfr";
+    })
   ] ++ lib.optional stdenv.isCygwin ./3.2.2-cygwin.patch;
 
   outputs = [ "out" ];
diff --git a/pkgs/development/tools/build-managers/kati/default.nix b/pkgs/development/tools/build-managers/kati/default.nix
index 03cc0518ab51..05834565f931 100644
--- a/pkgs/development/tools/build-managers/kati/default.nix
+++ b/pkgs/development/tools/build-managers/kati/default.nix
@@ -1,14 +1,14 @@
-{ fetchgit, stdenv }:
+{ stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "kati-unstable";
-  version = "2017-05-23";
-  rev = "2dde61e46ab789f18956ff3b7c257dd8eb97993f";
+  version = "2019-09-23";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/google/kati.git";
-    sha256 = "1das1fvycra546lmh72cr5qpgblhbzqqy7gfywiijjgx160l75vq";
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "kati";
+    rev = "9da3296746a0cd55b38ebebf91e7f57105a4c36f";
+    sha256 = "0s5dfhgpcbx12b1fqmm8p0jpvrhgrnl9qywv1ksbwhw3pfp7j866";
   };
 
   patches = [ ./version.patch ];
@@ -17,10 +17,11 @@ stdenv.mkDerivation rec {
     install -D ckati $out/bin/ckati
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "An experimental GNU make clone";
     homepage = https://github.com/google/kati;
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.asl20;
+    platforms = platforms.all;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ danielfullmer ];
   };
 }
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 75658dcbb3ea..49d7287087fd 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -19,11 +19,11 @@ let
 in
 python3Packages.buildPythonApplication rec {
   pname = "meson";
-  version = "0.51.2";
+  version = "0.52.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0cqhkjbab1mbvxmbjvyfrbjfkm7bh436svqpjapca36c2k9h1vwr";
+    sha256 = "02fnrk1fjf3yiix0ak0m9vgbpl4h97fafii5pmw7phmvnlv9fyan";
   };
 
   postFixup = ''
@@ -69,14 +69,6 @@ python3Packages.buildPythonApplication rec {
       url = "https://github.com/mesonbuild/meson/commit/972ede1d14fdf17fe5bb8fb99be220f9395c2392.patch";
       sha256 = "19bfsylhpy0b2xv3ks8ac9x3q6vvvyj1wjcy971v9d5f1455xhbb";
     })
-  ] ++ lib.optionals stdenv.isDarwin [
-    # We use custom Clang, which makes Meson think *not Apple*, while still
-    # relying on system linker. When it detects standard Clang, Meson will
-    # pass it `-Wl,-O1` flag but optimizations are not recognized by
-    # Mac linker.
-    # https://github.com/mesonbuild/meson/issues/4784
-    # Should be fixed in 0.52
-    ./fix-objc-linking.patch
   ];
 
   setupHook = ./setup-hook.sh;
diff --git a/pkgs/development/tools/build-managers/meson/fix-objc-linking.patch b/pkgs/development/tools/build-managers/meson/fix-objc-linking.patch
deleted file mode 100644
index 996e0c3420e2..000000000000
--- a/pkgs/development/tools/build-managers/meson/fix-objc-linking.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
-index dc8f099b..d8581fcf 100644
---- a/mesonbuild/environment.py
-+++ b/mesonbuild/environment.py
-@@ -944,7 +944,7 @@
-                 compiler_type = self.get_gnu_compiler_type(defines)
-                 version = self.get_gnu_version_from_defines(defines)
-                 return GnuObjCCompiler(ccache + compiler, version, compiler_type, for_machine, is_cross, exe_wrap, defines)
--            if out.startswith('Apple LLVM') or out.startswith('Apple clang'):
-+            if out.startswith('Apple LLVM') or out.startswith('Apple clang') or self.machines.build.is_darwin():
-                 return ClangObjCCompiler(ccache + compiler, version, CompilerType.CLANG_OSX, for_machine, is_cross, exe_wrap)
-             if 'windows' in out:
-                 return ClangObjCCompiler(ccache + compiler, version, CompilerType.CLANG_MINGW, for_machine, is_cross, exe_wrap)
-@@ -974,7 +974,7 @@
-                 compiler_type = self.get_gnu_compiler_type(defines)
-                 version = self.get_gnu_version_from_defines(defines)
-                 return GnuObjCPPCompiler(ccache + compiler, version, compiler_type, for_machine, is_cross, exe_wrap, defines)
--            if out.startswith('Apple LLVM') or out.startswith('Apple clang'):
-+            if out.startswith('Apple LLVM') or out.startswith('Apple clang') or self.machines.build.is_darwin():
-                 return ClangObjCPPCompiler(ccache + compiler, version, CompilerType.CLANG_OSX, for_machine, is_cross, exe_wrap)
-             if 'windows' in out:
-                 return ClangObjCPPCompiler(ccache + compiler, version, CompilerType.CLANG_MINGW, for_machine, is_cross, exe_wrap)
diff --git a/pkgs/development/tools/build-managers/meson/fix-rpath.patch b/pkgs/development/tools/build-managers/meson/fix-rpath.patch
index 1a5f8cb89dce..6cf7afc2bdf3 100644
--- a/pkgs/development/tools/build-managers/meson/fix-rpath.patch
+++ b/pkgs/development/tools/build-managers/meson/fix-rpath.patch
@@ -1,21 +1,34 @@
---- a/mesonbuild/compilers/compilers.py
-+++ b/mesonbuild/compilers/compilers.py
-@@ -1202,8 +1202,10 @@
-             # In order to avoid relinking for RPATH removal, the binary needs to contain just
-             # enough space in the ELF header to hold the final installation RPATH.
-             paths = ':'.join(all_paths)
--            if len(paths) < len(install_rpath):
--                padding = 'X' * (len(install_rpath) - len(paths))
-+            store_paths = ':'.join(filter(lambda path: path.startswith('@storeDir@'), all_paths))
-+            extra_space_needed = len(install_rpath + (':' if install_rpath and store_paths else '') + store_paths) - len(paths)
-+            if extra_space_needed > 0:
-+                padding = 'X' * extra_space_needed
-                 if not paths:
-                     paths = padding
-                 else:
+--- a/mesonbuild/linkers.py
++++ b/mesonbuild/linkers.py
+@@ -527,8 +527,10 @@ class GnuLikeDynamicLinkerMixin:
+         # In order to avoid relinking for RPATH removal, the binary needs to contain just
+         # enough space in the ELF header to hold the final installation RPATH.
+         paths = ':'.join(all_paths)
+-        if len(paths) < len(install_rpath):
+-            padding = 'X' * (len(install_rpath) - len(paths))
++        store_paths = ':'.join(filter(lambda path: path.startswith('@storeDir@'), all_paths))
++        extra_space_needed = len(install_rpath + (':' if install_rpath and store_paths else '') + store_paths) - len(paths)
++        if extra_space_needed > 0:
++            padding = 'X' * extra_space_needed
+             if not paths:
+                 paths = padding
+             else:
+@@ -902,8 +904,10 @@ class SolarisDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
+         # In order to avoid relinking for RPATH removal, the binary needs to contain just
+         # enough space in the ELF header to hold the final installation RPATH.
+         paths = ':'.join(all_paths)
+-        if len(paths) < len(install_rpath):
+-            padding = 'X' * (len(install_rpath) - len(paths))
++        store_paths = ':'.join(filter(lambda path: path.startswith('@storeDir@'), all_paths))
++        extra_space_needed = len(install_rpath + (':' if install_rpath and store_paths else '') + store_paths) - len(paths)
++        if extra_space_needed > 0:
++            padding = 'X' * extra_space_needed
+             if not paths:
+                 paths = padding
+             else:
 --- a/mesonbuild/scripts/depfixer.py
 +++ b/mesonbuild/scripts/depfixer.py
-@@ -303,6 +303,14 @@
+@@ -303,6 +303,14 @@ class Elf(DataSizes):
              return
          self.bf.seek(rp_off)
          old_rpath = self.read_str()
@@ -30,7 +43,7 @@
          if len(old_rpath) < len(new_rpath):
              sys.exit("New rpath must not be longer than the old one.")
          # The linker does read-only string deduplication. If there is a
-@@ -316,6 +324,10 @@
+@@ -316,6 +324,10 @@ class Elf(DataSizes):
          if not new_rpath:
              self.remove_rpath_entry(entrynum)
          else:
diff --git a/pkgs/development/tools/build-managers/meson/gir-fallback-path.patch b/pkgs/development/tools/build-managers/meson/gir-fallback-path.patch
index 7a33d4127fae..e59795486aa8 100644
--- a/pkgs/development/tools/build-managers/meson/gir-fallback-path.patch
+++ b/pkgs/development/tools/build-managers/meson/gir-fallback-path.patch
@@ -1,8 +1,8 @@
 --- a/mesonbuild/modules/gnome.py
 +++ b/mesonbuild/modules/gnome.py
-@@ -805,6 +805,13 @@
-         scan_command += self._scan_langs(state, [lc[0] for lc in langs_compilers])
-         scan_command += list(external_ldflags)
+@@ -801,6 +801,13 @@ class GnomeModule(ExtensionModule):
+             scan_command += ['--sources-top-dirs', os.path.join(state.environment.get_source_dir(), self.interpreter.subproject_dir, state.subproject)]
+             scan_command += ['--sources-top-dirs', os.path.join(state.environment.get_build_dir(), self.interpreter.subproject_dir, state.subproject)]
  
 +        if len(set([girtarget.get_custom_install_dir()[0] for girtarget in girtargets])) > 1:
 +            raise MesonException('generate_gir tries to build multiple libraries with different install_dir at once: {}'.format(','.join([str(girtarget) for girtarget in girtargets])))
diff --git a/pkgs/development/tools/build-managers/mill/default.nix b/pkgs/development/tools/build-managers/mill/default.nix
index 71df187eaa54..6a4431be0eb4 100644
--- a/pkgs/development/tools/build-managers/mill/default.nix
+++ b/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchurl {
     url = "https://github.com/lihaoyi/mill/releases/download/${version}/${version}";
-    sha256 = "14az9znpbaads5dbcfpzw38yipmncz94i6gcl6bdjgngn0barhga";
+    sha256 = "1m4p0d15qgayfnknvl99sd1kpgrqfaj1yczvwh7ip0gxcladn1wv";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -19,7 +19,10 @@ stdenv.mkDerivation rec {
     runHook preInstall
     install -Dm555 "$src" "$out/bin/.mill-wrapped"
     # can't use wrapProgram because it sets --argv0
-    makeWrapper "$out/bin/.mill-wrapped" "$out/bin/mill" --set JAVA_HOME "${jre}"
+    makeWrapper "$out/bin/.mill-wrapped" "$out/bin/mill" \
+      --prefix PATH : "${jre}/bin" \
+      --set JAVA_HOME "${jre}" \
+      --set MILL_VERSION "${version}"
     runHook postInstall
   '';
 
diff --git a/pkgs/development/tools/build-managers/qbs/default.nix b/pkgs/development/tools/build-managers/qbs/default.nix
index 08baa53b1dc0..cd08ae973eba 100644
--- a/pkgs/development/tools/build-managers/qbs/default.nix
+++ b/pkgs/development/tools/build-managers/qbs/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   pname = "qbs";
 
-  version = "1.14.0";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "qbs";
     repo = "qbs";
     rev = "v${version}";
-    sha256 = "19adxjyp5bf5hrjisv3ff9ndcmh1glrxfrzifs46xjn3r69kyv1k";
+    sha256 = "0rqfnclhzln6v4gm68fn4vn6ncf5qpi90295fwm4fx6dq4l94b3v";
   };
 
   nativeBuildInputs = [ qmake ];
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index bb2f000f606a..7440b25c6e49 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.3.3";
+  version = "1.3.4";
 
   src = fetchurl {
     urls = [
       "https://piccolo.link/sbt-${version}.tgz"
       "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
     ];
-    sha256 = "0v27i8pd9ss53ipi1cs40426mnyppdjgcdjk8nn05bi6rm7a4r7y";
+    sha256 = "0bz6jj7jiwxd35xw9l1jbd846r0129pwgdi8m6dxwb8zybj73k2m";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index bc723152178f..db01a068c00c 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -4,13 +4,13 @@
 
 buildGoPackage rec {
   pname = "buildah";
-  version = "1.11.5";
+  version = "1.12.0";
 
   src = fetchFromGitHub {
     owner  = "containers";
     repo   = "buildah";
     rev    = "v${version}";
-    sha256 = "09bfv2pypd66dnqvrhgcg35fsahi2k0kn5dnnbfqc39g0vfz29r7";
+    sha256 = "0lsjsfp6ls38vlgibbnsyd1m7jvmjwdmpyrd0qigp4aa2abwi4dg";
   };
 
   outputs = [ "bin" "man" "out" ];
@@ -18,9 +18,15 @@ buildGoPackage rec {
   goPackagePath = "github.com/containers/buildah";
   excludedPackages = [ "tests" ];
 
+  # Disable module-mode, because Go 1.13 automatically enables it if there is
+  # go.mod file. Remove after https://github.com/NixOS/nixpkgs/pull/73380
+  GO111MODULE = "off";
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ gpgme libgpgerror lvm2 btrfs-progs ostree libselinux libseccomp ];
 
+  patches = [ ./disable-go-module-mode.patch ];
+
   buildPhase = ''
     pushd go/src/${goPackagePath}
     make GIT_COMMIT="unknown"
diff --git a/pkgs/development/tools/buildah/disable-go-module-mode.patch b/pkgs/development/tools/buildah/disable-go-module-mode.patch
new file mode 100644
index 000000000000..a6f211412ea1
--- /dev/null
+++ b/pkgs/development/tools/buildah/disable-go-module-mode.patch
@@ -0,0 +1,33 @@
+From e2d12e52b3638a320a8d69ea4b392b60f44ea57f Mon Sep 17 00:00:00 2001
+From: Mario Rodas <marsam@users.noreply.github.com>
+Date: Wed, 4 Dec 2019 21:07:33 -0500
+Subject: [PATCH] Do not check Go module-mode availability
+
+Since buildah vendorizes its dependencies we use buildGoPackage which
+does not uses Go module-mode.  The module-mode check will be true
+because nixpkgs uses Go 1.13 by default, and building go modules with
+buildGoPackage may lead to inconsistencies.
+---
+ Makefile | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 9d04177d..4cf9b6a2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -15,12 +15,7 @@ BUILDAH := buildah
+ GO := go
+ GO110 := 1.10
+ GOVERSION := $(findstring $(GO110),$(shell go version))
+-# test for go module support
+-ifeq ($(shell go help mod >/dev/null 2>&1 && echo true), true)
+-export GO_BUILD=GO111MODULE=on $(GO) build -mod=vendor
+-else
+ export GO_BUILD=$(GO) build
+-endif
+ 
+ GIT_COMMIT ?= $(if $(shell git rev-parse --short HEAD),$(shell git rev-parse --short HEAD),$(error "git failed"))
+ SOURCE_DATE_EPOCH ?= $(if $(shell date +%s),$(shell date +%s),$(error "date failed"))
+-- 
+2.24.0
+
diff --git a/pkgs/development/tools/buildpack/default.nix b/pkgs/development/tools/buildpack/default.nix
index 8c1a2bbb62d4..23afc8b53f29 100644
--- a/pkgs/development/tools/buildpack/default.nix
+++ b/pkgs/development/tools/buildpack/default.nix
@@ -2,20 +2,20 @@
 
 buildGoPackage rec {
   pname = "pack";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
-    owner = "buildpack";
+    owner = "buildpacks";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0yh62h7lz2i07gixccmfyxk607djp1nrs57rzk7nkxnjcj4jj5sr";
+    sha256 = "00v4kb9cv6nn7vrybjkv0kgcvfm5dsg0168dv253mrp9xmv8kd9l";
   };
 
-  goPackagePath = "github.com/buildpack/pack";
+  goPackagePath = "github.com/buildpacks/pack";
 
   subPackages = [ "cmd/pack" ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X github.com/buildpack/pack/cmd.Version=${version}" ];
+  buildFlagsArray = [ "-ldflags=-s -w -X github.com/buildpacks/pack/cmd.Version=${version}" ];
 
   meta = with lib; {
     homepage = "https://buildpacks.io/";
diff --git a/pkgs/development/tools/ccloud-cli/default.nix b/pkgs/development/tools/ccloud-cli/default.nix
new file mode 100644
index 000000000000..7fa530297722
--- /dev/null
+++ b/pkgs/development/tools/ccloud-cli/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, autoPatchelfHook, fetchurl, lib }:
+
+stdenv.mkDerivation rec {
+  pname = "ccloud-cli";
+  version = "0.202.0";
+
+  # To get the latest version:
+  # curl -L 'https://s3-us-west-2.amazonaws.com/confluent.cloud?prefix=ccloud-cli/archives/&delimiter=/' | nix run nixpkgs.libxml2 -c xmllint --format -
+  src = fetchurl (if stdenv.hostPlatform.isDarwin then {
+      url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/ccloud-cli/archives/${version}/ccloud_v${version}_darwin_amd64.tar.gz";
+      sha256 = "1w7c7fwpjj6f26nmcgm6rkrl4v9zhdpygkh02la77n23lg8wxah5";
+    } else {
+      url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/ccloud-cli/archives/${version}/ccloud_v${version}_linux_amd64.tar.gz";
+      sha256 = "1xbhv2viw8cbwv03rfq99jddnw5lwy812a8xby348290l323xi89";
+    });
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  installPhase = ''
+    mkdir -p $out/{bin,share/doc/ccloud-cli}
+    cp ccloud $out/bin/
+    cp LICENSE $out/share/doc/ccloud-cli/
+    cp -r legal $out/share/doc/ccloud-cli/
+  '';
+
+  meta = with lib; {
+    description = "Confluent Cloud CLI";
+    homepage = https://docs.confluent.io/current/cloud/cli/index.html;
+    license = licenses.unfree;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/development/tools/chefdk/default.nix b/pkgs/development/tools/chefdk/default.nix
index d5c742014189..d30c0aaeb496 100644
--- a/pkgs/development/tools/chefdk/default.nix
+++ b/pkgs/development/tools/chefdk/default.nix
@@ -1,7 +1,7 @@
 { lib, bundlerEnv, bundlerUpdateScript, ruby_2_4, perl, autoconf }:
 
 bundlerEnv {
-  pname = "chef-dk";
+  name = "chef-dk-2.4.17";
 
   ruby = ruby_2_4;
   gemdir = ./.;
diff --git a/pkgs/development/tools/clang-tools/wrapper b/pkgs/development/tools/clang-tools/wrapper
index fe17880b07d8..53c99a67f2d3 100644
--- a/pkgs/development/tools/clang-tools/wrapper
+++ b/pkgs/development/tools/clang-tools/wrapper
@@ -6,7 +6,7 @@ buildcpath() {
     case $1 in
         -isystem)
             shift
-            path=$path${path':'}$1
+            path=$path${path:+':'}$1
     esac
     shift
   done
diff --git a/pkgs/development/tools/cmake-format/default.nix b/pkgs/development/tools/cmake-format/default.nix
index 5726b067e67a..69fbfecc18fc 100644
--- a/pkgs/development/tools/cmake-format/default.nix
+++ b/pkgs/development/tools/cmake-format/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonApplication rec {
   pname = "cmake-format";
-  version = "0.6.0";
+  version = "0.6.3";
 
   src = fetchPypi {
     inherit version;
     pname = "cmake_format";
-    sha256 = "0sip832bxsvnm7fhqhx49d53g2s7swdk3fhyhlglm2shgj89b5zw";
+    sha256 = "12fsgmqimc09qhkrqzi5n5qq3rigkagymn0cx6ayn2qglh8pwknw";
   };
 
   propagatedBuildInputs = [ autopep8 flake8 jinja2 pylint pyyaml ];
diff --git a/pkgs/development/tools/conftest/default.nix b/pkgs/development/tools/conftest/default.nix
index 17dbcc7ff1f1..ae35170cd193 100644
--- a/pkgs/development/tools/conftest/default.nix
+++ b/pkgs/development/tools/conftest/default.nix
@@ -2,24 +2,22 @@
 
 buildGoModule rec {
   pname = "conftest";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "instrumenta";
     repo = "conftest";
     rev = "v${version}";
-    sha256 = "0fjz6ad8rnznlp1kiyb3c6anhjs6v6acgziw4hmyz0xva4jnspsh";
+    sha256 = "0lb644fj80r4igxbslbd5pksirnyf6slz4yn0mznyx8i2bd1g4ic";
   };
 
-  modSha256 = "1xwqlqx5794hsi14h5gqg69gjcqcma24ha0fxn0vffqgqs2cz1d1";
+  modSha256 = "1p7fjg1vcrcxb4f5hd00qxx4fqcl051klcjs6ljn4v46qcpn6dcn";
 
   buildFlagsArray = ''
     -ldflags=
         -X main.version=${version}
   '';
 
-  subPackages = [ "cmd" ];
-
   meta = with lib; {
     description = "Write tests against structured configuration data";
     homepage = https://github.com/instrumenta/conftest;
diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix
index 3f394472c40f..1a56be02a284 100644
--- a/pkgs/development/tools/continuous-integration/fly/default.nix
+++ b/pkgs/development/tools/continuous-integration/fly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "fly";
-  version = "5.4.1";
+  version = "5.7.2";
 
   src = fetchFromGitHub {
     owner = "concourse";
     repo = "concourse";
     rev = "v${version}";
-    sha256 = "15lkhdvxqcryn5k7qflkby666ddj66gpqzga13yxjgjjp7zx2mi3";
+    sha256 = "1jhc2h00rh6lpgdq3n2d1sk7gdzmhkigyra04gf70s6kjb903igw";
   };
 
-  modSha256 = "0wz0v7w2di23cvqpg35zzqs2hvsbjgcrl7pr90ymmpsspq97fkf7";
+  modSha256 = "00qagz28iz1z5kjshs1m74bf12qlhjbkf4pbchy7lzf09bd291pg";
 
   subPackages = [ "fly" ];
 
diff --git a/pkgs/development/tools/continuous-integration/gocd-agent/default.nix b/pkgs/development/tools/continuous-integration/gocd-agent/default.nix
index cdc4e6db2c2d..adee52d967ea 100644
--- a/pkgs/development/tools/continuous-integration/gocd-agent/default.nix
+++ b/pkgs/development/tools/continuous-integration/gocd-agent/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "gocd-agent-${version}-${rev}";
-  version = "16.9.0";
-  rev = "4001";
+  version = "19.3.0";
+  rev = "8959";
 
   src = fetchurl {
     url = "https://download.go.cd/binaries/${version}-${rev}/generic/go-agent-${version}-${rev}.zip";
-    sha256 = "1xcwwjf2khhng6v1y7dvi579y2j643al9n0x80m0c46qb9mzd04x";
+    sha256 = "1nirdv82i8x4s1dyb0rmxldh8avappd4g3mbbl6xp7r7s0drcprp";
   };
   meta = with stdenv.lib; {
     description = "A continuous delivery server specializing in advanced workflow modeling and visualization";
diff --git a/pkgs/development/tools/continuous-integration/gocd-server/default.nix b/pkgs/development/tools/continuous-integration/gocd-server/default.nix
index 8982ca5f77ad..c0fabdeb5a16 100644
--- a/pkgs/development/tools/continuous-integration/gocd-server/default.nix
+++ b/pkgs/development/tools/continuous-integration/gocd-server/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "gocd-server-${version}-${rev}";
-  version = "16.9.0";
-  rev = "4001";
+  version = "19.3.0";
+  rev = "8959";
 
   src = fetchurl {
     url = "https://download.go.cd/binaries/${version}-${rev}/generic/go-server-${version}-${rev}.zip";
-    sha256 = "0x5pmjbhrka6p27drkrca7872vgsjxaa5j0cbxsa2ds02wrn57a7";
+    sha256 = "0c30qzd6awlw0zx91rk6na0mmgykqkgrw9ychx18ivjwma0hr0sc";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 0efe141d7bf5..2e69c7df2a3c 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jenkins";
-  version = "2.190.3";
+  version = "2.204.1";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "146lg8xvg38glqn00kp20gx0bm5f9vv7fn3sy6fdqwdd60mh9hkr";
+    sha256 = "112jimw5sf6n9nszmpsllz9sb06d3d8i45fin3m1vkdikszypf8j";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/cue/default.nix b/pkgs/development/tools/cue/default.nix
index 2046ea90fd1a..98bf5249b626 100644
--- a/pkgs/development/tools/cue/default.nix
+++ b/pkgs/development/tools/cue/default.nix
@@ -2,12 +2,12 @@
 
 buildGoModule rec {
   pname = "cue";
-  version = "0.0.14";
+  version = "0.0.15";
 
   src = fetchgit {
     url = "https://cue.googlesource.com/cue";
     rev = "v${version}";
-    sha256 = "1gbw377wm41bhn9pw0l5l7v6g5s9jw1p2jammflac7hgwdrxkb64";
+    sha256 = "0mipzci2zjp6yh4lxg9jrdxn03ska188zg3jl6g1zr8rn0ry274h";
   };
 
   modSha256 = "04dapx75zwi8cv1pj3c6266znrhwihv3df4izm3gjk34r2i07q6s";
diff --git a/pkgs/development/tools/database/pgcli/default.nix b/pkgs/development/tools/database/pgcli/default.nix
index 147988b22b3c..03f0ae3c444f 100644
--- a/pkgs/development/tools/database/pgcli/default.nix
+++ b/pkgs/development/tools/database/pgcli/default.nix
@@ -1,17 +1,17 @@
-{ buildPythonApplication, lib, fetchPypi, isPy3k, fetchpatch
+{ buildPythonApplication, lib, fetchPypi, isPy3k
 , cli-helpers, click, configobj, humanize, prompt_toolkit, psycopg2
 , pygments, sqlparse, pgspecial, setproctitle, keyring, pytest, mock
 }:
 
 buildPythonApplication rec {
   pname = "pgcli";
-  version = "2.1.1";
+  version = "2.2.0";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1jmnb8izsdjmq9cgajhfapr31wlhvcml4lakz2mcmjn355x83q44";
+    sha256 = "54138a31e6736a34c63b84a6d134c9292c9a73543cc0f66e80a0aaf79259d39b";
   };
 
   propagatedBuildInputs = [
@@ -21,9 +21,10 @@ buildPythonApplication rec {
 
   checkInputs = [ pytest mock ];
 
-  # One test fails: https://github.com/dbcli/pgcli/issues/1104
-  doCheck = false;
-  checkPhase = "pytest";
+  # `test_application_name_db_uri` fails: https://github.com/dbcli/pgcli/issues/1104
+  checkPhase = ''
+    pytest --deselect=tests/test_main.py::test_application_name_db_uri
+  '';
 
   meta = with lib; {
     description = "Command-line interface for PostgreSQL";
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index edad5d6276bc..2aead3940ad8 100644
--- a/pkgs/development/tools/doctl/default.nix
+++ b/pkgs/development/tools/doctl/default.nix
@@ -4,8 +4,8 @@ buildGoPackage rec {
   pname = "doctl";
   version = "${major}.${minor}.${patch}";
   major = "1";
-  minor = "31";
-  patch = "2";
+  minor = "35";
+  patch = "0";
   goPackagePath = "github.com/digitalocean/doctl";
 
   excludedPackages = ''\(doctl-gen-doc\|install-doctl\|release-doctl\)'';
@@ -21,7 +21,7 @@ buildGoPackage rec {
     owner  = "digitalocean";
     repo   = "doctl";
     rev    = "v${version}";
-    sha256 = "1q71kfjiav8xfw1bb3dziik1d0jr84hl83d3sx3cak0nd9nmakgs";
+    sha256 = "1blg4xd01vvr8smpii60jlk7rg1cg64115azixw9q022f7cnfiyw";
   };
 
   meta = {
diff --git a/pkgs/development/tools/erlang/hex2nix/default.nix b/pkgs/development/tools/erlang/hex2nix/default.nix
deleted file mode 100644
index 5155632169f4..000000000000
--- a/pkgs/development/tools/erlang/hex2nix/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ fetchFromGitHub, fetchRebar3Deps, rebar3Relx }:
-
-rebar3Relx rec {
-    name = "hex2nix";
-    version = "0.0.6-42d7b2ec";
-
-    releaseType = "escript";
-
-    checkouts = fetchRebar3Deps {
-      inherit name version;
-      src = "${src}/rebar.config";
-      sha256 = "0z6v1f6hagl3qyj97frqr2ww3adrwgfwdyb2zshaai0d3xchg3ly";
-    };
-
-    src = fetchFromGitHub {
-      owner  = "erlang-nix";
-      repo   = "hex2nix";
-      rev    = "42d7b2ec64f61f21061066b192003cf7f460bf43";
-      sha256 = "0ac1fmckvid5077djg3ajycxn7gwbf7pdk1knhfp8yva3c5qq58r";
-    };
-}
diff --git a/pkgs/development/tools/flyway/default.nix b/pkgs/development/tools/flyway/default.nix
index b57c9841978f..047bbd171f3d 100644
--- a/pkgs/development/tools/flyway/default.nix
+++ b/pkgs/development/tools/flyway/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, jre_headless, makeWrapper }:
   let
-    version = "5.2.4";
+    version = "6.1.2";
   in
     stdenv.mkDerivation {
       pname = "flyway";
       inherit version;
       src = fetchurl {
         url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
-        sha256 = "16ia6nlvj4cgmdkn66bjg73h5vah82hpzk9mf0n5kmqnwcaa8hmc";
+        sha256 = "sha256:1rh1p50mwwlmwwdlcx7pzlsrg1dcl7gdsjbi7kyz0m71fbnn0bnv";
       };
       nativeBuildInputs = [ makeWrapper ];
       dontBuild = true;
@@ -15,14 +15,22 @@
       installPhase = ''
         mkdir -p $out/bin $out/share/flyway
         cp -r sql jars drivers conf $out/share/flyway
-        cp -r lib/community $out/share/flyway/lib
+        install -Dt $out/share/flyway/lib lib/community/*.jar lib/*.jar
         makeWrapper "${jre_headless}/bin/java" $out/bin/flyway \
           --add-flags "-Djava.security.egd=file:/dev/../dev/urandom" \
           --add-flags "-classpath '$out/share/flyway/lib/*:$out/share/flyway/drivers/*'" \
+          --add-flags "-DjarDirs '$out/share/flyway/jars'" \
           --add-flags "org.flywaydb.commandline.Main"
       '';
       meta = with stdenv.lib; {
         description = "Evolve your Database Schema easily and reliably across all your instances";
+        longDescription = ''
+          The Flyway command-line tool is a standalone Flyway distribution.
+          It is primarily meant for users who wish to migrate their database from the command-line
+          without having to integrate Flyway into their applications nor having to install a build tool.
+
+          This package is only the Community Edition of the Flyway command-line tool.
+        '';
         homepage = "https://flywaydb.org/";
         license = licenses.asl20;
         platforms = platforms.unix;
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix
index 20c031ead4ab..e31d27f710bc 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/default.nix
@@ -10,13 +10,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "godot";
-  version = "3.1.1";
+  version = "3.1.2";
 
   src = fetchFromGitHub {
     owner  = "godotengine";
     repo   = "godot";
     rev    = "${version}-stable";
-    sha256 = "0lplkwgshh0x7r1daai9gflzwjnp3yfx4724h1myvidaz234v2wh";
+    sha256 = "12305wj2i4067jc50l8r0wmb7zjcna24fli8vb8kiaild0jrlip6";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/grabserial/default.nix b/pkgs/development/tools/grabserial/default.nix
index ab32674f1881..5e06e9f771d9 100644
--- a/pkgs/development/tools/grabserial/default.nix
+++ b/pkgs/development/tools/grabserial/default.nix
@@ -2,13 +2,13 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "grabserial";
-  version = "1.9.8";
+  version = "1.9.9";
 
   src = fetchFromGitHub {
     owner = "tbird20d";
     repo = "grabserial";
     rev = "v${version}";
-    sha256 = "1xmy3js4hzsxlkxc172hkjzxsc34mmg3vfz61h24c7svmfzyhbd5";
+    sha256 = "0cwrajkh605gfhshrlpbc32gmx86a8kv3pq7cv713k60sgqrgpqx";
   };
 
   propagatedBuildInputs = [ pythonPackages.pyserial ];
diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix
index 9b64dc8a3b16..480456ff21d8 100644
--- a/pkgs/development/tools/hcloud/default.nix
+++ b/pkgs/development/tools/hcloud/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "hcloud";
-  version = "1.13.0";
+  version = "1.14.0";
 
   goPackagePath = "github.com/hetznercloud/cli";
 
@@ -10,24 +10,24 @@ buildGoPackage rec {
     owner = "hetznercloud";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "1bin9gcmmj3i6a11rv7czvnryl8bv7cjz3pi2cqx8baycg3hia5j";
+    sha256 = "167x64ni4xm0d9b02gy8zvc8knhsvb1c9jhysw7svi7iaw5f2ds5";
   };
 
-  goDeps = ./deps.nix;
+  modSha256 = "1g81szkrkxmv51l78v0d39i8dvrrdhf8wh38rwxvnay3iajgrnqk";
 
   buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ];
 
   postInstall = ''
     mkdir -p \
-      $bin/etc/bash_completion.d \
-      $bin/share/zsh/vendor-completions
+      $out/etc/bash_completion.d \
+      $out/share/zsh/vendor-completions
 
     # Add bash completions
-    $bin/bin/hcloud completion bash > "$bin/etc/bash_completion.d/hcloud"
+    $out/bin/hcloud completion bash > "$out/etc/bash_completion.d/hcloud"
 
     # Add zsh completions
-    echo "#compdef hcloud" > "$bin/share/zsh/vendor-completions/_hcloud"
-    $bin/bin/hcloud completion zsh >> "$bin/share/zsh/vendor-completions/_hcloud"
+    echo "#compdef hcloud" > "$out/share/zsh/vendor-completions/_hcloud"
+    $out/bin/hcloud completion zsh >> "$out/share/zsh/vendor-completions/_hcloud"
   '';
 
   meta = {
diff --git a/pkgs/development/tools/hcloud/deps.nix b/pkgs/development/tools/hcloud/deps.nix
deleted file mode 100644
index 01bde6f302a5..000000000000
--- a/pkgs/development/tools/hcloud/deps.nix
+++ /dev/null
@@ -1,111 +0,0 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
-[
-  {
-    goPackagePath = "github.com/dustin/go-humanize";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dustin/go-humanize";
-      rev = "9f541cc9db5d55bce703bd99987c9d5cb8eea45e";
-      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
-    };
-  }
-  {
-    goPackagePath = "github.com/fatih/structs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fatih/structs";
-      rev = "878a968ab22548362a09bdb3322f98b00f470d46";
-      sha256 = "15nkffa8ylr5kkv52gyry675l8bzv3c0xx39j0fzz0vp2kcjyy8x";
-    };
-  }
-  {
-    goPackagePath = "github.com/gosuri/uilive";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gosuri/uilive";
-      rev = "4512d98b127f3f3a1b7c3cf1104969fdd17b31d9";
-      sha256 = "12n3kjgdzrb50jhkcb2ac3437mdhxh33zrcz7mi4gpji20jz4ai7";
-    };
-  }
-  {
-    goPackagePath = "github.com/gosuri/uiprogress";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gosuri/uiprogress";
-      rev = "4442fea128d2bc91caf276b08518bdf4582561c8";
-      sha256 = "1g6xjknm0981h3b1drbvm6vd66hiah1cylpdck9cqd18kyxd6bpd";
-    };
-  }
-  {
-    goPackagePath = "github.com/hetznercloud/cli";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hetznercloud/cli";
-      rev = "d6ec656f964aac4382d9c724edd27a8608e7b354";
-      sha256 = "0ng7hihzplwyz4sdipms4m9qq2bcj92qczzd5adhm6da851jxpbc";
-    };
-  }
-  {
-    goPackagePath = "github.com/hetznercloud/hcloud-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hetznercloud/hcloud-go";
-      rev = "70b166c92266125ee6a621dcc6089023a5f8d055";
-      sha256 = "02hh214qk8qrhl9rpaywv2z5jpkzx3y2j8gv5xmdprdamrjwwlbc";
-    };
-  }
-  {
-    goPackagePath = "github.com/pelletier/go-toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pelletier/go-toml";
-      rev = "84da2c4a25c585816f2c4211b699228d111d18ab";
-      sha256 = "1zh5kswqckz7aaz4kpd1kxbxnlhlmprba1ghkl742x6mbv3w08bm";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev = "1c9c46d5c1cc2aaebdd1898c0680e85e8a44b36d";
-      sha256 = "0mxliq4gfvdazga8mapc2sazi915rz1h6prnark9hwbbsz0xn0r3";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev = "24fa6976df40757dce6aea913e7b81ade90530e1";
-      sha256 = "0rf6prz6gl0l1b3wijzdgq887cdwigvzxvz6gqbm5l8pkq3fx1m9";
-    };
-  }
-  {
-    goPackagePath = "github.com/thcyron/uiprogress";
-    fetch = {
-      type = "git";
-      url = "https://github.com/thcyron/uiprogress";
-      rev = "25e98ffb0e98b5192b475d8f2fd78083bfe9a67e";
-      sha256 = "1avb0jykn3qbjrvhc8i50ahisf9rsfy74ysrwfqbqqkpvhdxv12i";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "4def268fd1a49955bfb3dda92fe3db4f924f2285";
-      sha256 = "1bfsnari529gw34cz0zqk3d9mrkcj1ay35kangri8kbgll0ss5a6";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "fc99dfbffb4e5ed5758a37e31dd861afe285406b";
-      sha256 = "186x8bg926qb9sprs5zpd97xzvvhc2si7q1nhvyg12r5cd6v7zjd";
-    };
-  }
-]
diff --git a/pkgs/development/tools/irony-server/default.nix b/pkgs/development/tools/irony-server/default.nix
index f2c926a6f391..228a82f6008b 100644
--- a/pkgs/development/tools/irony-server/default.nix
+++ b/pkgs/development/tools/irony-server/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation {
   pname = "irony-server";
-  inherit (irony) version;
+  inherit (irony) src version;
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvmPackages.libclang ];
+  buildInputs = [ llvmPackages.libclang llvmPackages.llvm ];
 
   dontUseCmakeBuildDir = true;
 
@@ -15,13 +15,11 @@ stdenv.mkDerivation {
     "-DCMAKE_PREFIX_PATH=${llvmPackages.clang-unwrapped}"
   ];
 
-  src = irony.src;
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "The server part of irony.";
     homepage = "https://melpa.org/#/irony";
-    maintainers = [ stdenv.lib.maintainers.deepfire ];
-    platforms = stdenv.lib.platforms.unix;
-    license = stdenv.lib.licenses.free;
+    maintainers = [ maintainers.deepfire ];
+    platforms = platforms.unix;
+    license = licenses.free;
   };
 }
diff --git a/pkgs/development/tools/jazzy/Gemfile.lock b/pkgs/development/tools/jazzy/Gemfile.lock
index 2b27f9eaa965..907b095629fc 100644
--- a/pkgs/development/tools/jazzy/Gemfile.lock
+++ b/pkgs/development/tools/jazzy/Gemfile.lock
@@ -1,7 +1,7 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    CFPropertyList (3.0.1)
+    CFPropertyList (3.0.2)
     activesupport (4.2.11.1)
       i18n (~> 0.7)
       minitest (~> 5.1)
@@ -38,7 +38,7 @@ GEM
       fuzzy_match (~> 2.0.4)
       nap (~> 1.0)
     cocoapods-deintegrate (1.0.4)
-    cocoapods-downloader (1.2.2)
+    cocoapods-downloader (1.3.0)
     cocoapods-plugins (1.0.0)
       nap
     cocoapods-search (1.0.0)
@@ -50,14 +50,14 @@ GEM
     colored2 (3.1.2)
     concurrent-ruby (1.1.5)
     escape (0.0.4)
-    ffi (1.11.2)
+    ffi (1.11.3)
     fourflusher (2.3.1)
     fuzzy_match (2.0.4)
     gh_inspector (1.1.3)
     httpclient (2.8.3)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    jazzy (0.12.0)
+    jazzy (0.13.0)
       cocoapods (~> 1.5)
       mustache (~> 1.1)
       open4
@@ -70,7 +70,7 @@ GEM
     liferaft (0.0.6)
     minitest (5.13.0)
     molinillo (0.6.6)
-    mustache (1.1.0)
+    mustache (1.1.1)
     nanaimo (0.2.6)
     nap (1.1.0)
     netrc (0.11.0)
diff --git a/pkgs/development/tools/jazzy/gemset.nix b/pkgs/development/tools/jazzy/gemset.nix
index 8c1a65d62fbf..2073991e7871 100644
--- a/pkgs/development/tools/jazzy/gemset.nix
+++ b/pkgs/development/tools/jazzy/gemset.nix
@@ -36,10 +36,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fr8sdzs2q1969zqh790w223hjidlwx4hfm4c91gj0va5j5pv3n8";
+      sha256 = "1825ll26p28swjiw8n3x2pnh5ygsmg83spf82fnzcjn2p87vc5lf";
       type = "gem";
     };
-    version = "3.0.1";
+    version = "3.0.2";
   };
   claide = {
     groups = ["default"];
@@ -88,10 +88,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09fd4zaqkz8vz3djplacngcs4n0j6j956wgq43s1y6bwl0zyjmd3";
+      sha256 = "08vn0pgcyn6w6fq5xjd7szv2h9s5rzl17kyidnd7fl5qdmzc9c54";
       type = "gem";
     };
-    version = "1.2.2";
+    version = "1.3.0";
   };
   cocoapods-plugins = {
     dependencies = ["nap"];
@@ -170,10 +170,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cbads5da12lb3j0mg2hjrd57s5qkkairxh2y6r9bqyblb5b8xbw";
+      sha256 = "10ay35dm0lkcqprsiya6q2kwvyid884102ryipr4vrk790yfp8kd";
       type = "gem";
     };
-    version = "1.11.2";
+    version = "1.11.3";
   };
   fourflusher = {
     groups = ["default"];
@@ -230,10 +230,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0a2pc4qlf531k85lp7kbwz4rqvs4lgdndmvv676x3qvm181p8blc";
+      sha256 = "0d903aii1y54xb348cyj7rps7xa3in41w2qjh6yvgkbxbabnc616";
       type = "gem";
     };
-    version = "0.12.0";
+    version = "0.13.0";
   };
   json = {
     groups = ["default"];
@@ -278,10 +278,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1698xpwxmfvj39ii5vv8a4aka54p3fpk5i4rf8z9lfxrh4948rbk";
+      sha256 = "1l0p4wx15mi3wnamfv92ipkia4nsx8qi132c6g51jfdma3fiz2ch";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.1.1";
   };
   nanaimo = {
     groups = ["default"];
diff --git a/pkgs/development/tools/kind/default.nix b/pkgs/development/tools/kind/default.nix
index 4ac57d0e8502..411b6a261d67 100644
--- a/pkgs/development/tools/kind/default.nix
+++ b/pkgs/development/tools/kind/default.nix
@@ -1,22 +1,29 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
 
 with stdenv.lib;
 
 buildGoPackage rec {
   pname = "kind";
-  version = "0.5.1";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "kubernetes-sigs";
     repo   = "kind";
-    sha256 = "12bjvma98dlxybqs43dggnd6cihxm18xz68a5jw8dzf0cg738gs8";
+    sha256 = "165nwkhsa12z043rvkdf977jndhp82x7sccqfy75pkx99mzz43r2";
   };
 
   goDeps = ./deps.nix;
   goPackagePath = "sigs.k8s.io/kind";
   subPackages = [ "." ];
 
+  nativeBuildInputs = [ installShellFiles ];
+  postInstall = ''
+    $bin/bin/kind completion bash > kind.bash
+    $bin/bin/kind completion zsh > kind.zsh
+    installShellCompletion kind.{bash,zsh}
+  '';
+
   meta = {
     description = "Kubernetes IN Docker - local clusters for testing Kubernetes";
     homepage    = https://github.com/kubernetes-sigs/kind;
diff --git a/pkgs/development/tools/kind/deps.nix b/pkgs/development/tools/kind/deps.nix
index c5557c2aa49d..99a73291d713 100644
--- a/pkgs/development/tools/kind/deps.nix
+++ b/pkgs/development/tools/kind/deps.nix
@@ -1,6 +1,15 @@
 # file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
 [
   {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
     goPackagePath = "github.com/NYTimes/gziphandler";
     fetch = {
       type = "git";
@@ -14,8 +23,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/PuerkitoBio/purell";
-      rev = "v1.1.1";
-      sha256 = "0c525frsxmalrn55hzzsxy17ng8avkd40ga0wxfw9haxsdjgqdqy";
+      rev = "v1.0.0";
+      sha256 = "1qhsy1nm96b9kb63svkvkqmmw15xg6irwcysisxdgzk64adfwqv1";
     };
   }
   {
@@ -23,8 +32,62 @@
     fetch = {
       type = "git";
       url = "https://github.com/PuerkitoBio/urlesc";
-      rev = "de5bf2ad4578";
-      sha256 = "0n0srpqwbaan1wrhh2b7ysz543pjs1xw2rghvqyffg9l0g8kzgcw";
+      rev = "5bd2802263f2";
+      sha256 = "15y5r3asvm7196m3nza5xvdvlc2k11p6lfs6hi917hl7r9vgi6mp";
+    };
+  }
+  {
+    goPackagePath = "github.com/alessio/shellescape";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alessio/shellescape";
+      rev = "b115ca0f9053";
+      sha256 = "0z4jq94yn0jjj56bzrpdazb3pv1jg0r7z0ikq3gjaa51h423wk4z";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "eb2c6b5be1b6";
+      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev = "v3.3.10";
+      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "v2.0.0";
+      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "v1.0.10";
+      sha256 = "1bqkf2bvy1dns9zd24k81mh2p1zxsx2nhq5cj8dz2vgkv1xkh60i";
     };
   }
   {
@@ -37,12 +100,30 @@
     };
   }
   {
+    goPackagePath = "github.com/docker/spdystream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/spdystream";
+      rev = "449fdfce4d96";
+      sha256 = "1412cpiis971iq1kxrirzirhj2708ispjh0x0dh879b66x8507sl";
+    };
+  }
+  {
+    goPackagePath = "github.com/elazarl/goproxy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/elazarl/goproxy";
+      rev = "c4fc26588b6e";
+      sha256 = "1s3v02px61a3hmvb47rqk598z5visayxq46k3c8dcrayhhngv2fw";
+    };
+  }
+  {
     goPackagePath = "github.com/emicklei/go-restful";
     fetch = {
       type = "git";
       url = "https://github.com/emicklei/go-restful";
-      rev = "v2.9.6";
-      sha256 = "0dgjld5240xhz45rj929ffm452n931qfw3fx8x99vhlnii9qrwz2";
+      rev = "ff4f55a20633";
+      sha256 = "1v5lj5142abz3gvbygp6xghpdx4ps2lwswl8559ivaidahwnc21c";
     };
   }
   {
@@ -73,12 +154,21 @@
     };
   }
   {
+    goPackagePath = "github.com/go-logr/logr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-logr/logr";
+      rev = "v0.1.0";
+      sha256 = "0fhijjhxz4n2j5i24ckzv8r9kri3v44jdyklgbqjfq0xm7izqg14";
+    };
+  }
+  {
     goPackagePath = "github.com/go-openapi/jsonpointer";
     fetch = {
       type = "git";
       url = "https://github.com/go-openapi/jsonpointer";
-      rev = "v0.19.2";
-      sha256 = "1s3cqf4svrbygvvpvi7hf122szsgihas52vqh0bba3avf4w03g9n";
+      rev = "46af16f9f7b1";
+      sha256 = "0w0fphmdycjzbsm1vppdcjc9aqinkcdzcq3pxikdvdqh5p791gsc";
     };
   }
   {
@@ -86,8 +176,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-openapi/jsonreference";
-      rev = "v0.19.2";
-      sha256 = "0v933yvcwyzzlpdxwb9204ki7lls2rwfd96ww2i901ndvz37kdf8";
+      rev = "13c6e3589ad9";
+      sha256 = "1fh4xcl9ijww4bdq656sx981d57w2c9zx5148jsxlsg4bsvxmwis";
     };
   }
   {
@@ -95,8 +185,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-openapi/spec";
-      rev = "v0.19.2";
-      sha256 = "1r2my46qc85fp1j4lbddmd6c1n0am9bq1wyqsnw7x8raiznqxp5l";
+      rev = "6aced65f8501";
+      sha256 = "0yf0nw7167yjpiqrikns5djarjpf2r07q6xnq9xb1cfsc4m7ynm4";
     };
   }
   {
@@ -104,8 +194,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-openapi/swag";
-      rev = "v0.19.2";
-      sha256 = "1mlxlajx2p9wjm72rmqjrx5g49q2sn04y45s3nrykkf6jqlq1v4z";
+      rev = "1d0bd113de87";
+      sha256 = "0fmk42chj20679n87n6sig3czs25lavyj6w208000n6kccv1ns3c";
     };
   }
   {
@@ -113,8 +203,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/gogo/protobuf";
-      rev = "v1.2.1";
-      sha256 = "06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m";
+      rev = "65acae22fc9d";
+      sha256 = "0700alky9z0g9akhrzn20wf4jr1600d0clhs32sm8chnlbvidy46";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/groupcache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/groupcache";
+      rev = "02826c3e7903";
+      sha256 = "0w46bsllddfij66nrg8jbfjsr54birvfww8a2fj9fmgyig5syn2x";
     };
   }
   {
@@ -122,8 +221,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/golang/protobuf";
-      rev = "v1.3.1";
-      sha256 = "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsyl";
+      rev = "v1.3.2";
+      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.3.0";
+      sha256 = "1hyxx3434zshl2m9ja78gwlkg1rx9yl6diqa7dnjb31xz5x4gbjj";
     };
   }
   {
@@ -149,8 +257,26 @@
     fetch = {
       type = "git";
       url = "https://github.com/googleapis/gnostic";
-      rev = "v0.3.0";
-      sha256 = "0bnxpkxw9kmwm27rxhgv3i0jn362wp9whmqrv0lb77874s5iz2lc";
+      rev = "0c5108395e2d";
+      sha256 = "0jf3cp5clli88gpjf24r6wxbkvngnc1kf59d4cgjczsn2wasvsfc";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev = "v0.5.1";
+      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
     };
   }
   {
@@ -176,8 +302,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/json-iterator/go";
-      rev = "v1.1.6";
-      sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
+      rev = "v1.1.8";
+      sha256 = "1kbp9fj6fxfql0ir59zb6v68l4bpwlmk76xm8vaikw1hp6y9bcss";
     };
   }
   {
@@ -185,8 +311,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/kisielk/errcheck";
-      rev = "v1.1.0";
-      sha256 = "19vd4rxmqbk5lpiav3pf7df3yjlz0l0dwx9mn0gjq5f998iyhy6y";
+      rev = "v1.2.0";
+      sha256 = "0am6g10ipdxw84byscm7shda654882wjcbinq5c4696m6mhi2qrd";
     };
   }
   {
@@ -199,15 +325,6 @@
     };
   }
   {
-    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
-    fetch = {
-      type = "git";
-      url = "https://github.com/konsorten/go-windows-terminal-sequences";
-      rev = "v1.0.1";
-      sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
-    };
-  }
-  {
     goPackagePath = "github.com/kr/pretty";
     fetch = {
       type = "git";
@@ -221,8 +338,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/kr/pty";
-      rev = "v1.1.5";
-      sha256 = "1bpq77b90z72cv9h66dvxsg2j197ylpgcps23xsjfbs752bykfw1";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
     };
   }
   {
@@ -235,12 +352,48 @@
     };
   }
   {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "v1.8.0";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
     goPackagePath = "github.com/mailru/easyjson";
     fetch = {
       type = "git";
       url = "https://github.com/mailru/easyjson";
-      rev = "da37f6c1e481";
-      sha256 = "0yhamddd1jyqslp0hm5g07ki82sp52f0idfiqylx6fm24fin74gh";
+      rev = "d5b7844b561a";
+      sha256 = "1g84l4wns28xjpn6nl1g33dcj3sfgxlkqqsa6w8fbq2kwyd50xka";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.10";
+      sha256 = "0jf4hwfwd2cpxrlyv0jzcia809q2bjw7y1m3ciaj2s8lj2jqyf6r";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
     };
   }
   {
@@ -271,12 +424,21 @@
     };
   }
   {
+    goPackagePath = "github.com/mxk/go-flowrate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mxk/go-flowrate";
+      rev = "cca7078d478f";
+      sha256 = "0zqs39923ja0yypdmiqk6x8pgmfs3ms5x5sl1dqv9z6zyx2xy541";
+    };
+  }
+  {
     goPackagePath = "github.com/onsi/ginkgo";
     fetch = {
       type = "git";
       url = "https://github.com/onsi/ginkgo";
-      rev = "v1.8.0";
-      sha256 = "1326s5fxgasdpz1qqwrw4n5p3k0vz44msnyz14knrhlw5l97lx33";
+      rev = "v1.10.1";
+      sha256 = "033a42h1wzmji57p86igg9whvsbp6nvfdsypskw738ys903n3z4d";
     };
   }
   {
@@ -284,8 +446,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/onsi/gomega";
-      rev = "v1.5.0";
-      sha256 = "1n7i4hksdgv410m43v2sw14bl5vy59dkp6nlw5l76nibbh37syr9";
+      rev = "v1.7.0";
+      sha256 = "09j6wq425wgzzsbwm9ckhfgl2capv3yyqbrf45qyrjwkzm49i02y";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.2.0";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
     };
   }
   {
@@ -307,12 +478,30 @@
     };
   }
   {
-    goPackagePath = "github.com/sirupsen/logrus";
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v1.5.2";
+      sha256 = "0jzbfzcywqcrnym4gxlz6nphmm1grg6wsl4f0r9x384rn83wkj7c";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
     fetch = {
       type = "git";
-      url = "https://github.com/sirupsen/logrus";
-      rev = "v1.4.1";
-      sha256 = "1m7ny9jkb98cxqhsp13xa5hnqh1s9f25x04q6arsala4zswsw33c";
+      url = "https://github.com/spf13/afero";
+      rev = "v1.1.2";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "v1.3.0";
+      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
     };
   }
   {
@@ -320,8 +509,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/spf13/cobra";
-      rev = "v0.0.3";
-      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
+      rev = "v0.0.5";
+      sha256 = "0z4x8js65mhwg1gf6sa865pdxfgn45c3av9xlcc1l3xjvcnx32v2";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "v1.0.0";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
     };
   }
   {
@@ -329,8 +527,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/spf13/pflag";
-      rev = "v1.0.3";
-      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+      rev = "v1.0.5";
+      sha256 = "0gpmacngd0gpslnbkzi263f5ishigzgh6pbdv9hp092rnjl4nd31";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "v1.3.2";
+      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
     };
   }
   {
@@ -338,8 +545,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/stretchr/objx";
-      rev = "v0.2.0";
-      sha256 = "0pcdvakxgddaiwcdj73ra4da05a3q4cgwbpm2w75ycq4kzv8ij8k";
+      rev = "v0.1.0";
+      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
     };
   }
   {
@@ -347,8 +554,26 @@
     fetch = {
       type = "git";
       url = "https://github.com/stretchr/testify";
-      rev = "v1.3.0";
-      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
+      rev = "v1.4.0";
+      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "d75b2dcb6bc8";
+      sha256 = "0di1k35gpq9bp958ywranpbskx2vdwlb38s22vl9rybm3wa5g3ps";
+    };
+  }
+  {
+    goPackagePath = "github.com/xordataexchange/crypt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xordataexchange/crypt";
+      rev = "b2862e3d0a77";
+      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
     };
   }
   {
@@ -356,8 +581,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "5c40567a22f8";
-      sha256 = "17g8fb9vy2sqq8vgz8jdvf6c6d2290gm2qs0i4yzsd86mgn4dlrg";
+      rev = "c2843e01d9a2";
+      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
     };
   }
   {
@@ -365,8 +590,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "3b0461eec859";
-      sha256 = "0l00c8l0a8xnv6qdpwfzxxsr58jggacgzdrwiprrfx2xqm37b6d5";
+      rev = "13f9640d40b9";
+      sha256 = "1ba2767lvklnmfvb9jkwvd4m7z6326gaiz3rgylh795g88hy34g1";
     };
   }
   {
@@ -374,8 +599,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sync";
-      rev = "112230192c58";
-      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
+      rev = "1d60e4601c6f";
+      sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
     };
   }
   {
@@ -383,8 +608,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "d432491b9138";
-      sha256 = "0ijq720jr76yxdd6mh1rdpxh7q93w6149paclb4g39vhr84hfiv8";
+      rev = "c1f44814a5cd";
+      sha256 = "1a6hb4326hk8hvcbs0pqypalsxzqc8xasnglrrwd6ai0njgh18pg";
     };
   }
   {
@@ -401,8 +626,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/tools";
-      rev = "5aca471b1d59";
-      sha256 = "1i4h3q83w4y9s065w0wnnnwlssy69jbrj08k47ppsa8dnv85kyrf";
+      rev = "6c7e314b6563";
+      sha256 = "1m1n6r8v6mrlh0yvlz3qxz4s7jc7nis0zf3dfl1i6hqh5xblkwnw";
     };
   }
   {
@@ -446,17 +671,17 @@
     fetch = {
       type = "git";
       url = "https://gopkg.in/yaml.v2";
-      rev = "v2.2.2";
-      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+      rev = "v2.2.5";
+      sha256 = "08smz8dfyxp02ha74my9iszqa5qzgl3ksi28ilyp8lqipssiq6fg";
     };
   }
   {
-    goPackagePath = "k8s.io/api";
+    goPackagePath = "gopkg.in/yaml.v3";
     fetch = {
       type = "git";
-      url = "https://github.com/kubernetes/api";
-      rev = "6e4e0e4f393b";
-      sha256 = "0y7nxxywq2qx74a5vsg0h2jkfj879wbv6bjran12401fv0vsdlp1";
+      url = "https://gopkg.in/yaml.v3";
+      rev = "e228e37189d3";
+      sha256 = "06sc63lqhkqjh188md1cywvscxq40cqgmdl8ccd3q891b1xpajl4";
     };
   }
   {
@@ -464,17 +689,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/kubernetes/apimachinery";
-      rev = "6a84e37a896d";
-      sha256 = "1ys06ixidvpcj9sgk0c2i5vsz11gg3h8xcpc9kqxfsik36cw1akk";
-    };
-  }
-  {
-    goPackagePath = "k8s.io/client-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/client-go";
-      rev = "v11.0.0";
-      sha256 = "006007k55b5q95fa0vih4bprwvx5sk4a5chvsn46baqa5znphyn1";
+      rev = "v0.17.0";
+      sha256 = "1418y3p2fx7zsf1anpwcma1fqnaymal12d6x33j600jf1y0j9g8i";
     };
   }
   {
@@ -491,8 +707,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/kubernetes/klog";
-      rev = "v0.3.3";
-      sha256 = "1gk1jhhyzsqcb4wnb02hkp8fwmk3ac924yzk87hfc6sgz43jplpn";
+      rev = "v1.0.0";
+      sha256 = "1cgannfmldcrcksb2wqdn2b5qabqyxl9r25w9y4qbljw24hhnlvn";
     };
   }
   {
@@ -500,17 +716,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/kubernetes/kube-openapi";
-      rev = "db7b694dc208";
-      sha256 = "11pmxz6if6gphspyyjqrphwclg02mgnp30mn1i0lr8r21d64m148";
-    };
-  }
-  {
-    goPackagePath = "sigs.k8s.io/kustomize/v3";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes-sigs/kustomize";
-      rev = "4b67a6de1296";
-      sha256 = "1qi5swzs3qix9mimrc660hxh9qgcrbcw49z4w27hdv27xl5fa0rd";
+      rev = "30be4d16710a";
+      sha256 = "13pksn2xzyhrz569zihqy78y9ckn4sf4f4x31w1czfwbs87n00gf";
     };
   }
   {
diff --git a/pkgs/development/tools/kubectx/default.nix b/pkgs/development/tools/kubectx/default.nix
index fe72f6dcf168..b3116a9b2f9d 100644
--- a/pkgs/development/tools/kubectx/default.nix
+++ b/pkgs/development/tools/kubectx/default.nix
@@ -4,13 +4,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "kubectx";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "ahmetb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11snp3li2w4ds2r7fc6mldlgj24mga40v0knlralaiz296bd6zcs";
+    sha256 = "0mv40jh94by99i5wkf3p52wk4l68hvly1k5gnn7zsy9avc8fjd0p";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/kubeprompt/default.nix b/pkgs/development/tools/kubeprompt/default.nix
new file mode 100644
index 000000000000..7c6f3f3396cf
--- /dev/null
+++ b/pkgs/development/tools/kubeprompt/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kubeprompt";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "jlesquembre";
+    repo = pname;
+    rev = version;
+    sha256 = "1a0xi31bd7n2zrx2z4srhvixlbj028h63dlrjzqxgmgn2w6akbz2";
+  };
+
+  preBuild = ''
+    export buildFlagsArray+=(
+      "-ldflags=
+        -w -s
+        -X ${goPackagePath}/pkg/version.Version=${version}")
+  '';
+
+  goPackagePath = "github.com/jlesquembre/kubeprompt";
+  modSha256 = "0rbpdk2dixywn3wcdgz48f3xw3b7fk8xh7mrlx27wz7fq5wj9v8f";
+
+  meta = with stdenv.lib; {
+    description = "Kubernetes prompt";
+    homepage = "https://github.com/jlesquembre/kubeprompt";
+    license = licenses.epl20;
+    maintainers = with maintainers; [ jlesquembre ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index f91938fb62e3..c98a0a79705d 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "lazygit";
-  version = "0.8";
+  version = "0.11.3";
 
   goPackagePath = "github.com/jesseduffield/lazygit";
 
@@ -12,13 +12,13 @@ buildGoPackage rec {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0zynw5gr96a59x1qshzhhvld883ndf1plnw6l9dbhmff0wcfv6l1";
+    sha256 = "0v765f93hkq94bmzfwkkb9ndbfka415sxyi01679fg860746rl6l";
   };
 
   meta = with stdenv.lib; {
     description = "Simple terminal UI for git commands";
     homepage = "https://github.com/jesseduffield/lazygit";
     license = licenses.mit;
-    maintainers = with maintainers; [ fpletz ];
+    maintainers = with maintainers; [ fpletz equirosa ];
   };
 }
diff --git a/pkgs/development/tools/micronaut/default.nix b/pkgs/development/tools/micronaut/default.nix
index 9b24fc7573c3..fd9fa5f02dae 100644
--- a/pkgs/development/tools/micronaut/default.nix
+++ b/pkgs/development/tools/micronaut/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "micronaut";
-  version = "1.2.5";
+  version = "1.2.6";
 
   src = fetchzip {
     url = "https://github.com/micronaut-projects/micronaut-core/releases/download/v${version}/${pname}-${version}.zip";
-    sha256 = "1ka70cr6kznl68ilc42blzqk59gy20spkyqfn26n6zbk0jm5ssxv";
+    sha256 = "0y7qshg6v8s5rwi0fz9xpyhd1yhv8jrw2jhp276a30dfkglx19qn";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix
index 210659289d1e..82365d986b8a 100644
--- a/pkgs/development/tools/misc/binutils/default.nix
+++ b/pkgs/development/tools/misc/binutils/default.nix
@@ -1,11 +1,13 @@
 { stdenv, lib, buildPackages
-, fetchurl, zlib, autoreconfHook, gettext
+, fetchFromGitHub, fetchurl, zlib, autoreconfHook, gettext
 # Enabling all targets increases output size to a multiple.
 , withAllTargets ? false, libbfd, libopcodes
 , enableShared ? true
 , noSysDirs
 , gold ? !stdenv.buildPlatform.isDarwin || stdenv.hostPlatform == stdenv.targetPlatform
 , bison ? null
+, flex
+, texinfo
 }:
 
 let
@@ -15,21 +17,29 @@ let
   # is now upstream.
   # https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=330b90b5ffbbc20c5de6ae6c7f60c40fab2e7a4f;hp=99181ccac0fc7d82e7dabb05dc7466e91f1645d3
   version = "2.31.1";
-  basename = "binutils-${version}";
+  basename = "binutils";
   # The targetPrefix prepended to binary names to allow multiple binuntils on the
   # PATH to both be usable.
   targetPrefix = lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
                   "${stdenv.targetPlatform.config}-";
+  vc4-binutils-src = fetchFromGitHub {
+    owner = "itszor";
+    repo = "binutils-vc4";
+    rev = "708acc851880dbeda1dd18aca4fd0a95b2573b36";
+    sha256 = "1kdrz6fki55lm15rwwamn74fnqpy0zlafsida2zymk76n3656c63";
+  };
+  # HACK to ensure that we preserve source from bootstrap binutils to not rebuild LLVM
+  normal-src = stdenv.__bootPackages.binutils-unwrapped.src or (fetchurl {
+    url = "mirror://gnu/binutils/${basename}-${version}.tar.bz2";
+    sha256 = "1l34hn1zkmhr1wcrgf0d4z7r3najxnw3cx2y2fk7v55zjlk3ik7z";
+  });
 in
 
 stdenv.mkDerivation {
-  name = targetPrefix + basename;
+  pname = targetPrefix + basename;
+  inherit version;
 
-  # HACK to ensure that we preserve source from bootstrap binutils to not rebuild LLVM
-  src = stdenv.__bootPackages.binutils-unwrapped.src or (fetchurl {
-    url = "mirror://gnu/binutils/${basename}.tar.bz2";
-    sha256 = "1l34hn1zkmhr1wcrgf0d4z7r3najxnw3cx2y2fk7v55zjlk3ik7z";
-  });
+  src = if stdenv.targetPlatform.isVc4 then vc4-binutils-src else normal-src;
 
   patches = [
     # Make binutils output deterministic by default.
@@ -54,6 +64,8 @@ stdenv.mkDerivation {
     # cross-compiling.
     ./always-search-rpath.patch
 
+  ] ++ lib.optionals (!stdenv.targetPlatform.isVc4)
+  [
     # https://sourceware.org/bugzilla/show_bug.cgi?id=22868
     ./gold-symbol-visibility.patch
 
@@ -69,9 +81,9 @@ stdenv.mkDerivation {
   depsBuildBuild = [ buildPackages.stdenv.cc ];
   nativeBuildInputs = [
     bison
-  ] ++ lib.optionals stdenv.targetPlatform.isiOS [
+  ] ++ (lib.optionals stdenv.targetPlatform.isiOS [
     autoreconfHook
-  ];
+  ]) ++ lib.optionals stdenv.targetPlatform.isVc4 [ texinfo flex ];
   buildInputs = [ zlib gettext ];
 
   inherit noSysDirs;
@@ -132,7 +144,7 @@ stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   passthru = {
-    inherit targetPrefix version;
+    inherit targetPrefix;
   };
 
   meta = with lib; {
diff --git a/pkgs/development/tools/misc/ccls/default.nix b/pkgs/development/tools/misc/ccls/default.nix
index ec97d1bb75b3..8748cdf52b4f 100644
--- a/pkgs/development/tools/misc/ccls/default.nix
+++ b/pkgs/development/tools/misc/ccls/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ccls";
-  version = "0.20190823.4";
+  version = "0.20190823.5";
 
   src = fetchFromGitHub {
     owner = "MaskRay";
     repo = "ccls";
     rev = version;
-    sha256 = "1aq8q32jdkhrdrsghk8sdb8y4si36hfavf7jq2yzbqinjx03y1n4";
+    sha256 = "0b2pkpzn576b92zcxpwchpkyw2fww6s69818rx4g9z34kzm35zy5";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/misc/direvent/default.nix b/pkgs/development/tools/misc/direvent/default.nix
new file mode 100644
index 000000000000..0ae1884646d9
--- /dev/null
+++ b/pkgs/development/tools/misc/direvent/default.nix
@@ -0,0 +1,21 @@
+{ stdenv
+, fetchurl
+}:
+
+stdenv.mkDerivation rec {
+  name = "direvent-${version}";
+  version = "5.2";
+
+  src = fetchurl {
+    url = "mirror://gnu/direvent/${name}.tar.gz";
+    sha256 = "0m9vi01b1km0cpknflyzsjnknbava0s1n6393b2bpjwyvb6j5613";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Directory event monitoring daemon";
+    homepage = "https://www.gnu.org.ua/software/direvent/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ puffnfresh ];
+  };
+}
diff --git a/pkgs/development/tools/misc/elfkickers/default.nix b/pkgs/development/tools/misc/elfkickers/default.nix
index c7eaafd9c7a8..288e8bf96998 100644
--- a/pkgs/development/tools/misc/elfkickers/default.nix
+++ b/pkgs/development/tools/misc/elfkickers/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "elfkickers";
-  version = "3.1";
+  version = "3.1a";
 
   src = fetchurl {
     url = "http://www.muppetlabs.com/~breadbox/pub/software/ELFkickers-${version}.tar.gz";
-    sha256 = "0n0sypjrdm3ramv0sby4sdh3i3j9d0ihadr951wa08ypdnq3yrkd";
+    sha256 = "02354yn1lh1dxny35ky2d0b44iq302krsqpwk5grr4glma00hhq6";
   };
 
   makeFlags = [ "CC=cc prefix=$(out)" ];
diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix
index e990cb683e7d..e125b7418f6b 100644
--- a/pkgs/development/tools/misc/gdb/default.nix
+++ b/pkgs/development/tools/misc/gdb/default.nix
@@ -1,4 +1,4 @@
-{ stdenv
+{ stdenv, targetPackages
 
 # Build time
 , fetchurl, pkgconfig, perl, texinfo, setupDebugInfoDirs, buildPackages
@@ -8,7 +8,12 @@
 
 , pythonSupport ? stdenv.hostPlatform == stdenv.buildPlatform && !stdenv.hostPlatform.isCygwin, python3 ? null
 , guile ? null
-
+, safePaths ? [
+   # $debugdir:$datadir/auto-load are whitelisted by default by GDB
+   "$debugdir" "$datadir/auto-load"
+   # targetPackages so we get the right libc when cross-compiling and using buildPackages.gdb
+   targetPackages.stdenv.cc.cc.lib
+  ]
 }:
 
 let
@@ -70,6 +75,7 @@ stdenv.mkDerivation rec {
     "--with-gmp=${gmp.dev}"
     "--with-mpfr=${mpfr.dev}"
     "--with-expat" "--with-libexpat-prefix=${expat.dev}"
+    "--with-auto-load-safe-path=${builtins.concatStringsSep ":" safePaths}"
   ] ++ stdenv.lib.optional (!pythonSupport) "--without-python";
 
   postInstall =
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
index 4a65d0888347..f8b04af3f974 100644
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ b/pkgs/development/tools/misc/hydra/default.nix
@@ -15,7 +15,7 @@ else
 let
   perlDeps = buildEnv {
     name = "hydra-perl-deps";
-    paths = with perlPackages;
+    paths = with perlPackages; lib.closePropagation
       [ ModulePluggable
         CatalystActionREST
         CatalystAuthenticationStoreDBIxClass
diff --git a/pkgs/development/tools/misc/mkcert/default.nix b/pkgs/development/tools/misc/mkcert/default.nix
index b9b1f83322d1..ae0a4a6dfe21 100644
--- a/pkgs/development/tools/misc/mkcert/default.nix
+++ b/pkgs/development/tools/misc/mkcert/default.nix
@@ -1,17 +1,23 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "mkcert";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "FiloSottile";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0xcmvzh5lq8vs3b0f1zw645fxdr8471v7prl1656q02v38f58ly7";
+    sha256 = "0w1ji96hbd3anzsz82xjcafsqhgyz7c7n41rsq60yrllwbj5946f";
   };
 
+  modSha256 = "13a3snhcqq3a9lfy9zfr2rx10mf2ymvhmds1bg8n4m7lbwnzm4fg";
+
   goPackagePath = "github.com/FiloSottile/mkcert";
+  buildFlagsArray = ''
+    -ldflags=
+      -X ${goPackagePath}/main.Version=${version}
+  '';
 
   meta = with lib; {
     homepage = https://github.com/FiloSottile/mkcert;
diff --git a/pkgs/development/tools/misc/pwndbg/default.nix b/pkgs/development/tools/misc/pwndbg/default.nix
index 9af43e4b7471..449d9ee09848 100644
--- a/pkgs/development/tools/misc/pwndbg/default.nix
+++ b/pkgs/development/tools/misc/pwndbg/default.nix
@@ -44,7 +44,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Exploit Development and Reverse Engineering with GDB Made Easy";
-    homepage = http://pwndbg.com;
+    homepage = "https://github.com/pwndbg/pwndbg";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mic92 ];
diff --git a/pkgs/development/tools/misc/reviewdog/default.nix b/pkgs/development/tools/misc/reviewdog/default.nix
index 65a7c9eef397..2b20b3bd5470 100644
--- a/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/pkgs/development/tools/misc/reviewdog/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "reviewdog";
-  version = "0.9.12";
+  version = "0.9.14";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0r7y8nbpwfbvinpapv6lgnlc93kwn4b6722cp5ihyf361fklcd02";
+    sha256 = "1npawdvryrxrdfkv4j1jk63l3mwsdgsj85k9yqyhrrphk2w4s1cr";
   };
 
-  modSha256 = "1ydfirjhw238zbia5mk90fx9rrg3kvm2h54zjhiimlvnpls5y8c9";
+  modSha256 = "0a6bmwysgvwpddh2mp228s2brb0kqfcxqjffs2pabf7ym5flmz0g";
 
   subPackages = [ "cmd/reviewdog" ];
 
-  buildFlagsArray = [ "-ldflags=-X github.com/reviewdog/reviewdog/commands.Version=${version}" ];
+  buildFlagsArray = [ "-ldflags=-s -w -X github.com/reviewdog/reviewdog/commands.Version=${version}" ];
 
   meta = with lib; {
     description = "Automated code review tool integrated with any code analysis tools regardless of programming language";
diff --git a/pkgs/development/tools/misc/scc/default.nix b/pkgs/development/tools/misc/scc/default.nix
index 2d5d94813ca4..47a914823273 100644
--- a/pkgs/development/tools/misc/scc/default.nix
+++ b/pkgs/development/tools/misc/scc/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "scc";
-  version = "2.8.0";
+  version = "2.10.1";
 
   src = fetchFromGitHub {
     owner = "boyter";
@@ -17,9 +17,9 @@ buildGoPackage rec {
   subPackages = [ "./" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/boyter/scc;
+    homepage = "https://github.com/boyter/scc";
     description = "A very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go";
-    maintainers = with maintainers; [ sigma ];
+    maintainers = with maintainers; [ sigma filalex77 ];
     license = with licenses; [ unlicense /* or */ mit ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/tools/misc/sqitch/default.nix b/pkgs/development/tools/misc/sqitch/default.nix
index a077367622eb..66d40ae31279 100644
--- a/pkgs/development/tools/misc/sqitch/default.nix
+++ b/pkgs/development/tools/misc/sqitch/default.nix
@@ -1,4 +1,4 @@
-{ name, stdenv, perl, makeWrapper, sqitchModule, databaseModule }:
+{ name, stdenv, perl, makeWrapper, sqitchModule, databaseModule, shortenPerlShebang }:
 
 stdenv.mkDerivation {
   name = "${name}-${sqitchModule.version}";
@@ -8,6 +8,8 @@ stdenv.mkDerivation {
   src = sqitchModule;
   dontBuild = true;
 
+  nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang;
+
   installPhase = ''
     mkdir -p $out/bin
     for d in bin/sqitch etc lib share ; do
@@ -17,6 +19,8 @@ stdenv.mkDerivation {
         ln -s ${sqitchModule}/$d $out/$d
       fi
     done
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    shortenPerlShebang $out/bin/sqitch
   '';
   dontStrip = true;
   postFixup = "wrapProgram $out/bin/sqitch --prefix PERL5LIB : $PERL5LIB";
diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix
index 4f71d5ae4108..2ecabb68670c 100644
--- a/pkgs/development/tools/misc/strace/default.nix
+++ b/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "5.3";
+  version = "5.4";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "0ix06z4vnc49mv76f22kixz8dsh7daqv9mpgwcgl0mlnfjc124vc";
+    sha256 = "0hd7sb7l99y9rcj8jjc1b6m3ryds17krsymdg3dvd40jsla0bl7p";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://strace.io/;
+    homepage = "https://strace.io/";
     description = "A system call tracer for Linux";
     license =  with licenses; [ lgpl21Plus gpl2Plus ]; # gpl2Plus is for the test suite
     platforms = platforms.linux;
diff --git a/pkgs/development/tools/misc/uncrustify/default.nix b/pkgs/development/tools/misc/uncrustify/default.nix
index d85cd1a82164..01ed66030188 100644
--- a/pkgs/development/tools/misc/uncrustify/default.nix
+++ b/pkgs/development/tools/misc/uncrustify/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchFromGitHub, cmake }:
+{ stdenv, fetchFromGitHub, cmake, python }:
 
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "uncrustify";
-  version = "0.67";
+  version = "0.70.1";
 
   src = fetchFromGitHub {
     owner = product;
     repo = product;
     rev = name;
-    sha256 = "0hf8c93aj1hjg6cc77x6p7nf7ddp8mn4b6a9gpcrvmx8w81afpd3";
+    sha256 = "0zr3vxhd947zdvwccw3cj0vsriaawcpfjq3x94v9887hsi8fk87b";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake python ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/tools/misc/usb-modeswitch/data.nix b/pkgs/development/tools/misc/usb-modeswitch/data.nix
index fb43ff61a81c..d2b80011dea0 100644
--- a/pkgs/development/tools/misc/usb-modeswitch/data.nix
+++ b/pkgs/development/tools/misc/usb-modeswitch/data.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "usb-modeswitch-data";
-  version = "20170806";
+  version = "20191128";
 
   src = fetchurl {
     url    = "http://www.draisberghof.de/usb_modeswitch/${pname}-${version}.tar.bz2";
-    sha256 = "0b1wari3aza6qjggqd0hk2zsh93k1q8scgmwh6f8wr0flpr3whff";
+    sha256 = "1ygahl3r26r38ai8yyblq9nhf3v5i6n6r6672p5wf88wg5h9n0rz";
   };
 
   inherit (usb-modeswitch) makeFlags;
diff --git a/pkgs/development/tools/misc/usb-modeswitch/default.nix b/pkgs/development/tools/misc/usb-modeswitch/default.nix
index 7c119c929431..a0e1b8eb8ceb 100644
--- a/pkgs/development/tools/misc/usb-modeswitch/default.nix
+++ b/pkgs/development/tools/misc/usb-modeswitch/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "usb-modeswitch";
-  version = "2.5.2";
+  version = "2.6.0";
 
   src = fetchurl {
     url    = "http://www.draisberghof.de/usb_modeswitch/${pname}-${version}.tar.bz2";
-    sha256 = "19ifi80g9ns5dmspchjvfj4ykxssq9yrci8m227dgb3yr04srzxb";
+    sha256 = "18wbbxc5cfsmikba0msdvd5qlaga27b32nhrzicyd9mdddp265f2";
   };
 
   makeFlags = [
diff --git a/pkgs/development/tools/ocaml/crunch/default.nix b/pkgs/development/tools/ocaml/crunch/default.nix
new file mode 100644
index 000000000000..e48707dcb9af
--- /dev/null
+++ b/pkgs/development/tools/ocaml/crunch/default.nix
@@ -0,0 +1,28 @@
+{ lib, buildDunePackage, fetchurl, ocaml, cmdliner, opaline, ptime }:
+
+buildDunePackage rec {
+
+  pname = "crunch";
+  version = "3.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/ocaml-crunch/releases/download/v${version}/crunch-v${version}.tbz";
+    sha256 = "0d26715a4h9r1wibnc12xy690m1kan7hrcgbb5qk8x78zsr67lnf";
+  };
+
+  propagatedBuildInputs = [ cmdliner ptime ];
+
+  outputs = [ "lib" "bin" "out" ];
+
+  installPhase = ''
+    ${opaline}/bin/opaline -prefix $bin -libdir $lib/lib/ocaml/${ocaml.version}/site-lib/
+  '';
+
+  meta = {
+    homepage = "https://github.com/mirage/ocaml-crunch";
+    description = "Convert a filesystem into a static OCaml module";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
index d1ff9eee8179..9ca6ca67421f 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
@@ -3,11 +3,12 @@
 }:
 
 stdenv.mkDerivation {
-	pname = "js_of_ocaml"; 
+  pname = "js_of_ocaml"; 
 
-	inherit (js_of_ocaml-compiler) version src installPhase meta;
+  inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ppx_tools_versioned ];
+  buildInputs = [ findlib ocaml-migrate-parsetree ppx_tools_versioned ];
+  nativeBuildInputs = [ ocaml findlib dune ];
 
   postPatch = "patchShebangs lib/generate_stubs.sh";
 
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index c449c0f90024..801e41427804 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildDunePackage
-, cmdliner, cppo, yojson
+, ocaml, findlib, cmdliner, dune, cppo, yojson
 }:
 
 buildDunePackage rec {
@@ -13,8 +13,10 @@ buildDunePackage rec {
 		sha256 = "0c537say0f3197zn8d83nrihabrxyn28xc6d7c9c3l0vvrv6qvfj";
 	};
 
-	buildInputs = [ cmdliner cppo ];
+	nativeBuildInputs = [ ocaml findlib dune cppo ];
+  buildInputs = [ cmdliner ];
 
+  configurePlatforms = [];
 	propagatedBuildInputs = [ yojson ];
 
 	meta = {
diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix
index 67acf874baff..ed3d5efc789d 100644
--- a/pkgs/development/tools/ocaml/merlin/default.nix
+++ b/pkgs/development/tools/ocaml/merlin/default.nix
@@ -1,21 +1,19 @@
-{ stdenv, fetchFromGitHub, buildDunePackage, yojson }:
+{ lib, fetchurl, buildDunePackage, yojson }:
 
 buildDunePackage rec {
   pname = "merlin";
-  version = "3.3.2";
+  version = "3.3.3";
 
   minimumOCamlVersion = "4.02.1";
 
-  src = fetchFromGitHub {
-    owner = "ocaml";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1z9mcxflraj15sbz6q7f84n31n9fsialw7z8bi3r1biz68nypva9";
+  src = fetchurl {
+    url = "https://github.com/ocaml/merlin/releases/download/v${version}/merlin-v${version}.tbz";
+    sha256 = "05dfkbpbb7nvs4g6y0iw7a9f73ygvhs9l45l2g56y7zagvs9x43j";
   };
 
   buildInputs = [ yojson ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "An editor-independent tool to ease the development of programs in OCaml";
     homepage = "https://github.com/ocaml/merlin";
     license = licenses.mit;
diff --git a/pkgs/development/tools/ocaml/ocaml-top/default.nix b/pkgs/development/tools/ocaml/ocaml-top/default.nix
index 7336439240d5..3ceb9b1622c1 100644
--- a/pkgs/development/tools/ocaml/ocaml-top/default.nix
+++ b/pkgs/development/tools/ocaml/ocaml-top/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchzip, ncurses, ocamlPackages }:
+{ lib, fetchzip, ncurses, ocamlPackages }:
 
 with ocamlPackages; buildDunePackage rec {
   pname = "ocaml-top";
-  version = "1.1.5";
+  version = "1.2.0-rc";
 
   src = fetchzip {
     url = "https://github.com/OCamlPro/ocaml-top/archive/${version}.tar.gz";
-    sha256 = "1d4i6aanrafgrgk4mh154k6lkwk0b6mh66rykz33awlf5pfqd8yv";
+    sha256 = "1r290m9vvr25lgaanivz05h0kf4fd3h5j61wj4hpp669zffcyyb5";
   };
 
-  buildInputs = [ ncurses ocp-build lablgtk ocp-index ];
+  buildInputs = [ ncurses ocp-build lablgtk3-sourceview3 ocp-index ];
 
   configurePhase = ''
     export TERM=xterm
@@ -18,8 +18,8 @@ with ocamlPackages; buildDunePackage rec {
 
   meta = {
     homepage = https://www.typerex.org/ocaml-top.html;
-    license = stdenv.lib.licenses.gpl3;
+    license = lib.licenses.gpl3;
     description = "A simple cross-platform OCaml code editor built for top-level evaluation";
-    maintainers = with stdenv.lib.maintainers; [ vbgl ];
+    maintainers = with lib.maintainers; [ vbgl ];
   };
 }
diff --git a/pkgs/development/tools/ocaml/ocamlformat/default.nix b/pkgs/development/tools/ocaml/ocamlformat/default.nix
index 4eb1cc858ad0..d599fb7ade14 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/default.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/default.nix
@@ -1,16 +1,14 @@
-{ lib, fetchFromGitHub, ocamlPackages }:
+{ lib, fetchurl, ocamlPackages }:
 
 with ocamlPackages; buildDunePackage rec {
   pname = "ocamlformat";
-  version = "0.11.0";
+  version = "0.12";
 
   minimumOCamlVersion = "4.06";
 
-  src = fetchFromGitHub {
-    owner = "ocaml-ppx";
-    repo = pname;
-    rev = version;
-    sha256 = "0zvjn71jd4d3znnpgh0yphb2w8ggs457b6bl6cg1fmpdgxnds6yx";
+  src = fetchurl {
+    url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}.tbz";
+    sha256 = "1zi8x597dhp2822j6j28s84yyiqppl7kykpwqqclx6ybypvlzdpj";
   };
 
   buildInputs = [
@@ -25,7 +23,7 @@ with ocamlPackages; buildDunePackage rec {
   ];
 
   meta = {
-    inherit (src.meta) homepage;
+    homepage = "https://github.com/ocaml-ppx/ocamlformat";
     description = "Auto-formatter for OCaml code";
     maintainers = [ lib.maintainers.Zimmi48 ];
     license = lib.licenses.mit;
diff --git a/pkgs/development/tools/ofono-phonesim/default.nix b/pkgs/development/tools/ofono-phonesim/default.nix
index cc33b675954a..e62827c67b49 100644
--- a/pkgs/development/tools/ofono-phonesim/default.nix
+++ b/pkgs/development/tools/ofono-phonesim/default.nix
@@ -1,27 +1,21 @@
 { stdenv
 , mkDerivation
-, fetchFromGitHub
+, fetchgit
 , autoreconfHook
 , pkgconfig
 , qtbase
-, qtscript
 }:
 
 mkDerivation {
   pname = "ofono-phonesim";
-  version = "unstable-2014-04-22";
+  version = "unstable-2019-11-18";
 
-  src = fetchFromGitHub {
-    owner = "jpakkane";
-    repo = "ofono-phonesim";
-    rev = "baa41f04e6a86c5289d7185cad8a6f08a5c3ed0a";
-    sha256 = "0ywalvvf3dfbn81ml21gji1n2hywh2nmakynakjzyyskcqjn2wiz";
+  src = fetchgit {
+    url = "git://git.kernel.org/pub/scm/network/ofono/phonesim.git";
+    rev = "adf231a84cd3708b825dc82c56e841dd7e3b4541";
+    sha256 = "sha256:1840914sz46l8h2jwa0lymw6dvgj72wq9bhp3k4v4rk6masbf6hp";
   };
 
-  patches = [
-    ./qt5-compat.patch
-  ];
-
   nativeBuildInputs = [
     autoreconfHook
     pkgconfig
@@ -29,7 +23,6 @@ mkDerivation {
 
   buildInputs = [
     qtbase
-    qtscript
   ];
 
   makeFlags = [
@@ -39,7 +32,7 @@ mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Phone Simulator for modem testing";
-    homepage = https://github.com/jpakkane/ofono-phonesim;
+    homepage = "https://01.org/ofono";
     license = licenses.gpl2;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.linux;
diff --git a/pkgs/development/tools/ofono-phonesim/qt5-compat.patch b/pkgs/development/tools/ofono-phonesim/qt5-compat.patch
deleted file mode 100644
index e2e9dcebd6bc..000000000000
--- a/pkgs/development/tools/ofono-phonesim/qt5-compat.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index 2436292..993df87 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -21,18 +21,18 @@ AC_ARG_ENABLE(optimization, AC_HELP_STRING([--disable-optimization],
- 	fi
- ])
- 
--PKG_CHECK_MODULES(QT, QtCore QtGui QtXml QtNetwork QtScript QtDBus, dummy=yes,
-+PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Widgets Qt5Xml Qt5Network Qt5Script Qt5DBus, dummy=yes,
- 						AC_MSG_ERROR(Qt is required))
- AC_SUBST(QT_CFLAGS)
- AC_SUBST(QT_LIBS)
- 
- AC_MSG_CHECKING(for moc)
--MOC="`$PKG_CONFIG --variable=moc_location QtCore`"
-+MOC="`$PKG_CONFIG --variable=moc_location Qt5Core`"
- AC_SUBST(MOC)
- AC_MSG_RESULT($MOC)
- 
- AC_MSG_CHECKING(for uic)
--UIC="`$PKG_CONFIG --variable=uic_location QtCore`"
-+UIC="`$PKG_CONFIG --variable=uic_location Qt5Core`"
- AC_SUBST(UIC)
- AC_MSG_RESULT($UIC)
- 
-diff --git a/src/control.cpp b/src/control.cpp
-index e1838a6..880da68 100644
---- a/src/control.cpp
-+++ b/src/control.cpp
-@@ -22,7 +22,7 @@
- #include <qslider.h>
- #include <qcheckbox.h>
- #include <qcombobox.h>
--#include <QtGui/qmessagebox.h>
-+#include <QMessageBox>
- #include <qfiledialog.h>
- #include <Qt>
- #include <qbuffer.h>
-@@ -31,7 +31,7 @@
- #include <QFileInfo>
- #include <QFile>
- #include <QDir>
--#include <QtGui/QHeaderView>
-+#include <QHeaderView>
- 
- #define TWO_BYTE_MAX 65535
- #define FOUR_CHAR 4
diff --git a/pkgs/development/tools/overcommit/Gemfile b/pkgs/development/tools/overcommit/Gemfile
new file mode 100644
index 000000000000..39325c7561b3
--- /dev/null
+++ b/pkgs/development/tools/overcommit/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'overcommit'
diff --git a/pkgs/development/tools/overcommit/Gemfile.lock b/pkgs/development/tools/overcommit/Gemfile.lock
new file mode 100644
index 000000000000..bf88c1bb1483
--- /dev/null
+++ b/pkgs/development/tools/overcommit/Gemfile.lock
@@ -0,0 +1,17 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    childprocess (3.0.0)
+    iniparse (1.4.4)
+    overcommit (0.51.0)
+      childprocess (>= 0.6.3, < 4)
+      iniparse (~> 1.4)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  overcommit
+
+BUNDLED WITH
+   1.17.3
diff --git a/pkgs/development/tools/overcommit/default.nix b/pkgs/development/tools/overcommit/default.nix
new file mode 100644
index 000000000000..84529ca4b6fe
--- /dev/null
+++ b/pkgs/development/tools/overcommit/default.nix
@@ -0,0 +1,15 @@
+{ lib, bundlerApp }:
+
+bundlerApp {
+  pname = "overcommit";
+  gemdir = ./.;
+  exes = [ "overcommit" ];
+
+  meta = with lib; {
+    description = "Tool to manage and configure Git hooks";
+    homepage    = https://github.com/sds/overcommit;
+    license     = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/overcommit/gemset.nix b/pkgs/development/tools/overcommit/gemset.nix
new file mode 100644
index 000000000000..b7d58c0ea708
--- /dev/null
+++ b/pkgs/development/tools/overcommit/gemset.nix
@@ -0,0 +1,33 @@
+{
+  childprocess = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  iniparse = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xbik6838gfh5yq9ahh1m7dzszxlk0g7x5lvhb8amk60mafkrgws";
+      type = "gem";
+    };
+    version = "1.4.4";
+  };
+  overcommit = {
+    dependencies = ["childprocess" "iniparse"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjrrm9dy9mry5ss96sizn6xcphia5l54ydz9c31phipm61nwmfk";
+      type = "gem";
+    };
+    version = "0.51.0";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix
index 261ae318a620..2ce1a570b86b 100644
--- a/pkgs/development/tools/packer/default.nix
+++ b/pkgs/development/tools/packer/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "packer";
-  version = "1.4.4";
+  version = "1.5.0";
 
   goPackagePath = "github.com/hashicorp/packer";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    sha256 = "00il85qbj5yadm5l5bczv7awmaazn9k3v3i0wsd6dbwpjga6snw9";
+    sha256 = "0gml1q3xrwiybclrvw69jpa812lz4p99ffn122w0pmsgdfqhv7p7";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/parsing/byacc/default.nix b/pkgs/development/tools/parsing/byacc/default.nix
index 23ea39c6fa9f..8542d4151964 100644
--- a/pkgs/development/tools/parsing/byacc/default.nix
+++ b/pkgs/development/tools/parsing/byacc/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "byacc";
-  version = "20190617";
+  version = "20191119";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz"
     ];
-    sha256 = "13ai0az00c86s4k94cpgh48nf5dfccpvccpw635z42wjgcb6hy7q";
+    sha256 = "0ch8y9g7b3lnw1r76p65gvdnbpwd60d4pghgadid122fcq7566p2";
   };
 
   configureFlags = [
diff --git a/pkgs/development/tools/phantomjs2/default.nix b/pkgs/development/tools/phantomjs2/default.nix
index 29b8d4d5ae1e..f50e7670b463 100644
--- a/pkgs/development/tools/phantomjs2/default.nix
+++ b/pkgs/development/tools/phantomjs2/default.nix
@@ -69,6 +69,10 @@ in stdenv.mkDerivation rec {
       --replace "QT_MINOR_VERSION, 5" "QT_MINOR_VERSION, 9"
   '';
 
+  # Avoids error in webpage.cpp:80:89:
+  # invalid suffix on literal; C++11 requires a space between litend identifier
+  NIX_CFLAGS_COMPILE = "-Wno-reserved-user-defined-literal";
+
   __impureHostDeps = stdenv.lib.optional stdenv.isDarwin "/usr/lib/libicucore.dylib";
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/profiling/EZTrace/default.nix b/pkgs/development/tools/profiling/EZTrace/default.nix
index b02ae3c544fa..e856c1f718a4 100644
--- a/pkgs/development/tools/profiling/EZTrace/default.nix
+++ b/pkgs/development/tools/profiling/EZTrace/default.nix
@@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Tool that aims at generating automatically execution trace from HPC programs";
     license = stdenv.lib.licenses.cecill-b;
-    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
+    maintainers = with stdenv.lib.maintainers; [ ];
   };
 }
diff --git a/pkgs/development/tools/profiling/pyflame/default.nix b/pkgs/development/tools/profiling/pyflame/default.nix
deleted file mode 100644
index 2467769ad3de..000000000000
--- a/pkgs/development/tools/profiling/pyflame/default.nix
+++ /dev/null
@@ -1,143 +0,0 @@
-{ stdenv, autoreconfHook, coreutils, fetchFromGitHub, fetchpatch, pkgconfig, procps
-# pyflame needs one python version per ABI
-# are currently supported
-# * 2.6 or 2.7 for 2.x ABI
-# * 3.4 or 3.5 for 3.{4,5} ABI
-# * 3.6        for 3.6 ABI
-# * 3.7        for 3.7+ ABI
-# to disable support for an ABI, make the corresponding argument null
-, python2, python35, python36, python37, python3
-}:
-stdenv.mkDerivation rec {
-  pname = "pyflame";
-  version = "1.6.7";
-  src = fetchFromGitHub {
-    owner = "uber";
-    repo = "pyflame";
-    rev = "v${version}";
-    sha256 = "0hz1ryimh0w8zyxx4y8chcn54d6b02spflj5k9rcg26an2chkg2w";
-  };
-
-  # Uber's abandoned this since Jun 2018, so we have to patch a lot.
-  # Yay.
-  patches = let
-    # "Add support for Python3.7 (#151)":
-    py37-support = [ # https://github.com/uber/pyflame/pull/153
-      (fetchpatch { # "Add support for python3.7"
-        url = "https://github.com/uber/pyflame/commit/5ee674c4b09a29b82a0e2d7a4ce064fea3df1f4c.patch";
-        sha256 = "19v0yl8frbsq1dkvcmr1zsxf9v75bs8hvlkiv2x8cwylndvz2g5n";
-      })
-      (fetchpatch { # "Add python3.7 to travis test matrix"
-        url = "https://github.com/uber/pyflame/commit/610b5281502ff6d57471e84071f17a33d30f3bcf.patch";
-        sha256 = "13kwzrz0zwmdiirg061wvz7zvdl2w9dnrc81xbkxpm1hh8h0mi9z";
-      })
-      (fetchpatch { # "Update ppa and Ubuntu version"
-        url = "https://github.com/uber/pyflame/commit/ec82a43c90da64815a87d4e3fe2a12ec3c93dc38.patch";
-        sha256 = "1rrcsj5095ns5iyk6ij9kylv8hsrflxjld7b4s5dbpk8jqkf3ndi";
-      })
-      (fetchpatch { # "Clang-Format"
-        url = "https://github.com/uber/pyflame/commit/fb81e40398d6209c38d49d0b6758d9581b3c2bba.patch";
-        sha256 = "024namalrsai8ppl87lqsalfgd2fbqsnbkhpg8q93bvsdxldwc6r";
-      })
-    ];
-
-    # "Fix pyflame for code compiled with ld -z separate-code":
-    separate-code-support = [ # https://github.com/uber/pyflame/pull/170
-      (fetchpatch { # "Fix for code compiled with ld -z separate-code"
-        url = "https://github.com/uber/pyflame/commit/739a77d9b9abf9599f633d49c9ec98a201bfe058.patch";
-        sha256 = "03xhdysr5s73bw3a7nj2h45dylj9a4c1f1i3xqm1nngpd6arq4y6";
-      })
-    ];
-
-    # "Improve PtraceSeize error output"
-    full-ptrace-seize-errors = [ # https://github.com/uber/pyflame/pull/152
-      (fetchpatch { # "Print whole error output from PtraceSeize"
-        url = "https://github.com/uber/pyflame/commit/4b0e2c1b442b0f0c6ac5f56471359cea9886aa0f.patch";
-        sha256 = "0nkqs5zszf78cna0bavcdg18g7rdmn72li3091ygpkgxn77cnvis";
-      })
-      (fetchpatch { # "Print whole error for PtraceSeize"
-        url = "https://github.com/uber/pyflame/commit/1abb23abe4912c4a27553f0b3b5c934753f41f6d.patch";
-        sha256 = "07razp9rlq3s92j8a3iak3qk2h4x4xwz4y915h52ivvnxayscj89";
-      })
-    ];
-  in stdenv.lib.concatLists [
-    py37-support
-    # Without this, tests will leak memory and run forever.
-    separate-code-support
-    full-ptrace-seize-errors
-  ];
-
-  nativeBuildInputs = [ autoreconfHook pkgconfig procps ];
-  buildInputs = [ python37 python36 python2 python35 ];
-
-  postPatch = ''
-    patchShebangs .
-
-    # some tests will fail in the sandbox
-    substituteInPlace tests/test_end_to_end.py \
-      --replace 'skipif(IS_DOCKER' 'skipif(True'
-
-    # don't use patchShebangs here to be explicit about the python version
-    substituteInPlace utils/flame-chart-json \
-      --replace '#!usr/bin/env python' '#!${python3.interpreter}'
-
-    # Many tests require the build machine to have kernel.yama.ptrace_scope = 0,
-    # but hardened machines have it set to 1. On build machines that cannot run
-    # these tests, skip them to avoid breaking the build.
-    if [[ $(sysctl -n kernel.yama.ptrace_scope || echo 0) != "0" ]]; then
-      for test in \
-        test_monitor \
-        test_non_gil \
-        test_threaded \
-        test_unthreaded \
-        test_legacy_pid_handling \
-        test_exclude_idle \
-        test_exit_early \
-        test_sample_not_python \
-        test_include_ts \
-        test_include_ts_exclude_idle \
-        test_thread_dump \
-        test_no_line_numbers \
-        test_utf8_output; do
-
-        substituteInPlace tests/test_end_to_end.py \
-          --replace "def $test(" "\
-@pytest.mark.skip('build machine had kernel.yama.ptrace_scope != 0')
-def $test("
-      done
-    fi
-  '';
-
-  postInstall = ''
-    install -D utils/flame-chart-json $out/bin/flame-chart-json
-  '';
-
-  doCheck = true;
-  # reproduces the logic of their test script, but without downloading pytest
-  # from the internet with pip
-  checkPhase = let inherit (stdenv) lib; in
-    lib.concatMapStringsSep "\n" (python: ''
-      set -x
-      PYMAJORVERSION=${lib.substring 0 1 python.version} \
-        PATH=${lib.makeBinPath [ coreutils ]}\
-        PYTHONPATH= \
-        ${python.pkgs.pytest}/bin/pytest -v tests/
-      set +x
-    '') (lib.filter (x: x != null) buildInputs);
-
-  meta = with stdenv.lib; {
-    description = "A ptracing profiler for Python ";
-    longDescription = ''
-      Pyflame is a high performance profiling tool that generates flame graphs
-      for Python. Pyflame uses the Linux ptrace(2) system call to collect
-      profiling information. It can take snapshots of the Python call stack
-      without explicit instrumentation, meaning you can profile a program
-      without modifying its source code.
-    '';
-    homepage = https://github.com/uber/pyflame;
-    license = licenses.asl20;
-    maintainers = [ maintainers.symphorien ];
-    # arm: https://github.com/uber/pyflame/issues/136
-    platforms = [ "i686-linux" "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/development/tools/purescript/spago/default.nix b/pkgs/development/tools/purescript/spago/default.nix
new file mode 100644
index 000000000000..6879d6875cc4
--- /dev/null
+++ b/pkgs/development/tools/purescript/spago/default.nix
@@ -0,0 +1,47 @@
+{ mkDerivation, aeson, aeson-pretty, ansi-terminal, async-pool
+, base, bower-json, bytestring, Cabal, containers, dhall, directory
+, either, exceptions, extra, fetchgit, file-embed, filepath, foldl
+, fsnotify, github, Glob, hpack, hspec, hspec-discover
+, hspec-megaparsec, http-client, http-conduit, lens-family-core
+, megaparsec, mtl, network-uri, open-browser, optparse-applicative
+, prettyprinter, process, QuickCheck, retry, rio, rio-orphans, safe
+, semver-range, stdenv, stm, tar, template-haskell, temporary, text
+, time, transformers, turtle, unliftio, unordered-containers
+, vector, versions, zlib
+}:
+mkDerivation {
+  pname = "spago";
+  version = "0.12.1.0";
+  src = fetchgit {
+    url = "https://github.com/spacchetti/spago";
+    sha256 = "17xgp75yxangmb65sv3raysad31kmc109c4q4aj9dgcdqz23fcn2";
+    rev = "a4679880402ead320f8be2f091b25d30e27b62df";
+    fetchSubmodules = true;
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson aeson-pretty ansi-terminal async-pool base bower-json
+    bytestring Cabal containers dhall directory either exceptions
+    file-embed filepath foldl fsnotify github Glob http-client
+    http-conduit lens-family-core megaparsec mtl network-uri
+    open-browser prettyprinter process retry rio rio-orphans safe
+    semver-range stm tar template-haskell temporary text time
+    transformers turtle unliftio unordered-containers vector versions
+    zlib
+  ];
+  libraryToolDepends = [ hpack ];
+  executableHaskellDepends = [
+    aeson-pretty async-pool base bytestring containers dhall filepath
+    github lens-family-core megaparsec optparse-applicative process
+    retry stm temporary text time turtle vector
+  ];
+  testHaskellDepends = [
+    base containers directory extra hspec hspec-megaparsec megaparsec
+    process QuickCheck temporary text turtle versions
+  ];
+  testToolDepends = [ hspec-discover ];
+  prePatch = "hpack";
+  homepage = "https://github.com/spacchetti/spago#readme";
+  license = stdenv.lib.licenses.bsd3;
+}
diff --git a/pkgs/development/tools/pypi2nix/default.nix b/pkgs/development/tools/pypi2nix/default.nix
index 6f8ef1b30a9e..76302824d9d2 100644
--- a/pkgs/development/tools/pypi2nix/default.nix
+++ b/pkgs/development/tools/pypi2nix/default.nix
@@ -4,13 +4,11 @@ with python3;
 
 pkgs.buildPythonApplication rec {
   pname = "pypi2nix";
-  version = "2.0.1";
+  version = "2.0.2";
   src = pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "138fwd3cznkfa6w3a5s4fbflh88q26hk4grlmq73dcbk06ykf84k";
+    sha256 = "1kynyarqx49j89nxd7rx8mjncg8hkklscfcr36smham7cvj17nsv";
   };
-  checkInputs = with pkgs; [ pytest ];
-  buildInputs = with pkgs; [ setuptools_scm ];
   propagatedBuildInputs = with pkgs; [
     attrs
     click
@@ -20,6 +18,6 @@ pkgs.buildPythonApplication rec {
     parsley
     setuptools
     toml
+    jsonschema
   ];
-  checkPhase = "${python3.interpreter} -m pytest unittests -m 'not nix'";
 }
diff --git a/pkgs/development/tools/rubocop/Gemfile.lock b/pkgs/development/tools/rubocop/Gemfile.lock
index 7c523c3ea15c..9d166f0fad53 100644
--- a/pkgs/development/tools/rubocop/Gemfile.lock
+++ b/pkgs/development/tools/rubocop/Gemfile.lock
@@ -2,12 +2,12 @@ GEM
   remote: https://rubygems.org/
   specs:
     ast (2.4.0)
-    jaro_winkler (1.5.3)
-    parallel (1.18.0)
+    jaro_winkler (1.5.4)
+    parallel (1.19.1)
     parser (2.6.5.0)
       ast (~> 2.4.0)
     rainbow (3.0.0)
-    rubocop (0.76.0)
+    rubocop (0.77.0)
       jaro_winkler (~> 1.5.1)
       parallel (~> 1.10)
       parser (>= 2.6)
diff --git a/pkgs/development/tools/rubocop/gemset.nix b/pkgs/development/tools/rubocop/gemset.nix
index 5defb56109ff..d7e1b9328dc1 100644
--- a/pkgs/development/tools/rubocop/gemset.nix
+++ b/pkgs/development/tools/rubocop/gemset.nix
@@ -14,20 +14,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1930v0chc1q4fr7hn0y1j34mw0v032a8kh0by4d4sbz8ksy056kf";
+      sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
       type = "gem";
     };
-    version = "1.5.3";
+    version = "1.5.4";
   };
   parallel = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "091p5zrzzyg3fg48jhdz9lzjf2r9r3akra2cd46yd4nza3xgxshz";
+      sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
       type = "gem";
     };
-    version = "1.18.0";
+    version = "1.19.1";
   };
   parser = {
     dependencies = ["ast"];
@@ -56,10 +56,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07x51ixlx76y194xsszh5lbkaqakz44ykbrjxg3qaggbs18790q0";
+      sha256 = "0m88b1bgbhmmbdnz2xv6n0il0j4q5qm9jbc0vf1zsaxmxqp06nx9";
       type = "gem";
     };
-    version = "0.76.0";
+    version = "0.77.0";
   };
   ruby-progressbar = {
     groups = ["default"];
diff --git a/pkgs/development/tools/rust/bindgen/default.nix b/pkgs/development/tools/rust/bindgen/default.nix
index b39425ad8732..a87ef4d2228a 100644
--- a/pkgs/development/tools/rust/bindgen/default.nix
+++ b/pkgs/development/tools/rust/bindgen/default.nix
@@ -3,7 +3,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-bindgen";
-  version = "0.51.1";
+  version = "0.52.0";
 
   RUSTFLAGS = "--cap-lints warn"; # probably OK to remove after update
 
@@ -11,10 +11,10 @@ rustPlatform.buildRustPackage rec {
     owner = "rust-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1agqfwac2av1b1c2bfzn0hw3178s4l94fadfx8a25dy1k87wmhfm";
+    sha256 = "0rf5sg9136f4j7s07iz2gd481h8gzdd106jc1jw1p5pw4zaiz5l0";
   };
 
-  cargoSha256 = "09m0ki1ald1csfzfvlc63r6k8m9ndxy9js6mfwqyfm4lj8kpbr3f";
+  cargoSha256 = "1wy5xdkf9ql2l9qavi0fh7hwjvly108f4l2m1k947412fyjwr7x7";
 
   libclang = llvmPackages.libclang.lib; #for substituteAll
 
diff --git a/pkgs/development/tools/rust/cargo-crev/default.nix b/pkgs/development/tools/rust/cargo-crev/default.nix
new file mode 100644
index 000000000000..01ca288fba8c
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-crev/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, rustPlatform, Security, openssl, pkgconfig, libiconv, curl }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-crev";
+  version = "0.13.0";
+
+  src = fetchFromGitHub {
+    owner = "crev-dev";
+    repo = "cargo-crev";
+    rev = "v${version}";
+    sha256 = "15b4spz080y411h7niwzb1rshhyd9cx7rc6bpa0myd2kzrfky7yl";
+  };
+
+  cargoSha256 = "02bi6pzm1ys31zi1s5yzyw47dmdgclgkfjyyfa9h686640nakg8d";
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security libiconv curl ];
+
+  meta = with stdenv.lib; {
+    description = "A cryptographically verifiable code review system for the cargo (Rust) package manager";
+    homepage = "https://github.com/crev-dev/cargo-crev";
+    license = with licenses; [ asl20 mit mpl20 ];
+    maintainers = with maintainers; [ b4dm4n ];
+  };
+}
diff --git a/pkgs/development/tools/rust/cargo-expand/default.nix b/pkgs/development/tools/rust/cargo-expand/default.nix
index 43b3a88f6ee3..41fc993c62f4 100644
--- a/pkgs/development/tools/rust/cargo-expand/default.nix
+++ b/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-expand";
-  version = "0.4.15";
+  version = "0.4.16";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    sha256 = "155b4azkrr0qfg52mk7934zavwsbl28i28hi1inb23d509hrr5ky";
+    sha256 = "0cf539y20hlwxbk0zfs1and99hkb0fqg7m3a6dfd80hwx0dm0xmx";
   };
 
-  cargoSha256 = "050q4rk1x3jghinxg6gszi993a6zbg41vg535dlvvsqi36l278qc";
+  cargoSha256 = "1bspciy7sfx887hwxmckrnjy7b6kpy6g51yraw25yl302mzzng21";
 
   buildInputs = [ llvmPackages.libclang ]
     ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
diff --git a/pkgs/development/tools/rust/cargo-geiger/default.nix b/pkgs/development/tools/rust/cargo-geiger/default.nix
index 70601faaf6dc..1edeaeb9b467 100644
--- a/pkgs/development/tools/rust/cargo-geiger/default.nix
+++ b/pkgs/development/tools/rust/cargo-geiger/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-geiger";
-  version = "0.7.3";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "anderejd";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1lm8dx19svdpg99zbpfcm1272n18y63sq756hf6k99zi51av17xc";
+    sha256 = "0yn4m94bklxyg0cxzhqm1m976z66rbi58ri1phffvqz457mxj3hk";
   };
 
-  cargoSha256 = "16zvm2y0j7ywv6fx0piq99g8q1sayf3qipd6adrwyqyg8rbf4cw6";
+  cargoSha256 = "0608wvbdw4i9pp3x6dgny186if6bzlbivkvfd5lfp1x1f53534za";
 
   # Multiple tests require internet connectivity, so they are disabled here.
   # If we ever get cargo-insta (https://crates.io/crates/insta) in tree,
diff --git a/pkgs/development/tools/rust/cargo-make/Cargo.lock b/pkgs/development/tools/rust/cargo-make/Cargo.lock
index 54d32639f886..00a2eb721dfb 100644
--- a/pkgs/development/tools/rust/cargo-make/Cargo.lock
+++ b/pkgs/development/tools/rust/cargo-make/Cargo.lock
@@ -17,55 +17,47 @@ dependencies = [
 ]
 
 [[package]]
-name = "approx"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
 name = "arrayref"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "arrayvec"
-version = "0.4.12"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
-]
 
 [[package]]
 name = "atty"
 version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "autocfg"
-version = "0.1.6"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "backtrace"
-version = "0.3.38"
+version = "0.3.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
+ "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "backtrace-sys"
-version = "0.1.31"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -83,11 +75,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "blake2b_simd"
-version = "0.5.8"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -98,39 +90,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "c2-chacha"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "cargo-make"
-version = "0.24.0"
+version = "0.24.2"
 dependencies = [
- "ci_info 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ci_info 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "colored 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "colored 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "envmnt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "fern 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fern 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)",
+ "git_info 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "indexmap 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "home 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "run_script 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "rust_info 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_derive 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)",
  "shell2batch 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "toml 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.45"
+version = "1.0.48"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -139,18 +132,18 @@ version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
-name = "cgmath"
-version = "0.16.1"
+name = "chrono"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "approx 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "ci_info"
-version = "0.8.1"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "envmnt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -166,7 +159,7 @@ dependencies = [
  "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicode-width 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -180,11 +173,12 @@ dependencies = [
 
 [[package]]
 name = "colored"
-version = "1.8.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
+ "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "winconsole 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -216,7 +210,7 @@ version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_users 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -226,7 +220,7 @@ name = "envmnt"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "indexmap 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -234,7 +228,7 @@ name = "failure"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "backtrace 0.3.38 (registry+https://github.com/rust-lang/crates.io-index)",
+ "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
  "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -243,17 +237,18 @@ name = "failure_derive"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "synstructure 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "fern"
-version = "0.5.8"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
+ "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -264,25 +259,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "getrandom"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
+name = "git_info"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
 name = "glob"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
+name = "home"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
 name = "indexmap"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -292,7 +302,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "libc"
-version = "0.2.62"
+version = "0.2.66"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -309,34 +319,30 @@ version = "2.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
-name = "nodrop"
-version = "0.1.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "num-traits"
-version = "0.1.43"
+name = "num-integer"
+version = "0.1.41"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "num-traits"
-version = "0.2.8"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "ppv-lite86"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.5"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -347,19 +353,7 @@ name = "quote"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -367,8 +361,8 @@ name = "rand"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -379,7 +373,7 @@ name = "rand_chacha"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -401,7 +395,7 @@ name = "rand_core"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -419,7 +413,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -466,11 +460,6 @@ version = "0.6.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
-name = "rgb"
-version = "0.8.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
 name = "run_script"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -485,7 +474,7 @@ version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "blake2b_simd 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -500,6 +489,11 @@ version = "0.1.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
+name = "scopeguard"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
 name = "semver"
 version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -514,17 +508,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "serde"
-version = "1.0.101"
+version = "1.0.103"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "serde_derive"
-version = "1.0.101"
+version = "1.0.103"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -542,22 +536,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "syn"
-version = "1.0.5"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "synstructure"
-version = "0.12.1"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -566,7 +560,7 @@ name = "textwrap"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "unicode-width 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -578,16 +572,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "time"
+version = "0.1.42"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
 name = "toml"
-version = "0.5.3"
+version = "0.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "unicode-width"
-version = "0.1.6"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -600,7 +604,7 @@ name = "users"
 version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -632,39 +636,27 @@ name = "winapi-x86_64-pc-windows-gnu"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
-[[package]]
-name = "winconsole"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "cgmath 0.16.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "rgb 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
 [metadata]
 "checksum aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
 "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-"checksum approx 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08abcc3b4e9339e33a3d0a5ed15d84a687350c05689d825e0f6655eef9e76a94"
 "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"
-"checksum arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
+"checksum arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
 "checksum atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
-"checksum autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875"
-"checksum backtrace 0.3.38 (registry+https://github.com/rust-lang/crates.io-index)" = "690a62be8920ccf773ee00ef0968649b0e724cda8bd5b12286302b4ae955fdf5"
-"checksum backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)" = "82a830b4ef2d1124a711c71d263c5abdc710ef8e907bd508c88be475cebc422b"
+"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
+"checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
+"checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
 "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
 "checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-"checksum blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "5850aeee1552f495dd0250014cf64b82b7c8879a89d83b33bbdace2cc4f63182"
+"checksum blake2b_simd 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b83b7baab1e671718d78204225800d6b170e648188ac7dc992e9d6bddf87d0c0"
 "checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
-"checksum c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
-"checksum cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)" = "4fc9a35e1f4290eb9e5fc54ba6cf40671ed2a2514c3eeb2b2a908dda2ea5a1be"
+"checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
+"checksum cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)" = "f52a465a666ca3d838ebbf08b241383421412fe7ebb463527bba275526d89f76"
 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-"checksum cgmath 0.16.1 (registry+https://github.com/rust-lang/crates.io-index)" = "64a4b57c8f4e3a2e9ac07e0f6abc9c24b6fc9e1b54c3478cfb598f3d0023e51c"
-"checksum ci_info 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "93b085342b4579e6bd92189bb6b832b2fff5564382e2472be42748b630e8063d"
+"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
+"checksum ci_info 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a4e9091c3d285e7046afdb70fc7413d1ac670288705e151443f868f71e66ed2a"
 "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
 "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-"checksum colored 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6cdb90b60f2927f8d76139c72dbde7e10c3a2bc47c8594c9c7a66529f2687c03"
+"checksum colored 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "433e7ac7d511768127ed85b0c4947f47a254131e37864b2dc13f52aa32cd37e5"
 "checksum constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "995a44c877f9212528ccc74b21a232f66ad69001e40ede5bcee2ac9ef2657120"
 "checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
 "checksum dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
@@ -672,22 +664,22 @@ dependencies = [
 "checksum envmnt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "24c6fdfb01bf7386076c5f655278306bbbed4ecc8abe30981217a11079fe3f2b"
 "checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
 "checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
-"checksum fern 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "29d26fa0f4d433d1956746e66ec10d6bf4d6c8b93cd39965cceea7f7cc78c7dd"
+"checksum fern 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e69ab0d5aca163e388c3a49d284fed6c3d0810700e77c5ae2756a50ec1a4daaa"
 "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-"checksum getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571"
+"checksum getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
+"checksum git_info 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "add3a9c3c08c8905a2165ff06891dd1c3bb32d81b2a32d79528abc9793dfb06f"
 "checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-"checksum indexmap 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a61202fbe46c4a951e9404a720a0180bcf3212c750d735cb5c4ba4dc551299f3"
+"checksum home 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a3753954f7bd71f0e671afb8b5a992d1724cf43b7f95a563cd4a0bde94659ca8"
+"checksum indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
 "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-"checksum libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)" = "34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba"
+"checksum libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)" = "d515b1f41455adea1313a4a2ac8a8a477634fbae63cc6100e3aebb207ce61558"
 "checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
 "checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
-"checksum nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
-"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-"checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
-"checksum ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
-"checksum proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "90cf5f418035b98e655e9cdb225047638296b862b42411c4e45bb88d700f7fc0"
+"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
+"checksum num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c81ffc11c212fa327657cb19dd85eb7419e163b5b076bede2bdb5c974c07e4"
+"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
+"checksum proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27"
 "checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
-"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
 "checksum rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3ae1b169243eaf61759b8475a998f0a385e42042370f3a7dbaf35246eacc8412"
 "checksum rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
 "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
@@ -700,23 +692,24 @@ dependencies = [
 "checksum redox_users 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ecedbca3bf205f8d8f5c2b44d83cd0690e39ee84b951ed649e9f1841132b66d"
 "checksum regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dc220bd33bdce8f093101afe22a037b8eb0e5af33592e6a9caafff0d4cb81cbd"
 "checksum regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716"
-"checksum rgb 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)" = "2089e4031214d129e201f8c3c8c2fe97cd7322478a0d1cdf78e7029b0042efdb"
 "checksum run_script 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "61b3a5ed82e15afc3e238178e2d22113af69ac88bd64a04499f025478853937f"
 "checksum rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ca4eaef519b494d1f2848fc602d18816fed808a981aedf4f1f00ceb7c9d32cf"
 "checksum rust_info 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e4e04a5022c08c95c2285b0beb4cdd24c9b20bc018a263d6fdb0372f7a597db"
 "checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
 "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
 "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-"checksum serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)" = "9796c9b7ba2ffe7a9ce53c2287dfc48080f4b2b362fcc245a259b3a7201119dd"
-"checksum serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)" = "4b133a43a1ecd55d4086bd5b4dc6c1751c68b1bfbeba7a5040442022c7e7c02e"
+"checksum serde 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)" = "1217f97ab8e8904b57dd22eb61cde455fa7446a9c1cf43966066da047c1f3702"
+"checksum serde_derive 1.0.103 (registry+https://github.com/rust-lang/crates.io-index)" = "a8c6faef9a2e64b0064f48570289b4bf8823b7581f1d6157c1b52152306651d0"
 "checksum shell2batch 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "185a52ee351c1001753c9e3b2eb48c525ff7f51803a4f2cef4365b5c3b743f65"
 "checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-"checksum syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf"
-"checksum synstructure 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3f085a5855930c0441ca1288cf044ea4aecf4f43a91668abdb870b4ba546a203"
+"checksum syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)" = "dff0acdb207ae2fe6d5976617f887eb1e35a2ba52c13c7234c790960cdad9238"
+"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
 "checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
 "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-"checksum toml 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c7aabe75941d914b72bf3e5d3932ed92ce0664d49d8432305a8b547c37227724"
-"checksum unicode-width 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20"
+"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+"checksum toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf"
+"checksum unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
 "checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
 "checksum users 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c72f4267aea0c3ec6d07eaabea6ead7c5ddacfafc5e22bcf8d186706851fb4cf"
 "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
@@ -724,4 +717,3 @@ dependencies = [
 "checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-"checksum winconsole 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ef84b96d10db72dd980056666d7f1e7663ce93d82fa33b63e71c966f4cf5032"
diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix
index 795329e3fe96..e4cb070464c1 100644
--- a/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/pkgs/development/tools/rust/cargo-make/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.24.0";
+  version = "0.24.2";
 
   src =
     let
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
         owner = "sagiegurari";
         repo = pname;
         rev = version;
-        sha256 = "1sdc9qkclvv99j7ag038g8h1kjvfjxxj16xy0cqn8wvyljrqn3mc";
+        sha256 = "02fc3vf802dzqvyh61cmkjf3vqf5xsl8dhjggns7p5zr2aqh8pfi";
       };
     in
     runCommand "cargo-make-src" {} ''
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "1hyc275drl5n0kcvkxd3blp77r8nck946bmlnnzym8cj50i5zbq1";
+  cargoSha256 = "1x2pkis82hsikjqgma7f6wmkcmviiqwc7pvdpmww61iq2aqfg7ds";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/pkgs/development/tools/rust/cargo-raze/default.nix b/pkgs/development/tools/rust/cargo-raze/default.nix
index 1c4e176966dd..142edbdaf113 100644
--- a/pkgs/development/tools/rust/cargo-raze/default.nix
+++ b/pkgs/development/tools/rust/cargo-raze/default.nix
@@ -3,13 +3,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-raze";
-  version = "0.2.8";
+  version = "0.2.10";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0d87azip59bmkk38par23f5yvb9w8ikvdg6grn689zpgc3di2phx";
+    sha256 = "1fznh8jygzyzphw7762qc2jv0370z7qjqk1vkql0g246iqby8pq9";
   };
   sourceRoot = "source/impl";
 
diff --git a/pkgs/development/tools/rust/cargo-xbuild/default.nix b/pkgs/development/tools/rust/cargo-xbuild/default.nix
index 818143006559..a5220775b52d 100644
--- a/pkgs/development/tools/rust/cargo-xbuild/default.nix
+++ b/pkgs/development/tools/rust/cargo-xbuild/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-xbuild";
-  version = "0.5.18";
+  version = "0.5.19";
 
   src = fetchFromGitHub {
     owner = "rust-osdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1hcsdwwl1xc59f1ppwlxj1zyp1md07z70gfvg4zqvafc6dzx708j";
+    sha256 = "0j15d52bpl3k6jw0hzcxdvjayd2azdp5b9s2fq3ywd4zbda8rqp7";
   };
 
   cargoSha256 = "1pj4x8y5vfpnn8vhxqqm3vicn29870r3jh0b17q3riq4vz1a2afp";
diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix
index d36306a0756a..0269c344e2ae 100644
--- a/pkgs/development/tools/rust/rustup/default.nix
+++ b/pkgs/development/tools/rust/rustup/default.nix
@@ -4,16 +4,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rustup";
-  version = "1.20.2";
+  version = "1.21.0";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
-    repo = "rustup.rs";
+    repo = "rustup";
     rev = version;
-    sha256 = "0vfrfjfg5x1g44w03rdci2ky7s3s7rljdcmmp5h6pdvhzrd234aj";
+    sha256 = "1jyiix153iqsfbrm3xx8g0bnabihqlahhf4c81hgc68zg4cxrc9z";
   };
 
-  cargoSha256 = "1lsv1d99dn6mngaqhd3lw90cr3zg4gq08wi0adxkkhaikc9jjdwh";
+  cargoSha256 = "0kn3sq99sgsh8msignyb4vjllv0wf1crqaw7sqp3ggmlkrdq35sd";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/development/tools/simavr/default.nix b/pkgs/development/tools/simavr/default.nix
index 71f488c760a4..c7bc96871f8d 100644
--- a/pkgs/development/tools/simavr/default.nix
+++ b/pkgs/development/tools/simavr/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, libelf, which, pkgconfig, freeglut
 , avrgcc, avrlibc
-, libGLU_combined
+, libGLU, libGL
 , GLUT }:
 
 stdenv.mkDerivation rec {
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ which pkgconfig avrgcc ];
-  buildInputs = [ libelf freeglut libGLU_combined ]
+  buildInputs = [ libelf freeglut libGLU libGL ]
     ++ stdenv.lib.optional stdenv.isDarwin GLUT;
 
   # Hack to avoid TMPDIR in RPATHs.
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index 58dde8386921..498de0edecfc 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,9 +2,9 @@
 
 buildGoPackage rec {
   pname = "skaffold";
-  version = "0.36.0";
-  # rev is the 0.36.0 commit, mainly for skaffold version command output
-  rev = "1c054d4ffc7e14b4d81efcbea8b2022403ee4b89";
+  version = "1.0.1";
+  # rev is the 1.0.1 commit, mainly for skaffold version command output
+  rev = "934dd5ad304bef89cb3619b5b2ef53eb8cf04715";
 
   goPackagePath = "github.com/GoogleContainerTools/skaffold";
   subPackages = ["cmd/skaffold"];
@@ -20,7 +20,7 @@ buildGoPackage rec {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "1d7z36r33lmxm5cv1kby6g9zbsr88prgsp32x4jcs9l1ifwblhng";
+    sha256 = "0pvidf8m6v56qa3dlqls55jcmjqb54spkx7xxynvhj3590pjw4qx";
   };
 
   meta = {
diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix
index e5b23f14517d..a7d9057d9f02 100644
--- a/pkgs/development/tools/vagrant/default.nix
+++ b/pkgs/development/tools/vagrant/default.nix
@@ -4,9 +4,9 @@
 let
   # NOTE: bumping the version and updating the hash is insufficient;
   # you must use bundix to generate a new gemset.nix in the Vagrant source.
-  version = "2.2.5";
+  version = "2.2.6";
   url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
-  sha256 = "0a228f5185b24b72efcc5a3924f86fa9fabab6f7562c3c63c1d9d239aa72a7b1";
+  sha256 = "0nssq2i4riif0q72h5qp7dlxd4shqcyvm1bx9adppcacb77gpnhv";
 
   deps = bundlerEnv rec {
     name = "${pname}-${version}";
diff --git a/pkgs/development/tools/vagrant/gemset.nix b/pkgs/development/tools/vagrant/gemset.nix
index ad3422d8b599..f9aebbe6996d 100644
--- a/pkgs/development/tools/vagrant/gemset.nix
+++ b/pkgs/development/tools/vagrant/gemset.nix
@@ -10,6 +10,8 @@
     version = "1.0.1";
   };
   builder = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qibi5s67lpdv1wgcj66wcymcr04q6j4mzws6a479n0mlrmh5wr1";
@@ -19,6 +21,8 @@
   };
   childprocess = {
     dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1p3f43scdzx9zxmy2kw5zsc3az6v46nq4brwcxmnscjy4w4racbv";
@@ -36,14 +40,6 @@
     };
     version = "1.1.5";
   };
-  diff-lcs = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
-      type = "gem";
-    };
-    version = "1.3";
-  };
   domain_name = {
     dependencies = ["unf"];
     groups = ["default"];
@@ -56,6 +52,8 @@
     version = "0.5.20190701";
   };
   ed25519 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
@@ -63,7 +61,19 @@
     };
     version = "1.2.4";
   };
+  erubi = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
   erubis = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
@@ -94,6 +104,8 @@
   };
   gyoku = {
     dependencies = ["builder"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1wn0sl14396g5lyvp8sjmcb1hw9rbyi89gxng91r7w4df4jwiidh";
@@ -102,6 +114,8 @@
     version = "1.3.1";
   };
   hashicorp-checkpoint = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1z6mwzvd7p2wqhmk07dwrhvm0ncgqm7pxn0pr2k025rwsspp9bsd";
@@ -111,6 +125,8 @@
   };
   http-cookie = {
     dependencies = ["domain_name"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
@@ -119,6 +135,8 @@
     version = "1.0.3";
   };
   httpclient = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
@@ -128,6 +146,8 @@
   };
   i18n = {
     dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1gcp1m1p6dpasycfz2sj82ci9ggz7lsskz9c9q6gvfwxrl8y9dx7";
@@ -137,6 +157,8 @@
   };
   listen = {
     dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
@@ -145,6 +167,8 @@
     version = "3.1.5";
   };
   little-plugger = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
@@ -153,6 +177,8 @@
     version = "1.1.4";
   };
   log4r = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ri90q0frfmigkirqv5ihyrj59xm8pq5zcmf156cbdv4r4l2jicv";
@@ -162,6 +188,8 @@
   };
   logging = {
     dependencies = ["little-plugger" "multi_json"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn";
@@ -171,33 +199,39 @@
   };
   mime-types = {
     dependencies = ["mime-types-data"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
+      sha256 = "0g7l18igjb9z7q4b2ykvyxyvjxlx5pwsmx5z3ibdbr6372xgfglk";
       type = "gem";
     };
-    version = "3.2.2";
+    version = "3.3";
   };
   mime-types-data = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
+      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
       type = "gem";
     };
-    version = "3.2019.0331";
+    version = "3.2019.1009";
   };
   multi_json = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+      sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr";
       type = "gem";
     };
-    version = "1.13.1";
+    version = "1.14.1";
   };
   net-scp = {
     dependencies = ["net-ssh"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
@@ -207,6 +241,8 @@
   };
   net-sftp = {
     dependencies = ["net-ssh"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "04674g4n6mryjajlcd82af8g8k95la4b1bj712dh71hw1c9vhw1y";
@@ -215,6 +251,8 @@
     version = "2.1.2";
   };
   net-ssh = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0jglf8rxvlw6is5019r6kwsdhw38zm3z39jbghdbj449r6h7h77n";
@@ -223,6 +261,8 @@
     version = "5.1.0";
   };
   netrc = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
@@ -231,6 +271,8 @@
     version = "0.11.0";
   };
   nori = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "066wc774a2zp4vrq3k7k8p0fhv30ymqmxma1jj7yg5735zls8agn";
@@ -239,6 +281,8 @@
     version = "2.6.0";
   };
   rb-fsevent = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8";
@@ -248,6 +292,8 @@
   };
   rb-inotify = {
     dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fs7hxm9g6ywv2yih83b879klhc4fs8i0p9166z795qmd77dk0a4";
@@ -257,6 +303,8 @@
   };
   rb-kqueue = {
     dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "14mhzrhs2j43vj36i1qq4z29nd860shrslfik015f4kf1jiaqcrw";
@@ -266,6 +314,8 @@
   };
   rest-client = {
     dependencies = ["http-cookie" "mime-types" "netrc"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
@@ -273,51 +323,9 @@
     };
     version = "2.0.2";
   };
-  rspec = {
-    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "16g3mmih999f0b6vcz2c3qsc7ks5zy4lj1rzjh8hf6wk531nvc6s";
-      type = "gem";
-    };
-    version = "3.5.0";
-  };
-  rspec-core = {
-    dependencies = ["rspec-support"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1nacs062qbr98fx6czf1vwppn1js956nv2c8vfwj6i65axdfs46i";
-      type = "gem";
-    };
-    version = "3.5.4";
-  };
-  rspec-expectations = {
-    dependencies = ["diff-lcs" "rspec-support"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0bbqfrb1x8gmwf8x2xhhwvvlhwbbafq4isbvlibxi6jk602f09gs";
-      type = "gem";
-    };
-    version = "3.5.0";
-  };
-  rspec-mocks = {
-    dependencies = ["diff-lcs" "rspec-support"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0nl3ksivh9wwrjjd47z5dggrwx40v6gpb3a0gzbp1gs06a5dmk24";
-      type = "gem";
-    };
-    version = "3.5.0";
-  };
-  rspec-support = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "10vf3k3d472y573mag2kzfsfrf6rv355s13kadnpryk8d36yq5r0";
-      type = "gem";
-    };
-    version = "3.5.0";
-  };
   ruby_dep = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0v0qznxz999lx4vs76mr590r90i0cm5m76wwvgis7sq4y21l308l";
@@ -326,6 +334,8 @@
     version = "1.3.1";
   };
   rubyntlm = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1p6bxsklkbcqni4bcq6jajc2n57g0w5rzn4r49c3lb04wz5xg0dy";
@@ -338,21 +348,15 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w9gw28ly3zyqydnm8phxchf4ymyjl2r7zf7c12z8kla10cpmhlc";
-      type = "gem";
-    };
-    version = "1.2.3";
-  };
-  thor = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0d1g37j6sc7fkidf8rqlm3wh9zgyg3g7y8h2x1y34hmil5ywa8c3";
+      sha256 = "0i5dhyiavmk2yc7xyfwzp3m476f7d9mhigibsw37jqpdq4vmi4cv";
       type = "gem";
     };
-    version = "0.18.1";
+    version = "1.2.4";
   };
   unf = {
     dependencies = ["unf_ext"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
@@ -370,27 +374,20 @@
     };
     version = "0.0.7.6";
   };
-  vagrant-spec = {
-    dependencies = ["childprocess" "log4r" "rspec" "thor"];
-    source = {
-      fetchSubmodules = false;
-      rev = "abfc34474d122235d56e4c6b6fb5d3e35bedfa90";
-      sha256 = "08xy2c82lrxkwjlvrbx1v32968a6psni3952y3knriqgygv2kzbn";
-      type = "git";
-      url = "https://github.com/hashicorp/vagrant-spec.git";
-    };
-    version = "0.0.1";
-  };
   vagrant_cloud = {
     dependencies = ["rest-client"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0451x3ab869hbycffcq656dm7mmjwmnxcyhv6g7dpdv3acg64783";
+      sha256 = "16jpnq4xa7gavm024wk1rgmkfb850g89rv56f26dkh0rdhbqiqvs";
       type = "gem";
     };
-    version = "2.0.2";
+    version = "2.0.3";
   };
   wdm = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0x5l2pn4x92734k6i2wcjbn2klmwgkiqaajvxadh35k74dgnyh18";
@@ -399,32 +396,36 @@
     version = "0.1.1";
   };
   winrm = {
-    dependencies = ["builder" "erubis" "gssapi" "gyoku" "httpclient" "logging" "nori" "rubyntlm"];
+    dependencies = ["builder" "erubi" "gssapi" "gyoku" "httpclient" "logging" "nori" "rubyntlm"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19vxrclxc5l8n2agwvv291740s6gna2phg3lkybjb0ldkmpi3sj2";
+      sha256 = "1sl14qdshkmficdsy9z57xmdp5z9riv7jc5lv005n0h04mg7d47b";
       type = "gem";
     };
-    version = "2.3.2";
+    version = "2.3.3";
   };
   winrm-elevated = {
-    dependencies = ["winrm" "winrm-fs"];
+    dependencies = ["erubi" "winrm" "winrm-fs"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1saqc3ffh075y6fdkc7iqmn0v3pnidvfw0sh09w9cn6jvpsdxizk";
+      sha256 = "13d0pjzffbqicg08fsx4dsl6ibsqda5vx5d9f6hsds2z6mdilrab";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.2";
   };
   winrm-fs = {
-    dependencies = ["erubis" "logging" "rubyzip" "winrm"];
+    dependencies = ["erubi" "logging" "rubyzip" "winrm"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fy4yj52kssrm5hchq7l2mbry6w6yvi736p1wjpyv8m19rx7k0c3";
+      sha256 = "0phhzliw47hmpi3ddygs500kfxa7il5yzmp7dw4ix2dvhrxrj7s6";
       type = "gem";
     };
-    version = "1.3.2";
+    version = "1.3.3";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/tools/vim-vint/default.nix b/pkgs/development/tools/vim-vint/default.nix
index 8eccdb6c2852..382871ff6af4 100644
--- a/pkgs/development/tools/vim-vint/default.nix
+++ b/pkgs/development/tools/vim-vint/default.nix
@@ -1,31 +1,26 @@
-{ fetchFromGitHub, lib, python3Packages }:
+{ lib, python3Packages }:
 
 with python3Packages;
 
 buildPythonApplication rec {
   pname = "vim-vint";
-  version = "0.3.20";
+  version = "0.3.21";
 
-  src = fetchFromGitHub {
-    owner = "kuniwak";
-    repo = "vint";
-    rev = "v${version}";
-    sha256 = "0ij9br4z9h8qay6l41sicr4lbjc38hxsn3lgjrj9zpn2b3585syx";
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "15qdh8fby9xgfjxidcfv1xmrqqrxxapky7zmyn46qx1abhp9piax";
   };
 
   # For python 3.5 > version > 2.7 , a nested dependency (pythonPackages.hypothesis) fails.
   disabled = ! pythonAtLeast "3.5";
 
-  # Prevent setup.py from adding dependencies in run-time and insisting on specific package versions
-  postPatch = ''
-    substituteInPlace setup.py --replace "return requires" "return []"
-  '';
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ ansicolor chardet pyyaml  setuptools] ;
+  checkInputs = [ pytest pytestcov ];
+  propagatedBuildInputs = [ ansicolor chardet pyyaml setuptools ];
 
-  # The acceptance tests check for stdout and location of binary files, which fails in nix-build.
-  checkPhase = ''
-    py.test -k "not acceptance"
+  # Unpin test dependency versions. This is fixed in master but not yet released.
+  preCheck = ''
+    sed -i 's/==.*//g' test-requirements.txt
+    sed -i 's/mock == 1.0.1/mock/g' setup.py
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock-for-rustPlatform.buildRustPackage-in-.patch b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
index e564717a56f0..73c9fd01d273 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock-for-rustPlatform.buildRustPackage-in-.patch
+++ b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
@@ -1,26 +1,26 @@
-From 3d3c33a610856b861204ccb111777e9edd8799b8 Mon Sep 17 00:00:00 2001
+From 8fb1c405426871f272e81c45c250dc11d32a4d51 Mon Sep 17 00:00:00 2001
 From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Thu, 3 Oct 2019 22:26:12 +0200
-Subject: [PATCH] Add cargo.lock for `rustPlatform.buildRustPackage` in nixpkgs
+Date: Fri, 20 Dec 2019 19:08:27 +0100
+Subject: [PATCH] Add cargo.lock
 
 ---
- Cargo.lock | 2221 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 2221 insertions(+)
+ Cargo.lock | 2363 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 2363 insertions(+)
  create mode 100644 Cargo.lock
 
 diff --git a/Cargo.lock b/Cargo.lock
 new file mode 100644
-index 00000000..d7d32a06
+index 00000000..f6018717
 --- /dev/null
 +++ b/Cargo.lock
-@@ -0,0 +1,2221 @@
+@@ -0,0 +1,2363 @@
 +# This file is automatically @generated by Cargo.
 +# It is not intended for manual editing.
 +[[package]]
 +name = "add"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
@@ -37,17 +37,19 @@ index 00000000..d7d32a06
 +]
 +
 +[[package]]
++name = "anyhow"
++version = "1.0.25"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
 +name = "arrayref"
 +version = "0.3.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "arrayvec"
-+version = "0.4.11"
++version = "0.5.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
 +
 +[[package]]
 +name = "ascii"
@@ -80,9 +82,9 @@ index 00000000..d7d32a06
 +version = "0.7.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 + "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -92,7 +94,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "escargot 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "predicates 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "predicates 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "predicates-core 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "predicates-tree 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -102,33 +104,33 @@ index 00000000..d7d32a06
 +version = "0.2.13"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "autocfg"
-+version = "0.1.6"
++version = "0.1.7"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "backtrace"
-+version = "0.3.38"
++version = "0.3.40"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "backtrace-sys"
-+version = "0.1.31"
++version = "0.1.32"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -137,7 +139,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "safemem 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -155,16 +157,16 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "bitflags"
-+version = "1.2.0"
++version = "1.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "blake2b_simd"
-+version = "0.5.8"
++version = "0.5.9"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "arrayvec 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -174,7 +176,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "safemem 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -189,25 +191,24 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "c2-chacha"
-+version = "0.2.2"
++version = "0.2.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "canvas"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "cc"
-+version = "1.0.45"
++version = "1.0.48"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -219,17 +220,16 @@ index 00000000..d7d32a06
 +name = "char"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
 +name = "chrono"
-+version = "0.4.9"
++version = "0.4.10"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
 + "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -242,9 +242,9 @@ index 00000000..d7d32a06
 +name = "closures"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -252,7 +252,7 @@ index 00000000..d7d32a06
 +version = "0.0.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "bitflags 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -266,15 +266,15 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
 +name = "console_log"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -284,32 +284,32 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "crossbeam-deque"
-+version = "0.7.1"
++version = "0.7.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "crossbeam-epoch 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "crossbeam-epoch"
-+version = "0.7.2"
++version = "0.8.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "arrayvec 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memoffset 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "crossbeam-queue"
-+version = "0.1.2"
++version = "0.2.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -322,14 +322,24 @@ index 00000000..d7d32a06
 +]
 +
 +[[package]]
++name = "crossbeam-utils"
++version = "0.7.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
 +name = "curl"
-+version = "0.4.24"
++version = "0.4.25"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "curl-sys 0.4.22 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "curl-sys 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
 + "schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
 + "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -337,15 +347,15 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "curl-sys"
-+version = "0.4.22"
++version = "0.4.24"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.50 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -359,6 +369,11 @@ index 00000000..d7d32a06
 +]
 +
 +[[package]]
++name = "diff"
++version = "0.1.12"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
 +name = "difference"
 +version = "2.0.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -368,7 +383,7 @@ index 00000000..d7d32a06
 +version = "1.0.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_users 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -380,16 +395,16 @@ index 00000000..d7d32a06
 +dependencies = [
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "strsim 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "strsim 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "dom"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -407,7 +422,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "env_logger"
-+version = "0.7.0"
++version = "0.7.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -424,59 +439,59 @@ index 00000000..d7d32a06
 +dependencies = [
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "failure"
-+version = "0.1.5"
++version = "0.1.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "backtrace 0.3.38 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "failure_derive"
-+version = "0.1.5"
++version = "0.1.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "fetch"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "filetime"
-+version = "0.2.7"
++version = "0.2.8"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "float-cmp"
-+version = "0.4.0"
++version = "0.5.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -512,11 +527,11 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "getrandom"
-+version = "0.1.12"
++version = "0.1.13"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -538,7 +553,7 @@ index 00000000..d7d32a06
 +name = "guide-supported-types-examples"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
@@ -546,14 +561,22 @@ index 00000000..d7d32a06
 +version = "0.3.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "unicode-segmentation 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "hello_world"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
++]
++
++[[package]]
++name = "hermit-abi"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -574,7 +597,7 @@ index 00000000..d7d32a06
 +version = "2.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "rayon 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -584,7 +607,7 @@ index 00000000..d7d32a06
 +dependencies = [
 + "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -595,7 +618,7 @@ index 00000000..d7d32a06
 + "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "enum_primitive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "jpeg-decoder 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "jpeg-decoder 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
 + "num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
 + "num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
 + "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -607,7 +630,7 @@ index 00000000..d7d32a06
 +name = "import_js"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
@@ -622,28 +645,28 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "jpeg-decoder"
-+version = "0.1.16"
++version = "0.1.18"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "js-sys"
-+version = "0.3.28"
++version = "0.3.33"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-test 0.3.1",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-test 0.3.6",
 +]
 +
 +[[package]]
 +name = "julia_set"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -658,7 +681,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "libc"
-+version = "0.2.62"
++version = "0.2.66"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -666,10 +689,10 @@ index 00000000..d7d32a06
 +version = "1.0.25"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -705,7 +728,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "memoffset"
-+version = "0.5.1"
++version = "0.5.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -742,7 +765,7 @@ index 00000000..d7d32a06
 + "mime_guess 1.8.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "safemem 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "twoway 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -751,15 +774,10 @@ index 00000000..d7d32a06
 +name = "no-std"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
-+name = "nodrop"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
 +name = "nom"
 +version = "4.2.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -778,8 +796,8 @@ index 00000000..d7d32a06
 +version = "0.1.41"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -787,9 +805,9 @@ index 00000000..d7d32a06
 +version = "0.1.39"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -798,7 +816,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -806,36 +824,37 @@ index 00000000..d7d32a06
 +version = "0.1.43"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "num-traits"
-+version = "0.2.8"
++version = "0.2.10"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "num_cpus"
-+version = "1.10.1"
++version = "1.11.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hermit-abi 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "openssl"
-+version = "0.10.25"
++version = "0.10.26"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "bitflags 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
 + "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -845,23 +864,23 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "openssl-src"
-+version = "111.6.0+1.1.1d"
++version = "111.6.1+1.1.1d"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "openssl-sys"
-+version = "0.9.50"
++version = "0.9.53"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-src 111.6.0+1.1.1d (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-src 111.6.1+1.1.1d (registry+https://github.com/rust-lang/crates.io-index)",
++ "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -874,8 +893,8 @@ index 00000000..d7d32a06
 +version = "0.1.0"
 +dependencies = [
 + "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -915,7 +934,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "pkg-config"
-+version = "0.3.16"
++version = "0.3.17"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -931,16 +950,16 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "ppv-lite86"
-+version = "0.2.5"
++version = "0.2.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "predicates"
-+version = "1.0.1"
++version = "1.0.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "float-cmp 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "float-cmp 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "normalize-line-endings 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "predicates-core 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -970,7 +989,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "proc-macro2"
-+version = "1.0.4"
++version = "1.0.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -994,7 +1013,7 @@ index 00000000..d7d32a06
 +version = "1.0.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1003,7 +1022,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1016,7 +1035,7 @@ index 00000000..d7d32a06
 +dependencies = [
 + "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -1026,8 +1045,8 @@ index 00000000..d7d32a06
 +version = "0.6.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1044,8 +1063,8 @@ index 00000000..d7d32a06
 +version = "0.7.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1056,7 +1075,7 @@ index 00000000..d7d32a06
 +version = "0.1.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -1065,7 +1084,7 @@ index 00000000..d7d32a06
 +version = "0.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -1087,7 +1106,7 @@ index 00000000..d7d32a06
 +version = "0.5.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
++ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1119,7 +1138,7 @@ index 00000000..d7d32a06
 +version = "0.1.4"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -1131,7 +1150,7 @@ index 00000000..d7d32a06
 +dependencies = [
 + "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1142,7 +1161,7 @@ index 00000000..d7d32a06
 +version = "0.1.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -1156,24 +1175,24 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "rayon"
-+version = "1.2.0"
++version = "1.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon-core 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon-core 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "rayon-core"
-+version = "1.6.0"
++version = "1.6.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-queue 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1182,13 +1201,13 @@ index 00000000..d7d32a06
 +dependencies = [
 + "console_error_panic_hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "futures-channel-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
-+ "rayon 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon-core 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "js-sys 0.3.33",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon-core 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "raytracer 0.1.0 (git+https://github.com/alexcrichton/raytracer?branch=update-deps)",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -1197,8 +1216,8 @@ index 00000000..d7d32a06
 +source = "git+https://github.com/alexcrichton/raytracer?branch=update-deps#42faa13859f7d8d47fd18be785c108003a207786"
 +dependencies = [
 + "image 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1219,7 +1238,7 @@ index 00000000..d7d32a06
 +version = "0.3.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1253,8 +1272,8 @@ index 00000000..d7d32a06
 +name = "request-animation-frame"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -1263,14 +1282,14 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "filetime 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "filetime 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "multipart 0.15.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
 + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "term 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "threadpool 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1285,7 +1304,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "blake2b_simd 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)",
 + "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -1293,7 +1312,7 @@ index 00000000..d7d32a06
 +name = "rust-duck-typed-interfaces"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
@@ -1311,22 +1330,22 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "ryu"
-+version = "1.0.0"
++version = "1.0.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "safemem"
-+version = "0.3.2"
++version = "0.3.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "sample"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-test 0.3.1",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-test 0.3.6",
 +]
 +
 +[[package]]
@@ -1368,30 +1387,30 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "serde"
-+version = "1.0.101"
++version = "1.0.104"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "serde_derive"
-+version = "1.0.101"
++version = "1.0.104"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "serde_json"
-+version = "1.0.40"
++version = "1.0.44"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ryu 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1406,7 +1425,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "smallvec"
-+version = "0.6.10"
++version = "1.0.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -1415,7 +1434,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -1427,7 +1446,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "strsim"
-+version = "0.9.2"
++version = "0.9.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -1442,23 +1461,23 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "syn"
-+version = "1.0.5"
++version = "1.0.11"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "synstructure"
-+version = "0.10.2"
++version = "0.12.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1476,7 +1495,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
 + "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1514,7 +1533,7 @@ index 00000000..d7d32a06
 +version = "1.7.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1522,7 +1541,7 @@ index 00000000..d7d32a06
 +version = "0.1.42"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
 + "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
 + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
@@ -1533,7 +1552,7 @@ index 00000000..d7d32a06
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "ascii 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
 + "chunked_transfer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1545,9 +1564,9 @@ index 00000000..d7d32a06
 +dependencies = [
 + "askama 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 + "console_error_panic_hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -1555,15 +1574,15 @@ index 00000000..d7d32a06
 +version = "0.4.10"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "toml"
-+version = "0.5.3"
++version = "0.5.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1573,15 +1592,15 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "trybuild"
-+version = "1.0.16"
++version = "1.0.18"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
 + "termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "toml 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1596,7 +1615,7 @@ index 00000000..d7d32a06
 +name = "typescript-tests"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
@@ -1617,15 +1636,15 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "unicode-normalization"
-+version = "0.1.8"
++version = "0.1.11"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "smallvec 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "unicode-segmentation"
-+version = "1.3.0"
++version = "1.6.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -1650,7 +1669,7 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "vcpkg"
-+version = "0.2.7"
++version = "0.2.8"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
@@ -1660,27 +1679,27 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "walrus"
-+version = "0.12.0"
++version = "0.14.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
 + "id-arena 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus-macro 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.37.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus-macro 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmparser 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "walrus-macro"
-+version = "0.12.0"
++version = "0.14.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -1690,217 +1709,235 @@ index 00000000..d7d32a06
 +
 +[[package]]
 +name = "wasm-bindgen"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-macro 0.2.51",
-+ "wasm-bindgen-test 0.3.1",
++ "js-sys 0.3.33",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-macro 0.2.56",
++ "wasm-bindgen-test 0.3.6",
 + "wasm-bindgen-test-crate-a 0.1.0",
 + "wasm-bindgen-test-crate-b 0.1.0",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-anyref-xform"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmprinter 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-backend"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
 + "bumpalo 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-shared 0.2.51",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-shared 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-benchmark"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-cli"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
 + "assert_cmd 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "curl 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "curl 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "diff 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
 + "docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "env_logger 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl 0.10.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "predicates 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)",
++ "predicates 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rouille 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-cli-support 0.2.51",
-+ "wasm-bindgen-shared 0.2.51",
++ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
++ "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-cli-support 0.2.56",
++ "wasm-bindgen-shared 0.2.56",
++ "wit-printer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-text 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-validator 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-walrus 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-cli-support"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
 + "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
 + "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-anyref-xform 0.2.51",
-+ "wasm-bindgen-multi-value-xform 0.2.51",
-+ "wasm-bindgen-shared 0.2.51",
-+ "wasm-bindgen-threads-xform 0.2.51",
-+ "wasm-bindgen-wasm-conventions 0.2.51",
-+ "wasm-bindgen-wasm-interpreter 0.2.51",
-+ "wasm-webidl-bindings 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-anyref-xform 0.2.56",
++ "wasm-bindgen-multi-value-xform 0.2.56",
++ "wasm-bindgen-shared 0.2.56",
++ "wasm-bindgen-threads-xform 0.2.56",
++ "wasm-bindgen-wasm-conventions 0.2.56",
++ "wasm-bindgen-wasm-interpreter 0.2.56",
++ "wit-text 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-validator 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-walrus 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-futures"
-+version = "0.4.1"
++version = "0.4.6"
 +dependencies = [
 + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
 + "futures-channel-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-test 0.3.1",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-test 0.3.6",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-macro"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "trybuild 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-macro-support 0.2.51",
++ "trybuild 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-macro-support 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-macro-support"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-backend 0.2.51",
-+ "wasm-bindgen-shared 0.2.51",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-backend 0.2.56",
++ "wasm-bindgen-shared 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-multi-value-xform"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmprinter 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-paint"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-shared"
-+version = "0.2.51"
++version = "0.2.56"
 +
 +[[package]]
 +name = "wasm-bindgen-test"
-+version = "0.3.1"
++version = "0.3.6"
 +dependencies = [
 + "console_error_panic_hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
++ "js-sys 0.3.33",
 + "scoped-tls 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-test-macro 0.3.1",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-test-macro 0.3.6",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-test-crate-a"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-test-crate-b"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "wasm-bindgen 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-test-macro"
-+version = "0.3.1"
++version = "0.3.6"
 +dependencies = [
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-threads-xform"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-wasm-conventions 0.2.51",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-wasm-conventions 0.2.56",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-conventions"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-interpreter"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
 + "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-webidl"
-+version = "0.2.51"
++version = "0.2.56"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
 + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen-backend 0.2.51",
++ "syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen-backend 0.2.56",
 + "weedle 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
@@ -1908,81 +1945,104 @@ index 00000000..d7d32a06
 +name = "wasm-in-wasm"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++]
++
++[[package]]
++name = "wasm2js"
++version = "0.1.0"
++dependencies = [
++ "wasm-bindgen 0.2.56",
++]
++
++[[package]]
++name = "wasmparser"
++version = "0.42.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "wasmprinter"
++version = "0.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmparser 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "wasm-webidl-bindings"
-+version = "0.5.0"
++name = "wast"
++version = "3.0.4"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "id-arena 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "wasm2js"
-+version = "0.1.0"
++name = "wast"
++version = "5.0.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
++ "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "wasmparser"
-+version = "0.37.2"
++name = "wat"
++version = "1.0.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "wast 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
 +name = "web-sys"
-+version = "0.3.28"
++version = "0.3.33"
 +dependencies = [
-+ "env_logger 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "js-sys 0.3.33",
 + "sourcefile 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-futures 0.4.1",
-+ "wasm-bindgen-test 0.3.1",
-+ "wasm-bindgen-webidl 0.2.51",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-futures 0.4.6",
++ "wasm-bindgen-test 0.3.6",
++ "wasm-bindgen-webidl 0.2.56",
 +]
 +
 +[[package]]
 +name = "webaudio"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "webgl"
 +version = "0.1.0"
 +dependencies = [
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "webidl-tests"
 +version = "0.1.0"
 +dependencies = [
-+ "env_logger 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys 0.3.28",
-+ "wasm-bindgen 0.2.51",
-+ "wasm-bindgen-test 0.3.1",
-+ "wasm-bindgen-webidl 0.2.51",
++ "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "js-sys 0.3.33",
++ "wasm-bindgen 0.2.56",
++ "wasm-bindgen-test 0.3.6",
++ "wasm-bindgen-webidl 0.2.56",
 +]
 +
 +[[package]]
 +name = "websockets"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
@@ -2030,79 +2090,152 @@ index 00000000..d7d32a06
 +]
 +
 +[[package]]
++name = "wit-parser"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "wit-printer"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmprinter 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-parser 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "wit-schema-version"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "wit-text"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-writer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "wit-validator"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasmparser 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-parser 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "wit-walrus"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "id-arena 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-parser 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-writer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "wit-writer"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
 +name = "without-a-bundler"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[[package]]
 +name = "without-a-bundler-no-modules"
 +version = "0.1.0"
 +dependencies = [
-+ "wasm-bindgen 0.2.51",
-+ "web-sys 0.3.28",
++ "wasm-bindgen 0.2.56",
++ "web-sys 0.3.33",
 +]
 +
 +[metadata]
 +"checksum adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
 +"checksum aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
++"checksum anyhow 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "9267dff192e68f3399525901e709a48c1d3982c9c072fa32f2127a0cb0babf14"
 +"checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"
-+"checksum arrayvec 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b8d73f9beda665eaa98ab9e4f7442bd4e7de6652587de55b2525e52e29c1b0ba"
++"checksum arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
 +"checksum ascii 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"
 +"checksum askama 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eed81479263c8753e06f4981f5a313b3fe6cbff30c3ff8d9ae15ef0c72d93fb5"
 +"checksum askama_derive 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "46580c08e5520afadc6e9064759e15fc743489a4db78f9c751113e3d32a1e083"
 +"checksum askama_shared 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "64509fd5c2fa767fa7ea973b732c61f0b8d30d1adf084e5164523e51a5e35d71"
 +"checksum assert_cmd 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2dc477793bd82ec39799b6f6b3df64938532fdf2ab0d49ef817eac65856a5a1e"
 +"checksum atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
-+"checksum autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875"
-+"checksum backtrace 0.3.38 (registry+https://github.com/rust-lang/crates.io-index)" = "690a62be8920ccf773ee00ef0968649b0e724cda8bd5b12286302b4ae955fdf5"
-+"checksum backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)" = "82a830b4ef2d1124a711c71d263c5abdc710ef8e907bd508c88be475cebc422b"
++"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
++"checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
++"checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
 +"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
 +"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
 +"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
-+"checksum bitflags 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8a606a02debe2813760609f57a64a2ffd27d9fdf5b2f133eaca0b248dd92cdd2"
-+"checksum blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "5850aeee1552f495dd0250014cf64b82b7c8879a89d83b33bbdace2cc4f63182"
++"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
++"checksum blake2b_simd 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b83b7baab1e671718d78204225800d6b170e648188ac7dc992e9d6bddf87d0c0"
 +"checksum buf_redux 0.8.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b953a6887648bb07a535631f2bc00fbdb2a2216f135552cb3f534ed136b9c07f"
 +"checksum bumpalo 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad807f2fc2bf185eeb98ff3a901bd46dc5ad58163d0fa4577ba0d25674d71708"
 +"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
-+"checksum c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
-+"checksum cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)" = "4fc9a35e1f4290eb9e5fc54ba6cf40671ed2a2514c3eeb2b2a908dda2ea5a1be"
++"checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
++"checksum cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)" = "f52a465a666ca3d838ebbf08b241383421412fe7ebb463527bba275526d89f76"
 +"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+"checksum chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e8493056968583b0193c1bb04d6f7684586f3726992d6c573261941a895dbd68"
++"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
 +"checksum chunked_transfer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"
 +"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
 +"checksum color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd"
 +"checksum console_error_panic_hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "b8d976903543e0c48546a91908f21588a680a8c8f984df9a5d69feccb2b2a211"
 +"checksum constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "995a44c877f9212528ccc74b21a232f66ad69001e40ede5bcee2ac9ef2657120"
-+"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71"
-+"checksum crossbeam-epoch 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fedcd6772e37f3da2a9af9bf12ebe046c0dfe657992377b4df982a2b54cd37a9"
-+"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
++"checksum crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3aa945d63861bfe624b55d153a39684da1e8c0bc8fba932f7ee3a3c16cea3ca"
++"checksum crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5064ebdbf05ce3cb95e45c8b086f72263f4166b29b97f6baff7ef7fe047b55ac"
++"checksum crossbeam-queue 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dfd6515864a82d2f877b42813d4553292c6659498c9a2aa31bab5a15243c2700"
 +"checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
-+"checksum curl 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "d08ad3cb89d076a36b0ce5749eec2c9964f70c0c58480ab6b75a91ec4fc206d8"
-+"checksum curl-sys 0.4.22 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9a9a4e417722876332136a00cacf92c2ceb331fab4b52b6a1ad16c6cd79255"
++"checksum crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4"
++"checksum curl 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)" = "06aa71e9208a54def20792d877bc663d6aae0732b9852e612c4a933177c31283"
++"checksum curl-sys 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "f659f3ffac9582d6177bb86d1d2aa649f4eb9d0d4de9d03ccc08b402832ea340"
 +"checksum deflate 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4"
++"checksum diff 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499"
 +"checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
 +"checksum dirs 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
 +"checksum docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
 +"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
 +"checksum enum_primitive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
-+"checksum env_logger 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "39ecdb7dd54465526f0a56d666e3b2dd5f3a218665a030b6e4ad9e70fa95d8fa"
++"checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
 +"checksum escargot 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ceb9adbf9874d5d028b5e4c5739d22b71988252b25c9c98fe7cf9738bee84597"
-+"checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2"
-+"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1"
-+"checksum filetime 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6bd7380b54ced79dda72ecc35cc4fbbd1da6bba54afaa37e96fd1c2a308cd469"
-+"checksum float-cmp 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "134a8fa843d80a51a5b77d36d42bc2def9edcb0262c914861d08129fd1926600"
++"checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
++"checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
++"checksum filetime 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1ff6d4dab0aa0c8e6346d46052e93b13a16cf847b54ed357087c35011048cc7d"
++"checksum float-cmp 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75224bec9bfe1a65e2d34132933f2de7fe79900c96a0174307554244ece8150e"
 +"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
 +"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 +"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
 +"checksum futures-channel-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)" = "d5e5f4df964fa9c1c2f8bddeb5c3611631cacd93baf810fc8bb2fb4b495c263a"
 +"checksum futures-core-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)" = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
-+"checksum getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571"
++"checksum getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
 +"checksum gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e2e41945ba23db3bf51b24756d73d81acb4f28d85c3dccc32c6fae904438c25f"
 +"checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
 +"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
++"checksum hermit-abi 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f629dc602392d3ec14bfc8a09b5e644d7ffd725102b48b81e59f90f2633621d7"
 +"checksum httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
 +"checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
 +"checksum id-arena 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005"
@@ -2110,46 +2243,45 @@ index 00000000..d7d32a06
 +"checksum image 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d95816db758249fe16f23a4e23f1a3a817fe11892dbfd1c5836f625324702158"
 +"checksum inflate 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb"
 +"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
-+"checksum jpeg-decoder 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "c1aae18ffeeae409c6622c3b6a7ee49792a7e5a062eea1b135fbb74e301792ba"
++"checksum jpeg-decoder 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "0256f0aec7352539102a9efbcb75543227b7ab1117e0f95450023af730128451"
 +"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 +"checksum leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a"
-+"checksum libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)" = "34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba"
++"checksum libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)" = "d515b1f41455adea1313a4a2ac8a8a477634fbae63cc6100e3aebb207ce61558"
 +"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
 +"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
 +"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
 +"checksum lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084"
 +"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
 +"checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
-+"checksum memoffset 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ce6075db033bbbb7ee5a0bbd3a3186bbae616f57fb001c485c7ff77955f8177f"
++"checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
 +"checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
 +"checksum mime_guess 1.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0d977de9ee851a0b16e932979515c0f3da82403183879811bc97d50bd9cc50f7"
 +"checksum multipart 0.15.4 (registry+https://github.com/rust-lang/crates.io-index)" = "adba94490a79baf2d6a23eac897157047008272fa3eecb3373ae6377b91eca28"
-+"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
 +"checksum nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
 +"checksum normalize-line-endings 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2e0a1a39eab95caf4f5556da9289b9e68f0aafac901b2ce80daaf020d3b733a8"
 +"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
 +"checksum num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e"
 +"checksum num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
 +"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-+"checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
-+"checksum num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273"
-+"checksum openssl 0.10.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2f372b2b53ce10fb823a337aaa674e3a7d072b957c6264d0f4ff0bd86e657449"
++"checksum num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c81ffc11c212fa327657cb19dd85eb7419e163b5b076bede2bdb5c974c07e4"
++"checksum num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "76dac5ed2a876980778b8b85f75a71b6cbf0db0b1232ee12f826bccb00d09d72"
++"checksum openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)" = "3a3cc5799d98e1088141b8e01ff760112bbd9f19d850c124500566ca6901a585"
 +"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
-+"checksum openssl-src 111.6.0+1.1.1d (registry+https://github.com/rust-lang/crates.io-index)" = "b9c2da1de8a7a3f860919c01540b03a6db16de042405a8a07a5e9d0b4b825d9c"
-+"checksum openssl-sys 0.9.50 (registry+https://github.com/rust-lang/crates.io-index)" = "2c42dcccb832556b5926bc9ae61e8775f2a61e725ab07ab3d1e7fcf8ae62c3b6"
++"checksum openssl-src 111.6.1+1.1.1d (registry+https://github.com/rust-lang/crates.io-index)" = "c91b04cb43c1a8a90e934e0cd612e2a5715d976d2d6cff4490278a0cddf35005"
++"checksum openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)" = "465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"
 +"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
 +"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
 +"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
 +"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
 +"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-+"checksum pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "72d5370d90f49f70bd033c3d75e87fc529fbfff9d6f7cccef07d6170079d91ea"
++"checksum pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
 +"checksum png 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3cb773e9a557edb568ce9935cf783e3cdcabe06a9449d41b3e5506d88e582c82"
-+"checksum ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
-+"checksum predicates 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "53e09015b0d3f5a0ec2d4428f7559bb7b3fff341b4e159fedd1d57fac8b939ff"
++"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
++"checksum predicates 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a9bfe52247e5cc9b2f943682a85a5549fb9662245caf094504e69a2f03fe64d4"
 +"checksum predicates-core 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
 +"checksum predicates-tree 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
 +"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-+"checksum proc-macro2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "afdc77cc74ec70ed262262942ebb7dac3d479e9e5cfa2da1841c0806f6cdabcc"
++"checksum proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27"
 +"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
 +"checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
 +"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
@@ -2169,8 +2301,8 @@ index 00000000..d7d32a06
 +"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
 +"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
 +"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-+"checksum rayon 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "83a27732a533a1be0a0035a111fe76db89ad312f6f0347004c220c57f209a123"
-+"checksum rayon-core 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "98dcf634205083b17d0861252431eb2acbfb698ab7478a2d20de07954f47ec7b"
++"checksum rayon 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "43739f8831493b276363637423d3622d4bd6394ab6f0a9c4a552e208aeb7fddd"
++"checksum rayon-core 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f8bf17de6f23b05473c437eb958b9c850bfc8af0961fe17b4cc92d5a627b4791"
 +"checksum raytracer 0.1.0 (git+https://github.com/alexcrichton/raytracer?branch=update-deps)" = "<none>"
 +"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
 +"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
@@ -2182,26 +2314,26 @@ index 00000000..d7d32a06
 +"checksum rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ca4eaef519b494d1f2848fc602d18816fed808a981aedf4f1f00ceb7c9d32cf"
 +"checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
 +"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-+"checksum ryu 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c92464b447c0ee8c4fb3824ecc8383b81717b9f1e74ba2e72540aef7b9f82997"
-+"checksum safemem 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d2b08423011dae9a5ca23f07cf57dac3857f5c885d352b76f6d95f4aea9434d0"
++"checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
++"checksum safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
 +"checksum schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "87f550b06b6cba9c8b8be3ee73f391990116bf527450d2556e9b9ce263b9a021"
 +"checksum scoped-tls 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
 +"checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
 +"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
 +"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
 +"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-+"checksum serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)" = "9796c9b7ba2ffe7a9ce53c2287dfc48080f4b2b362fcc245a259b3a7201119dd"
-+"checksum serde_derive 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)" = "4b133a43a1ecd55d4086bd5b4dc6c1751c68b1bfbeba7a5040442022c7e7c02e"
-+"checksum serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)" = "051c49229f282f7c6f3813f8286cc1e3323e8051823fce42c7ea80fe13521704"
++"checksum serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
++"checksum serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
++"checksum serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)" = "48c575e0cc52bdd09b47f330f646cf59afc586e9c4e3ccd6fc1f625b8ea1dad7"
 +"checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
 +"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-+"checksum smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ab606a9c5e214920bb66c458cd7be8ef094f813f20fe77a54cc7dbfff220d4b7"
++"checksum smallvec 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4ecf3b85f68e8abaa7555aa5abdb1153079387e60b718283d732f03897fcfc86"
 +"checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
 +"checksum sourcefile 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
-+"checksum strsim 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "032c03039aae92b350aad2e3779c352e104d919cb192ba2fabbd7b831ce4f0f6"
++"checksum strsim 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
 +"checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
-+"checksum syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf"
-+"checksum synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f"
++"checksum syn 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)" = "dff0acdb207ae2fe6d5976617f887eb1e35a2ba52c13c7234c790960cdad9238"
++"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
 +"checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
 +"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
 +"checksum term 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "edd106a334b7657c10b7c540a0106114feadeb4dc314513e97df481d5d966f42"
@@ -2211,30 +2343,40 @@ index 00000000..d7d32a06
 +"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
 +"checksum tiny_http 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1661fa0a44c95d01604bd05c66732a446c657efb62b5164a7a083a3b552b4951"
 +"checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
-+"checksum toml 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c7aabe75941d914b72bf3e5d3932ed92ce0664d49d8432305a8b547c37227724"
++"checksum toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf"
 +"checksum treeline 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
-+"checksum trybuild 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)" = "10d8f366221c5a5ff8a62faa005e186fdce758949d34a9140b64a062951bae68"
++"checksum trybuild 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)" = "b75e31d624df08744532e935f1d4bfedd319a277d5a162c5b15f6ced59307575"
 +"checksum twoway 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "59b11b2b5241ba34be09c3cc85a36e56e48f9888862e19cedf23336d35316ed1"
 +"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
 +"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-+"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
-+"checksum unicode-segmentation 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1967f4cdfc355b37fd76d2a954fb2ed3871034eb4f26d60537d88795cfc332a9"
++"checksum unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b561e267b2326bb4cebfc0ef9e68355c7abe6c6f522aeac2f5bf95d56c59bdcf"
++"checksum unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
 +"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
 +"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
 +"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
-+"checksum vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "33dd455d0f96e90a75803cfeb7f948768c08d70a6de9a8d2362461935698bf95"
++"checksum vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
 +"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
-+"checksum walrus 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e6f3bd9559eb5b59d55cc60986e26dc9b3f64377d0b9495e41abd9ede9a6443f"
-+"checksum walrus-macro 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0464a6e0d86be4c95c8c838bcb1910df831e1216a9586feeb02478cd52c4e554"
++"checksum walrus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4d96e9ec3f81fdb3210b12b2b1e9e39369c8050a3a28e692e5247e3ab5196410"
++"checksum walrus-macro 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2bc16925d405153a91e01cdac2a5549aa25ca9148b5176e25e601f6536344d94"
 +"checksum wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
-+"checksum wasm-webidl-bindings 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e407ee3155cb0742acacd0b21060daafe2ad78ea718f2d6b10e7d9d1032aa961"
-+"checksum wasmparser 0.37.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f7387ba67c13dd9cd01d7d961e733375aee889f828564e190da85b5602eb5eeb"
++"checksum wasmparser 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1527c84a5bd585215f29c06b0e2a5274e478ad4dfc970d26ffad66fdc6cb311d"
++"checksum wasmprinter 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "89101d1890503f4d87cc0512ff2568c00d6c13ed9de3880569e5c9c21556c06c"
++"checksum wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "233648f540f07fce9b972436f2fbcae8a750c1121b6d32d949e1a44b4d9fc7b1"
++"checksum wast 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8d1de68310854a9840d39487701a8c1acccb5c9f9f2650d5fce3cdfe6650c372"
++"checksum wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d916cc60b1b79ac1ca7683af8d6ec56b789167f7f696b3f1ab3d98961129f192"
 +"checksum weedle 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bb43f70885151e629e2a19ce9e50bd730fd436cfd4b666894c9ce4de9141164"
 +"checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
 +"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 +"checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
 +"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 +"checksum wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9"
++"checksum wit-parser 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6bb31e17473db76d44713485a85dec22d7786958a9a9b9693cfe0d7162c1b4f5"
++"checksum wit-printer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8c76e17384f4feb766d109a42c309b78de75ea2b3745f663ac3f5f331633f77f"
++"checksum wit-schema-version 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bfee4a6a4716eefa0682e7a3b836152e894a3e4f34a9d6c2c3e1c94429bfe36a"
++"checksum wit-text 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2aa19a002c984e25356af8938a8f4b7f0c9fe3963498e7ae1f90d64da9e563f5"
++"checksum wit-validator 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "676e5641088526a9bdcab24dc2f675f464f4ca1a4714aa90307464aa6658b5ba"
++"checksum wit-walrus 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8e14fbb9453201558c582d227c2b75df5c050409f467e8c220fcd57dc369280a"
++"checksum wit-writer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ebeb128df9e103e61f8ddd8a190259f3c48b73fe86a5932f40f4de526ef357e8"
 -- 
 2.23.0
 
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index 2fd30ecc6b14..44d31e784c77 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -2,20 +2,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-bindgen-cli";
-  version = "0.2.51";
+  version = "0.2.56";
 
   src = fetchFromGitHub {
     owner = "rustwasm";
     repo = "wasm-bindgen";
     rev = version;
-    sha256 = "1pfkwak11k3ghvv985c20vhg4cyvf131a1f7k3sv5snw2klww7vm";
+    sha256 = "0fmwcv192zyplxp26r9amb4zf7qf8150rd6k39sdi60lxp1dx76p";
   };
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security curl ];
   nativeBuildInputs = [ pkgconfig ];
 
-  cargoSha256 = "06zk2yzwpl569q5mgn56gprsfxxvyz4a2i949lls13daq1kal5pa";
-  cargoPatches = [ ./0001-Add-cargo.lock-for-rustPlatform.buildRustPackage-in-.patch ];
+  cargoSha256 = "0xn6sa1gc62gqf8zfn9b4zs2g58diixflxdvflygk5y55bp3rjcy";
+  cargoPatches = [ ./0001-Add-cargo.lock.patch ];
   cargoBuildFlags = [ "-p" pname ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/yarn/default.nix b/pkgs/development/tools/yarn/default.nix
index 43d3e20d3dfd..154b228e0e11 100644
--- a/pkgs/development/tools/yarn/default.nix
+++ b/pkgs/development/tools/yarn/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yarn";
-  version = "1.19.1";
+  version = "1.21.1";
 
   src = fetchzip {
     url = "https://github.com/yarnpkg/yarn/releases/download/v${version}/yarn-v${version}.tar.gz";
-    sha256 = "0qlrwmvpv0ifvywqqzg28ywmhk4prkk1dflnnpk6grpgkq3bfv77";
+    sha256 = "1yw3v62a6309f9hr189870i9jw2a15pkians1nnfjqczzh7r5pih";
   };
 
   buildInputs = [ nodejs ];