aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/interpreters
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/interpreters')
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/TDEPS-150.patch23
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/default.nix40
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/default.nix231
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.edn8
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.nix479
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/mkdir_promise.patch20
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/no_mangle.patch13
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojurescript/lumo/package.json45
-rw-r--r--nixpkgs/pkgs/development/interpreters/dart/default.nix70
-rw-r--r--nixpkgs/pkgs/development/interpreters/dhall/build-dhall-package.nix83
-rw-r--r--nixpkgs/pkgs/development/interpreters/dhall/default.nix18
-rw-r--r--nixpkgs/pkgs/development/interpreters/elixir/1.10.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/evcxr/default.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/groovy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/guile/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/icon-lang/default.nix14
-rw-r--r--nixpkgs/pkgs/development/interpreters/janet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/joker/default.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/jruby/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/jython/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/1.3.nix43
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/dedup-ebins.patch13
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix17
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/build-lua-package.nix22
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/luajit/default.nix50
-rw-r--r--nixpkgs/pkgs/development/interpreters/maude/default.nix21
-rw-r--r--nixpkgs/pkgs/development/interpreters/metamath/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/octave/default.nix157
-rw-r--r--nixpkgs/pkgs/development/interpreters/octave/hg.nix75
-rw-r--r--nixpkgs/pkgs/development/interpreters/perl/default.nix14
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/default.nix380
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/cpython/3.7/darwin-libutil.patch23
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/cpython/default.nix5
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/default.nix12
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/default.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/python-imports-check-hook.sh2
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/python-remove-tests-dir-hook.sh15
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/pypy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/tests.nix63
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/tests/test_python.py50
-rw-r--r--nixpkgs/pkgs/development/interpreters/racket/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/racket/minimal.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/rakudo/default.nix30
-rw-r--r--nixpkgs/pkgs/development/interpreters/rakudo/moarvm.nix25
-rw-r--r--nixpkgs/pkgs/development/interpreters/rakudo/nqp.nix29
-rw-r--r--nixpkgs/pkgs/development/interpreters/rakudo/zef.nix34
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/default.nix21
-rw-r--r--nixpkgs/pkgs/development/interpreters/supercollider/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasm-gc/default.nix25
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasm-gc/fix-build.patch34
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasmer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasmtime/cargo-lock.patch2282
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasmtime/default.nix10
56 files changed, 1386 insertions, 3190 deletions
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/TDEPS-150.patch b/nixpkgs/pkgs/development/interpreters/clojure/TDEPS-150.patch
new file mode 100644
index 00000000000..611134e8e3f
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/clojure/TDEPS-150.patch
@@ -0,0 +1,23 @@
+--- a/clojure
++++ b/clojure
+@@ -317,17 +317,17 @@ if "$stale" || "$pom"; then
+ tools_args+=("--threads" "$threads")
+ fi
+ if "$trace"; then
+ tools_args+=("--trace")
+ fi
+ fi
+
+ # If stale, run make-classpath to refresh cached classpath
+-if [[ "$stale" = true && "$describe" = false ]]; then
++if [[ "$stale" = true && "$describe" = false && -z "$force_cp" ]]; then
+ if "$verbose"; then
+ echo "Refreshing classpath"
+ fi
+
+ "$JAVA_CMD" -classpath "$tools_cp" clojure.main -m clojure.tools.deps.alpha.script.make-classpath2 --config-user "$config_user" --config-project "$config_project" --libs-file "$libs_file" --cp-file "$cp_file" --jvm-file "$jvm_file" --main-file "$main_file" "${tools_args[@]}"
+ fi
+
+ if "$describe"; then
+--
+2.25.0
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/default.nix b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
index 8187bf4af8e..01fba17f104 100644
--- a/nixpkgs/pkgs/development/interpreters/clojure/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
@@ -2,31 +2,41 @@
stdenv.mkDerivation rec {
pname = "clojure";
- version = "1.10.1.492";
+ version = "1.10.1.507";
src = fetchurl {
url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
- sha256 = "09mhy5xw9kdr10a1xpbn5v97qyyhngw5s1n1alrs45a4m3l11iky";
+ sha256 = "1k0jwa3481g3mkalwlb9gkcz9aq9zjpwmzckv823fr2d8djp41cc";
};
+ patches = [ ./TDEPS-150.patch ];
+
buildInputs = [ makeWrapper ];
- installPhase = let
- binPath = stdenv.lib.makeBinPath [ rlwrap jdk11 ];
- in
- ''
- mkdir -p $out/libexec
- cp clojure-tools-${version}.jar $out/libexec
- cp example-deps.edn $out
- cp deps.edn $out
+ installPhase =
+ let
+ binPath = stdenv.lib.makeBinPath [ rlwrap jdk11 ];
+ in
+ ''
+ mkdir -p $out/libexec
+ cp clojure-tools-${version}.jar $out/libexec
+ cp example-deps.edn $out
+ cp deps.edn $out
- substituteInPlace clojure --replace PREFIX $out
+ substituteInPlace clojure --replace PREFIX $out
- install -Dt $out/bin clj clojure
- wrapProgram $out/bin/clj --prefix PATH : $out/bin:${binPath}
- wrapProgram $out/bin/clojure --prefix PATH : $out/bin:${binPath}
- '';
+ install -Dt $out/bin clj clojure
+ wrapProgram $out/bin/clj --prefix PATH : $out/bin:${binPath}
+ wrapProgram $out/bin/clojure --prefix PATH : $out/bin:${binPath}
+ '';
+ doInstallCheck = true;
+ installCheckPhase = ''
+ CLJ_CONFIG=$out CLJ_CACHE=$out/libexec $out/bin/clojure \
+ -Spath \
+ -Sverbose \
+ -Scp $out/libexec/clojure-tools-${version}.jar
+ '';
meta = with stdenv.lib; {
description = "A Lisp dialect for the JVM";
homepage = https://clojure.org/;
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/default.nix b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/default.nix
index 0e9d81d5e95..d6252a7506a 100644
--- a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/default.nix
@@ -1,18 +1,30 @@
-{ stdenv, lib, fetchurl, clojure,
- nodejs, jre, unzip, nodePackages,
- python, openssl, pkgs }:
-
-let # packageJSON=./package.json;
- version = "1.9.0";
- nodeVersion = "10.9.0";
- nodeSources = fetchurl {
- url="https://nodejs.org/dist/v${nodeVersion}/node-v${nodeVersion}.tar.gz";
- sha256="0wgawq3wzw07pir73bxz13dggcc1fj0538y7y69n3cc0a2kiplqy";
- };
- lumo-internal-classpath = "LUMO__INTERNAL__CLASSPATH";
+{ stdenv
+, lib
+, fetchurl
+, clojure
+, gnutar
+, nodejs
+, jre
+, unzip
+, nodePackages
+, xcbuild
+, python
+, openssl
+, pkgs
+, fetchgit
+, darwin
+}:
+let
+ version = "1.10.1";
+ nodeVersion = "11.13.0";
+ nodeSources = fetchurl {
+ url = "https://nodejs.org/dist/v${nodeVersion}/node-v${nodeVersion}.tar.gz";
+ sha256 = "1cjzjbshxnysxkvbf41p3m8298cnhs9kfvdczgvvvlp6w16x4aac";
+ };
+ lumo-internal-classpath = "LUMO__INTERNAL__CLASSPATH";
- # as found in cljs/snapshot/lumo/repl.cljs
- requireDeps = '' \
+ # as found in cljs/snapshot/lumo/repl.cljs
+ requireDeps = '' \
cljs.analyzer \
cljs.compiler \
cljs.env \
@@ -50,104 +62,125 @@ let # packageJSON=./package.json;
lumo.js-deps \
lumo.common '';
- compileClojurescript = (simple: ''
- (require '[cljs.build.api :as cljs])
- (cljs/build \"src/cljs/snapshot\"
- {:optimizations ${if simple then ":simple" else ":none"}
- :main 'lumo.core
- :cache-analysis true
- :source-map false
- :dump-core false
- :static-fns true
- :optimize-constants false
- :npm-deps false
- :verbose true
- :closure-defines {'cljs.core/*target* \"nodejs\"
- 'lumo.core/*lumo-version* \"${version}\"}
- :compiler-stats true
- :process-shim false
- :fn-invoke-direct true
- :parallel-build false
- :browser-repl false
- :target :nodejs
- :hashbang false
- ;; :libs [ \"src/cljs/bundled\" \"src/js\" ]
- :output-dir ${if simple
- then ''\"cljstmp\"''
- else ''\"target\"''}
- :output-to ${if simple
- then ''\"cljstmp/main.js\"''
- else ''\"target/deleteme.js\"'' }})
- '');
+ compileClojurescript = (simple: ''
+ (require '[cljs.build.api :as cljs])
+ (cljs/build \"src/cljs/snapshot\"
+ {:optimizations ${if simple then ":simple" else ":none"}
+ :main 'lumo.core
+ :cache-analysis true
+ :source-map false
+ :dump-core false
+ :static-fns true
+ :optimize-constants false
+ :npm-deps false
+ :verbose true
+ :closure-defines {'cljs.core/*target* \"nodejs\"
+ 'lumo.core/*lumo-version* \"${version}\"}
+ :compiler-stats true
+ :process-shim false
+ :fn-invoke-direct true
+ :parallel-build false
+ :browser-repl false
+ :target :nodejs
+ :hashbang false
+ ;; :libs [ \"src/cljs/bundled\" \"src/js\" ]
+ :output-dir ${if simple
+ then ''\"cljstmp\"''
+ else ''\"target\"''}
+ :output-to ${if simple
+ then ''\"cljstmp/main.js\"''
+ else ''\"target/deleteme.js\"'' }})
+ ''
+ );
- cacheToJsons = ''
- (import [java.io ByteArrayOutputStream FileInputStream])
- (require '[cognitect.transit :as transit]
- '[clojure.edn :as edn]
- '[clojure.string :as str])
+ cacheToJsons = ''
+ (import [java.io ByteArrayOutputStream FileInputStream])
+ (require '[cognitect.transit :as transit]
+ '[clojure.edn :as edn]
+ '[clojure.string :as str])
- (defn write-transit-json [cache]
- (let [out (ByteArrayOutputStream. 1000000)
- writer (transit/writer out :json)]
- (transit/write writer cache)
- (.toString out)))
+ (defn write-transit-json [cache]
+ (let [out (ByteArrayOutputStream. 1000000)
+ writer (transit/writer out :json)]
+ (transit/write writer cache)
+ (.toString out)))
- (defn process-caches []
- (let [cache-aot-path \"target/cljs/core.cljs.cache.aot.edn\"
- cache-aot-edn (edn/read-string (slurp cache-aot-path))
- cache-macros-path \"target/cljs/core\$macros.cljc.cache.json\"
- cache-macros-stream (FileInputStream. cache-macros-path)
- cache-macros-edn (transit/read (transit/reader cache-macros-stream :json))
- caches [[cache-aot-path cache-aot-edn]
- [cache-macros-path cache-macros-edn]]]
- (doseq [[path cache-edn] caches]
- (doseq [key (keys cache-edn)]
- (let [out-path (str/replace path #\"(\.json|\.edn)\$\"
- (str \".\" (munge key) \".json\"))
- tr-json (write-transit-json (key cache-edn))]
- (spit out-path tr-json))))))
+ (defn process-caches []
+ (let [cache-aot-path \"target/cljs/core.cljs.cache.aot.edn\"
+ cache-aot-edn (edn/read-string (slurp cache-aot-path))
+ cache-macros-path \"target/cljs/core\$macros.cljc.cache.json\"
+ cache-macros-stream (FileInputStream. cache-macros-path)
+ cache-macros-edn (transit/read (transit/reader cache-macros-stream :json))
+ caches [[cache-aot-path cache-aot-edn]
+ [cache-macros-path cache-macros-edn]]]
+ (doseq [[path cache-edn] caches]
+ (doseq [key (keys cache-edn)]
+ (let [out-path (str/replace path #\"(\.json|\.edn)\$\"
+ (str \".\" (munge key) \".json\"))
+ tr-json (write-transit-json (key cache-edn))]
+ (spit out-path tr-json))))))
- (process-caches)
- '';
+ (process-caches)
+ '';
- trimMainJsEnd = ''
- (let [string (slurp \"target/main.js\")]
- (spit \"target/main.js\"
- (subs string 0 (.indexOf string \"cljs.nodejs={};\"))))
- '';
+ trimMainJsEnd = ''
+ (let [string (slurp \"target/main.js\")]
+ (spit \"target/main.js\"
+ (subs string 0 (.indexOf string \"cljs.nodejs={};\"))))
+ '';
- cljdeps = import ./deps.nix { inherit pkgs; };
- classp = cljdeps.makeClasspaths {
- extraClasspaths=["src/js" "src/cljs/bundled" "src/cljs/snapshot"];
- };
-
+ cljdeps = import ./deps.nix { inherit pkgs; };
+ classp = cljdeps.makeClasspaths {
+ extraClasspaths = [ "src/js" "src/cljs/bundled" "src/cljs/snapshot" ];
+ };
- getJarPath = jarName: (lib.findFirst (p: p.name == jarName) null cljdeps.packages).path.jar;
-in stdenv.mkDerivation {
+ getJarPath = jarName: (lib.findFirst (p: p.name == jarName) null cljdeps.packages).path.jar;
+in
+stdenv.mkDerivation {
inherit version;
pname = "lumo";
- src = fetchurl {
- url = "https://github.com/anmonteiro/lumo/archive/${version}.tar.gz";
- sha256 = "1mr3zjslznhv7y3mzvg1pmmvzn10d6di26izz4x8p4nfnshacwgw";
+ src = fetchgit {
+ url = "https://github.com/anmonteiro/lumo.git";
+ rev = "${version}";
+ sha256 = "12agi6bacqic2wq6q3l28283badzamspajmajzqm7fbdl2aq1a4p";
};
+ buildInputs = [
+ nodejs
+ clojure
+ jre
+ unzip
+ python
+ openssl
+ gnutar
+ nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo"
+ ]
+ ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+ ApplicationServices
+ xcbuild
+ ]
+ );
- buildInputs = [ nodejs clojure jre unzip python openssl
- nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo" ];
+ patches = [ ./no_mangle.patch ./mkdir_promise.patch ];
+
+ postPatch = ''
+ substituteInPlace $NIX_BUILD_TOP/lumo/vendor/nexe/exe.js \
+ --replace 'glob.sync(dir + "/*")' 'glob.sync(dir + "/../*")'
+ '';
buildPhase = ''
- # Copy over lumo-build-deps environment
+ # Copy over lumo-build-deps environment
rm yarn.lock
cp -rf ${nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo"}/lib/node_modules/lumo-build-deps/* ./
# configure clojure-cli
mkdir ./.cpcache
export CLJ_CONFIG=`pwd`
- export CLJ_CACHE=`pwd`/.cpcache
+ export CLJ_CACHE=`pwd`/.cpcache
# require more namespaces for cljs-bundle
sed -i "s!ns lumo.core! \
@@ -155,7 +188,7 @@ in stdenv.mkDerivation {
(:require ${requireDeps}) \
(:require-macros [clojure.template :as temp] \
[cljs.test :as test])!g" \
- ./src/cljs/snapshot/lumo/core.cljs
+ ./src/cljs/snapshot/lumo/core.cljs
# Step 1: compile clojurescript with :none and :simple
${clojure}/bin/clojure -Scp ${classp} -e "${compileClojurescript true}"
@@ -204,7 +237,7 @@ in stdenv.mkDerivation {
# Step 3: generate munged cache jsons
${clojure}/bin/clojure -Scp ${classp} -e "${cacheToJsons}"
rm ./target/cljs/core\$macros\.cljc\.cache\.json
-
+
# Step 4: Bunde javascript
NODE_ENV=production node scripts/bundle.js
@@ -215,21 +248,20 @@ in stdenv.mkDerivation {
# Step 6: Package executeable 1st time
# fetch node sources and copy to palce that nexe will find
- mkdir -p tmp/${nodeVersion}
- cp ${nodeSources} tmp/${nodeVersion}/node-${nodeVersion}.tar.gz
- tar -C ./tmp/${nodeVersion} -xf ${nodeSources}
- mv ./tmp/${nodeVersion}/node-v${nodeVersion}/* ./tmp/${nodeVersion}/
+ mkdir -p tmp/node/${nodeVersion}
+ cp ${nodeSources} tmp/node/${nodeVersion}/node-${nodeVersion}.tar.gz
+ tar -C ./tmp/node/${nodeVersion} -xf ${nodeSources} --warning=no-unknown-keyword
+ mv ./tmp/node/${nodeVersion}/node-v${nodeVersion}/* ./tmp/node/${nodeVersion}/
rm -rf ${lumo-internal-classpath}
- mv target ${lumo-internal-classpath}
+ cp -rf target ${lumo-internal-classpath}
node scripts/package.js ${nodeVersion}
- rm -rf ${lumo-internal-classpath}
+ rm -rf target
+ mv ${lumo-internal-classpath} target
# Step 7: AOT Macros
sh scripts/aot-bundle-macros.sh
# Step 8: Package executeable 2nd time
- rm -rf ${lumo-internal-classpath}
- mv target ${lumo-internal-classpath}
node scripts/package.js ${nodeVersion}
'';
@@ -250,7 +282,6 @@ in stdenv.mkDerivation {
homepage = https://github.com/anmonteiro/lumo;
license = stdenv.lib.licenses.epl10;
maintainers = [ stdenv.lib.maintainers.hlolli ];
- platforms = stdenv.lib.platforms.linux;
+ platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
};
}
-
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.edn b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.edn
index e1563599a8c..7a2faee1d7a 100644
--- a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.edn
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.edn
@@ -1,12 +1,12 @@
{:deps
- {org.clojure/clojure {:mvn/version "1.10.0-beta5"}
- org.clojure/clojurescript {:mvn/version "1.10.439"}
- org.clojure/test.check {:mvn/version "0.10.0-alpha3"}
+ {org.clojure/clojure {:mvn/version "1.10.1"}
+ org.clojure/clojurescript {:mvn/version "1.10.520"}
+ org.clojure/test.check {:mvn/version "0.10.0-alpha4"}
org.clojure/tools.reader {:mvn/version "1.3.2"
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
com.cognitect/transit-cljs {:mvn/version "0.8.256"
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
malabarba/lazy-map {:mvn/version "1.3"
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
- fipp {:mvn/version "0.6.14"
+ fipp {:mvn/version "0.6.17"
:exclusions [org.clojure/clojure org.clojure/clojurescript]}}}
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.nix b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.nix
index 3e53c7f98dd..4f3beff3b81 100644
--- a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/deps.nix
@@ -1,241 +1,240 @@
-# generated by clj2nix-1.0.3
+# generated by clj2nix-1.0.4
{ pkgs }:
- let repos = [
- "https://repo.clojars.org/"
- "https://repo1.maven.org/"
- "http://central.maven.org/maven2/"
- "http://oss.sonatype.org/content/repositories/releases/"
- "http://oss.sonatype.org/content/repositories/public/"
- "http://repo.typesafe.com/typesafe/releases/"
- ];
-
- in rec {
- makePaths = {extraClasspaths ? []}: (builtins.map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages) ++ extraClasspaths;
- makeClasspaths = {extraClasspaths ? []}: builtins.concatStringsSep ":" (makePaths {inherit extraClasspaths;});
-
- packages = [
- {
- name = "com.cognitect/transit-java";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "transit-java";
- groupId = "com.cognitect";
- sha512 = "80365a4f244e052b6c4fdfd2fd3b91288835599cb4dd88e0e0dae19883dcda39afee83966810ed81beff342111c3a45a66f5601c443f3ad49904908c43631708";
- version = "0.8.332";
- };
- }
-
- {
- name = "org.clojure/data.json";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "data.json";
- groupId = "org.clojure";
- sha512 = "ce526bef01bedd31b772954d921a61832ae60af06121f29080853f7932326438b33d183240a9cffbe57e00dc3744700220753948da26b8973ee21c30e84227a6";
- version = "0.2.6";
- };
- }
-
- {
- name = "org.clojure/clojure";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "clojure";
- groupId = "org.clojure";
- sha512 = "f7a6b207b1bcbb6523d32ecfdd3c8c25d4d0b0a59c78baf06cdc69ba3c21c5e96b5dac8e9efcb331efd94e10bccbb9b54fca62a4312309db65a1f9d89d9da3f4";
- version = "1.10.0-beta5";
- };
- }
-
- {
- name = "commons-codec/commons-codec";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "commons-codec";
- groupId = "commons-codec";
- sha512 = "8edecc0faf38e8620460909d8191837f34e2bb2ce853677c486c5e79bb79e88d043c3aed69c11f1365c4884827052ee4e1c18ca56e38d1a5bc0ce15c57daeee3";
- version = "1.10";
- };
- }
-
- {
- name = "com.google.errorprone/error_prone_annotations";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "error_prone_annotations";
- groupId = "com.google.errorprone";
- sha512 = "bd2135cc9eb2c652658a2814ec9c565fa3e071d4cff590cbe17b853885c78c9f84c1b7b24ba736f4f30ed8cec60a6af983827fcbed61ff142f27ac808e97fc6b";
- version = "2.1.3";
- };
- }
-
- {
- name = "org.clojure/core.specs.alpha";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "core.specs.alpha";
- groupId = "org.clojure";
- sha512 = "348c0ea0911bc0dcb08655e61b97ba040649b4b46c32a62aa84d0c29c245a8af5c16d44a4fa5455d6ab076f4bb5bbbe1ad3064a7befe583f13aeb9e32a169bf4";
- version = "0.2.44";
- };
- }
-
- {
- name = "org.clojure/spec.alpha";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "spec.alpha";
- groupId = "org.clojure";
- sha512 = "18c97fb2b74c0bc2ff4f6dc722a3edec539f882ee85d0addf22bbf7e6fe02605d63f40c2b8a2905868ccd6f96cfc36a65f5fb70ddac31c6ec93da228a456edbd";
- version = "0.2.176";
- };
- }
-
- {
- name = "org.codehaus.mojo/animal-sniffer-annotations";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "animal-sniffer-annotations";
- groupId = "org.codehaus.mojo";
- sha512 = "9e5e3ea9e06e0ac9463869fd0e08ed38f7042784995a7b50c9bfd7f692a53f0e1430b9e1367dc772d0d4eafe5fd2beabbcc60da5008bd792f9e7ec8436c0f136";
- version = "1.14";
- };
- }
-
- {
- name = "com.googlecode.json-simple/json-simple";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "json-simple";
- groupId = "com.googlecode.json-simple";
- sha512 = "f8798bfbcc8ab8001baf90ce47ec2264234dc1da2d4aa97fdcdc0990472a6b5a5a32f828e776140777d598a99d8a0c0f51c6d0767ae1a829690ab9200ae35742";
- version = "1.1.1";
- };
- }
-
- {
- name = "com.cognitect/transit-cljs";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "transit-cljs";
- groupId = "com.cognitect";
- sha512 = "318b98ddd63629f37b334bb90e625bc31ab6abcf0b1fa80d8e097551658f2d9219b5ee35869a31f2976d7d385da83bea0c07b0d097babcae241ecbd0fe8a7ecd";
- version = "0.8.256";
- };
- }
-
- {
- name = "org.clojure/google-closure-library";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "google-closure-library";
- groupId = "org.clojure";
- sha512 = "75631182ef12f21723fe3eba1003d8cf9b8348a51512961e4e1b87bc24d8f3abb14a70c856f08cdaa5588a2d7c2b1b0c03aeaa3c4c5f2ed745a85f59ceeab83a";
- version = "0.0-20170809-b9c14c6b";
- };
- }
-
- {
- name = "fipp";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "fipp";
- groupId = "fipp";
- sha512 = "155b5bb7045ac7c3a75c638e65464ca1fc90e5b4692328fc2da73b26792178fdbce5ab01ba0397e1986b6162b06b8904712d2c366f32ea43ea5fa2b454a526a5";
- version = "0.6.14";
- };
- }
-
- {
- name = "org.clojure/clojurescript";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "clojurescript";
- groupId = "org.clojure";
- sha512 = "4aec5abdd48aaf95f7a729e11d225a99d02caa3a4ddff3e9e4f8db80dea83ab70a4440691cb372562c8c16e73c2850b22806a2851df3849c852fddd49b57fc58";
- version = "1.10.439";
- };
- }
-
- {
- name = "com.google.jsinterop/jsinterop-annotations";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "jsinterop-annotations";
- groupId = "com.google.jsinterop";
- sha512 = "b6fd98a9167d031f6bff571567d4658fda62c132dc74d47ca85e02c9bb3ce8812b1012c67f4c81501ab0cbd9ccd9cda5dcf32d306e04368ace7a173cecae975d";
- version = "1.0.0";
- };
- }
-
- {
- name = "com.fasterxml.jackson.core/jackson-core";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "jackson-core";
- groupId = "com.fasterxml.jackson.core";
- sha512 = "a1bd6c264b9ab07aad3d0f26b65757e35ff47904ab895bb7f997e3e1fd063129c177ad6f69876907b04ff8a43c6b1770a26f53a811633a29e66a5dce57194f64";
- version = "2.8.7";
- };
- }
-
- {
- name = "malabarba/lazy-map";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "lazy-map";
- groupId = "malabarba";
- sha512 = "ce56d6f03ac344579e15f062cdd4c477c0323da716d4d4106c4edb746959699e0b294b25aacf8ecf1579a6bdd5556a60f4bcb1648d22832984c069a0431c840f";
- version = "1.3";
- };
- }
-
- {
- name = "com.cognitect/transit-js";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "transit-js";
- groupId = "com.cognitect";
- sha512 = "6ca0978e633e41b45ff5a76df79099ba7c4900a8ca9f6acd2a903e4ab10a1ec0c83d4127009df9dac1337debaba01f7ff1d5cced1c2159c05ef94845f73f0623";
- version = "0.8.846";
- };
- }
-
- {
- name = "org.mozilla/rhino";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "rhino";
- groupId = "org.mozilla";
- sha512 = "466e7a76303ea191802b5e7adb3dff64c1d6283a25ce87447296b693b87b166f4cdd191ef7dc130a5739bfa0e4a81b08550f607c84eec167406d9be2225562dc";
- version = "1.7R5";
- };
- }
-
- {
- name = "org.clojure/google-closure-library-third-party";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "google-closure-library-third-party";
- groupId = "org.clojure";
- sha512 = "57fa84fbbca3eb9e612d2842e4476b74f64d13dd076ffca6c9d9e15c4ca8a2f2c56cc19307bcad0ab5b4f9cb0c3e7900ccc845bd570ebc92e2633885ab621f35";
- version = "0.0-20170809-b9c14c6b";
- };
- }
-
- {
- name = "com.google.javascript/closure-compiler-externs";
- path = pkgs.fetchMavenArtifact {
- inherit repos;
- artifactId = "closure-compiler-externs";
- groupId = "com.google.javascript";
- sha512 = "1a47c8559144095c0b23a8e40acd7185625cea5a4c103eb75fbacd32d5809d087bfb60aaf57066329649c6017ec5f993756024e767a5b8f84926371ba6183a82";
- version = "v20180805";
- };
- }
-
- {
+let repos = [
+ "https://repo.clojars.org/"
+ "https://repo1.maven.org/"
+ "http://oss.sonatype.org/content/repositories/releases/"
+ "http://oss.sonatype.org/content/repositories/public/"
+ "http://repo.typesafe.com/typesafe/releases/"
+ ];
+
+in rec {
+ makePaths = {extraClasspaths ? []}: (builtins.map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages) ++ extraClasspaths;
+ makeClasspaths = {extraClasspaths ? []}: builtins.concatStringsSep ":" (makePaths {inherit extraClasspaths;});
+
+ packages = [
+ {
+ name = "com.cognitect/transit-java";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "transit-java";
+ groupId = "com.cognitect";
+ sha512 = "80365a4f244e052b6c4fdfd2fd3b91288835599cb4dd88e0e0dae19883dcda39afee83966810ed81beff342111c3a45a66f5601c443f3ad49904908c43631708";
+ version = "0.8.332";
+ };
+ }
+
+ {
+ name = "org.clojure/data.json";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "data.json";
+ groupId = "org.clojure";
+ sha512 = "ce526bef01bedd31b772954d921a61832ae60af06121f29080853f7932326438b33d183240a9cffbe57e00dc3744700220753948da26b8973ee21c30e84227a6";
+ version = "0.2.6";
+ };
+ }
+
+ {
+ name = "org.clojure/clojure";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "clojure";
+ groupId = "org.clojure";
+ sha512 = "f28178179483531862afae13e246386f8fda081afa523d3c4ea3a083ab607d23575d38ecb9ec0ee7f4d65cbe39a119f680e6de4669bc9cf593aa92be0c61562b";
+ version = "1.10.1";
+ };
+ }
+
+ {
+ name = "commons-codec/commons-codec";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "commons-codec";
+ groupId = "commons-codec";
+ sha512 = "8edecc0faf38e8620460909d8191837f34e2bb2ce853677c486c5e79bb79e88d043c3aed69c11f1365c4884827052ee4e1c18ca56e38d1a5bc0ce15c57daeee3";
+ version = "1.10";
+ };
+ }
+
+ {
+ name = "com.google.errorprone/error_prone_annotations";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "error_prone_annotations";
+ groupId = "com.google.errorprone";
+ sha512 = "bd2135cc9eb2c652658a2814ec9c565fa3e071d4cff590cbe17b853885c78c9f84c1b7b24ba736f4f30ed8cec60a6af983827fcbed61ff142f27ac808e97fc6b";
+ version = "2.1.3";
+ };
+ }
+
+ {
+ name = "org.clojure/core.specs.alpha";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "core.specs.alpha";
+ groupId = "org.clojure";
+ sha512 = "348c0ea0911bc0dcb08655e61b97ba040649b4b46c32a62aa84d0c29c245a8af5c16d44a4fa5455d6ab076f4bb5bbbe1ad3064a7befe583f13aeb9e32a169bf4";
+ version = "0.2.44";
+ };
+ }
+
+ {
+ name = "org.clojure/spec.alpha";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "spec.alpha";
+ groupId = "org.clojure";
+ sha512 = "18c97fb2b74c0bc2ff4f6dc722a3edec539f882ee85d0addf22bbf7e6fe02605d63f40c2b8a2905868ccd6f96cfc36a65f5fb70ddac31c6ec93da228a456edbd";
+ version = "0.2.176";
+ };
+ }
+
+ {
+ name = "org.codehaus.mojo/animal-sniffer-annotations";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "animal-sniffer-annotations";
+ groupId = "org.codehaus.mojo";
+ sha512 = "9e5e3ea9e06e0ac9463869fd0e08ed38f7042784995a7b50c9bfd7f692a53f0e1430b9e1367dc772d0d4eafe5fd2beabbcc60da5008bd792f9e7ec8436c0f136";
+ version = "1.14";
+ };
+ }
+
+ {
+ name = "com.googlecode.json-simple/json-simple";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "json-simple";
+ groupId = "com.googlecode.json-simple";
+ sha512 = "f8798bfbcc8ab8001baf90ce47ec2264234dc1da2d4aa97fdcdc0990472a6b5a5a32f828e776140777d598a99d8a0c0f51c6d0767ae1a829690ab9200ae35742";
+ version = "1.1.1";
+ };
+ }
+
+ {
+ name = "com.cognitect/transit-cljs";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "transit-cljs";
+ groupId = "com.cognitect";
+ sha512 = "318b98ddd63629f37b334bb90e625bc31ab6abcf0b1fa80d8e097551658f2d9219b5ee35869a31f2976d7d385da83bea0c07b0d097babcae241ecbd0fe8a7ecd";
+ version = "0.8.256";
+ };
+ }
+
+ {
+ name = "org.clojure/google-closure-library";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "google-closure-library";
+ groupId = "org.clojure";
+ sha512 = "75631182ef12f21723fe3eba1003d8cf9b8348a51512961e4e1b87bc24d8f3abb14a70c856f08cdaa5588a2d7c2b1b0c03aeaa3c4c5f2ed745a85f59ceeab83a";
+ version = "0.0-20170809-b9c14c6b";
+ };
+ }
+
+ {
+ name = "fipp";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "fipp";
+ groupId = "fipp";
+ sha512 = "d844ab63d28cb5e31657cc38e574bbc7072a78419c997f25445ac6ea4a719904a4f4844b37e3f664a8d2e49bd38ff1006a9e8c6e63fb4e2f0a2322d6c2638275";
+ version = "0.6.17";
+ };
+ }
+
+ {
+ name = "org.clojure/clojurescript";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "clojurescript";
+ groupId = "org.clojure";
+ sha512 = "b241959d6bd2ab659920965d301508226e26b3edcee469e4cd516cd4ed014b1a6b132c17ee7d96a8e66fe27fd01a74813ac8b85958d260f9fdbbeb4348d57ff1";
+ version = "1.10.520";
+ };
+ }
+
+ {
+ name = "com.google.jsinterop/jsinterop-annotations";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "jsinterop-annotations";
+ groupId = "com.google.jsinterop";
+ sha512 = "b6fd98a9167d031f6bff571567d4658fda62c132dc74d47ca85e02c9bb3ce8812b1012c67f4c81501ab0cbd9ccd9cda5dcf32d306e04368ace7a173cecae975d";
+ version = "1.0.0";
+ };
+ }
+
+ {
+ name = "com.fasterxml.jackson.core/jackson-core";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "jackson-core";
+ groupId = "com.fasterxml.jackson.core";
+ sha512 = "a1bd6c264b9ab07aad3d0f26b65757e35ff47904ab895bb7f997e3e1fd063129c177ad6f69876907b04ff8a43c6b1770a26f53a811633a29e66a5dce57194f64";
+ version = "2.8.7";
+ };
+ }
+
+ {
+ name = "malabarba/lazy-map";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "lazy-map";
+ groupId = "malabarba";
+ sha512 = "ce56d6f03ac344579e15f062cdd4c477c0323da716d4d4106c4edb746959699e0b294b25aacf8ecf1579a6bdd5556a60f4bcb1648d22832984c069a0431c840f";
+ version = "1.3";
+ };
+ }
+
+ {
+ name = "com.cognitect/transit-js";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "transit-js";
+ groupId = "com.cognitect";
+ sha512 = "6ca0978e633e41b45ff5a76df79099ba7c4900a8ca9f6acd2a903e4ab10a1ec0c83d4127009df9dac1337debaba01f7ff1d5cced1c2159c05ef94845f73f0623";
+ version = "0.8.846";
+ };
+ }
+
+ {
+ name = "org.mozilla/rhino";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "rhino";
+ groupId = "org.mozilla";
+ sha512 = "466e7a76303ea191802b5e7adb3dff64c1d6283a25ce87447296b693b87b166f4cdd191ef7dc130a5739bfa0e4a81b08550f607c84eec167406d9be2225562dc";
+ version = "1.7R5";
+ };
+ }
+
+ {
+ name = "org.clojure/google-closure-library-third-party";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "google-closure-library-third-party";
+ groupId = "org.clojure";
+ sha512 = "57fa84fbbca3eb9e612d2842e4476b74f64d13dd076ffca6c9d9e15c4ca8a2f2c56cc19307bcad0ab5b4f9cb0c3e7900ccc845bd570ebc92e2633885ab621f35";
+ version = "0.0-20170809-b9c14c6b";
+ };
+ }
+
+ {
+ name = "com.google.javascript/closure-compiler-externs";
+ path = pkgs.fetchMavenArtifact {
+ inherit repos;
+ artifactId = "closure-compiler-externs";
+ groupId = "com.google.javascript";
+ sha512 = "1a47c8559144095c0b23a8e40acd7185625cea5a4c103eb75fbacd32d5809d087bfb60aaf57066329649c6017ec5f993756024e767a5b8f84926371ba6183a82";
+ version = "v20180805";
+ };
+ }
+
+ {
name = "org.javassist/javassist";
path = pkgs.fetchMavenArtifact {
inherit repos;
@@ -307,8 +306,8 @@
inherit repos;
artifactId = "core.rrb-vector";
groupId = "org.clojure";
- sha512 = "5f737bf3ca3acf567b2b5c14b5761c8c38e94e1f6168f8cba9f46d2ae41334ae3d68d2c00663827a6214094d96b9767f6803f66ab44b0012c6f2e3c2997b1796";
- version = "0.0.13";
+ sha512 = "4e410c4a90a869e98d5d69a8a6dd6427e9d77b70e1a2b54cf24baf23389f22e7a208375783c2fdc5c1a5acfb8511a5c5ed57ad1a946d5bffd203f453d90a6155";
+ version = "0.0.14";
};
}
@@ -351,8 +350,8 @@
inherit repos;
artifactId = "test.check";
groupId = "org.clojure";
- sha512 = "bf57571a9d31d50cf15b38134f4d7c34d03eb458bc62b30c7a1dbf233e300c67f1fda6673dbd1584a0497cf8875f972e6697e7f13d0c3e70e4254697b1b75cc6";
- version = "0.10.0-alpha3";
+ sha512 = "60fa3bd38c32cf193c573f1bd47c6abd7e7a5bb2fc7f7f9f97aa9dcd54d5e2eab9e351f5f83b01bb96b32811a9f2f5ab384c6b7b7ebbb6c86d1ad4f2789351bf";
+ version = "0.10.0-alpha4";
};
}
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/mkdir_promise.patch b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/mkdir_promise.patch
new file mode 100644
index 00000000000..e9504bb5c1a
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/mkdir_promise.patch
@@ -0,0 +1,20 @@
+diff --git a/vendor/nexe/exe.js b/vendor/nexe/exe.js
+index 21e78bb..ecbfca4 100644
+--- a/vendor/nexe/exe.js
++++ b/vendor/nexe/exe.js
+@@ -254,9 +254,7 @@ return initModule._compile(${JSON.stringify(source)}, process.execPath);
+ */
+
+ function makeOutputDirectory(next) {
+- mkdirp(path.dirname(options.output), function() {
+- next();
+- });
++ mkdirp(path.dirname(options.output)).then(() => next());
+ },
+
+ /**
+@@ -1107,4 +1105,3 @@ exports.package = function(path, options) {
+
+ return obj;
+ }
+-
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/no_mangle.patch b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/no_mangle.patch
new file mode 100644
index 00000000000..9af22341195
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/no_mangle.patch
@@ -0,0 +1,13 @@
+diff --git a/scripts/bundle.js b/scripts/bundle.js
+index 16425a4..0d510fc 100644
+--- a/scripts/bundle.js
++++ b/scripts/bundle.js
+@@ -73,6 +73,8 @@ const plugins = [
+ if (!isDevBuild) {
+ plugins.push(
+ babelMinify({
++ evaluate: false,
++ mangle: false,
+ comments: false,
+ removeConsole: true,
+ removeDebugger: true,
diff --git a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/package.json b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/package.json
index cfffdc890d1..6ab3f9616c7 100644
--- a/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/package.json
+++ b/nixpkgs/pkgs/development/interpreters/clojurescript/lumo/package.json
@@ -1,40 +1,49 @@
{
"name": "lumo-build-deps",
- "version": "1.9.0",
+ "version": "1.10.1",
"dependencies": {
"@babel/core": "^7.1.5",
- "@babel/plugin-external-helpers": "7.0.0",
+ "@babel/plugin-external-helpers": "7.8.3",
"@babel/plugin-proposal-class-properties": "^7.1.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.1.0",
"@babel/preset-env": "^7.1.5",
- "@babel/preset-stage-2": "7.0.0",
+ "@babel/preset-stage-2": "7.8.3",
"@babel/runtime": "^7.1.5",
+ "async": "^3.1.1",
"async-retry": "^1.2.3",
"babel-core": "^7.0.0-bridge.0",
- "babel-eslint": "10.0.1",
- "babel-jest": "^23.6.0",
+ "babel-eslint": "10.0.3",
+ "babel-jest": "^25.1.0",
"babel-loader": "^8.0.4",
"babel-plugin-transform-flow-strip-types": "6.22.0",
- "chalk": "^2.4.1",
- "cross-env": "5.2.0",
+ "browserify": "^16.2.3",
+ "chalk": "^3.0.0",
+ "colors": "^1.3.3",
+ "cross-env": "7.0.0",
"death": "^1.1.0",
- "flow-bin": "0.85.0",
+ "flow-bin": "0.118.0",
"google-closure-compiler-js": "20170910.0.1",
+ "glob": "^7.1.3",
+ "gunzip-maybe": "^1.4.1",
+ "insert-module-globals": "^7.2.0",
"jszip": "github:anmonteiro/jszip#patch-1",
- "nexe": "3.0.0-beta.7",
+ "mkdirp": "^1.0.3",
+ "ncp": "^2.0.0",
"node-fetch": "^2.2.1",
- "paredit.js": "0.3.4",
+ "paredit.js": "0.3.6",
"posix-getopt": "github:anmonteiro/node-getopt#master",
- "prettier": "1.15.1",
+ "prettier": "1.19.1",
"progress": "^2.0.0",
- "read-pkg": "^4.0.1",
- "rollup": "0.67.0",
- "rollup-plugin-babel": "4.0.3",
- "rollup-plugin-babel-minify": "6.1.1",
- "rollup-plugin-commonjs": "9.2.0",
- "rollup-plugin-node-resolve": "3.4.0",
- "rollup-plugin-replace": "2.1.0",
+ "read-pkg": "^5.2.0",
+ "request": "^2.88.0",
+ "rollup": "^1.9.0",
+ "rollup-plugin-babel": "^4.3.2",
+ "rollup-plugin-babel-minify": "^9.1.1",
+ "rollup-plugin-commonjs": "^10.0.0",
+ "rollup-plugin-node-resolve": "^5.0.0",
+ "rollup-plugin-replace": "^2.1.1",
+ "tar-stream": "^2.0.1",
"webpack": "^4.25.1",
"webpack-cli": "^3.2.3",
"which-promise": "^1.0.0"
diff --git a/nixpkgs/pkgs/development/interpreters/dart/default.nix b/nixpkgs/pkgs/development/interpreters/dart/default.nix
index 02ac6bfbcde..cff1885e279 100644
--- a/nixpkgs/pkgs/development/interpreters/dart/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/dart/default.nix
@@ -1,50 +1,59 @@
-{ stdenv, fetchurl, unzip, version ? "2.0.0" }:
+{ stdenv, fetchurl, unzip, version ? "2.7.1" }:
let
sources = let
base = "https://storage.googleapis.com/dart-archive/channels";
- stable = "${base}/stable/release";
- dev = "${base}/dev/release";
+ stable_version = "stable";
+ dev_version = "dev";
+ x86_64 = "x64";
+ i686 = "ia32";
+ aarch64 = "arm64";
in {
- "1.16.1-x86_64-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-x64-release.zip";
- sha256 = "01cbnc8hd2wwprmivppmzvld9ps644k16wpgqv31h1596l5p82n2";
- };
- "1.16.1-i686-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-ia32-release.zip";
- sha256 = "0jfwzc3jbk4n5j9ka59s9bkb25l5g85fl1nf676mvj36swcfykx3";
- };
"1.24.3-x86_64-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-x64-release.zip";
- sha256 = "e323c97c35e6bc5d955babfe2e235a5484a82bb1e4870fa24562c8b9b800559b";
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
+ sha256 = "16sm02wbkj328ni0z1z4n4msi12lb8ijxzmbbfamvg766mycj8z3";
};
"1.24.3-i686-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-ia32-release.zip";
- sha256 = "d67b8f8f9186e7d460320e6bce25ab343c014b6af4b2f61369ee83755d4da528";
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
+ sha256 = "0a559mfpb0zfd49zdcpld95h2g1lmcjwwsqf69hd9rw6j67qyyyn";
+ };
+ "1.24.3-aarch64-linux" = fetchurl {
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
+ sha256 = "1p5bn04gr91chcszgmw5ng8mlzgwsrdr2v7k7ppwr1slkx97fsrh";
};
- "2.0.0-x86_64-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-x64-release.zip";
- sha256 = "4014a1e8755d2d32cc1573b731a4a53acdf6dfca3e26ee437f63fe768501d336";
+ "2.7.1-x86_64-linux" = fetchurl {
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
+ sha256 = "1zjd9hxxg1dsyzkzgqjvl933kprf8h143z5qi4mj1iczxv7zp27a";
};
- "2.0.0-i686-linux" = fetchurl {
- url = "${stable}/${version}/sdk/dartsdk-linux-ia32-release.zip";
- sha256 = "3164a9de70bf11ab5b20af0d51c8b3303f2dce584604dce33bea0040bdc0bbba";
+ "2.7.1-i686-linux" = fetchurl {
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
+ sha256 = "0cggr1jbhzahmazlhba0vw2chz9zxd98jgk6zxvxdnw5hvkx8si1";
};
- "2.0.0-dev.26.0-x86_64-linux" = fetchurl {
- url = "${dev}/${version}/sdk/dartsdk-linux-x64-release.zip";
- sha256 = "18360489a7914d5df09b34934393e16c7627ba673c1e9ab5cfd11cd1d58fd7df";
+ "2.7.1-aarch64-linux" = fetchurl {
+ url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
+ sha256 = "0m4qlc3zy87habr61npykvpclggn5k4hadl59v2b0ymvxa4h5zfh";
};
- "2.0.0-dev.26.0-i686-linux" = fetchurl {
- url = "${dev}/${version}/sdk/dartsdk-linux-ia32-release.zip";
- sha256 = "83ba8b64c76f48d8de4e0eb887e49b7960053f570d27e7ea438cc0bac789955e";
+ "2.8.0-dev.10.0-x86_64-linux" = fetchurl {
+ url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
+ sha256 = "17x0q94zampm99dd2sn6q1644lfwcl0ig2rdlmfzd9i4llj2ddbl";
+ };
+ "2.8.0-dev.10.0-i686-linux" = fetchurl {
+ url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
+ sha256 = "0hmkg4jrffzh8x2mxn8nbf7dl7k0v2vacbmxgpsl382vw9wwj96j";
+ };
+ "2.8.0-dev.10.0-aarch64-linux" = fetchurl {
+ url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
+ sha256 = "185ipcmr9h76g44kzlj5pyj99cljlap82rhd1c2larfklyj5ryvv";
};
};
in
+with stdenv.lib;
+
stdenv.mkDerivation {
pname = "dart";
@@ -65,19 +74,20 @@ stdenv.mkDerivation {
$out/bin/dart
'';
- libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.cc ];
+ libPath = makeLibraryPath [ stdenv.cc.cc ];
dontStrip = true;
meta = {
- platforms = [ "i686-linux" "x86_64-linux" ];
homepage = https://www.dartlang.org/;
+ maintainers = with maintainers; [ grburst ];
description = "Scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps";
longDescription = ''
Dart is a class-based, single inheritance, object-oriented language
with C-style syntax. It offers compilation to JavaScript, interfaces,
mixins, abstract classes, reified generics, and optional typing.
'';
- license = stdenv.lib.licenses.bsd3;
+ platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
+ license = licenses.bsd3;
};
}
diff --git a/nixpkgs/pkgs/development/interpreters/dhall/build-dhall-package.nix b/nixpkgs/pkgs/development/interpreters/dhall/build-dhall-package.nix
new file mode 100644
index 00000000000..739dc9b3d52
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/dhall/build-dhall-package.nix
@@ -0,0 +1,83 @@
+{ haskell, haskellPackages, lib, lndir, runCommand, writeText }:
+
+{ name
+
+ # Expressions to add to the cache before interpreting the code
+, dependencies ? []
+
+ # A Dhall expression
+ #
+ # Carefully note that the following expression must be devoid of uncached HTTP
+ # imports. This is because the expression will be evaluated using an
+ # interpreter with HTTP support disabled, so all HTTP imports have to be
+ # protected by an integrity check that can be satisfied via cached
+ # dependencies.
+ #
+ # You can add a dependency to the cache using the preceding `dependencies`
+ # option
+, code
+
+ # `buildDhallPackage` can include both a "source distribution" in
+ # `source.dhall` and a "binary distribution" in `binary.dhall`:
+ #
+ # * `source.dhall` is a dependency-free αβ-normalized Dhall expression
+ #
+ # * `binary.dhall` is an expression of the form: `missing sha256:${HASH}`
+ #
+ # This expression requires you to install the cache product located at
+ # `.cache/dhall/1220${HASH}` to successfully resolve
+ #
+ # By default, `buildDhallPackage` only includes "binary.dhall" to conserve
+ # space within the Nix store, but if you set the following `source` option to
+ # `true` then the package will also include `source.dhall`.
+, source ? false
+}:
+
+let
+ # `buildDhallPackage` requires version 1.25.0 or newer of the Haskell
+ # interpreter for Dhall. Given that the default version is 1.24.0 we choose
+ # the latest available version instead until the default is upgraded.
+ #
+ # HTTP support is disabled in order to force that HTTP dependencies are built
+ # using Nix instead of using Dhall's support for HTTP imports.
+ dhall =
+ haskell.lib.justStaticExecutables
+ (haskell.lib.appendConfigureFlag
+ haskellPackages.dhall_1_29_0
+ "-f-with-http"
+ );
+
+ file = writeText "${name}.dhall" code;
+
+ cache = ".cache";
+
+ cacheDhall = "${cache}/dhall";
+
+ sourceFile = "source.dhall";
+
+in
+ runCommand name { inherit dependencies; } ''
+ set -eu
+
+ mkdir -p ${cacheDhall}
+
+ for dependency in $dependencies; do
+ ${lndir}/bin/lndir -silent $dependency/${cacheDhall} ${cacheDhall}
+ done
+
+ export XDG_CACHE_HOME=$PWD/${cache}
+
+ mkdir -p $out/${cacheDhall}
+
+ ${dhall}/bin/dhall --alpha --file '${file}' > $out/${sourceFile}
+
+ SHA_HASH=$(${dhall}/bin/dhall hash <<< $out/${sourceFile})
+
+ HASH_FILE="''${SHA_HASH/sha256:/1220}"
+
+ ${dhall}/bin/dhall encode --file $out/${sourceFile} > $out/${cacheDhall}/$HASH_FILE
+
+ echo "missing $SHA_HASH" > $out/binary.dhall
+
+ ${lib.optionalString (!source) "rm $out/${sourceFile}"}
+ ''
diff --git a/nixpkgs/pkgs/development/interpreters/dhall/default.nix b/nixpkgs/pkgs/development/interpreters/dhall/default.nix
deleted file mode 100644
index 8e1df36e412..00000000000
--- a/nixpkgs/pkgs/development/interpreters/dhall/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ haskell, haskellPackages, stdenvNoCC }:
-
-let
- static = haskell.lib.justStaticExecutables haskellPackages.dhall;
-
-in static.overrideAttrs (old: {
- passthru = old.passthru or {} // {
- prelude = stdenvNoCC.mkDerivation {
- name = "dhall-prelude";
- inherit (old) src;
- phases = [ "unpackPhase" "installPhase" ];
- installPhase = ''
- mkdir $out
- cp -r Prelude/* $out/
- '';
- };
- };
-})
diff --git a/nixpkgs/pkgs/development/interpreters/elixir/1.10.nix b/nixpkgs/pkgs/development/interpreters/elixir/1.10.nix
index f9e1451354d..afab770da35 100644
--- a/nixpkgs/pkgs/development/interpreters/elixir/1.10.nix
+++ b/nixpkgs/pkgs/development/interpreters/elixir/1.10.nix
@@ -3,7 +3,7 @@
# How to obtain `sha256`:
# nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz
mkDerivation {
- version = "1.10.0";
- sha256 = "1fz22c2jqqm2jvzxar11bh1djg3kqdn5rbxdddlz0cv6mfz7hvgv";
+ version = "1.10.2";
+ sha256 = "04yi1hljq7ii9flh6pmb5411z7q1bdq9f9sq8323k9hm1f5jwkx6";
minimumOTPVersion = "21";
}
diff --git a/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix b/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
index a1186557101..571f39203f8 100644
--- a/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
+++ b/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
@@ -73,6 +73,6 @@ in
license = licenses.epl10;
platforms = platforms.unix;
- maintainers = with maintainers; [ the-kenny havvy couchemar ankhers ];
+ maintainers = with maintainers; [ the-kenny havvy couchemar ankhers filalex77 ];
};
})
diff --git a/nixpkgs/pkgs/development/interpreters/evcxr/default.nix b/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
index 168b012efcc..fa8050a21ff 100644
--- a/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
sha256 = "0vkcis06gwsqfwvrl8xcf74mfcs6j77b9fhcz5rrh77mwl7ixsdc";
};
- cargoSha256 = "04wffj2y9pqyk0x3y6ghp06pggmxnk2h245iabqq0mpwx36fd8b6";
+ cargoSha256 = "0pamwqhw3sj4anqc1112l5cayhqzibdhqjc28apfrkf2m63cclzi";
nativeBuildInputs = [ pkgconfig makeWrapper cmake ];
buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
diff --git a/nixpkgs/pkgs/development/interpreters/groovy/default.nix b/nixpkgs/pkgs/development/interpreters/groovy/default.nix
index 67d9ecf9c61..e1d404a6b15 100644
--- a/nixpkgs/pkgs/development/interpreters/groovy/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/groovy/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "groovy";
- version = "2.5.9";
+ version = "3.0.0";
src = fetchurl {
url = "http://dl.bintray.com/groovy/maven/apache-groovy-binary-${version}.zip";
- sha256 = "16xq8mz7270kmiq4xb0g52y7ik1bbl2nb8aaz9zw8a9h38rdr9zy";
+ sha256 = "10nn04hfky4x75nss33vvslw958pjvhw35lcfb3lxvaifqg23cpl";
};
buildInputs = [ unzip makeWrapper ];
diff --git a/nixpkgs/pkgs/development/interpreters/guile/default.nix b/nixpkgs/pkgs/development/interpreters/guile/default.nix
index fce94ecc846..68df200835f 100644
--- a/nixpkgs/pkgs/development/interpreters/guile/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/guile/default.nix
@@ -12,11 +12,11 @@
(rec {
name = "guile-${version}";
- version = "2.2.6";
+ version = "2.2.7";
src = fetchurl {
url = "mirror://gnu/guile/${name}.tar.xz";
- sha256 = "1269ymxm56j1z1lvq1y42rm961f2n7rinm3k6l00p9k52hrpcddk";
+ sha256 = "013mydzhfswqci6xmyc1ajzd59pfbdak15i0b090nhr9bzm7dxyd";
};
outputs = [ "out" "dev" "info" ];
@@ -93,7 +93,7 @@
meta = {
description = "Embeddable Scheme implementation";
- homepage = https://www.gnu.org/software/guile/;
+ homepage = "https://www.gnu.org/software/guile/";
license = stdenv.lib.licenses.lgpl3Plus;
maintainers = with stdenv.lib.maintainers; [ ludo lovek323 vrthra ];
platforms = stdenv.lib.platforms.all;
diff --git a/nixpkgs/pkgs/development/interpreters/icon-lang/default.nix b/nixpkgs/pkgs/development/interpreters/icon-lang/default.nix
index 0d3fe100329..d243ae9bc58 100644
--- a/nixpkgs/pkgs/development/interpreters/icon-lang/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/icon-lang/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, libX11, libXt , withGraphics ? true }:
+{ stdenv, fetchFromGitHub, fetchpatch, libX11, libXt, withGraphics ? true }:
stdenv.mkDerivation rec {
pname = "icon-lang";
@@ -12,6 +12,18 @@ stdenv.mkDerivation rec {
buildInputs = stdenv.lib.optionals withGraphics [ libX11 libXt ];
+ patches = [
+ # Patch on git master, likely won't be necessary in future release
+ (fetchpatch {
+ url = "https://github.com/gtownsend/icon/commit/bfc4a6004d0d3984c8066289b8d8e563640c4ddd.patch";
+ sha256 = "1pqapjghk10rb73a1mfflki2wipjy4kvnravhmrilkqzb9hd6v8m";
+ excludes = [
+ "doc/relnotes.htm"
+ "src/h/version.h"
+ ];
+ })
+ ];
+
configurePhase =
let
_name = if stdenv.isDarwin then "macintosh" else "linux";
diff --git a/nixpkgs/pkgs/development/interpreters/janet/default.nix b/nixpkgs/pkgs/development/interpreters/janet/default.nix
index 3138d1ba3d7..0fc6928c1ab 100644
--- a/nixpkgs/pkgs/development/interpreters/janet/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/janet/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "janet";
- version = "1.6.0";
+ version = "1.7.0";
src = fetchFromGitHub {
owner = "janet-lang";
repo = pname;
rev = "v${version}";
- sha256 = "044pqwbpdyn7afij68wxks8drb84kmj31c8ziqsfm5msi2al0rw2";
+ sha256 = "1z7r4ddgwxgxy1pp36p2wchcmzjqfyki3a4kicnr23ldflqv9ycc";
};
nativeBuildInputs = [ meson ninja ];
diff --git a/nixpkgs/pkgs/development/interpreters/joker/default.nix b/nixpkgs/pkgs/development/interpreters/joker/default.nix
index df8ad2fbe4d..ed82f76eec2 100644
--- a/nixpkgs/pkgs/development/interpreters/joker/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/joker/default.nix
@@ -2,13 +2,13 @@
buildGoModule rec {
pname = "joker";
- version = "0.14.0";
+ version = "0.14.2";
src = fetchFromGitHub {
rev = "v${version}";
owner = "candid82";
repo = "joker";
- sha256 = "1b38alajxs89a9x3f3ldk1nlynp6j90qhl1m2c6561rsm41sqfz0";
+ sha256 = "1wi80sr8h9fwh4xipff0y6qdzrliwyk2w1bmi33ncykxd9r2g7nk";
};
modSha256 = "0i16vf7n1xfz5kp9w3fvyc9y9wgz4h396glgpdaznpxjr12rb43j";
@@ -17,8 +17,10 @@ buildGoModule rec {
go generate ./...
'';
+ subPackages = [ "." ];
+
meta = with stdenv.lib; {
- homepage = https://github.com/candid82/joker;
+ homepage = "https://github.com/candid82/joker";
description = "A small Clojure interpreter and linter written in Go";
license = licenses.epl10;
platforms = platforms.all;
diff --git a/nixpkgs/pkgs/development/interpreters/jruby/default.nix b/nixpkgs/pkgs/development/interpreters/jruby/default.nix
index 4e3f92d7cdc..3784b6ab282 100644
--- a/nixpkgs/pkgs/development/interpreters/jruby/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/jruby/default.nix
@@ -6,11 +6,11 @@ rubyVersion = callPackage ../ruby/ruby-version.nix {} "2" "3" "3" "";
jruby = stdenv.mkDerivation rec {
pname = "jruby";
- version = "9.2.9.0";
+ version = "9.2.11.0";
src = fetchurl {
url = "https://s3.amazonaws.com/jruby.org/downloads/${version}/jruby-bin-${version}.tar.gz";
- sha256 = "04grdf57c1dgragm17yyjk69ak8mwiwfc1vjzskzcaag3fwgplyf";
+ sha256 = "01yzpasnpqqm0vfc0ki8vkxbzijjfws135jw8k0r50b5lahjvs4a";
};
buildInputs = [ makeWrapper ];
@@ -48,7 +48,7 @@ jruby = stdenv.mkDerivation rec {
meta = {
description = "Ruby interpreter written in Java";
- homepage = http://jruby.org/;
+ homepage = "http://jruby.org/";
license = with stdenv.lib.licenses; [ cpl10 gpl2 lgpl21 ];
platforms = stdenv.lib.platforms.unix;
};
diff --git a/nixpkgs/pkgs/development/interpreters/jython/default.nix b/nixpkgs/pkgs/development/interpreters/jython/default.nix
index 84941f9a6fa..35af365c1f7 100644
--- a/nixpkgs/pkgs/development/interpreters/jython/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/jython/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "jython";
- version = "2.7.2b2";
+ version = "2.7.2b3";
src = fetchurl {
url = "http://search.maven.org/remotecontent?filepath=org/python/jython-standalone/${version}/jython-standalone-${version}.jar";
- sha256 = "0mmrrydr94q2siwjynkw1gw677navmcvjvbi1jpdbp6idfx0jh6b";
+ sha256 = "142285hd9mx0nx5zw0jvkpqkb4kbhgyyy52p5bj061ya8bg5jizy";
};
buildInputs = [ makeWrapper ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Python interpreter written in Java";
- homepage = https://jython.org/;
+ homepage = "https://jython.org/";
license = stdenv.lib.licenses.psfl;
platforms = jre.meta.platforms;
};
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/1.3.nix b/nixpkgs/pkgs/development/interpreters/lfe/1.3.nix
new file mode 100644
index 00000000000..52df5c02544
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/lfe/1.3.nix
@@ -0,0 +1,43 @@
+{ fetchpatch, mkDerivation }:
+
+let
+ _fetchpatch =
+ { rev, sha256 }:
+ fetchpatch {
+ url = "https://github.com/rvirding/lfe/commit/${rev}.patch";
+ inherit sha256;
+ };
+ fetchPatches = map _fetchpatch;
+in
+
+mkDerivation {
+ version = "1.3";
+ sha256 = "0pgwi0h0d34353m39jin8dxw4yykgfcg90k6pc4qkjyrg40hh4l6";
+ maximumOTPVersion = "21";
+ patches = fetchPatches [
+ {
+ rev = "b457e5d521bb35008e6049fab31b4073cc10d583";
+ sha256 = "1zrq1b3291xhb0jsirgb5s8hacq5xvz7xidsp29aqcnpazdvivdc";
+ }
+ {
+ rev = "5fe9f37741b7d53bd43109fd3435e1437f124a0d";
+ sha256 = "1anqlcbih52lc0wynf58r67w1jhn264lz49rczwgh19pqg92dvqf";
+ }
+ {
+ rev = "b8f3e06511cb6805cf3a904c1589b27f33f3958d";
+ sha256 = "1zqafc0asm9m6cq7r0brvfawv69fqggy1phif3zknjmpicf25pqf";
+ }
+ {
+ rev = "40c239a608460e55563edb68c1b6faca57518b54";
+ sha256 = "03av5115jwyammw337xzy50l6api5h0wbwwda5vzw0w10zwb2z8y";
+ }
+ {
+ rev = "5faa7106419263689bfc0bc08a7451ccb1fba718";
+ sha256 = "0ml5yh5b3rn4ympks4bpx409hkra0i79zvq80azk0kmbjd869fxp";
+ }
+ {
+ rev = "9ff978693babcfd043d741b5c6940920b8315892";
+ sha256 = "04968dmp527wbkdv7dqpaj3nsyjls93whc1b5hx73b39dvl3n3y1";
+ }
+ ];
+}
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/dedup-ebins.patch b/nixpkgs/pkgs/development/interpreters/lfe/dedup-ebins.patch
new file mode 100644
index 00000000000..44e3733c416
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/lfe/dedup-ebins.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 59f2c06..5ee8f6e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -60,7 +60,7 @@ ESRCS = $(notdir $(wildcard $(SRCDIR)/*.erl))
+ XSRCS = $(notdir $(wildcard $(SRCDIR)/*.xrl))
+ YSRCS = $(notdir $(wildcard $(SRCDIR)/*.yrl))
+ LSRCS = $(notdir $(wildcard $(LSRCDIR)/*.lfe))
+-EBINS = $(ESRCS:.erl=.beam) $(XSRCS:.xrl=.beam) $(YSRCS:.yrl=.beam)
++EBINS = $(sort $(ESRCS:.erl=.beam) $(XSRCS:.xrl=.beam) $(YSRCS:.yrl=.beam))
+ LBINS = $(LSRCS:.lfe=.beam)
+
+ CSRCS = $(notdir $(wildcard $(CSRCDIR)/*.c))
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix b/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
index 6e74229e1e8..ba42c2d59d5 100644
--- a/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
+++ b/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
@@ -6,10 +6,13 @@
, sha256 ? null
, rev ? version
, src ? fetchFromGitHub { inherit rev sha256; owner = "rvirding"; repo = "lfe"; }
+, patches ? []
}:
let
- inherit (stdenv.lib) getVersion versionAtLeast versions;
+ inherit (stdenv.lib)
+ assertMsg makeBinPath optionalString
+ getVersion versionAtLeast versionOlder versions;
mainVersion = versions.major (getVersion erlang);
@@ -25,7 +28,9 @@ let
};
in
-assert versionAtLeast maximumOTPVersion mainVersion;
+assert (assertMsg (versionAtLeast maximumOTPVersion mainVersion)) ''
+ LFE ${version} is supported on OTP <=${maximumOTPVersion}, not ${mainVersion}.
+'';
buildRebar3 {
name = baseName;
@@ -34,13 +39,15 @@ buildRebar3 {
buildInputs = [ erlang makeWrapper ];
beamDeps = [ proper ];
- patches = [ ./no-test-deps.patch ];
+ patches = [ ./no-test-deps.patch ./dedup-ebins.patch ] ++ patches;
doCheck = true;
checkTarget = "travis";
+ makeFlags = [ "-e" "MANDB=''" "PREFIX=$$out"];
+
# These installPhase tricks are based on Elixir's Makefile.
# TODO: Make, upload, and apply a patch.
- installPhase = ''
+ installPhase = optionalString (versionOlder version "1.3") ''
local libdir=$out/lib/lfe
local ebindir=$libdir/ebin
local bindir=$libdir/bin
@@ -63,7 +70,7 @@ buildRebar3 {
# Add some stuff to PATH so the scripts can run without problems.
for f in $out/bin/*; do
wrapProgram $f \
- --prefix PATH ":" "${stdenv.lib.makeBinPath [ erlang coreutils bash ]}:$out/bin"
+ --prefix PATH ":" "${makeBinPath [ erlang coreutils bash ]}:$out/bin"
substituteInPlace $f --replace "/usr/bin/env" "${coreutils}/bin/env"
done
'';
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/build-lua-package.nix b/nixpkgs/pkgs/development/interpreters/lua-5/build-lua-package.nix
index be7aa5fc09d..98a98c0dd34 100644
--- a/nixpkgs/pkgs/development/interpreters/lua-5/build-lua-package.nix
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/build-lua-package.nix
@@ -56,7 +56,7 @@ name ? "${attrs.pname}-${attrs.version}"
# Appended to the generated luarocks config
, extraConfig ? ""
# Inserted into the generated luarocks config in the "variables" table
-, extraVariables ? ""
+, extraVariables ? {}
# The two above arguments have access to builder variables -- e.g. to $out
# relative to srcRoot, path to the rockspec to use when using rocks
@@ -77,7 +77,10 @@ let
# luarocks only looks for rockspecs in the default/system tree instead of all
# configured trees)
luarocks_config = "luarocks-config.lua";
- luarocks_content = ''
+ luarocks_content = let
+ extraVariablesStr = lib.concatStringsSep "\n "
+ (lib.mapAttrsToList (k: v: "${k}='${v}';") extraVariables);
+ in ''
local_cache = ""
-- To prevent collisions when creating environments, we install the rock
-- files into per-package subdirectories
@@ -105,8 +108,8 @@ let
-- Some needed machinery to handle multiple-output external dependencies,
-- as per https://github.com/luarocks/luarocks/issues/766
${lib.optionalString (lib.length depVariables > 0) ''
- ${lib.concatStringsSep "\n " depVariables}''}
- ${extraVariables}
+ ${lib.concatStringsSep "\n " depVariables}''}
+ ${extraVariablesStr}
}
${extraConfig}
'';
@@ -139,7 +142,7 @@ let
externalDeps' = lib.filter (dep: !lib.isDerivation dep) externalDeps;
in
toLuaModule ( lua.stdenv.mkDerivation (
-builtins.removeAttrs attrs ["disabled" "checkInputs" "externalDeps"] // {
+builtins.removeAttrs attrs ["disabled" "checkInputs" "externalDeps" "extraVariables"] // {
name = namePrefix + name;
@@ -199,8 +202,6 @@ builtins.removeAttrs attrs ["disabled" "checkInputs" "externalDeps"] // {
LUAROCKS="$LUAROCKS --verbose"
fi
- patchShebangs .
-
runHook postBuild
'';
@@ -229,6 +230,13 @@ builtins.removeAttrs attrs ["disabled" "checkInputs" "externalDeps"] // {
runHook postInstall
'';
+
+ checkPhase = attrs.checkPhase or ''
+ runHook preCheck
+ $LUAROCKS test
+ runHook postCheck
+ '';
+
passthru = {
inherit lua; # The lua interpreter
inherit externalDeps;
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix b/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
index fb0021cb709..6fc2e53b961 100644
--- a/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
@@ -17,7 +17,7 @@ self = stdenv.mkDerivation rec {
version = "${luaversion}.${sourceVersion.patch}";
src = fetchurl {
- url = "https://www.lua.org/ftp/${pname}-${luaversion}.tar.gz";
+ url = "https://www.lua.org/ftp/${pname}-${version}.tar.gz";
sha256 = hash;
};
diff --git a/nixpkgs/pkgs/development/interpreters/luajit/default.nix b/nixpkgs/pkgs/development/interpreters/luajit/default.nix
index 5b776116447..08c0564847c 100644
--- a/nixpkgs/pkgs/development/interpreters/luajit/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/luajit/default.nix
@@ -7,9 +7,33 @@
, callPackage
, self
, packageOverrides ? (self: super: {})
+, enableFFI ? true
+, enableJIT ? true
+, enableJITDebugModule ? enableJIT
+, enable52Compat ? false
+, enableValgrindSupport ? false
+, valgrind ? null
+, enableGDBJITSupport ? false
+, enableAPICheck ? false
+, enableVMAssertions ? false
+, useSystemMalloc ? false
}:
+assert enableJITDebugModule -> enableJIT;
+assert enableGDBJITSupport -> enableJIT;
+assert enableValgrindSupport -> valgrind != null;
let
luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
+
+ XCFLAGS = with stdenv.lib;
+ optional (!enableFFI) "-DLUAJIT_DISABLE_FFI"
+ ++ optional (!enableJIT) "-DLUAJIT_DISABLE_JIT"
+ ++ optional enable52Compat "-DLUAJIT_ENABLE_LUA52COMPAT"
+ ++ optional useSystemMalloc "-DLUAJIT_USE_SYSMALLOC"
+ ++ optional enableValgrindSupport "-DLUAJIT_USE_VALGRIND"
+ ++ optional enableGDBJITSupport "-DLUAJIT_USE_GDBJIT"
+ ++ optional enableAPICheck "-DLUAJIT_USE_APICHECK"
+ ++ optional enableVMAssertions "-DLUAJIT_USE_ASSERT"
+ ;
in
stdenv.mkDerivation rec {
inherit name version;
@@ -22,27 +46,36 @@ stdenv.mkDerivation rec {
postPatch = ''
substituteInPlace Makefile --replace ldconfig :
+ if test -n "''${dontStrip-}"; then
+ # CCDEBUG must be non-empty or everything will be stripped, -g being
+ # passed by nixpkgs CC wrapper is insufficient on its own
+ substituteInPlace src/Makefile --replace "#CCDEBUG= -g" "CCDEBUG= -g"
+ fi
'';
configurePhase = false;
+ buildInputs = stdenv.lib.optional enableValgrindSupport valgrind;
+
+ buildFlags = [
+ "amalg" # Build highly optimized version
+ ];
makeFlags = [
"PREFIX=$(out)"
"DEFAULT_CC=cc"
"CROSS=${stdenv.cc.targetPrefix}"
# TODO: when pointer size differs, we would need e.g. -m32
"HOST_CC=${buildPackages.stdenv.cc}/bin/cc"
- ];
- buildFlags = [ "amalg" ]; # Build highly optimized version
+ ] ++ stdenv.lib.optional enableJITDebugModule "INSTALL_LJLIBD=$(INSTALL_LMOD)";
enableParallelBuilding = true;
+ NIX_CFLAGS_COMPILE = XCFLAGS;
postInstall = ''
- ( cd "$out/include"; ln -s luajit-*/* . )
- ln -s "$out"/bin/luajit-* "$out"/bin/lua
- ''
- + stdenv.lib.optionalString (!isStable) ''
- ln -s "$out"/bin/luajit-* "$out"/bin/luajit
- '';
+ ( cd "$out/include"; ln -s luajit-*/* . )
+ ln -s "$out"/bin/luajit-* "$out"/bin/lua
+ '' + stdenv.lib.optionalString (!isStable) ''
+ ln -s "$out"/bin/luajit-* "$out"/bin/luajit
+ '';
LuaPathSearchPaths = [
"lib/lua/${luaversion}/?.lua" "share/lua/${luaversion}/?.lua"
@@ -70,4 +103,3 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ thoughtpolice smironov vcunat andir ];
} // extraMeta;
}
-
diff --git a/nixpkgs/pkgs/development/interpreters/maude/default.nix b/nixpkgs/pkgs/development/interpreters/maude/default.nix
index e44209799a3..721cfe38865 100644
--- a/nixpkgs/pkgs/development/interpreters/maude/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/maude/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, unzip, makeWrapper , flex, bison, ncurses, buddy, tecla
-, libsigsegv, gmpxx, cln
+{ stdenv, fetchurl, unzip, makeWrapper, flex, bison, ncurses, buddy, tecla
+, libsigsegv, gmpxx, cln, yices
}:
let
- version = "2.7.1";
+ version = "3.0";
fullMaude = fetchurl {
- url = "http://maude.cs.illinois.edu/w/images/c/ca/Full-Maude-${version}.zip";
- sha256 = "0y4gn7n8vh24r24vckhpkd46hb5hqsbrm4w9zr6dz4paafq12fjc";
+ url = "http://maude.cs.illinois.edu/w/images/0/04/Full-Maude-${version}.zip";
+ sha256 = "0gf36wlkkl343vlxgryqdhxmgyn8z0cc2zayccd7ac3inmj1iayw";
};
in
@@ -18,12 +18,12 @@ stdenv.mkDerivation {
inherit version;
src = fetchurl {
- url = "http://maude.cs.illinois.edu/w/images/d/d8/Maude-${version}.tar.gz";
- sha256 = "0jskn5dm8vvbd3mlryjxdb6wfpkvyx174wk7ci9a31aylxzpr25i";
+ url = "http://maude.cs.illinois.edu/w/images/9/92/Maude-${version}.tar.gz";
+ sha256 = "0vhn3lsck6ji9skrgm67hqrn3k4f6y442q73jbw65qqznm321k5a";
};
buildInputs = [
- flex bison ncurses buddy tecla gmpxx libsigsegv makeWrapper unzip cln
+ flex bison ncurses buddy tecla gmpxx libsigsegv makeWrapper unzip cln yices
];
hardeningDisable = [ "stackprotector" ] ++
@@ -35,7 +35,6 @@ stdenv.mkDerivation {
TECLA_LIBS="-ltecla -lncursesw"
LIBS="-lcln"
CFLAGS="-O3" CXXFLAGS="-O3"
- --without-cvc4 # Our version is too new for Maude to cope.
)
'';
@@ -44,7 +43,7 @@ stdenv.mkDerivation {
postInstall = ''
for n in "$out/bin/"*; do wrapProgram "$n" --suffix MAUDE_LIB ':' "$out/share/maude"; done
unzip ${fullMaude}
- install -D -m 444 full-maude.maude $out/share/maude/full-maude.maude
+ install -D -m 444 full-maude3.maude $out/share/maude/full-maude.maude
'';
# bison -dv surface.yy -o surface.c
@@ -55,7 +54,7 @@ stdenv.mkDerivation {
meta = {
homepage = http://maude.cs.illinois.edu/;
description = "High-level specification language";
- license = stdenv.lib.licenses.gpl2;
+ license = stdenv.lib.licenses.gpl2Plus;
longDescription = ''
Maude is a high-performance reflective language and system
diff --git a/nixpkgs/pkgs/development/interpreters/metamath/default.nix b/nixpkgs/pkgs/development/interpreters/metamath/default.nix
index 2213ace8f57..42b95f341ba 100644
--- a/nixpkgs/pkgs/development/interpreters/metamath/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/metamath/default.nix
@@ -2,15 +2,15 @@
stdenv.mkDerivation {
pname = "metamath";
- version = "0.178";
+ version = "0.181";
buildInputs = [ autoreconfHook ];
src = fetchFromGitHub {
owner = "metamath";
repo = "metamath-exe";
- rev = "4f59d60aeb03f92aea3cc7ecf5a2c0fcf08900a5";
- sha256 = "0nrl4nzp6rm2sn365xyjf3g5l5fl58kca7rq08lqyz5gla0wgfcf";
+ rev = "67cbfa8468deb6f8ad5bedafc6399bee59064764";
+ sha256 = "1mk3g41qz26j38j68i9qmnl8khkd8jwrzj4vxkb855h4b819s000";
};
# the files necessary to build the DATA target are not in this distribution
diff --git a/nixpkgs/pkgs/development/interpreters/octave/default.nix b/nixpkgs/pkgs/development/interpreters/octave/default.nix
index eb9827969e1..b32d15b2a1f 100644
--- a/nixpkgs/pkgs/development/interpreters/octave/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/octave/default.nix
@@ -1,8 +1,54 @@
-{ stdenv, fetchurl, gfortran, readline, ncurses, perl, flex, texinfo, qhull
-, libsndfile, portaudio, libX11, graphicsmagick, pcre, pkgconfig, libGL, libGLU, fltk
-, fftw, fftwSinglePrec, zlib, curl, qrupdate, openblas, arpack, libwebp, gl2ps
-, qt ? null, qscintilla ? null, ghostscript ? null, llvm ? null, hdf5 ? null,glpk ? null
-, suitesparse ? null, gnuplot ? null, jdk ? null, python ? null, overridePlatforms ? null
+{ stdenv
+, fetchurl
+, gfortran
+, ncurses
+, perl
+, flex
+, texinfo
+, qhull
+, libsndfile
+, portaudio
+, libX11
+, graphicsmagick
+, pcre
+, pkgconfig
+, libGL
+, libGLU
+, fltk
+# Both are needed for discrete Fourier transform
+, fftw
+, fftwSinglePrec
+, zlib
+, curl
+, qrupdate
+, openblas
+, arpack
+, libwebp
+, gl2ps
+, ghostscript ? null
+, hdf5 ? null
+, glpk ? null
+, suitesparse ? null
+, gnuplot ? null
+# - Include support for GNU readline:
+, enableReadline ? true
+, readline ? null
+# - Build Java interface:
+, enableJava ? true
+, jdk ? null
+, python ? null
+, overridePlatforms ? null
+, sundials_2 ? null
+# - Build Octave Qt GUI:
+, enableQt ? false
+, qtbase ? null
+, qtsvg ? null
+, qtscript ? null
+, qscintilla ? null
+, qttools ? null
+# - JIT compiler for loops:
+, enableJIT ? false
+, llvm ? null
}:
let
@@ -18,35 +64,65 @@ let
in
stdenv.mkDerivation rec {
- version = "5.1.0";
+ version = "5.2.0";
pname = "octave";
+
src = fetchurl {
url = "mirror://gnu/octave/${pname}-${version}.tar.gz";
- sha256 = "15blrldzwyxma16rnd4n01gnsrriii0dwmyca6m7qz62r8j12sz3";
+ sha256 = "1qcmcpsq1lfka19fxzvxjwjhg113c39a9a0x8plkhvwdqyrn5sig";
};
- buildInputs = [ gfortran readline ncurses perl flex texinfo qhull
- graphicsmagick pcre pkgconfig fltk zlib curl openblas libsndfile fftw
- fftwSinglePrec portaudio qrupdate arpack libwebp gl2ps ]
- ++ (stdenv.lib.optional (qt != null) qt)
- ++ (stdenv.lib.optional (qscintilla != null) qscintilla)
- ++ (stdenv.lib.optional (ghostscript != null) ghostscript)
- ++ (stdenv.lib.optional (llvm != null) llvm)
- ++ (stdenv.lib.optional (hdf5 != null) hdf5)
- ++ (stdenv.lib.optional (glpk != null) glpk)
- ++ (stdenv.lib.optional (suitesparse != null) suitesparse)
- ++ (stdenv.lib.optional (jdk != null) jdk)
- ++ (stdenv.lib.optional (gnuplot != null) gnuplot)
- ++ (stdenv.lib.optional (python != null) python)
- ++ (stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ])
- ;
-
- # makeinfo is required by Octave at runtime to display help
- prePatch = ''
- substituteInPlace libinterp/corefcn/help.cc \
- --replace 'Vmakeinfo_program = "makeinfo"' \
- 'Vmakeinfo_program = "${texinfo}/bin/makeinfo"'
- '';
+ buildInputs = [
+ readline
+ ncurses
+ perl
+ flex
+ qhull
+ graphicsmagick
+ pcre
+ fltk
+ zlib
+ curl
+ openblas
+ libsndfile
+ fftw
+ fftwSinglePrec
+ portaudio
+ qrupdate
+ arpack
+ libwebp
+ gl2ps
+ ]
+ ++ (stdenv.lib.optionals enableQt [
+ qtbase
+ qtsvg
+ qscintilla
+ ])
+ ++ (stdenv.lib.optional (ghostscript != null) ghostscript)
+ ++ (stdenv.lib.optional (hdf5 != null) hdf5)
+ ++ (stdenv.lib.optional (glpk != null) glpk)
+ ++ (stdenv.lib.optional (suitesparse != null) suitesparse)
+ ++ (stdenv.lib.optional (enableJava) jdk)
+ ++ (stdenv.lib.optional (sundials_2 != null) sundials_2)
+ ++ (stdenv.lib.optional (gnuplot != null) gnuplot)
+ ++ (stdenv.lib.optional (python != null) python)
+ ++ (stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ])
+ ;
+ nativeBuildInputs = [
+ pkgconfig
+ gfortran
+ # Listed here as well because it's outputs are split
+ fftw
+ fftwSinglePrec
+ texinfo
+ ]
+ ++ (stdenv.lib.optional (sundials_2 != null) sundials_2)
+ ++ (stdenv.lib.optional enableJIT llvm)
+ ++ (stdenv.lib.optionals enableQt [
+ qtscript
+ qttools
+ ])
+ ;
doCheck = !stdenv.isDarwin;
@@ -55,15 +131,16 @@ stdenv.mkDerivation rec {
# See https://savannah.gnu.org/bugs/?50339
F77_INTEGER_8_FLAG = if openblas.blas64 then "-fdefault-integer-8" else "";
- configureFlags =
- [ "--enable-readline"
- "--enable-dl"
- "--with-blas=openblas"
- "--with-lapack=openblas"
- ]
- ++ stdenv.lib.optional openblas.blas64 "--enable-64"
- ++ stdenv.lib.optionals stdenv.isDarwin ["--with-x=no"]
- ;
+ configureFlags = [
+ "--with-blas=openblas"
+ "--with-lapack=openblas"
+ ]
+ ++ stdenv.lib.optionals enableReadline [ "--enable-readline" ]
+ ++ stdenv.lib.optionals openblas.blas64 [ "--enable-64" ]
+ ++ stdenv.lib.optionals stdenv.isDarwin [ "--with-x=no" ]
+ ++ stdenv.lib.optionals enableQt [ "--with-qt=5" ]
+ ++ stdenv.lib.optionals enableJIT [ "--enable-jit" ]
+ ;
# Keep a copy of the octave tests detailed results in the output
# derivation, because someone may care
@@ -77,10 +154,12 @@ stdenv.mkDerivation rec {
};
meta = {
- homepage = http://octave.org/;
+ homepage = "https://www.gnu.org/software/octave/";
license = stdenv.lib.licenses.gpl3Plus;
maintainers = with stdenv.lib.maintainers; [raskin];
description = "Scientific Pragramming Language";
+ # https://savannah.gnu.org/bugs/?func=detailitem&item_id=56425 is the best attempt to fix JIT
+ broken = enableJIT;
platforms = if overridePlatforms == null then
(with stdenv.lib.platforms; linux ++ darwin)
else overridePlatforms;
diff --git a/nixpkgs/pkgs/development/interpreters/octave/hg.nix b/nixpkgs/pkgs/development/interpreters/octave/hg.nix
deleted file mode 100644
index a34834af48c..00000000000
--- a/nixpkgs/pkgs/development/interpreters/octave/hg.nix
+++ /dev/null
@@ -1,75 +0,0 @@
-args@{ stdenv, openblas, ghostscript ? null, texinfo
-
- , # These are arguments that shouldn't be passed to the
- # octave package.
- texlive, tex ? texlive.combined.scheme-small
- , epstool, pstoedit, transfig
- , lib, fetchhg, callPackage
- , autoconf, automake, libtool
- , bison, librsvg, icoutils, gperf
-
- , # These are options that can be passed in addition to the ones
- # octave usually takes.
- # - rev is the HG revision. Use "tip" for the bleeding edge.
- # - docs can be set to false to skip building documentation.
- rev ? "23269", docs ? true
-
- , # All remaining arguments will be passed to the octave package.
- ...
- }:
-
-with stdenv.lib;
-let
- octaveArgs = removeAttrs args
- [ "texlive" "tex"
- "epstool" "pstoedit" "transfig"
- "lib" "fetchhg" "callPackage"
- "autoconf" "automake" "libtool"
- "bison" "librsvg" "icoutils" "gperf"
- "rev" "docs"
- ];
- octave = callPackage ./default.nix octaveArgs;
-
- # List of hashes for known HG revisions.
- sha256s = {
- "23269" = "87f560e873ad1454fdbcdd8aca65f9f0b1e605bdc00aebbdc4f9d862ca72ff1d";
- };
-
-in lib.overrideDerivation octave (attrs: rec {
- version = "4.3.0pre${rev}";
- name = "octave-${version}";
-
- src = fetchhg {
- url = http://www.octave.org/hg/octave;
- inherit rev;
-
- sha256 =
- if builtins.hasAttr rev sha256s
- then builtins.getAttr rev sha256s
- else null;
-
- fetchSubrepos = true;
- };
-
- # Octave's test for including this flag seems to be broken in 4.3.
- F77_INTEGER_8_FLAG = optional openblas.blas64 "-fdefault-integer-8";
-
- # This enables texinfo to find the files it needs.
- TEXINPUTS = ".:build-aux:${texinfo}/texmf-dist/tex/generic/epsf:";
-
- disableDocs = !docs || ghostscript == null;
-
- nativeBuildInputs = attrs.nativeBuildInputs
- ++ [ autoconf automake libtool bison librsvg icoutils gperf ]
- ++ optionals (!disableDocs) [ tex epstool pstoedit transfig ];
-
- # Run bootstrap before any other patches, as other patches may refer
- # to files that are generated by the bootstrap.
- prePatch = ''
- patchShebangs bootstrap
- ./bootstrap
- '' + attrs.prePatch;
-
- configureFlags = attrs.configureFlags ++
- optional disableDocs "--disable-docs";
-})
diff --git a/nixpkgs/pkgs/development/interpreters/perl/default.nix b/nixpkgs/pkgs/development/interpreters/perl/default.nix
index 751b9667a1f..8f8b63a261e 100644
--- a/nixpkgs/pkgs/development/interpreters/perl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/perl/default.nix
@@ -1,21 +1,9 @@
{ config, lib, stdenv, fetchurl, pkgs, buildPackages, callPackage
-, enableThreading ? stdenv ? glibc, coreutils, makeWrapper
+, enableThreading ? true, coreutils, makeWrapper
}:
with lib;
-# We can only compile perl with threading on platforms where we have a
-# real glibc in the stdenv.
-#
-# Instead of silently building an unthreaded perl if this is not the
-# case, we force callers to disableThreading explicitly, therefore
-# documenting the platforms where the perl is not threaded.
-#
-# In the case of stdenv linux boot stage1 it's not possible to use
-# threading because of the simpleness of the bootstrap glibc, so we
-# use enableThreading = false there.
-assert enableThreading -> (stdenv ? glibc);
-
let
libc = if stdenv.cc.libc or null != null then stdenv.cc.libc else "/usr";
diff --git a/nixpkgs/pkgs/development/interpreters/php/default.nix b/nixpkgs/pkgs/development/interpreters/php/default.nix
index 0fa605a4cac..497a1d87f55 100644
--- a/nixpkgs/pkgs/development/interpreters/php/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/default.nix
@@ -1,14 +1,15 @@
# pcre functionality is tested in nixos/tests/php-pcre.nix
-{ lib, stdenv, fetchurl, autoconf, bison, libtool, pkgconfig, re2c
-, libmysqlclient, libxml2, readline, zlib, curl, postgresql, gettext
-, openssl, pcre, pcre2, sqlite, config, libjpeg, libpng, freetype
-, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, unixODBC
+{ config, lib, stdenv, fetchurl
+, autoconf, automake, bison, file, flex, libtool, pkgconfig, re2c
+, libxml2, readline, zlib, curl, postgresql, gettext
+, openssl, pcre, pcre2, sqlite
+, libxslt, bzip2, icu, openldap, cyrus_sasl, unixODBC
, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2
-, libzip, valgrind, oniguruma
+, gd, freetype, libXpm, libjpeg, libpng, libwebp
+, libzip, valgrind, oniguruma, symlinkJoin, writeText
+, makeWrapper, callPackage
}:
-with lib;
-
let
generic =
{ version
@@ -17,10 +18,9 @@ let
, withSystemd ? config.php.systemd or stdenv.isLinux
, imapSupport ? config.php.imap or (!stdenv.isDarwin)
, ldapSupport ? config.php.ldap or true
- , mhashSupport ? config.php.mhash or false
, mysqlndSupport ? config.php.mysqlnd or true
- , mysqliSupport ? config.php.mysqli or true
- , pdo_mysqlSupport ? config.php.pdo_mysql or true
+ , mysqliSupport ? (config.php.mysqli or true) && (mysqlndSupport)
+ , pdo_mysqlSupport ? (config.php.pdo_mysql or true) && (mysqlndSupport)
, libxml2Support ? config.php.libxml2 or true
, apxs2Support ? config.php.apxs2 or (!stdenv.isDarwin)
, embedSupport ? config.php.embed or false
@@ -42,7 +42,6 @@ let
, intlSupport ? config.php.intl or true
, exifSupport ? config.php.exif or true
, xslSupport ? config.php.xsl or false
- , mcryptSupport ? (config.php.mcrypt or true) && (versionOlder version "7.2")
, bz2Support ? config.php.bz2 or false
, zipSupport ? config.php.zip or true
, ftpSupport ? config.php.ftp or true
@@ -50,236 +49,251 @@ let
, gmpSupport ? config.php.gmp or true
, ztsSupport ? (config.php.zts or false) || (apxs2Support)
, calendarSupport ? config.php.calendar or true
- , sodiumSupport ? (config.php.sodium or true) && (versionAtLeast version "7.2")
+ , sodiumSupport ? (config.php.sodium or true) && (lib.versionAtLeast version "7.2")
, tidySupport ? (config.php.tidy or false)
- , argon2Support ? (config.php.argon2 or true) && (versionAtLeast version "7.2")
- , libzipSupport ? (config.php.libzip or true) && (versionAtLeast version "7.2")
+ , argon2Support ? (config.php.argon2 or true) && (lib.versionAtLeast version "7.2")
+ , libzipSupport ? (config.php.libzip or true) && (lib.versionAtLeast version "7.2")
, phpdbgSupport ? config.php.phpdbg or true
, cgiSupport ? config.php.cgi or true
, cliSupport ? config.php.cli or true
, pharSupport ? config.php.phar or true
, xmlrpcSupport ? (config.php.xmlrpc or false) && (libxml2Support)
, cgotoSupport ? config.php.cgoto or false
- , valgrindSupport ? (config.php.valgrind or true) && (versionAtLeast version "7.2")
- }:
-
- let
- mysqlBuildInputs = optional (!mysqlndSupport) libmysqlclient;
- libmcrypt' = libmcrypt.override { disablePosixThreads = true; };
- in stdenv.mkDerivation {
+ , valgrindSupport ? (config.php.valgrind or true) && (lib.versionAtLeast version "7.2")
+ , ipv6Support ? config.php.ipv6 or true
+ , pearSupport ? (config.php.pear or true) && (libxml2Support)
+ }: stdenv.mkDerivation {
+ pname = "php";
- inherit version;
+ inherit version;
- name = "php-${version}";
+ enableParallelBuilding = true;
- enableParallelBuilding = true;
+ nativeBuildInputs = [ autoconf automake bison file flex libtool pkgconfig re2c ];
- nativeBuildInputs = [ autoconf bison libtool pkgconfig re2c ];
- buildInputs = [ ]
- ++ optional (versionOlder version "7.3") pcre
- ++ optional (versionAtLeast version "7.3") pcre2
- ++ optional (versionAtLeast version "7.4") oniguruma
- ++ optional withSystemd systemd
- ++ optionals imapSupport [ uwimap openssl pam ]
- ++ optionals curlSupport [ curl openssl ]
- ++ optionals ldapSupport [ openldap openssl ]
- ++ optionals gdSupport [ libpng libjpeg freetype ]
- ++ optionals opensslSupport [ openssl openssl.dev ]
- ++ optional apxs2Support apacheHttpd
- ++ optional (ldapSupport && stdenv.isLinux) cyrus_sasl
- ++ optional mhashSupport libmhash
- ++ optional zlibSupport zlib
- ++ optional libxml2Support libxml2
- ++ optional readlineSupport readline
- ++ optional sqliteSupport sqlite
- ++ optional postgresqlSupport postgresql
- ++ optional pdo_odbcSupport unixODBC
- ++ optional pdo_pgsqlSupport postgresql
- ++ optionals pdo_mysqlSupport mysqlBuildInputs
- ++ optionals mysqliSupport mysqlBuildInputs
- ++ optional gmpSupport gmp
- ++ optional gettextSupport gettext
- ++ optional intlSupport icu
- ++ optional xslSupport libxslt
- ++ optional mcryptSupport libmcrypt'
- ++ optional bz2Support bzip2
- ++ optional sodiumSupport libsodium
- ++ optional tidySupport html-tidy
- ++ optional argon2Support libargon2
- ++ optional libzipSupport libzip
- ++ optional valgrindSupport valgrind;
+ buildInputs = [ ]
+ ++ lib.optional (lib.versionOlder version "7.3") pcre
+ ++ lib.optional (lib.versionAtLeast version "7.3") pcre2
+ ++ lib.optional (lib.versionAtLeast version "7.4") oniguruma
+ ++ lib.optional withSystemd systemd
+ ++ lib.optionals imapSupport [ uwimap openssl pam ]
+ ++ lib.optionals curlSupport [ curl openssl ]
+ ++ lib.optionals ldapSupport [ openldap openssl ]
+ ++ lib.optionals gdSupport [ gd freetype libXpm libjpeg libpng libwebp ]
+ ++ lib.optionals opensslSupport [ openssl openssl.dev ]
+ ++ lib.optional apxs2Support apacheHttpd
+ ++ lib.optional (ldapSupport && stdenv.isLinux) cyrus_sasl
+ ++ lib.optional zlibSupport zlib
+ ++ lib.optional libxml2Support libxml2
+ ++ lib.optional readlineSupport readline
+ ++ lib.optional sqliteSupport sqlite
+ ++ lib.optional postgresqlSupport postgresql
+ ++ lib.optional pdo_odbcSupport unixODBC
+ ++ lib.optional pdo_pgsqlSupport postgresql
+ ++ lib.optional gmpSupport gmp
+ ++ lib.optional gettextSupport gettext
+ ++ lib.optional intlSupport icu
+ ++ lib.optional xslSupport libxslt
+ ++ lib.optional bz2Support bzip2
+ ++ lib.optional sodiumSupport libsodium
+ ++ lib.optional tidySupport html-tidy
+ ++ lib.optional argon2Support libargon2
+ ++ lib.optional libzipSupport libzip
+ ++ lib.optional valgrindSupport valgrind;
- CXXFLAGS = optionalString stdenv.cc.isClang "-std=c++11";
+ CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
- configureFlags = [
- "--with-config-file-scan-dir=/etc/php.d"
- ]
- ++ optionals (versionOlder version "7.3") [ "--with-pcre-regex=${pcre.dev}" "PCRE_LIBDIR=${pcre}" ]
- ++ optionals (versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
- ++ optionals (versionAtLeast version "7.4") [ "--with-external-pcre=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
- ++ optional stdenv.isDarwin "--with-iconv=${libiconv}"
- ++ optional withSystemd "--with-fpm-systemd"
- ++ optionals imapSupport [
+ configureFlags = [ "--with-config-file-scan-dir=/etc/php.d" ]
+ ++ lib.optionals (lib.versionOlder version "7.3") [ "--with-pcre-regex=${pcre.dev}" "PCRE_LIBDIR=${pcre}" ]
+ ++ lib.optionals (lib.versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
+ ++ lib.optionals (lib.versionAtLeast version "7.4") [ "--with-external-pcre=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
+ ++ lib.optional stdenv.isDarwin "--with-iconv=${libiconv}"
+ ++ lib.optional withSystemd "--with-fpm-systemd"
+ ++ lib.optionals imapSupport [
"--with-imap=${uwimap}"
"--with-imap-ssl"
]
- ++ optionals ldapSupport [
+ ++ lib.optionals ldapSupport [
"--with-ldap=/invalid/path"
"LDAP_DIR=${openldap.dev}"
"LDAP_INCDIR=${openldap.dev}/include"
"LDAP_LIBDIR=${openldap.out}/lib"
]
- ++ optional (ldapSupport && stdenv.isLinux) "--with-ldap-sasl=${cyrus_sasl.dev}"
- ++ optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
- ++ optional embedSupport "--enable-embed"
- ++ optional mhashSupport "--with-mhash"
- ++ optional curlSupport "--with-curl=${curl.dev}"
- ++ optional zlibSupport "--with-zlib=${zlib.dev}"
- ++ optional (libxml2Support && (versionOlder version "7.4")) "--with-libxml-dir=${libxml2.dev}"
- ++ optional (!libxml2Support) [
+ ++ lib.optional (ldapSupport && stdenv.isLinux) "--with-ldap-sasl=${cyrus_sasl.dev}"
+ ++ lib.optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
+ ++ lib.optional embedSupport "--enable-embed"
+ ++ lib.optional curlSupport "--with-curl=${curl.dev}"
+ ++ lib.optional zlibSupport "--with-zlib=${zlib.dev}"
+ ++ lib.optional (libxml2Support && (lib.versionOlder version "7.4")) "--with-libxml-dir=${libxml2.dev}"
+ ++ lib.optional (!libxml2Support) [
"--disable-dom"
- "--disable-libxml"
- (if (versionOlder version "7.4") then "--disable-libxml" else "--without-libxml")
+ (if (lib.versionOlder version "7.4") then "--disable-libxml" else "--without-libxml")
"--disable-simplexml"
"--disable-xml"
"--disable-xmlreader"
"--disable-xmlwriter"
"--without-pear"
]
- ++ optional pcntlSupport "--enable-pcntl"
- ++ optional readlineSupport "--with-readline=${readline.dev}"
- ++ optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
- ++ optional postgresqlSupport "--with-pgsql=${postgresql}"
- ++ optional pdo_odbcSupport "--with-pdo-odbc=unixODBC,${unixODBC}"
- ++ optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
- ++ optional pdo_mysqlSupport "--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else libmysqlclient}"
- ++ optionals mysqliSupport [
- "--with-mysqli=${if mysqlndSupport then "mysqlnd" else "${libmysqlclient}/bin/mysql_config"}"
- ]
- ++ optional ( pdo_mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock"
- ++ optional bcmathSupport "--enable-bcmath"
- # FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
- ++ optionals (gdSupport && versionAtLeast version "7.4") [
+ ++ lib.optional pcntlSupport "--enable-pcntl"
+ ++ lib.optional readlineSupport "--with-readline=${readline.dev}"
+ ++ lib.optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
+ ++ lib.optional postgresqlSupport "--with-pgsql=${postgresql}"
+ ++ lib.optional pdo_odbcSupport "--with-pdo-odbc=unixODBC,${unixODBC}"
+ ++ lib.optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
+ ++ lib.optional (pdo_mysqlSupport && mysqlndSupport) "--with-pdo-mysql=mysqlnd"
+ ++ lib.optional (mysqliSupport && mysqlndSupport) "--with-mysqli=mysqlnd"
+ ++ lib.optional (pdo_mysqlSupport || mysqliSupport) "--with-mysql-sock=/run/mysqld/mysqld.sock"
+ ++ lib.optional bcmathSupport "--enable-bcmath"
+ ++ lib.optionals (gdSupport && lib.versionAtLeast version "7.4") [
"--enable-gd"
+ "--with-external-gd=${gd.dev}"
+ "--with-webp=${libwebp}"
"--with-jpeg=${libjpeg.dev}"
+ "--with-xpm=${libXpm.dev}"
"--with-freetype=${freetype.dev}"
"--enable-gd-jis-conv"
- ] ++ optionals (gdSupport && versionOlder version "7.4") [
- "--with-gd"
- "--with-freetype-dir=${freetype.dev}"
- "--with-png-dir=${libpng.dev}"
+ ] ++ lib.optionals (gdSupport && lib.versionOlder version "7.4") [
+ "--with-gd=${gd.dev}"
+ "--with-webp-dir=${libwebp}"
"--with-jpeg-dir=${libjpeg.dev}"
+ "--with-png-dir=${libpng.dev}"
+ "--with-freetype-dir=${freetype.dev}"
+ "--with-xpm-dir=${libXpm.dev}"
+ "--enable-gd-jis-conv"
]
- ++ optional gmpSupport "--with-gmp=${gmp.dev}"
- ++ optional soapSupport "--enable-soap"
- ++ optional socketsSupport "--enable-sockets"
- ++ optional opensslSupport "--with-openssl"
- ++ optional mbstringSupport "--enable-mbstring"
- ++ optional gettextSupport "--with-gettext=${gettext}"
- ++ optional intlSupport "--enable-intl"
- ++ optional exifSupport "--enable-exif"
- ++ optional xslSupport "--with-xsl=${libxslt.dev}"
- ++ optional mcryptSupport "--with-mcrypt=${libmcrypt'}"
- ++ optional bz2Support "--with-bz2=${bzip2.dev}"
- ++ optional (zipSupport && (versionOlder version "7.4")) "--enable-zip"
- ++ optional (zipSupport && (versionAtLeast version "7.4")) "--with-zip"
- ++ optional ftpSupport "--enable-ftp"
- ++ optional fpmSupport "--enable-fpm"
- ++ optional ztsSupport "--enable-maintainer-zts"
- ++ optional calendarSupport "--enable-calendar"
- ++ optional sodiumSupport "--with-sodium=${libsodium.dev}"
- ++ optional tidySupport "--with-tidy=${html-tidy}"
- ++ optional argon2Support "--with-password-argon2=${libargon2}"
- ++ optional (libzipSupport && (versionOlder version "7.4")) "--with-libzip=${libzip.dev}"
- ++ optional phpdbgSupport "--enable-phpdbg"
- ++ optional (!phpdbgSupport) "--disable-phpdbg"
- ++ optional (!cgiSupport) "--disable-cgi"
- ++ optional (!cliSupport) "--disable-cli"
- ++ optional (!pharSupport) "--disable-phar"
- ++ optional xmlrpcSupport "--with-xmlrpc"
- ++ optional cgotoSupport "--enable-re2c-cgoto"
- ++ optional valgrindSupport "--with-valgrind=${valgrind.dev}";
+ ++ lib.optional gmpSupport "--with-gmp=${gmp.dev}"
+ ++ lib.optional soapSupport "--enable-soap"
+ ++ lib.optional socketsSupport "--enable-sockets"
+ ++ lib.optional opensslSupport "--with-openssl"
+ ++ lib.optional mbstringSupport "--enable-mbstring"
+ ++ lib.optional gettextSupport "--with-gettext=${gettext}"
+ ++ lib.optional intlSupport "--enable-intl"
+ ++ lib.optional exifSupport "--enable-exif"
+ ++ lib.optional xslSupport "--with-xsl=${libxslt.dev}"
+ ++ lib.optional bz2Support "--with-bz2=${bzip2.dev}"
+ ++ lib.optional (zipSupport && (lib.versionOlder version "7.4")) "--enable-zip"
+ ++ lib.optional (zipSupport && (lib.versionAtLeast version "7.4")) "--with-zip"
+ ++ lib.optional ftpSupport "--enable-ftp"
+ ++ lib.optional fpmSupport "--enable-fpm"
+ ++ lib.optional ztsSupport "--enable-maintainer-zts"
+ ++ lib.optional calendarSupport "--enable-calendar"
+ ++ lib.optional sodiumSupport "--with-sodium=${libsodium.dev}"
+ ++ lib.optional tidySupport "--with-tidy=${html-tidy}"
+ ++ lib.optional argon2Support "--with-password-argon2=${libargon2}"
+ ++ lib.optional (libzipSupport && (lib.versionOlder version "7.4")) "--with-libzip=${libzip.dev}"
+ ++ lib.optional phpdbgSupport "--enable-phpdbg"
+ ++ lib.optional (!phpdbgSupport) "--disable-phpdbg"
+ ++ lib.optional (!cgiSupport) "--disable-cgi"
+ ++ lib.optional (!cliSupport) "--disable-cli"
+ ++ lib.optional (!pharSupport) "--disable-phar"
+ ++ lib.optional xmlrpcSupport "--with-xmlrpc"
+ ++ lib.optional cgotoSupport "--enable-re2c-cgoto"
+ ++ lib.optional valgrindSupport "--with-valgrind=${valgrind.dev}"
+ ++ lib.optional (!ipv6Support) "--disable-ipv6"
+ ++ lib.optional (pearSupport && libxml2Support) "--with-pear=$(out)/lib/php/pear";
- hardeningDisable = [ "bindnow" ];
+ hardeningDisable = [ "bindnow" ];
- preConfigure = ''
- # Don't record the configure flags since this causes unnecessary
- # runtime dependencies
- for i in main/build-defs.h.in scripts/php-config.in; do
- substituteInPlace $i \
- --replace '@CONFIGURE_COMMAND@' '(omitted)' \
- --replace '@CONFIGURE_OPTIONS@' "" \
- --replace '@PHP_LDFLAGS@' ""
- done
+ preConfigure = ''
+ # Don't record the configure flags since this causes unnecessary
+ # runtime dependencies
+ for i in main/build-defs.h.in scripts/php-config.in; do
+ substituteInPlace $i \
+ --replace '@CONFIGURE_COMMAND@' '(omitted)' \
+ --replace '@CONFIGURE_OPTIONS@' "" \
+ --replace '@PHP_LDFLAGS@' ""
+ done
- #[[ -z "$libxml2" ]] || addToSearchPath PATH $libxml2/bin
+ substituteInPlace ./build/libtool.m4 --replace /usr/bin/file ${file}/bin/file
- export EXTENSION_DIR=$out/lib/php/extensions
+ export EXTENSION_DIR=$out/lib/php/extensions
- configureFlags+=(--with-config-file-path=$out/etc \
- --includedir=$dev/include)
+ ./buildconf --copy --force
- ./buildconf --force
- '';
+ if test -f $src/genfiles; then
+ ./genfiles
+ fi
+ '' + lib.optionalString stdenv.isDarwin ''
+ substituteInPlace configure --replace "-lstdc++" "-lc++"
+ '';
- postInstall = ''
- test -d $out/etc || mkdir $out/etc
- cp php.ini-production $out/etc/php.ini
- '';
+ postInstall = ''
+ test -d $out/etc || mkdir $out/etc
+ cp php.ini-production $out/etc/php.ini
+ '';
- postFixup = ''
- mkdir -p $dev/bin $dev/share/man/man1
- mv $out/bin/phpize $out/bin/php-config $dev/bin/
- mv $out/share/man/man1/phpize.1.gz \
- $out/share/man/man1/php-config.1.gz \
- $dev/share/man/man1/
- '';
+ postFixup = ''
+ mkdir -p $dev/bin $dev/share/man/man1
+ mv $out/bin/phpize $out/bin/php-config $dev/bin/
+ mv $out/share/man/man1/phpize.1.gz \
+ $out/share/man/man1/php-config.1.gz \
+ $dev/share/man/man1/
+ '';
- src = fetchurl {
- url = "https://www.php.net/distributions/php-${version}.tar.bz2";
- inherit sha256;
- };
+ src = fetchurl {
+ url = "https://www.php.net/distributions/php-${version}.tar.bz2";
+ inherit sha256;
+ };
- meta = with stdenv.lib; {
- description = "An HTML-embedded scripting language";
- homepage = https://www.php.net/;
- license = licenses.php301;
- maintainers = with maintainers; [ globin etu ];
- platforms = platforms.all;
- outputsToInstall = [ "out" "dev" ];
- };
+ meta = with stdenv.lib; {
+ description = "An HTML-embedded scripting language";
+ homepage = "https://www.php.net/";
+ license = licenses.php301;
+ maintainers = with maintainers; [ globin etu ma27 ];
+ platforms = platforms.all;
+ outputsToInstall = [ "out" "dev" ];
+ };
- patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
+ patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
- postPatch = optional stdenv.isDarwin ''
- substituteInPlace configure --replace "-lstdc++" "-lc++"
- '';
+ stripDebugList = "bin sbin lib modules";
- stripDebugList = "bin sbin lib modules";
-
- outputs = [ "out" "dev" ];
+ outputs = [ "out" "dev" ];
+ };
+ generic' = { version, sha256, ... }@args: let php = generic args; in php.overrideAttrs (_: {
+ passthru.buildEnv = { exts ? (_: []), extraConfig ? "" }: let
+ extraInit = writeText "custom-php.ini" ''
+ ${extraConfig}
+ ${lib.concatMapStringsSep "\n" (ext: let
+ extName = lib.removePrefix "php-" (builtins.parseDrvName ext.name).name;
+ type = "${lib.optionalString (ext.zendExtension or false) "zend_"}extension";
+ in ''
+ ${type}=${ext}/lib/php/extensions/${extName}.so
+ '') (exts (callPackage ../../../top-level/php-packages.nix { inherit php; }))}
+ '';
+ in symlinkJoin {
+ name = "php-custom-${version}";
+ nativeBuildInputs = [ makeWrapper ];
+ paths = [ php ];
+ postBuild = ''
+ wrapProgram $out/bin/php \
+ --add-flags "-c ${extraInit}"
+ wrapProgram $out/bin/php-fpm \
+ --add-flags "-c ${extraInit}"
+ '';
};
+ });
in {
- php72 = generic {
- version = "7.2.26";
- sha256 = "0yw49v3rk3cd0fb4gsli74pgd4qrykhn9c37dyfr3zsprzp8cvgk";
+ php72 = generic' {
+ version = "7.2.28";
+ sha256 = "18sjvl67z5a2x5s2a36g6ls1r3m4hbrsw52hqr2qsgfvg5dkm5bw";
# https://bugs.php.net/bug.php?id=76826
- extraPatches = optional stdenv.isDarwin ./php72-darwin-isfinite.patch;
+ extraPatches = lib.optional stdenv.isDarwin ./php72-darwin-isfinite.patch;
};
- php73 = generic {
- version = "7.3.13";
- sha256 = "1g376b9caw21mw8738z354llbzb3shzgc60m7naw7wql5038jysw";
+ php73 = generic' {
+ version = "7.3.15";
+ sha256 = "0g84hws15s8gh8iq4h6q747dyfazx47vh3da3whz8d80x83ibgld";
# https://bugs.php.net/bug.php?id=76826
- extraPatches = optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
+ extraPatches = lib.optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
};
- php74 = generic {
- version = "7.4.1";
- sha256 = "0klfwhm2935ariwzqdri1fwh4a0vbrk3jis53qzi18isp3qa073b";
+ php74 = generic' {
+ version = "7.4.3";
+ sha256 = "wVF7pJV4+y3MZMc6Ptx21PxQfEp6xjmYFYTMfTtMbRQ=";
};
}
diff --git a/nixpkgs/pkgs/development/interpreters/python/cpython/3.7/darwin-libutil.patch b/nixpkgs/pkgs/development/interpreters/python/cpython/3.7/darwin-libutil.patch
new file mode 100644
index 00000000000..51e3cb6d7f1
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/cpython/3.7/darwin-libutil.patch
@@ -0,0 +1,23 @@
+diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
+index c3682b4..16826c6 100644
+--- a/Modules/posixmodule.c
++++ b/Modules/posixmodule.c
+@@ -5880,15 +5880,13 @@ error:
+ #if defined(HAVE_OPENPTY) || defined(HAVE_FORKPTY) || defined(HAVE_DEV_PTMX)
+ #ifdef HAVE_PTY_H
+ #include <pty.h>
+-#else
++#endif
+ #ifdef HAVE_LIBUTIL_H
+ #include <libutil.h>
+-#else
++#endif
+ #ifdef HAVE_UTIL_H
+ #include <util.h>
+-#endif /* HAVE_UTIL_H */
+-#endif /* HAVE_LIBUTIL_H */
+-#endif /* HAVE_PTY_H */
++#endif
+ #ifdef HAVE_STROPTS_H
+ #include <stropts.h>
+ #endif
diff --git a/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix b/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
index 70eff43daf5..b778b62f908 100644
--- a/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
@@ -103,10 +103,7 @@ in with passthru; stdenv.mkDerivation {
./3.5/ld_library_path.patch
] ++ optionals (isPy37 || isPy38) [
# Fix darwin build https://bugs.python.org/issue34027
- (fetchpatch {
- url = https://bugs.python.org/file47666/darwin-libutil.patch;
- sha256 = "0242gihnw3wfskl4fydp2xanpl8k5q7fj4dp7dbbqf46a4iwdzpa";
- })
+ ./3.7/darwin-libutil.patch
] ++ optionals (isPy3k && hasDistutilsCxxPatch) [
# Fix for http://bugs.python.org/issue1222585
# Upstream distutils is calling C compiler to compile C++ code, which
diff --git a/nixpkgs/pkgs/development/interpreters/python/default.nix b/nixpkgs/pkgs/development/interpreters/python/default.nix
index b4326235c4e..94f04b73f49 100644
--- a/nixpkgs/pkgs/development/interpreters/python/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/default.nix
@@ -44,6 +44,10 @@ with pkgs;
pythonAtLeast = lib.versionAtLeast pythonVersion;
pythonOlder = lib.versionOlder pythonVersion;
inherit hasDistutilsCxxPatch pythonForBuild;
+
+ tests = callPackage ./tests.nix {
+ python = self;
+ };
};
in {
@@ -105,10 +109,10 @@ in {
sourceVersion = {
major = "3";
minor = "8";
- patch = "1";
+ patch = "2";
suffix = "";
};
- sha256 = "1s4lwn5vzsajlc88m6hkghsvnjw4d00l2dsgng0m2w6vyqbl32bm";
+ sha256 = "1ps5v323cp5czfshqjmbsqw7nvrdpcbk06f62jbzaqik4gfffii6";
inherit (darwin) configd;
inherit passthruFun;
};
@@ -119,9 +123,9 @@ in {
major = "3";
minor = "9";
patch = "0";
- suffix = "a2";
+ suffix = "a4";
};
- sha256 = "02a301bdcldin05ksdg8xw8xr6gdkpf73p0cabvn9rdl6yhkr3q8";
+ sha256 = "0qzy0wlq0izxk8ii28gy70v138g6xnz9sgsxpyayls2j04l6b5vz";
inherit (darwin) configd;
inherit passthruFun;
};
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix b/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
index 159637ae9d5..47690320e81 100644
--- a/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
@@ -94,6 +94,14 @@ in rec {
name = "python-remove-bin-bytecode-hook";
} ./python-remove-bin-bytecode-hook.sh) {};
+ pythonRemoveTestsDirHook = callPackage ({ }:
+ makeSetupHook {
+ name = "python-remove-tests-dir-hook";
+ substitutions = {
+ inherit pythonSitePackages;
+ };
+ } ./python-remove-tests-dir-hook.sh) {};
+
setuptoolsBuildHook = callPackage ({ setuptools, wheel }:
makeSetupHook {
name = "setuptools-setup-hook";
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/python-imports-check-hook.sh b/nixpkgs/pkgs/development/interpreters/python/hooks/python-imports-check-hook.sh
index 0fc55145a8e..f8ca84cd573 100644
--- a/nixpkgs/pkgs/development/interpreters/python/hooks/python-imports-check-hook.sh
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/python-imports-check-hook.sh
@@ -6,7 +6,7 @@ pythonImportsCheckPhase () {
if [ -n "$pythonImportsCheck" ]; then
echo "Check whether the following modules can be imported: $pythonImportsCheck"
- cd $out && eval "@pythonCheckInterpreter@ -c 'import os; import importlib; list(map(lambda mod: importlib.import_module(mod), os.environ[\"pythonImportsCheck\"].split()))'"
+ ( cd $out && eval "@pythonCheckInterpreter@ -c 'import os; import importlib; list(map(lambda mod: importlib.import_module(mod), os.environ[\"pythonImportsCheck\"].split()))'" )
fi
}
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/python-remove-tests-dir-hook.sh b/nixpkgs/pkgs/development/interpreters/python/hooks/python-remove-tests-dir-hook.sh
new file mode 100644
index 00000000000..83bea786db6
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/python-remove-tests-dir-hook.sh
@@ -0,0 +1,15 @@
+# Clean up top-level tests directory in site-package installation.
+echo "Sourcing python-remove-tests-dir-hook"
+
+pythonRemoveTestsDir() {
+ echo "Executing pythonRemoveTestsDir"
+
+ rm -rf $out/@pythonSitePackages@/tests
+
+ echo "Finished executing pythonRemoveTestsDir"
+}
+
+if [ -z "${dontUsePythonRemoveTestsDir-}" ]; then
+ postFixupHooks+=(pythonRemoveTestsDir)
+fi
+
diff --git a/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix b/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
index 020298cc8e9..180bc63857c 100644
--- a/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
@@ -17,6 +17,7 @@
, pythonCatchConflictsHook
, pythonImportsCheckHook
, pythonRemoveBinBytecodeHook
+, pythonRemoveTestsDirHook
, setuptoolsBuildHook
, setuptoolsCheckHook
, wheelUnpackHook
@@ -108,6 +109,7 @@ let
python
wrapPython
ensureNewerSourcesForZipFilesHook # move to wheel installer (pip) or builder (setuptools, flit, ...)?
+ pythonRemoveTestsDirHook
] ++ lib.optionals catchConflicts [
setuptools pythonCatchConflictsHook
] ++ lib.optionals removeBinBytecode [
diff --git a/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix b/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
index 0c4f3eda7b1..54400ae3e0a 100644
--- a/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
@@ -1,6 +1,6 @@
{ stdenv, substituteAll, fetchurl
, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi, libunwind, Security
-, sqlite, openssl_1_0_2, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11
+, sqlite, openssl, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11
, self, gdbm, db, lzma
, python-setup-hook
# For the Python package set
@@ -40,7 +40,7 @@ in with passthru; stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
- bzip2 openssl_1_0_2 pythonForPypy libffi ncurses expat sqlite tk tcl xlibsWrapper libX11 gdbm db
+ bzip2 openssl pythonForPypy libffi ncurses expat sqlite tk tcl xlibsWrapper libX11 gdbm db
] ++ optionals isPy3k [
lzma
] ++ optionals (stdenv ? cc && stdenv.cc.libc != null) [
diff --git a/nixpkgs/pkgs/development/interpreters/python/tests.nix b/nixpkgs/pkgs/development/interpreters/python/tests.nix
new file mode 100644
index 00000000000..37fbe670114
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/tests.nix
@@ -0,0 +1,63 @@
+{ python
+, runCommand
+, substituteAll
+, lib
+}:
+
+let
+ envs = let
+ inherit python;
+ pythonEnv = python.withPackages(ps: with ps; [ ]);
+ in {
+ # Plain Python interpreter
+ plain = rec {
+ env = python;
+ interpreter = env.interpreter;
+ is_venv = "False";
+ is_nixenv = "False";
+ };
+ } // lib.optionalAttrs (python.implementation != "graal") {
+ # Python Nix environment (python.buildEnv)
+ nixenv = rec {
+ env = pythonEnv;
+ interpreter = env.interpreter;
+ is_venv = "False";
+ is_nixenv = "True";
+ };
+ } // lib.optionalAttrs (python.isPy3k && (!python.isPyPy)) rec {
+ # Venv built using plain Python
+ # Python 2 does not support venv
+ # TODO: PyPy executable name is incorrect, it should be pypy-c or pypy-3c instead of pypy and pypy3.
+ plain-venv = rec {
+ env = runCommand "${python.name}-venv" {} ''
+ ${python.interpreter} -m venv $out
+ '';
+ interpreter = "${env}/bin/${python.executable}";
+ is_venv = "True";
+ is_nixenv = "False";
+ };
+ # Venv built using Python Nix environment (python.buildEnv)
+ # TODO: Cannot create venv from a nix env
+ # Error: Command '['/nix/store/ddc8nqx73pda86ibvhzdmvdsqmwnbjf7-python3-3.7.6-venv/bin/python3.7', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
+ # nixenv-venv = rec {
+ # env = runCommand "${python.name}-venv" {} ''
+ # ${pythonEnv.interpreter} -m venv $out
+ # '';
+ # interpreter = "${env}/bin/${pythonEnv.executable}";
+ # is_venv = "True";
+ # is_nixenv = "True";
+ # };
+ };
+
+ testfun = name: attrs: runCommand "${python.name}-tests-${name}" ({
+ inherit (python) pythonVersion;
+ } // attrs) ''
+ cp -r ${./tests} tests
+ chmod -R +w tests
+ substituteAllInPlace tests/test_python.py
+ ${attrs.interpreter} -m unittest discover --verbose tests #/test_python.py
+ mkdir $out
+ touch $out/success
+ '';
+
+in lib.mapAttrs testfun envs \ No newline at end of file
diff --git a/nixpkgs/pkgs/development/interpreters/python/tests/test_python.py b/nixpkgs/pkgs/development/interpreters/python/tests/test_python.py
new file mode 100644
index 00000000000..f631a172ccc
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/tests/test_python.py
@@ -0,0 +1,50 @@
+"""
+Python interpreter and environment tests.
+
+These need to be executed with the standard library unittest.
+Third party test runners such as pytest cannot be used because
+that would interfere with the tests.
+"""
+
+import platform
+import sys
+import unittest
+import site
+
+
+ENV = "@env@"
+INTERPRETER = "@interpreter@"
+PYTHON_VERSION = "@pythonVersion@"
+
+IS_VENV = @is_venv@
+IS_NIXENV = @is_nixenv@
+IS_PYPY = platform.python_implementation() == "PyPy"
+
+
+class TestCasePython(unittest.TestCase):
+
+ @unittest.skipIf(IS_PYPY, "Executable is incorrect and needs to be fixed.")
+ def test_interpreter(self):
+ self.assertEqual(sys.executable, INTERPRETER)
+
+ @unittest.skipIf(IS_NIXENV or IS_PYPY, "Prefix is incorrect and needs to be fixed.")
+ def test_prefix(self):
+ self.assertEqual(sys.prefix, ENV)
+ self.assertEqual(sys.prefix, sys.exec_prefix)
+
+ def test_site_prefix(self):
+ self.assertTrue(sys.prefix in site.PREFIXES)
+
+ @unittest.skipIf(sys.version_info.major==2, "Python 2 does not have base_prefix")
+ def test_base_prefix(self):
+ if IS_VENV:
+ self.assertNotEqual(sys.prefix, sys.base_prefix)
+ else:
+ self.assertEqual(sys.prefix, sys.base_prefix)
+
+ def test_python_version(self):
+ self.assertTrue(platform.python_version().startswith(PYTHON_VERSION))
+
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/nixpkgs/pkgs/development/interpreters/racket/default.nix b/nixpkgs/pkgs/development/interpreters/racket/default.nix
index f12d1f1090f..3e9716af550 100644
--- a/nixpkgs/pkgs/development/interpreters/racket/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/racket/default.nix
@@ -46,7 +46,7 @@ in
stdenv.mkDerivation rec {
pname = "racket";
- version = "7.5"; # always change at once with ./minimal.nix
+ version = "7.6"; # always change at once with ./minimal.nix
src = (stdenv.lib.makeOverridable ({ name, sha256 }:
fetchurl {
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
}
)) {
name = "${pname}-${version}";
- sha256 = "0b74v0pqkx57x2gk0m4sp94jaf6bi1mci4ix9vx4sh2442sbds1j";
+ sha256 = "0yagy7qrnz96gwafnj3whh2vs54788k1ci3vkm100h68gsw638b8";
};
FONTCONFIG_FILE = fontsConf;
diff --git a/nixpkgs/pkgs/development/interpreters/racket/minimal.nix b/nixpkgs/pkgs/development/interpreters/racket/minimal.nix
index df7c72c4a68..9e817b76000 100644
--- a/nixpkgs/pkgs/development/interpreters/racket/minimal.nix
+++ b/nixpkgs/pkgs/development/interpreters/racket/minimal.nix
@@ -5,7 +5,7 @@ racket.overrideAttrs (oldAttrs: rec {
name = "racket-minimal-${oldAttrs.version}";
src = oldAttrs.src.override {
inherit name;
- sha256 = "0478f0phkjch10ncsl8lm8a1m8qvgchrkgzpcaxyhmg2clyjgn8r";
+ sha256 = "0id094q9024hj2n3907l7dblp3iix1v5289xzskmh5c26xfygp9y";
};
meta = oldAttrs.meta // {
diff --git a/nixpkgs/pkgs/development/interpreters/rakudo/default.nix b/nixpkgs/pkgs/development/interpreters/rakudo/default.nix
index ab5493e8a9d..ca8d2b2b0da 100644
--- a/nixpkgs/pkgs/development/interpreters/rakudo/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/rakudo/default.nix
@@ -1,29 +1,29 @@
-{ stdenv, fetchurl, perl, icu, zlib, gmp, readline
-, CoreServices, ApplicationServices }:
+{ stdenv, fetchurl, perl, icu, zlib, gmp, lib, nqp }:
stdenv.mkDerivation rec {
- pname = "rakudo-star";
- version = "2017.01";
+ pname = "rakudo";
+ version = "2020.02";
src = fetchurl {
- url = "http://rakudo.org/downloads/star/${pname}-${version}.tar.gz";
- sha256 = "07zjqdzxm30pmjqwlnr669d75bsbimy09sk0dvgm0pnn3zr92fjq";
+ url = "https://github.com/rakudo/rakudo/releases/download/${version}/rakudo-${version}.tar.gz";
+ sha256 = "0yhld3ij4mfa42chkfph7lzcl5q9b613hdjmw9rv46appmxvvmrs";
};
- buildInputs = [ icu zlib gmp readline perl ]
- ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
+ buildInputs = [ icu zlib gmp perl ];
configureScript = "perl ./Configure.pl";
- configureFlags =
- [ "--backends=moar"
- "--gen-moar"
- "--gen-nqp"
- ];
+ configureFlags = [
+ "--backends=moar"
+ "--with-nqp=${nqp}/bin/nqp"
+ ];
+
+ # Some tests fail on Darwin
+ doCheck = !stdenv.isDarwin;
meta = with stdenv.lib; {
- description = "A Perl 6 implementation";
+ description = "Raku implementation on top of Moar virtual machine";
homepage = https://www.rakudo.org;
license = licenses.artistic2;
platforms = platforms.unix;
- maintainers = with maintainers; [ thoughtpolice vrthra ];
+ maintainers = with maintainers; [ thoughtpolice vrthra sgo ];
};
}
diff --git a/nixpkgs/pkgs/development/interpreters/rakudo/moarvm.nix b/nixpkgs/pkgs/development/interpreters/rakudo/moarvm.nix
new file mode 100644
index 00000000000..3c5c5f2a2f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/rakudo/moarvm.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, perl
+, CoreServices, ApplicationServices }:
+
+stdenv.mkDerivation rec {
+ pname = "moarvm";
+ version = "2020.02";
+
+ src = fetchurl {
+ url = "https://www.moarvm.org/releases/MoarVM-${version}.tar.gz";
+ sha256 = "1kz97yy357lax7xdz4mnnwswn7axhp14nq0dw3n6xbcpap6m82aw";
+ };
+
+ buildInputs = [ perl ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
+ doCheck = false; # MoarVM does not come with its own test suite
+
+ configureScript = "${perl}/bin/perl ./Configure.pl";
+
+ meta = with stdenv.lib; {
+ description = "VM with adaptive optimization and JIT compilation, built for Rakudo";
+ homepage = "https://www.moarvm.org/";
+ license = licenses.artistic2;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ thoughtpolice vrthra sgo ];
+ };
+}
diff --git a/nixpkgs/pkgs/development/interpreters/rakudo/nqp.nix b/nixpkgs/pkgs/development/interpreters/rakudo/nqp.nix
new file mode 100644
index 00000000000..84a214201a0
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/rakudo/nqp.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, perl, lib, moarvm }:
+
+stdenv.mkDerivation rec {
+ pname = "nqp";
+ version = "2020.02";
+
+ src = fetchurl {
+ url = "https://github.com/perl6/nqp/releases/download/${version}/nqp-${version}.tar.gz";
+ sha256 = "0ik3fscywxjx1qxlbjf68msz83alpckzw3myj9jmkalvy8q5v0nk";
+ };
+
+ buildInputs = [ perl ];
+
+ configureScript = "${perl}/bin/perl ./Configure.pl";
+ configureFlags = [
+ "--backends=moar"
+ "--with-moar=${moarvm}/bin/moar"
+ ];
+
+ doCheck = true;
+
+ meta = with stdenv.lib; {
+ description = "Not Quite Perl -- a lightweight Raku-like environment for virtual machines";
+ homepage = "https://github.com/perl6/nqp";
+ license = licenses.artistic2;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ thoughtpolice vrthra sgo ];
+ };
+}
diff --git a/nixpkgs/pkgs/development/interpreters/rakudo/zef.nix b/nixpkgs/pkgs/development/interpreters/rakudo/zef.nix
new file mode 100644
index 00000000000..9a8c11324a2
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/rakudo/zef.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, rakudo, makeWrapper }:
+
+stdenv.mkDerivation rec {
+ pname = "zef";
+ version = "0.8.3";
+
+ src = fetchFromGitHub {
+ owner = "ugexe";
+ repo = "zef";
+ rev = "v${version}";
+ sha256 = "1fscv8fbaa5l8dcwclmq3hvg3c59l4dvyjqb316mgnc5anxpzy2f";
+ };
+
+ buildInputs = [ rakudo makeWrapper ];
+
+ installPhase = ''
+ mkdir -p "$out"
+ # TODO: Find better solution. zef stores cache stuff in $HOME with the
+ # default config.
+ env HOME=$TMPDIR ${rakudo}/bin/raku -I. ./bin/zef --/depends --/test-depends --/build-depends --install-to=$out install .
+ '';
+
+ postFixup =''
+ wrapProgram $out/bin/zef --prefix RAKUDOLIB , "inst#$out"
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Raku / Perl6 Module Management";
+ homepage = "https://github.com/ugexe/zef";
+ license = licenses.artistic2;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ sgo ];
+ };
+}
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/default.nix b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
index 8b8e7ccc8bb..8ddd19bb40c 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
@@ -26,7 +26,6 @@ let
generic = { version, sha256 }: let
ver = version;
tag = ver.gitTag;
- atLeast25 = lib.versionAtLeast ver.majMin "2.5";
atLeast27 = lib.versionAtLeast ver.majMin "2.7";
baseruby = self.override {
useRailsExpress = false;
@@ -77,14 +76,13 @@ let
nativeBuildInputs = [ autoreconfHook bison ]
++ (op docSupport groff)
++ op (stdenv.buildPlatform != stdenv.hostPlatform) buildPackages.ruby;
- buildInputs =
- (op fiddleSupport libffi)
+ buildInputs = [ autoconf ]
+ ++ (op fiddleSupport libffi)
++ (ops cursesSupport [ ncurses readline ])
++ (op zlibSupport zlib)
++ (op opensslSupport openssl)
++ (op gdbmSupport gdbm)
++ (op yamlSupport libyaml)
- ++ (op atLeast25 autoconf)
# Looks like ruby fails to build on darwin without readline even if curses
# support is not enabled, so add readline to the build inputs if curses
# support is disabled (if it's enabled, we already have it) and we're
@@ -106,15 +104,10 @@ let
cp -r ${rubygems}/test/rubygems $sourceRoot/test
'';
- postPatch = if atLeast25 then ''
+ postPatch = ''
sed -i configure.ac -e '/config.guess/d'
cp --remove-destination ${config}/config.guess tool/
cp --remove-destination ${config}/config.sub tool/
- ''
- else opString useRailsExpress ''
- sed -i configure.in -e '/config.guess/d'
- cp ${config}/config.guess tool/
- cp ${config}/config.sub tool/
'';
# Force the revision.h generation. Somehow `revision.tmp` is an empty
@@ -230,14 +223,6 @@ let
) args; in self;
in {
- ruby_2_4 = generic {
- version = rubyVersion "2" "4" "9" "";
- sha256 = {
- src = "1bn6n5b920qy3lsx99jr8495jkc3sg89swgb96d5fgd579g6p6zr";
- git = "066kb1iki7mx7qkm10xhj5b6v8s47wg68v43l3nc36y2hyim1w2c";
- };
- };
-
ruby_2_5 = generic {
version = rubyVersion "2" "5" "7" "";
sha256 = {
diff --git a/nixpkgs/pkgs/development/interpreters/supercollider/default.nix b/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
index b4ed9232452..67a7f8975f1 100644
--- a/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
@@ -9,12 +9,12 @@ in
mkDerivation rec {
pname = "supercollider";
- version = "3.10.3";
+ version = "3.10.4";
src = fetchurl {
url = "https://github.com/supercollider/supercollider/releases/download/Version-${version}/SuperCollider-${version}-Source.tar.bz2";
- sha256 = "1wvsrr4qcqmpxpn57wwrnwbnf3pflr3n4wkj9j6b9cdisp34kv5d";
+ sha256 = "168r0c0axgajsdzc1caklydrnagy4flv7i7jcyqwpc9agsqy0nnf";
};
hardeningDisable = [ "stackprotector" ];
diff --git a/nixpkgs/pkgs/development/interpreters/wasm-gc/default.nix b/nixpkgs/pkgs/development/interpreters/wasm-gc/default.nix
deleted file mode 100644
index 44ac11be540..00000000000
--- a/nixpkgs/pkgs/development/interpreters/wasm-gc/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchFromGitHub, rustPlatform }:
-
-rustPlatform.buildRustPackage rec {
- pname = "wasm-gc";
- version = "0.1.6";
-
- src = fetchFromGitHub {
- owner = "alexcrichton";
- repo = "wasm-gc";
- rev = version;
- sha256 = "1lc30xxqp3vv1r269xzznh2lf2dzdq89bi5f1vmqjw4yc3xmawm7";
- };
-
- cargoPatches = [ ./fix-build.patch ]; # Cargo.lock is not up-to-date
-
- cargoSha256 = "073dnn80sl4adh7vi6q9sx2vkmy27gxy7ysxz17iz12p7pfcagm2";
-
- meta = with stdenv.lib; {
- description = "gc-sections for wasm";
- homepage = "https://github.com/alexcrichton/wasm-gc";
- maintainers = with maintainers; [ ekleog ];
- platforms = platforms.all;
- license = with licenses; [ mit asl20 ];
- };
-}
diff --git a/nixpkgs/pkgs/development/interpreters/wasm-gc/fix-build.patch b/nixpkgs/pkgs/development/interpreters/wasm-gc/fix-build.patch
deleted file mode 100644
index 3144dd89837..00000000000
--- a/nixpkgs/pkgs/development/interpreters/wasm-gc/fix-build.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-index 923ed91..71f17c8 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -212,16 +212,16 @@ dependencies = [
-
- [[package]]
- name = "wasm-gc"
--version = "0.1.1"
-+version = "0.1.6"
- dependencies = [
- "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-gc-api 0.1.5",
-+ "wasm-gc-api 0.1.6",
- ]
-
- [[package]]
- name = "wasm-gc-api"
--version = "0.1.5"
-+version = "0.1.6"
- dependencies = [
- "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-wasm 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)",
-@@ -234,7 +234,7 @@ version = "0.1.0"
- dependencies = [
- "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "wasm-bindgen 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-gc-api 0.1.5",
-+ "wasm-gc-api 0.1.6",
- ]
-
- [[package]]
-
diff --git a/nixpkgs/pkgs/development/interpreters/wasmer/default.nix b/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
index 7c270e5fb44..d3d9cf87207 100644
--- a/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
@@ -8,17 +8,17 @@
rustPlatform.buildRustPackage rec {
pname = "wasmer";
- version = "0.13.0";
+ version = "0.16.2";
src = fetchFromGitHub {
owner = "wasmerio";
repo = pname;
rev = version;
- sha256 = "1k9zd2vhrbvxlpkh21m39alk5lfhd3xa25k0awis27plfpv8fqcq";
+ sha256 = "124zq772kz9a7n3qpxgmp4awqj41l8mhhwc0y3r77i1q02i1sy7z";
fetchSubmodules = true;
};
- cargoSha256 = "1yp7kandh5hh8hkzlmqpj05vwgr5v4nil8blf3scbppg865qk3rq";
+ cargoSha256 = "1qqysvcviimpm2zhzsbn8vhy91rxzaknh9hv75y38xd5ggnnh9m6";
nativeBuildInputs = [ cmake pkg-config ];
diff --git a/nixpkgs/pkgs/development/interpreters/wasmtime/cargo-lock.patch b/nixpkgs/pkgs/development/interpreters/wasmtime/cargo-lock.patch
deleted file mode 100644
index 3ce3f765988..00000000000
--- a/nixpkgs/pkgs/development/interpreters/wasmtime/cargo-lock.patch
+++ /dev/null
@@ -1,2282 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-new file mode 100644
-index 00000000..818de492
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,2276 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+[[package]]
-+name = "aho-corasick"
-+version = "0.7.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ansi_term"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "anyhow"
-+version = "1.0.26"
-+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"
-+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 = "arrayvec"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "atty"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "hermit-abi 0.1.6 (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.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "backtrace"
-+version = "0.3.40"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.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.32"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bincode"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "bindgen"
-+version = "0.51.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cexpr 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "clang-sys 0.28.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "env_logger 0.6.2 (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)",
-+ "peeking_take_while 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "which 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "blake2b_simd"
-+version = "0.5.10"
-+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.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)",
-+]
-+
-+[[package]]
-+name = "block-buffer"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "block-padding"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "byte-tools"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "c2-chacha"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "capstone"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "capstone-sys 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "capstone-sys"
-+version = "0.10.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cc"
-+version = "1.0.49"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "jobserver 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cexpr"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "chrono"
-+version = "0.4.10"
-+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.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 = "clang-sys"
-+version = "0.28.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libloading 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "clap"
-+version = "2.33.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "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.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cloudabi"
-+version = "0.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cmake"
-+version = "0.1.42"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "constant_time_eq"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cpu-time"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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 = "cranelift-bforest"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-codegen"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-bforest 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen-meta 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen-shared 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.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.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-codegen-meta"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cranelift-codegen-shared 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-codegen-shared"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cranelift-entity"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-frontend"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-native"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "raw-cpuid 7.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cranelift-wasm"
-+version = "0.50.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-frontend 0.50.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.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-deque"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.8.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)",
-+ "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.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.2.1"
-+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)",
-+ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-utils"
-+version = "0.6.6"
-+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)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[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 = "ctor"
-+version = "0.1.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cvt"
-+version = "0.1.1"
-+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)",
-+]
-+
-+[[package]]
-+name = "digest"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "directories"
-+version = "2.0.2"
-+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)",
-+ "dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "dirs-sys"
-+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.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)",
-+]
-+
-+[[package]]
-+name = "docopt"
-+version = "1.1.0"
-+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)",
-+ "regex 1.3.1 (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 = "dynasm"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byteorder 1.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)",
-+ "owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "dynasmrt"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "either"
-+version = "1.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "env_logger"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "humantime 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)",
-+ "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "errno"
-+version = "0.2.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "errno-dragonfly 0.1.1 (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 = "errno-dragonfly"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "faerie"
-+version = "0.13.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "goblin 0.1.3 (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)",
-+ "scroll 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "string-interner 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "failure"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fake-simd"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "fallible-iterator"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "file-per-thread-logger"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "filetime"
-+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.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 = "fuchsia-cprng"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "gcc"
-+version = "0.3.55"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "generic-array"
-+version = "0.12.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+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.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 = "ghost"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "gimli"
-+version = "0.19.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fallible-iterator 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "stable_deref_trait 1.1.1 (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 = "goblin"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plain 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "scroll 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "heck"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "hermit-abi"
-+version = "0.1.6"
-+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]]
-+name = "humantime"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "id-arena"
-+version = "2.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "indexmap"
-+version = "1.3.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)",
-+]
-+
-+[[package]]
-+name = "indoc"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "indoc-impl 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "indoc-impl"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unindent 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "inventory"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ctor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ghost 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "inventory-impl 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "inventory-impl"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "itertools"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "jobserver"
-+version = "0.1.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "leb128"
-+version = "0.2.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.66"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "libloading"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "lightbeam"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "capstone 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dynasm 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dynasmrt 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "itertools 0.8.2 (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.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "multi_mut 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quickcheck 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.4.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)",
-+]
-+
-+[[package]]
-+name = "mach"
-+version = "0.2.3"
-+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]]
-+name = "memchr"
-+version = "2.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "memmap"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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 = "memoffset"
-+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)",
-+]
-+
-+[[package]]
-+name = "more-asserts"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "multi_mut"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "nix"
-+version = "0.15.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc 1.0.49 (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.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "void 1.0.2 (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 = "nom"
-+version = "4.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-complex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-integer 0.1.41 (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.2.2 (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-complex"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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-integer"
-+version = "0.1.41"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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-iter"
-+version = "0.1.39"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-rational"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num_cpus"
-+version = "1.11.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "opaque-debug"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "os_pipe"
-+version = "0.9.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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 = "owning_ref"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "paste"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "paste-impl 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "paste-impl"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "peeking_take_while"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "plain"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "pretty_env_logger"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "proc-macro-hack"
-+version = "0.5.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.7"
-+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)",
-+]
-+
-+[[package]]
-+name = "pyo3"
-+version = "0.8.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "indoc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "inventory 0.1.5 (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.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "paste 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pyo3cls 0.8.5 (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.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unindent 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "pyo3-derive-backend"
-+version = "0.8.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "pyo3cls"
-+version = "0.8.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pyo3-derive-backend 0.8.5 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "quick-error"
-+version = "1.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "quickcheck"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "env_logger 0.6.2 (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)",
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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)",
-+ "rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_os"
-+version = "0.1.3"
-+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.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)",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "raw-cpuid"
-+version = "7.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rayon"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rayon-core"
-+version = "1.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-queue 0.2.1 (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.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rdrand"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.1.56"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "redox_users"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "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)",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "region"
-+version = "2.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mach 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rust-argon2"
-+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.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rustc-hash"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rustc_version"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.2"
-+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 = "scroll"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "scroll_derive 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "scroll_derive"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (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"
-+dependencies = [
-+ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "semver-parser"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.104"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.104"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+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.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "sha2"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "shlex"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "smallvec"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "spin"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "stable_deref_trait"
-+version = "1.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "string-interner"
-+version = "0.7.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "strsim"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "strsim"
-+version = "0.9.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (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 = "target-lexicon"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.1.0"
-+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.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)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "termcolor"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "test-programs"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "os_pipe 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasi-common 0.8.0",
-+ "wasmtime 0.8.0",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "textwrap"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "thiserror"
-+version = "1.0.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "thiserror-impl 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "thiserror-impl"
-+version = "1.0.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "0.3.6"
-+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)",
-+]
-+
-+[[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.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "traitobject"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "trybuild"
-+version = "1.0.19"
-+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.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.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "typemap"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "typenum"
-+version = "1.11.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-segmentation"
-+version = "1.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unindent"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unsafe-any"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "vec_map"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.9.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "void"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "walrus"
-+version = "0.13.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "anyhow 1.0.26 (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)",
-+ "walrus-macro 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "walrus-macro"
-+version = "0.13.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.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasi"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "wasi-common"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cpu-time 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "filetime 0.2.8 (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.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "nix 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasi-common-cbindgen 0.8.0",
-+ "wig 0.8.0",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winx 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasi-common-cbindgen"
-+version = "0.8.0"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "trybuild 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasm-webidl-bindings"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "anyhow 1.0.26 (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.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmparser"
-+version = "0.39.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "wasmtime"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "file-per-thread-logger 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "region 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasi-common 0.8.0",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+ "wasmtime-wast 0.8.0",
-+ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-cli"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "file-per-thread-logger 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "test-programs 0.8.0",
-+ "wasi-common 0.8.0",
-+ "wasm-webidl-bindings 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime 0.8.0",
-+ "wasmtime-debug 0.8.0",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-interface-types 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-obj 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+ "wasmtime-wasi-c 0.8.0",
-+ "wasmtime-wast 0.8.0",
-+ "wat 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-debug"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gimli 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-environ"
-+version = "0.8.0"
-+dependencies = [
-+ "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "directories 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "errno 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "file-per-thread-logger 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "filetime 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "indexmap 1.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)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lightbeam 0.8.0",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "sha2 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "zstd 0.5.1+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-interface-types"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walrus 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-webidl-bindings 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-jit"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "region 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-debug 0.8.0",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-obj"
-+version = "0.8.0"
-+dependencies = [
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-py"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pyo3 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "region 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime 0.8.0",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-interface-types 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-runtime"
-+version = "0.8.0"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "indexmap 1.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)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "region 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-rust"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime 0.8.0",
-+ "wasmtime-interface-types 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-rust-macro 0.8.0",
-+ "wasmtime-wasi 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-rust-macro"
-+version = "0.8.0"
-+dependencies = [
-+ "proc-macro2 1.0.7 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasmtime-wasi"
-+version = "0.8.0"
-+dependencies = [
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasi-common 0.8.0",
-+ "wasmtime 0.8.0",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-wasi-c"
-+version = "0.8.0"
-+dependencies = [
-+ "bindgen 0.51.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cmake 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+]
-+
-+[[package]]
-+name = "wasmtime-wast"
-+version = "0.8.0"
-+dependencies = [
-+ "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasmtime-environ 0.8.0",
-+ "wasmtime-jit 0.8.0",
-+ "wasmtime-runtime 0.8.0",
-+ "wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wast"
-+version = "3.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wast"
-+version = "5.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "leb128 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+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 = "which"
-+version = "3.1.0"
-+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]]
-+name = "wig"
-+version = "0.8.0"
-+dependencies = [
-+ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "witx 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi-util"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "wincolor"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winx"
-+version = "0.8.0"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cvt 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "witx"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wast 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "zstd"
-+version = "0.5.1+zstd.1.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "zstd-safe 2.0.3+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "zstd-safe"
-+version = "2.0.3+zstd.1.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "zstd-sys 1.4.15+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "zstd-sys"
-+version = "1.4.15+zstd.1.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (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 anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)" = "7825f6833612eb2414095684fcf6c635becf3ce97fe48cf6421321e93bfbd53c"
-+"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.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-+"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.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
-+"checksum bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5753e2a71534719bf3f4e57006c3a4f0d2c672a4b676eec84161f763eca87dbf"
-+"checksum bindgen 0.51.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebd71393f1ec0509b553aa012b9b58e81dadbdff7130bd3b8cba576e69b32f75"
-+"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-+"checksum blake2b_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
-+"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-+"checksum block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
-+"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-+"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
-+"checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
-+"checksum capstone 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "031ba51c39151a1d6336ec859646153187204b0147c7b3f6fe2de636f1b8dbb3"
-+"checksum capstone-sys 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fae25eddcb80e24f98c35952c37a91ff7f8d0f60dbbdafb9763e8d5cc566b8d7"
-+"checksum cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)" = "e450b8da92aa6f274e7c6437692f9f2ce6d701fb73bacfcf87897b3f89a4c20e"
-+"checksum cexpr 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "fce5b5fb86b0c57c20c834c1b412fd09c77c8a59b9473f86272709e78874cd1d"
-+"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
-+"checksum clang-sys 0.28.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81de550971c976f176130da4b2978d3b524eaa0fd9ac31f3ceb5ae1231fb4853"
-+"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 cmake 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "81fb25b677f8bf1eb325017cb6bb8452f87969db0fedb4f757b297bee78a7c62"
-+"checksum constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "995a44c877f9212528ccc74b21a232f66ad69001e40ede5bcee2ac9ef2657120"
-+"checksum cpu-time 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e9e393a7668fe1fad3075085b86c781883000b4ede868f43627b34a87c8b7ded"
-+"checksum cranelift-bforest 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bd05aac8cefcde54ce26178df8f36cb1f518ac691db650e7d2440c2b6b41c4dc"
-+"checksum cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c63d9b6ff8a94f98deabab21880d7fd54996e0e16be687b6f80a3b6bdd9c188d"
-+"checksum cranelift-codegen-meta 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cb3df51c2c07d719d02869bfac6cabd8d82ee308d5b29ca62e6528723cc33a4"
-+"checksum cranelift-codegen-shared 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "758f9426b2e22bf83fc1a6b231a9d53cd4830751883c7f0e196ebb3c210467b3"
-+"checksum cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff064733df8b98f453060264a8790393d1e807aca6942706b42f79a4f7aae9ed"
-+"checksum cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1eaafb5fa623dcbe19a28084a8226d7a1b17184a949c1a1f29a46b479867998d"
-+"checksum cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "90033dbd7293f6fad4cf9dcd769cd621d60df22b1c5a11799e86359b7447a51d"
-+"checksum cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54cb82a1071f88822763a583ec1a8688ffe5e2cda02c111d4483dd4376ed14d8"
-+"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.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c695eeca1e7173472a32221542ae469b3e9aac3a4fc81f7696bcad82029493db"
-+"checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
-+"checksum crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4"
-+"checksum ctor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "cd8ce37ad4184ab2ce004c33bf6379185d3b1c95801cab51026bd271bf68eedc"
-+"checksum cvt 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34ac344c7efccb80cd25bc61b2170aec26f2f693fd40e765a539a1243db48c71"
-+"checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-+"checksum directories 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "551a778172a450d7fc12e629ca3b0428d00f6afa9a43da1b630d54604e97371c"
-+"checksum dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b"
-+"checksum docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
-+"checksum dynasm 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "42a814e1edeb85dd2a3c6fc0d6bf76d02ca5695d438c70ecee3d90774f3259c5"
-+"checksum dynasmrt 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8a393aaeb4441a48bcf47b5b6155971f82cc1eb77e22855403ccc0415ac8328d"
-+"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
-+"checksum env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
-+"checksum errno 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c2a071601ed01b988f896ab14b95e67335d1eeb50190932a1320f7fe3cadc84e"
-+"checksum errno-dragonfly 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "14ca354e36190500e1e1fb267c647932382b54053c50b14970856c0b00a35067"
-+"checksum faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f902f2af041f6c7177a2a04f805687cdc71e69c7cbef059a2755d8923f4cd7a8"
-+"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 fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-+"checksum fallible-iterator 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7"
-+"checksum file-per-thread-logger 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8505b75b31ef7285168dd237c4a7db3c1f3e0927e7d314e670bc98e854272fe9"
-+"checksum filetime 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1ff6d4dab0aa0c8e6346d46052e93b13a16cf847b54ed357087c35011048cc7d"
-+"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-+"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
-+"checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
-+"checksum getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
-+"checksum ghost 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2a36606a68532b5640dc86bb1f33c64b45c4682aad4c50f3937b317ea387f3d6"
-+"checksum gimli 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "162d18ae5f2e3b90a993d202f1ba17a5633c2484426f8bcae201f86194bacd00"
-+"checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-+"checksum goblin 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3081214398d39e4bd7f2c1975f0488ed04614ffdd976c6fc7a0708278552c0da"
-+"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
-+"checksum hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "eff2656d88f158ce120947499e971d743c05dbcbed62e5bd2f38f1698bbc3772"
-+"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"
-+"checksum indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
-+"checksum indoc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3f9553c1e16c114b8b77ebeb329e5f2876eed62a8d51178c8bc6bff0d65f98f8"
-+"checksum indoc-impl 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b714fc08d0961716390977cdff1536234415ac37b509e34e5a983def8340fb75"
-+"checksum inventory 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "2bf98296081bd2cb540acc09ef9c97f22b7e487841520350293605db1b2c7a27"
-+"checksum inventory-impl 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0a8e30575afe28eea36a9a39136b70b2fb6b0dd0a212a5bd1f30a498395c0274"
-+"checksum itertools 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484"
-+"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
-+"checksum jobserver 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "f2b1d42ef453b30b7387e113da1c83ab1605d90c5b4e0eb8e96d016ed3b8c160"
-+"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.66 (registry+https://github.com/rust-lang/crates.io-index)" = "d515b1f41455adea1313a4a2ac8a8a477634fbae63cc6100e3aebb207ce61558"
-+"checksum libloading 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753"
-+"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-+"checksum mach 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "86dd2487cdfea56def77b88438a2c915fb45113c5319bfe7e14306ca4cd0b0e1"
-+"checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
-+"checksum memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
-+"checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
-+"checksum more-asserts 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0debeb9fcf88823ea64d64e4a815ab1643f33127d995978e099942ce38f25238"
-+"checksum multi_mut 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "816df386e5557ac1843a96f1ba8a7cbf4ab175d05ccc15c87a3cda27b4fbdece"
-+"checksum nix 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3b2e0b4f3320ed72aaedb9a5ac838690a8047c7b275da22711fddff4f8a14229"
-+"checksum nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
-+"checksum nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
-+"checksum num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cf4825417e1e1406b3782a8ce92f4d53f26ec055e3622e1881ca8e9f5f9e08db"
-+"checksum num-complex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fcb0cf31fb3ff77e6d2a6ebd6800df7fdcd106f2ad89113c9130bcd07f93dffc"
-+"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.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f2885278d5fe2adc2f75ced642d52d879bffaceb5a2e0b1d4309ffdfb239b454"
-+"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 opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-+"checksum os_pipe 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "db4d06355a7090ce852965b2d08e11426c315438462638c6d721448d0b47aa22"
-+"checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
-+"checksum paste 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "423a519e1c6e828f1e73b720f9d9ed2fa643dce8a7737fb43235ce0b41eeaa49"
-+"checksum paste-impl 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "4214c9e912ef61bf42b81ba9a47e8aad1b2ffaf739ab162bf96d1e011f54e6c5"
-+"checksum peeking_take_while 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-+"checksum plain 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
-+"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
-+"checksum pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "717ee476b1690853d222af4634056d830b5197ffd747726a9a1eee6da9f49074"
-+"checksum proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)" = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5"
-+"checksum proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0319972dcae462681daf4da1adeeaa066e3ebd29c69be96c6abb1259d2ee2bcc"
-+"checksum pyo3 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e1bfe257586436fbe1296d917f14a167d4253d0873bf43e2c9b9bdd58a3f9f35"
-+"checksum pyo3-derive-backend 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4882d8237fd8c7373cc25cb802fe0dab9ff70830fd56f47ef6c7f3f287fcc057"
-+"checksum pyo3cls 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fdf321cfab555f7411298733c86d21e5136f5ded13f5872fabf9de3337beecda"
-+"checksum quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-+"checksum quickcheck 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5ca504a2fdaa08d3517f442fbbba91ac24d1ec4c51ea68688a038765e3b2662"
-+"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
-+"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"
-+"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-+"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-+"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-+"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-+"checksum rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
-+"checksum raw-cpuid 7.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b4a349ca83373cfa5d6dbb66fd76e58b2cca08da71a5f6400de0a0a6a9bceeaf"
-+"checksum rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
-+"checksum rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
-+"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"
-+"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 region 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "448e868c6e4cfddfa49b6a72c95906c04e8547465e9536575b95c70a4044f856"
-+"checksum remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
-+"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-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8"
-+"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-+"checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
-+"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
-+"checksum scroll 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "abb2332cb595d33f7edd5700f4cbf94892e680c7f0ae56adab58a35190b66cb1"
-+"checksum scroll_derive 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f8584eea9b9ff42825b46faf46a8c24d2cff13ec152fa2a50df788b87c07ee28"
-+"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.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 sha2 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "27044adfd2e1f077f649f59deb9490d3941d674002f7d062870a60ebe9bd47a0"
-+"checksum shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
-+"checksum smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4"
-+"checksum spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-+"checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
-+"checksum string-interner 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd710eadff449a1531351b0e43eb81ea404336fa2f56c777427ab0e32a4cf183"
-+"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-+"checksum strsim 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
-+"checksum syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4ff033220a41d1a57d8125eab57bf5263783dfdcc18688b1dacc6ce9651ef8"
-+"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
-+"checksum target-lexicon 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6f4c118a7a38378f305a9e111fcb2f7f838c0be324bfb31a77ea04f7f6e684b4"
-+"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
-+"checksum termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e"
-+"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-+"checksum thiserror 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6f357d1814b33bc2dc221243f8424104bfe72dbe911d5b71b3816a2dff1c977e"
-+"checksum thiserror-impl 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2e25d25307eb8436894f727aba8f65d07adf02e5b35a13cebed48bd282bfef"
-+"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-+"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 traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079"
-+"checksum trybuild 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "987d6fdc45ddd7f3be5aa7386c8c8a844d1655c95b9ed948a9cd9cded8f2b79f"
-+"checksum typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "653be63c80a3296da5551e1bfd2cca35227e13cdd08c6668903ae2f4f77aa1f6"
-+"checksum typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6d2783fe2d6b8c1101136184eb41be8b1ad379e4657050b8aaff0c79ee7575f9"
-+"checksum unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
-+"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 unindent 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "63f18aa3b0e35fed5a0048f029558b1518095ffe2a0a31fb87c93dece93a4993"
-+"checksum unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f30360d7979f5e9c6e6cea48af192ea8fab4afb3cf72597154b8f08935bc9c7f"
-+"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
-+"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
-+"checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
-+"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
-+"checksum walrus 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "85ce93ab0c27412ba41d509f2410fa575ecbfdb4a6aba0e02e79e12c09745485"
-+"checksum walrus-macro 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8757b0da38353d55a9687f4dee68a8f441f980dd36e16ab07d6e6c673f505f76"
-+"checksum wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
-+"checksum wasm-webidl-bindings 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b5cae185868c6038a48f487b9af3766ee0c68d4a85fa3610c3a0522092b3cec1"
-+"checksum wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c702914acda5feeeffbc29e4d953e5b9ce79d8b98da4dbf18a77086e116c5470"
-+"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 which 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5475d47078209a02e60614f7ba5e645ef3ed60f771920ac1906d7c1cc65024c8"
-+"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 witx 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6d075344afebe51633c0302fc11698c2d6414f9d366c749db1af57710f112561"
-+"checksum zstd 0.5.1+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5c5d978b793ae64375b80baf652919b148f6a496ac8802922d9999f5a553194f"
-+"checksum zstd-safe 2.0.3+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bee25eac9753cfedd48133fa1736cbd23b774e253d89badbeac7d12b23848d3f"
-+"checksum zstd-sys 1.4.15+zstd.1.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "89719b034dc22d240d5b407fb0a3fe6d29952c181cff9a9f95c0bd40b4f8f7d8"
diff --git a/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix b/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
index c978f023936..eaecd1eb89b 100644
--- a/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
@@ -2,25 +2,25 @@
rustPlatform.buildRustPackage rec {
pname = "wasmtime";
- version = "v0.8.0";
+ version = "v0.12.0";
src = fetchFromGitHub {
owner = "bytecodealliance";
repo = "${pname}";
rev = "${version}";
- sha256 = "0az893srw49szvs5461bd165ffla4cc98gh42p3dwskwfkhpqjm4";
+ sha256 = "08dhk5s8rv41mjqbwfqwqmp6p6p9y7qc5yc76ljjd9l7j1phl7mr";
fetchSubmodules = true;
};
- cargoSha256 = "08b3rbnl7qwyfbwaqcb7z84sh0h94v18v6557hrf0dlil414v54i";
-
- cargoPatches = [ ./cargo-lock.patch ];
+ cargoSha256 = "0wqd2yy6ih1rcz1fq7x3aiqq1ma2nmif1w8r8x0vpxjxk395zil9";
nativeBuildInputs = [ python cmake clang ];
buildInputs = [ llvmPackages.libclang ] ++
lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+ doCheck = false; # https://github.com/bytecodealliance/wasmtime/issues/1197
+
meta = with lib; {
description = "Standalone JIT-style runtime for WebAssembly, using Cranelift";
homepage = https://github.com/CraneStation/wasmtime;