From 25107caeb2e7949aa596a0cd4d9c03af9b3d58f8 Mon Sep 17 00:00:00 2001
From: inokawa <48897392+inokawa@users.noreply.github.com>
Date: Fri, 6 Nov 2020 11:43:17 +0900
Subject: [PATCH 01/66] Fix duplication of lines in docs
---
.../npm-browser-packages/template-deep-dive/src-lib-rs.md | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-lib-rs.md b/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-lib-rs.md
index 1a0624a..de75b16 100644
--- a/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-lib-rs.md
+++ b/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-lib-rs.md
@@ -83,9 +83,8 @@ Either way, the contents of `utils.rs` define a single public function `set_pani
```rust
// When the `wee_alloc` feature is enabled, use `wee_alloc` as the global
- // When the `wee_alloc` feature is enabled, use `wee_alloc` as the global // allocator.
- // allocator. #[cfg(feature = "wee_alloc")]
- if #[cfg(feature = "wee_alloc")] { #[global_allocator]
+ // allocator.
+ if #[cfg(feature = "wee_alloc")] {
#[global_allocator] static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT;
```
From f66d321ba9bf08d327bccc3e2f2945c0c3b53f69 Mon Sep 17 00:00:00 2001
From: Brennon Loveless
Date: Wed, 6 Jan 2021 19:54:06 -0500
Subject: [PATCH 02/66] First look in the local path for the wasm-opt binary.
Use whatever binary is found and assume it works
---
src/wasm_opt.rs | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/wasm_opt.rs b/src/wasm_opt.rs
index 19f33c3..fb8b4bb 100644
--- a/src/wasm_opt.rs
+++ b/src/wasm_opt.rs
@@ -3,7 +3,7 @@
use crate::child;
use crate::install::{self, Tool};
use crate::PBAR;
-use binary_install::Cache;
+use binary_install::{Cache, Download};
use std::path::Path;
use std::process::Command;
@@ -58,6 +58,16 @@ pub fn find_wasm_opt(
cache: &Cache,
install_permitted: bool,
) -> Result {
+ // First attempt to look up in PATH. If found assume it works.
+ if let Ok(path) = which::which("wasm-opt") {
+ PBAR.info(&format!("found wasm-opt at {:?}", path));
+
+ match path.as_path().parent() {
+ Some(path) => return Ok(install::Status::Found(Download::at(path))),
+ _ => {}
+ }
+ }
+
let version = "version_78";
Ok(install::download_prebuilt(
&install::Tool::WasmOpt,
From fee0938c3417dbcd5d72544a8c1981d761590042 Mon Sep 17 00:00:00 2001
From: Brennon Loveless
Date: Wed, 6 Jan 2021 20:05:50 -0500
Subject: [PATCH 03/66] Feel better to explictly declare the arms instead of
using a match all
---
src/wasm_opt.rs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/wasm_opt.rs b/src/wasm_opt.rs
index fb8b4bb..d3ad4c6 100644
--- a/src/wasm_opt.rs
+++ b/src/wasm_opt.rs
@@ -64,7 +64,7 @@ pub fn find_wasm_opt(
match path.as_path().parent() {
Some(path) => return Ok(install::Status::Found(Download::at(path))),
- _ => {}
+ None => {}
}
}
From 2620c78081409e8c3ac9570279e063be7820a21a Mon Sep 17 00:00:00 2001
From: Andika Demas Riyandi
Date: Sat, 13 Feb 2021 10:07:17 +0700
Subject: [PATCH 04/66] Fix #958: Update binary-install in package.json to fix
security alert
---
npm/package-lock.json | 159 ++++++++++--------------------------------
npm/package.json | 2 +-
2 files changed, 38 insertions(+), 123 deletions(-)
diff --git a/npm/package-lock.json b/npm/package-lock.json
index 3ba62bc..a89cc71 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -5,12 +5,11 @@
"requires": true,
"dependencies": {
"axios": {
- "version": "0.19.0",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz",
- "integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==",
+ "version": "0.21.1",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
+ "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
"requires": {
- "follow-redirects": "1.5.10",
- "is-buffer": "^2.0.2"
+ "follow-redirects": "^1.10.0"
}
},
"balanced-match": {
@@ -19,16 +18,13 @@
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"binary-install": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/binary-install/-/binary-install-0.0.1.tgz",
- "integrity": "sha512-axr6lqB4ec/pkEOb/JMnZpfcroWv1zT48pVz1oQHG7XmGkS77vmdxmP1btuH79lWQdy9e2MVw/uW0D8siopkRg==",
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/binary-install/-/binary-install-0.1.1.tgz",
+ "integrity": "sha512-DqED0D/6LrS+BHDkKn34vhRqOGjy5gTMgvYZsGK2TpNbdPuz4h+MRlNgGv5QBRd7pWq/jylM4eKNCizgAq3kNQ==",
"requires": {
- "axios": "^0.19.0",
- "env-paths": "^2.2.0",
- "mkdirp": "^0.5.1",
- "rimraf": "^3.0.0",
- "tar": "^5.0.5",
- "universal-url": "^2.0.0"
+ "axios": "^0.21.1",
+ "rimraf": "^3.0.2",
+ "tar": "^6.1.0"
}
},
"brace-expansion": {
@@ -41,40 +37,24 @@
}
},
"chownr": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz",
- "integrity": "sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw=="
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "requires": {
- "ms": "2.0.0"
- }
- },
- "env-paths": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz",
- "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA=="
- },
"follow-redirects": {
- "version": "1.5.10",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
- "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
- "requires": {
- "debug": "=3.1.0"
- }
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz",
+ "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA=="
},
"fs-minipass": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.0.0.tgz",
- "integrity": "sha512-40Qz+LFXmd9tzYVnnBmZvFfvAADfUA14TXPK1s7IfElJTIZ97rA8w4Kin7Wt5JBrC3ShnnFJO/5vPjPEeJIq9A==",
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
+ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
"requires": {
"minipass": "^3.0.0"
}
@@ -97,11 +77,6 @@
"path-is-absolute": "^1.0.0"
}
},
- "hasurl": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/hasurl/-/hasurl-1.0.0.tgz",
- "integrity": "sha512-43ypUd3DbwyCT01UYpA99AEZxZ4aKtRxWGBHEIbjcOsUghd9YUON0C+JF6isNjaiwC/UF5neaUudy6JS9jZPZQ=="
- },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -116,16 +91,6 @@
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
- "is-buffer": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
- "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A=="
- },
- "lodash.sortby": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
- "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg="
- },
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
@@ -134,40 +99,27 @@
"brace-expansion": "^1.1.7"
}
},
- "minimist": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
- "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
- },
"minipass": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz",
- "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz",
+ "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==",
"requires": {
"yallist": "^4.0.0"
}
},
"minizlib": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz",
- "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==",
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
"requires": {
"minipass": "^3.0.0",
"yallist": "^4.0.0"
}
},
"mkdirp": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
- "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
},
"once": {
"version": "1.4.0",
@@ -182,64 +134,27 @@
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
- },
"rimraf": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz",
- "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"requires": {
"glob": "^7.1.3"
}
},
"tar": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/tar/-/tar-5.0.5.tgz",
- "integrity": "sha512-MNIgJddrV2TkuwChwcSNds/5E9VijOiw7kAc1y5hTNJoLDSuIyid2QtLYiCYNnICebpuvjhPQZsXwUL0O3l7OQ==",
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
+ "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
"requires": {
- "chownr": "^1.1.3",
+ "chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
"minipass": "^3.0.0",
- "minizlib": "^2.1.0",
- "mkdirp": "^0.5.0",
+ "minizlib": "^2.1.1",
+ "mkdirp": "^1.0.3",
"yallist": "^4.0.0"
}
},
- "tr46": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
- "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=",
- "requires": {
- "punycode": "^2.1.0"
- }
- },
- "universal-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/universal-url/-/universal-url-2.0.0.tgz",
- "integrity": "sha512-3DLtXdm/G1LQMCnPj+Aw7uDoleQttNHp2g5FnNQKR6cP6taNWS1b/Ehjjx4PVyvejKi3TJyu8iBraKM4q3JQPg==",
- "requires": {
- "hasurl": "^1.0.0",
- "whatwg-url": "^7.0.0"
- }
- },
- "webidl-conversions": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
- "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
- },
- "whatwg-url": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
- "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
- "requires": {
- "lodash.sortby": "^4.7.0",
- "tr46": "^1.0.1",
- "webidl-conversions": "^4.0.2"
- }
- },
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
diff --git a/npm/package.json b/npm/package.json
index c7036f7..a903a48 100644
--- a/npm/package.json
+++ b/npm/package.json
@@ -30,6 +30,6 @@
},
"homepage": "https://github.com/rustwasm/wasm-pack#readme",
"dependencies": {
- "binary-install": "0.0.1"
+ "binary-install": "^0.1.0"
}
}
From 853e9e95f5f43ccb2a8367264f650f00a6e6c958 Mon Sep 17 00:00:00 2001
From: Philip Crotwell
Date: Fri, 7 May 2021 09:14:17 -0400
Subject: [PATCH 05/66] remove greenkeeper
Greenkeeper said goodbye in June 2020, so no longer good to link to as an example.
Alternative would be to link to Snyk instead?
---
docs/src/introduction.md | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/docs/src/introduction.md b/docs/src/introduction.md
index b00dd12..06b6456 100644
--- a/docs/src/introduction.md
+++ b/docs/src/introduction.md
@@ -6,12 +6,10 @@ This tool seeks to be a one-stop shop for building and working with rust-
generated WebAssembly that you would like to interop with JavaScript, in the
browser or with Node.js. `wasm-pack` helps you build rust-generated
WebAssembly packages that you could publish to the npm registry, or otherwise use
-alongside any javascript packages in workflows that you already use, such as [webpack]
-or [greenkeeper].
+alongside any javascript packages in workflows that you already use, such as [webpack].
[bundler-support]: https://github.com/rustwasm/team/blob/master/goals/bundler-integration.md#details
[webpack]: https://webpack.js.org/
-[greenkeeper]: https://greenkeeper.io/
This project is a part of the [rust-wasm] group. You can find more info by
visiting that repo!
From 13c2fc64b3fb0ceba3f2fe8f6bec61923ba1d4ce Mon Sep 17 00:00:00 2001
From: pione30
Date: Sat, 8 May 2021 19:56:03 +0900
Subject: [PATCH 06/66] fix(docs): remove duplicated "is"
---
.../npm-browser-packages/template-deep-dive/wee_alloc.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
index 8dd741d..68102e6 100644
--- a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
+++ b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
@@ -15,7 +15,7 @@ responsive.
[An analysis](http://fitzgeraldnick.com/2018/02/09/wee-alloc.html) suggests that over half of the bare minimum WebAssembly memory footprint is required by Rust's default memory allocator. Yet, WebAssembly code often does not require a sophisticated allocator, since it often just requests a couple of large initial allocations.
`wee_alloc` trades off size for speed. It has a tiny code-size
-footprint, but it is is not competitive in terms of performance with the
+footprint, but it is not competitive in terms of performance with the
default global allocator, for example.
For even more details, see the [`wee_alloc`
From bc612d970ab3d6ccc0755dcd4569250bb6aaa5d2 Mon Sep 17 00:00:00 2001
From: Martijn Swaagman
Date: Tue, 25 May 2021 12:16:37 +0200
Subject: [PATCH 07/66] [doc] fix toc links
---
.../npm-browser-packages/template-deep-dive/src-utils-rs.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-utils-rs.md b/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-utils-rs.md
index 0c557d1..92ad6fe 100644
--- a/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-utils-rs.md
+++ b/docs/src/tutorials/npm-browser-packages/template-deep-dive/src-utils-rs.md
@@ -5,8 +5,8 @@ The purpose of `utils.rs` is to define the `utils` module, which contains a sing
If the `console_error_panic_hook` feature is not enabled, then `set_panic_hook` is defined to be an inlined empty function. So, there is no run-time performance or code-size penalty incurred by its use.
We will discuss:
-1. [Defining `set_panic_hook`](#a1-defining-set_panic_hook)
-2. [What is `console_error_panic_hook`?](#a2-what-is-console_error_panic_hook)
+1. [Defining `set_panic_hook`](#1-defining-set_panic_hook)
+2. [What is `console_error_panic_hook`?](#2-what-is-console_error_panic_hook)
---
From a763657faa7de242d72afef8575065640d1ed652 Mon Sep 17 00:00:00 2001
From: Gunnlaugur Thor Briem
Date: Wed, 2 Jun 2021 15:33:26 +0000
Subject: [PATCH 08/66] cleanup: remove outdated TOC heading
That section is gone
---
.../npm-browser-packages/template-deep-dive/wee_alloc.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
index 8dd741d..9a040b4 100644
--- a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
+++ b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
@@ -2,7 +2,6 @@
1. [What is `wee_alloc`?](#what-is-wee_alloc)
2. [Enabling `wee_alloc`](#enabling-wee_alloc)
-3. [Rust nightly](#rust-nightly)
## What is `wee_alloc`?
From 5d959e99600dedd7257d037063097d64f3a40ecd Mon Sep 17 00:00:00 2001
From: Sebastian Imlay
Date: Thu, 3 Jun 2021 15:49:24 -0700
Subject: [PATCH 09/66] Updated to use new BinaryInstall api
---
npm/binary.js | 2 +-
npm/package-lock.json | 216 +++++++++++++++++++++++++++++++++++++++++-
2 files changed, 216 insertions(+), 2 deletions(-)
diff --git a/npm/binary.js b/npm/binary.js
index 4b987c6..15a12a0 100644
--- a/npm/binary.js
+++ b/npm/binary.js
@@ -25,7 +25,7 @@ const getBinary = () => {
const author = "rustwasm";
const name = "wasm-pack";
const url = `https://github.com/${author}/${name}/releases/download/v${version}/${name}-v${version}-${platform}.tar.gz`;
- return new Binary(url, { name });
+ return new Binary(name, url );
};
const run = () => {
diff --git a/npm/package-lock.json b/npm/package-lock.json
index a89cc71..e0c7f94 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -1,8 +1,222 @@
{
"name": "wasm-pack",
"version": "0.9.1",
- "lockfileVersion": 1,
+ "lockfileVersion": 2,
"requires": true,
+ "packages": {
+ "": {
+ "name": "wasm-pack",
+ "version": "0.9.1",
+ "hasInstallScript": true,
+ "license": "MIT OR Apache-2.0",
+ "dependencies": {
+ "binary-install": "^0.1.0"
+ },
+ "bin": {
+ "wasm-pack": "run.js"
+ }
+ },
+ "node_modules/axios": {
+ "version": "0.21.1",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
+ "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
+ "dependencies": {
+ "follow-redirects": "^1.10.0"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
+ },
+ "node_modules/binary-install": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/binary-install/-/binary-install-0.1.1.tgz",
+ "integrity": "sha512-DqED0D/6LrS+BHDkKn34vhRqOGjy5gTMgvYZsGK2TpNbdPuz4h+MRlNgGv5QBRd7pWq/jylM4eKNCizgAq3kNQ==",
+ "dependencies": {
+ "axios": "^0.21.1",
+ "rimraf": "^3.0.2",
+ "tar": "^6.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/chownr": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz",
+ "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/fs-minipass": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
+ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
+ },
+ "node_modules/glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "node_modules/minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minipass": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz",
+ "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minizlib": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+ "dependencies": {
+ "minipass": "^3.0.0",
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ }
+ },
+ "node_modules/tar": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
+ "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+ "dependencies": {
+ "chownr": "^2.0.0",
+ "fs-minipass": "^2.0.0",
+ "minipass": "^3.0.0",
+ "minizlib": "^2.1.1",
+ "mkdirp": "^1.0.3",
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
+ },
+ "node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+ }
+ },
"dependencies": {
"axios": {
"version": "0.21.1",
From 23452046ecc5531082e3dc2061b27fee7c77c82c Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Mon, 18 May 2020 14:41:42 +1200
Subject: [PATCH 10/66] Passes `extra_options` to `cargo build --tests` when
running `wasm-pack test`.
Issue #698
---
src/build/mod.rs | 19 ++++++++++++++--
src/command/test.rs | 2 +-
tests/all/test.rs | 53 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 71 insertions(+), 3 deletions(-)
diff --git a/src/build/mod.rs b/src/build/mod.rs
index f87133d..c19d12a 100644
--- a/src/build/mod.rs
+++ b/src/build/mod.rs
@@ -112,11 +112,24 @@ pub fn cargo_build_wasm(
Ok(())
}
-/// Run `cargo build --tests` targetting `wasm32-unknown-unknown`.
+/// Runs `cargo build --tests` targeting `wasm32-unknown-unknown`.
///
/// This generates the `Cargo.lock` file that we use in order to know which version of
/// wasm-bindgen-cli to use when running tests.
-pub fn cargo_build_wasm_tests(path: &Path, debug: bool) -> Result<(), Error> {
+///
+/// Note that the command to build tests and the command to run tests must use the same parameters, i.e. features to be
+/// disabled / enabled must be consistent for both `cargo build` and `cargo test`.
+///
+/// # Parameters
+///
+/// * `path`: Path to the crate directory to build tests.
+/// * `debug`: Whether to build tests in `debug` mode.
+/// * `extra_options`: Additional parameters to pass to `cargo` when building tests.
+pub fn cargo_build_wasm_tests(
+ path: &Path,
+ debug: bool,
+ extra_options: &[String],
+) -> Result<(), Error> {
let mut cmd = Command::new("cargo");
cmd.current_dir(path).arg("build").arg("--tests");
@@ -131,6 +144,8 @@ pub fn cargo_build_wasm_tests(path: &Path, debug: bool) -> Result<(), Error> {
cmd.arg("--target").arg("wasm32-unknown-unknown");
+ cmd.args(extra_options);
+
child::run(cmd, "cargo build").context("Compilation of your program failed")?;
Ok(())
}
diff --git a/src/command/test.rs b/src/command/test.rs
index cc77a10..2f1a7e4 100644
--- a/src/command/test.rs
+++ b/src/command/test.rs
@@ -243,7 +243,7 @@ impl Test {
fn step_build_tests(&mut self) -> Result<(), Error> {
info!("Compiling tests to wasm...");
- build::cargo_build_wasm_tests(&self.crate_path, !self.release)?;
+ build::cargo_build_wasm_tests(&self.crate_path, !self.release, &self.extra_options)?;
info!("Finished compiling tests to wasm.");
Ok(())
diff --git a/tests/all/test.rs b/tests/all/test.rs
index e0e204a..70083c9 100644
--- a/tests/all/test.rs
+++ b/tests/all/test.rs
@@ -337,3 +337,56 @@ fn test_output_is_printed_once_in_both_stdout_and_failures() {
out.matches("YABBA DABBA DOO").count() == log_cnt * 2
}));
}
+
+#[test]
+fn extra_options_is_passed_to_cargo_when_building_tests() {
+ let fixture = fixture::Fixture::new();
+ fixture
+ .readme()
+ .file(
+ "Cargo.toml",
+ r#"
+ [package]
+ name = "foo"
+ version = "0.1.0"
+ authors = []
+
+ [dev-dependencies]
+ wasm-bindgen-test = "0.2"
+
+ [features]
+ default = ["native"]
+ native = []
+ "#,
+ )
+ .file(
+ "src/lib.rs",
+ r#"
+ pub fn foo() -> u32 {
+ #[cfg(feature = "native")]
+ compile_error!("Test should pass through `--no-default-features` for this to pass.");
+
+ 1
+ }
+ "#,
+ )
+ .file(
+ "tests/foo.rs",
+ r#"
+ extern crate wasm_bindgen_test;
+ use wasm_bindgen_test::*;
+
+ #[wasm_bindgen_test]
+ fn smoke() {
+ foo::foo();
+ }
+ "#,
+ )
+ .install_local_wasm_bindgen();
+ let _lock = fixture.lock();
+ fixture
+ .wasm_pack()
+ .args(&["test", "--node", "--", "--no-default-features"])
+ .assert()
+ .success();
+}
From 44e826e8200cb3387a151c4d391070f25b6e8eac Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Mon, 18 May 2020 14:55:44 +1200
Subject: [PATCH 11/66] Updates `CHANGELOG.md`.
---
CHANGELOG.md | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 17eb651..e00db72 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,20 @@
# Changelog
+## 🤍 Unreleased
+
+- ### 🤕 Fixes
+
+ - **Pass through extra options when building tests - [azriel91], [issue/698] [pull/851]**
+
+ `wasm-pack test` accepts extra options to pass through to `cargo` when running tests.
+ Under the hood, this runs `cargo build` before `cargo test`, and the additional options were only passed through to the `test` command. This meant that crates that enabled native features by default could not be built using `wasm-pack`, as it would attempt to build tests for the `wasm32-unknown-unknown` target with the native features enabled.
+
+ This PR passes through the extra options to `cargo` when building the tests as well.
+
+ [azriel91]: https://github.com/azriel91
+ [pull/851]: https://github.com/rustwasm/wasm-pack/pull/851
+ [issue/698]: https://github.com/rustwasm/wasm-pack/issues/698
+
## ☁️ 0.9.1
- ### 🤕 Fixes
From d1cd431a51c4b7a7212b9caf9cd67bbcf8f8341f Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Mon, 18 May 2020 19:39:16 +1200
Subject: [PATCH 12/66] Don't pass through test filter to `cargo build`.
---
src/command/test.rs | 10 +++++++++-
tests/all/test.rs | 14 +++++++++++++-
2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/src/command/test.rs b/src/command/test.rs
index 2f1a7e4..10e8737 100644
--- a/src/command/test.rs
+++ b/src/command/test.rs
@@ -243,7 +243,15 @@ impl Test {
fn step_build_tests(&mut self) -> Result<(), Error> {
info!("Compiling tests to wasm...");
- build::cargo_build_wasm_tests(&self.crate_path, !self.release, &self.extra_options)?;
+ // If the user has run `wasm-pack test -- --features "f1" -- test_name`, then we want to only pass through
+ // `--features "f1"` to `cargo build`
+ let extra_options =
+ if let Some(index) = self.extra_options.iter().position(|arg| arg == "--") {
+ &self.extra_options[..index]
+ } else {
+ &self.extra_options
+ };
+ build::cargo_build_wasm_tests(&self.crate_path, !self.release, extra_options)?;
info!("Finished compiling tests to wasm.");
Ok(())
diff --git a/tests/all/test.rs b/tests/all/test.rs
index 70083c9..a013818 100644
--- a/tests/all/test.rs
+++ b/tests/all/test.rs
@@ -380,13 +380,25 @@ fn extra_options_is_passed_to_cargo_when_building_tests() {
fn smoke() {
foo::foo();
}
+
+ #[wasm_bindgen_test]
+ fn fire() {
+ panic!("This should be filtered from test execution.");
+ }
"#,
)
.install_local_wasm_bindgen();
let _lock = fixture.lock();
fixture
.wasm_pack()
- .args(&["test", "--node", "--", "--no-default-features"])
+ .args(&[
+ "test",
+ "--node",
+ "--",
+ "--no-default-features",
+ "--",
+ "smoke",
+ ])
.assert()
.success();
}
From 37685515582f3e34a320d6213c5d733a55a9165a Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Sat, 3 Oct 2020 12:14:41 +1300
Subject: [PATCH 13/66] Update `structopt` to `0.3`.
---
Cargo.lock | 42 +++++++++++++++++++++++++++++++++++-------
Cargo.toml | 2 +-
2 files changed, 36 insertions(+), 8 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index ac2e51b..8b618e1 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1,5 +1,7 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
+version = 3
+
[[package]]
name = "adler32"
version = "1.0.4"
@@ -1260,6 +1262,30 @@ dependencies = [
"treeline",
]
+[[package]]
+name = "proc-macro-error"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+dependencies = [
+ "proc-macro-error-attr",
+ "proc-macro2 1.0.8",
+ "quote 1.0.2",
+ "syn 1.0.14",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro-error-attr"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
+dependencies = [
+ "proc-macro2 1.0.8",
+ "quote 1.0.2",
+ "version_check",
+]
+
[[package]]
name = "proc-macro2"
version = "0.4.30"
@@ -1819,24 +1845,26 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
[[package]]
name = "structopt"
-version = "0.2.18"
+version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16c2cdbf9cc375f15d1b4141bc48aeef444806655cd0e904207edc8d68d86ed7"
+checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c"
dependencies = [
"clap",
+ "lazy_static 1.4.0",
"structopt-derive",
]
[[package]]
name = "structopt-derive"
-version = "0.2.18"
+version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53010261a84b37689f9ed7d395165029f9cc7abb9f56bbfe86bee2597ed25107"
+checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
dependencies = [
"heck",
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "syn 0.15.44",
+ "proc-macro-error",
+ "proc-macro2 1.0.8",
+ "quote 1.0.2",
+ "syn 1.0.14",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 1b91821..158774b 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -30,7 +30,7 @@ serde_ignored = "0.0.4"
serde_json = "1.0.26"
strsim = "0.8.0"
siphasher = "0.2.3"
-structopt = "0.2"
+structopt = "0.3"
toml = "0.4"
which = "2.0.0"
binary-install = "0.0.2"
From b75773a2fe0ab01f7de207e076d92cbc6a6812e4 Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Sat, 3 Oct 2020 12:15:08 +1300
Subject: [PATCH 14/66] Use `--manifest-path` for `Cargo.toml`, and modify
`AppSettings`.
This allows the extra arguments to be forwarded through to `cargo`
without requiring `--` beforehand.
---
src/command/test.rs | 8 ++++++--
tests/all/test.rs | 9 +--------
2 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/src/command/test.rs b/src/command/test.rs
index 10e8737..388ef01 100644
--- a/src/command/test.rs
+++ b/src/command/test.rs
@@ -12,12 +12,17 @@ use log::info;
use manifest;
use std::path::PathBuf;
use std::time::Instant;
+use structopt::clap::AppSettings;
use test::{self, webdriver};
#[derive(Debug, Default, StructOpt)]
+#[structopt(
+ setting = AppSettings::AllowLeadingHyphen,
+ setting = AppSettings::TrailingVarArg,
+)]
/// Everything required to configure the `wasm-pack test` command.
pub struct TestOptions {
- #[structopt(parse(from_os_str))]
+ #[structopt(parse(from_os_str), long = "manifest-path")]
/// The path to the Rust crate. If not set, searches up the path from the current dirctory.
pub path: Option,
@@ -74,7 +79,6 @@ pub struct TestOptions {
/// Build with the release profile.
pub release: bool,
- #[structopt(last = true)]
/// List of extra options to pass to `cargo test`
pub extra_options: Vec,
}
diff --git a/tests/all/test.rs b/tests/all/test.rs
index a013818..bc95e8d 100644
--- a/tests/all/test.rs
+++ b/tests/all/test.rs
@@ -391,14 +391,7 @@ fn extra_options_is_passed_to_cargo_when_building_tests() {
let _lock = fixture.lock();
fixture
.wasm_pack()
- .args(&[
- "test",
- "--node",
- "--",
- "--no-default-features",
- "--",
- "smoke",
- ])
+ .args(&["test", "--node", "--no-default-features", "--", "smoke"])
.assert()
.success();
}
From f4f658859599600e9b146bce9ac426c550c4c2b0 Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Sat, 3 Oct 2020 12:34:09 +1300
Subject: [PATCH 15/66] Document why we use `AppSettings`.
---
src/command/test.rs | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/command/test.rs b/src/command/test.rs
index 388ef01..2fc569f 100644
--- a/src/command/test.rs
+++ b/src/command/test.rs
@@ -17,7 +17,10 @@ use test::{self, webdriver};
#[derive(Debug, Default, StructOpt)]
#[structopt(
+ // Allows unknown `--option`s to be parsed as positional arguments, so we can forward it to `cargo`.
setting = AppSettings::AllowLeadingHyphen,
+
+ // Allows `--` to be parsed as an argument, so we can forward it to `cargo`.
setting = AppSettings::TrailingVarArg,
)]
/// Everything required to configure the `wasm-pack test` command.
From 7a7abf934eb03eee490e2b39afc3bd74968cd540 Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Sun, 18 Oct 2020 13:42:22 +1300
Subject: [PATCH 16/66] Parse path and extra options together, then split them
after.
This allows `wasm-pack` to have the same command line interface as
`cargo` to pass through options such as `--no-default-features`.
---
src/command/test.rs | 32 ++++++++++++++++++++++++--------
1 file changed, 24 insertions(+), 8 deletions(-)
diff --git a/src/command/test.rs b/src/command/test.rs
index 2fc569f..9c5ab9b 100644
--- a/src/command/test.rs
+++ b/src/command/test.rs
@@ -11,6 +11,7 @@ use lockfile::Lockfile;
use log::info;
use manifest;
use std::path::PathBuf;
+use std::str::FromStr;
use std::time::Instant;
use structopt::clap::AppSettings;
use test::{self, webdriver};
@@ -25,10 +26,6 @@ use test::{self, webdriver};
)]
/// Everything required to configure the `wasm-pack test` command.
pub struct TestOptions {
- #[structopt(parse(from_os_str), long = "manifest-path")]
- /// The path to the Rust crate. If not set, searches up the path from the current dirctory.
- pub path: Option,
-
#[structopt(long = "node")]
/// Run the tests in Node.js.
pub node: bool,
@@ -82,8 +79,14 @@ pub struct TestOptions {
/// Build with the release profile.
pub release: bool,
- /// List of extra options to pass to `cargo test`
- pub extra_options: Vec,
+ /// Path to the Rust crate, and extra options to pass to `cargo test`.
+ ///
+ /// If the path is not provided, this command searches up the path from the current dirctory
+ ///
+ /// This is a workaround to allow wasm pack to provide the same command line interface as `cargo`.
+ /// See for more information.
+ #[structopt(allow_hyphen_values = true)]
+ pub path_and_extra_options: Vec,
}
/// A configured `wasm-pack test` command.
@@ -111,7 +114,6 @@ impl Test {
/// Construct a test command from the given options.
pub fn try_from_opts(test_opts: TestOptions) -> Result {
let TestOptions {
- path,
node,
mode,
headless,
@@ -122,9 +124,23 @@ impl Test {
geckodriver,
safari,
safaridriver,
- extra_options,
+ mut path_and_extra_options,
} = test_opts;
+ let first_arg_is_path = path_and_extra_options
+ .get(0)
+ .map(|first_arg| !first_arg.starts_with("-"))
+ .unwrap_or(false);
+
+ let (path, extra_options) = if first_arg_is_path {
+ let path = PathBuf::from_str(&path_and_extra_options.remove(0))?;
+ let extra_options = path_and_extra_options;
+
+ (Some(path), extra_options)
+ } else {
+ (None, path_and_extra_options)
+ };
+
let crate_path = get_crate_path(path)?;
let crate_data = manifest::CrateData::new(&crate_path, None)?;
let any_browser = chrome || firefox || safari;
From 1f13f25d0fa2d9628d60273f1725bddeda04e1b9 Mon Sep 17 00:00:00 2001
From: Azriel Hoh
Date: Mon, 28 Jun 2021 14:57:37 +1200
Subject: [PATCH 17/66] Update tests with newer crate versions.
---
tests/all/build.rs | 4 ++--
tests/all/download.rs | 4 ++--
tests/all/lockfile.rs | 12 ++++++------
tests/all/log_level.rs | 1 -
tests/all/utils/fixture.rs | 14 +++++++-------
5 files changed, 17 insertions(+), 18 deletions(-)
diff --git a/tests/all/build.rs b/tests/all/build.rs
index 7905370..0c59ba8 100644
--- a/tests/all/build.rs
+++ b/tests/all/build.rs
@@ -146,8 +146,8 @@ fn dash_dash_web_target_has_error_on_old_bindgen() {
let output = String::from_utf8(cmd.get_output().stderr.clone()).unwrap();
assert!(
- output.contains("0.2.39"),
- "Output did not contain '0.2.39', output was {}",
+ output.contains("Please update your project to wasm-bindgen version >= 0.2.39"),
+ "Output did not contain 'Please update your project to wasm-bindgen version >= 0.2.39', output was {}",
output
);
}
diff --git a/tests/all/download.rs b/tests/all/download.rs
index 3f5dec1..05d9f6d 100644
--- a/tests/all/download.rs
+++ b/tests/all/download.rs
@@ -12,7 +12,7 @@ fn can_download_prebuilt_wasm_bindgen() {
let dir = tempfile::TempDir::new().unwrap();
let cache = Cache::at(dir.path());
if let install::Status::Found(dl) =
- install::download_prebuilt(&Tool::WasmBindgen, &cache, "0.2.37", true).unwrap()
+ install::download_prebuilt(&Tool::WasmBindgen, &cache, "0.2.74", true).unwrap()
{
assert!(dl.binary("wasm-bindgen").unwrap().is_file());
assert!(dl.binary("wasm-bindgen-test-runner").unwrap().is_file())
@@ -29,7 +29,7 @@ fn can_download_prebuilt_wasm_bindgen() {
))]
fn downloading_prebuilt_wasm_bindgen_handles_http_errors() {
let dir = tempfile::TempDir::new().unwrap();
- let bad_version = "0.2.37-some-trailing-version-stuff-that-does-not-exist";
+ let bad_version = "0.2.74-some-trailing-version-stuff-that-does-not-exist";
let cache = Cache::at(dir.path());
let result = install::download_prebuilt(&Tool::WasmBindgen, &cache, bad_version, true);
assert!(result.is_err());
diff --git a/tests/all/lockfile.rs b/tests/all/lockfile.rs
index 1a42ce8..f7a8784 100644
--- a/tests/all/lockfile.rs
+++ b/tests/all/lockfile.rs
@@ -8,7 +8,7 @@ fn it_gets_wasm_bindgen_version() {
fixture.cargo_check();
let data = CrateData::new(&fixture.path, None).unwrap();
let lock = Lockfile::new(&data).unwrap();
- assert_eq!(lock.wasm_bindgen_version(), Some("0.2.37"),);
+ assert_eq!(lock.wasm_bindgen_version(), Some("0.2.74"),);
}
#[test]
@@ -17,7 +17,7 @@ fn it_gets_wasm_bindgen_test_version() {
fixture.cargo_check();
let data = CrateData::new(&fixture.path, None).unwrap();
let lock = Lockfile::new(&data).unwrap();
- assert_eq!(lock.wasm_bindgen_test_version(), Some("0.2.37"),);
+ assert_eq!(lock.wasm_bindgen_test_version(), Some("0.3.24"),);
}
#[test]
@@ -46,7 +46,7 @@ fn it_gets_wasm_bindgen_version_in_crate_inside_workspace() {
crate-type = ["cdylib"]
[dependencies]
- wasm-bindgen = "=0.2.37"
+ wasm-bindgen = "=0.2.74"
"#,
)
.file(
@@ -62,7 +62,7 @@ fn it_gets_wasm_bindgen_version_in_crate_inside_workspace() {
fixture.cargo_check();
let data = CrateData::new(&fixture.path.join("blah"), None).unwrap();
let lock = Lockfile::new(&data).unwrap();
- assert_eq!(lock.wasm_bindgen_version(), Some("0.2.37"),);
+ assert_eq!(lock.wasm_bindgen_version(), Some("0.2.74"),);
}
#[test]
@@ -91,7 +91,7 @@ fn it_gets_wasm_bindgen_version_from_dependencies() {
crate-type = ["cdylib"]
[dependencies]
- wasm-bindgen = "=0.2.37"
+ wasm-bindgen = "=0.2.74"
"#,
)
.file(
@@ -130,5 +130,5 @@ fn it_gets_wasm_bindgen_version_from_dependencies() {
fixture.cargo_check();
let data = CrateData::new(&fixture.path.join("parent"), None).unwrap();
let lock = Lockfile::new(&data).unwrap();
- assert_eq!(lock.wasm_bindgen_version(), Some("0.2.37"),);
+ assert_eq!(lock.wasm_bindgen_version(), Some("0.2.74"),);
}
diff --git a/tests/all/log_level.rs b/tests/all/log_level.rs
index d067742..95a08ca 100644
--- a/tests/all/log_level.rs
+++ b/tests/all/log_level.rs
@@ -9,7 +9,6 @@ fn matches_info() -> impl Predicate + PredicateReflection {
contains("[INFO]: Checking for the Wasm target...")
.and(contains("[INFO]: Compiling to Wasm..."))
.and(contains("[INFO]: License key is set in Cargo.toml but no LICENSE file(s) were found; Please add the LICENSE file(s) to your project directory"))
- .and(contains("[INFO]: Installing wasm-bindgen..."))
.and(contains("[INFO]: Optimizing wasm binaries with `wasm-opt`..."))
.and(contains("[INFO]: :-) Done in "))
.and(contains("[INFO]: :-) Your wasm pkg is ready to publish at "))
diff --git a/tests/all/utils/fixture.rs b/tests/all/utils/fixture.rs
index 6c7c1c4..e51d904 100644
--- a/tests/all/utils/fixture.rs
+++ b/tests/all/utils/fixture.rs
@@ -143,10 +143,10 @@ impl Fixture {
# bindgen downloaded is what we expect, and if `=` is
# removed then it will download whatever the newest version
# of wasm-bindgen is which may not be what's listed here.
- wasm-bindgen = "=0.2.37"
+ wasm-bindgen = "=0.2.74"
[dev-dependencies]
- wasm-bindgen-test = "0.2"
+ wasm-bindgen-test = "0.3"
"#,
name
),
@@ -221,7 +221,7 @@ impl Fixture {
static INSTALL_WASM_BINDGEN: Once = Once::new();
let cache = self.cache();
- let version = "0.2.37";
+ let version = "0.2.74";
let download = || {
if let Ok(download) =
@@ -417,7 +417,7 @@ pub fn no_cdylib() -> Fixture {
wasm-bindgen = "0.2"
[dev-dependencies]
- wasm-bindgen-test = "0.2"
+ wasm-bindgen-test = "0.3"
"#,
);
fixture
@@ -590,7 +590,7 @@ pub fn transitive_dependencies() -> Fixture {
project_b = { path = "../project_b" }
[dev-dependencies]
- wasm-bindgen-test = "0.2"
+ wasm-bindgen-test = "0.3"
"#,
);
fixture.file(
@@ -639,7 +639,7 @@ pub fn transitive_dependencies() -> Fixture {
project_b = { path = "../project_b" }
[dev-dependencies]
- wasm-bindgen-test = "0.2"
+ wasm-bindgen-test = "0.3"
"#,
);
fixture.file(
@@ -688,7 +688,7 @@ pub fn transitive_dependencies() -> Fixture {
wasm-bindgen = "0.2"
[dev-dependencies]
- wasm-bindgen-test = "0.2"
+ wasm-bindgen-test = "0.3"
"#,
);
fixture.file(
From 62d25113f438ff56422295e4b91aa88faa16ae39 Mon Sep 17 00:00:00 2001
From: Ashley Williams
Date: Mon, 21 Dec 2020 09:50:02 -0600
Subject: [PATCH 18/66] fix(ci): remove appveyor and travis
---
.appveyor.yml | 44 -----------------------
.travis.yml | 99 ---------------------------------------------------
2 files changed, 143 deletions(-)
delete mode 100644 .appveyor.yml
delete mode 100644 .travis.yml
diff --git a/.appveyor.yml b/.appveyor.yml
deleted file mode 100644
index 58bb395..0000000
--- a/.appveyor.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-environment:
- global:
- RUSTFLAGS: -C target-feature=+crt-static
-
-install:
- - ps: Install-Product node 10
- - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
- - rustup-init.exe -y --default-host x86_64-pc-windows-msvc --default-toolchain stable
- - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
- - set RUST_BACKTRACE=1
- - rustup target add wasm32-unknown-unknown --toolchain stable
- - rustc -V
- - cargo -V
-
-build: false
-
-test_script:
- - cargo test --release --tests --locked
- - cargo test --release --doc
-
-before_deploy:
- - ps: |
- $NAME = "wasm-pack-${env:APPVEYOR_REPO_TAG_NAME}-x86_64-pc-windows-msvc"
- New-Item -Path $NAME -ItemType directory
- Copy-Item target/release/wasm-pack.exe "${NAME}/"
- Copy-Item target/release/wasm-pack.exe wasm-pack-init.exe
- Copy-Item LICENSE-MIT "${NAME}/"
- Copy-Item LICENSE-APACHE "${NAME}/"
- Copy-Item README.md "${NAME}/"
- 7z a -ttar "${NAME}.tar" "${NAME}"
- 7z a "${NAME}.tar.gz" "${NAME}.tar"
- Push-AppveyorArtifact "${NAME}.tar.gz"
- Push-AppveyorArtifact wasm-pack-init.exe
-
-deploy:
- artifact: /.*\.tar.gz/, /.*\.exe/
- description: 'Appveyor Automated Release'
- provider: GitHub
- draft: false
- prerelease: false
- auth_token:
- secure: iHsRUqwGf/Zh7OuYpHOWQL8buaOL+c8/6kXLRly8V2j0LCUo7CcDs0NxQ0vl2bhZ
- on:
- appveyor_repo_tag: true
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 2de24c4..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,99 +0,0 @@
-language: rust
-sudo: false
-
-INSTALL_NODE_VIA_NVM: &INSTALL_NODE_VIA_NVM
- |
- rustup target add wasm32-unknown-unknown
- curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
- source ~/.nvm/nvm.sh
- nvm install lts/carbon
-
-# Cache `cargo install`ed tools, but don't cache the project's `target`
-# directory (which ends up over-caching and filling all disk space!)
-cache:
- directories:
- - /home/travis/.cargo
-
-GH_TOKEN: &GH_TOKEN
- secure: fx0rR5Ii1KcsydexE6QpkDbqItNdj3Lt6L5yFZaKKB/ejw9M555NkXA+0GZqV0sLZ54qfR8zTaXAf6eBFKgcG9etaCl7vTXqsvDrlssth82oki1zufP39uuoOy4WgFq8OfACOtUq7opDAgYmpaGzlFiny+c5j7asGwDtAU1Fc3JeJsvAnxHKg9+0spXFD6kBQd5CWpqDXv2rLFK0b8IM2fHAzd0PiJZQWqz//2Cj/r9rTiewtIzqigctAfOgFwYoQvfdM+0mKb4pefG+zXEGfxxQr4r5hqZ6UMO7hto3Jnm9LRjNR8dNaDQCqQ0bkdLTAMTC3nV/gZPM679yQU3KHueVjg9pleNzuKnuBgYmH9+BrlG1dW68kqA+6Xh+wIJYrLuagWhJDlCtiU6PM5QAbFg3mabPIBG3M2IHTrOVATme+iW5vpROARhgjbQEF235DyvZaT+Tml3+PY+PfcRax2DVUhvGQViv4tzppbT0PjjBlEbGct49cFLGdqZIJBiVrYW24I2QkENTnUgZsFIBuJlVCBHZwZlLo9ldVvu4XTMKw65z42zoTzobjtbC1QPEZPiaJXSxC7W569fqL/ORXwGToFk6rQjXwEqDP2okGiusR75LXrZD6qFibNpqeypRFtqOzntsOfTUGrlaN1yTt/6dz0V0j9uI7a9/CHVcblI=
-
-DEPLOY_TO_GITHUB: &DEPLOY_TO_GITHUB
- before_deploy:
- - git config --local user.name "Ashley Williams"
- - git config --local user.email "ashley666ashley@gmail.com"
- - name="wasm-pack-$TRAVIS_TAG-$TARGET"
- - mkdir $name
- - cp target/$TARGET/release/wasm-pack $name/
- - cp README.md LICENSE-MIT LICENSE-APACHE $name/
- - tar czvf $name.tar.gz $name
- deploy:
- provider: releases
- api_key: *GH_TOKEN
- file: wasm-pack-$TRAVIS_TAG-$TARGET.tar.gz
- skip_cleanup: true
- on:
- branch: master
- tags: true
-
-matrix:
- include:
-
- - name: Tests
- env: RUST_BACKTRACE=1
- rust: stable
- addons:
- firefox: latest
- chrome: stable
- install:
- - *INSTALL_NODE_VIA_NVM
- script:
- - cargo test --all --locked
- - rustup component add rustfmt-preview
- - cargo fmt --version
- - cargo fmt --all -- --check
- - rustup component add clippy-preview
- - cargo clippy --version
- - cargo clippy
-
- - name: Book
- rust: stable
- before_script:
- - (test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update)
- - (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.2" mdbook)
- - cargo install-update -a
- script:
- - mdbook --version
- - (cd docs && mv _theme theme && mdbook build)
- - rustc ./docs/_installer/build-installer.rs
- - ./build-installer
- deploy:
- provider: pages
- skip-cleanup: true
- github-token: *GH_TOKEN
- local-dir: docs
- keep-history: false
- on:
- branch: master
-
- - name: Linux Binary
- env: TARGET=x86_64-unknown-linux-musl
- rust: stable
- before_script: rustup target add $TARGET
- script: cargo build --release --target $TARGET --locked --features vendored-openssl
- addons:
- apt:
- packages:
- - musl-tools
- <<: *DEPLOY_TO_GITHUB
-
- - name: macOS Binary
- env: MACOSX_DEPLOYMENT_TARGET=10.7 TARGET=x86_64-apple-darwin
- os: osx
- rust: stable
- script: cargo build --release --target $TARGET --locked
- install: true
- <<: *DEPLOY_TO_GITHUB
-
-notifications:
- email:
- on_success: never
From 59ab6d1f327a9bc9143327fe321077e47ce071c0 Mon Sep 17 00:00:00 2001
From: Ashley Williams
Date: Mon, 21 Dec 2020 09:56:17 -0600
Subject: [PATCH 19/66] feat(ci): Run tests in Github actions
---
.github/workflows/release.yml | 176 ++++++++++++++++++++++++++++++++++
.github/workflows/test.yml | 63 ++++++++++++
Cargo.toml | 8 ++
3 files changed, 247 insertions(+)
create mode 100644 .github/workflows/release.yml
create mode 100644 .github/workflows/test.yml
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 0000000..2499ec5
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,176 @@
+on:
+ push:
+ tags:
+ - "v*" # Run when tag matches v*, i.e. v1.0, v20.15.10
+
+name: Release
+
+env:
+ RELEASE_BIN: wasm-pack
+ RELEASE_DIR: artifacts
+ GITHUB_REF: "${{ github.ref }}"
+ WINDOWS_TARGET: x86_64-pc-windows-msvc
+ MACOS_TARGET: x86_64-apple-darwin
+ LINUX_TARGET: x86_64-unknown-linux-musl
+
+ # Space separated paths to include in the archive.
+ RELEASE_ADDS: README.md
+
+jobs:
+ build:
+ name: Build artifacts
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ build: [linux, macos, windows]
+ include:
+ - build: linux
+ os: ubuntu-latest
+ rust: stable
+ - build: macos
+ os: macos-latest
+ rust: stable
+ - build: windows
+ os: windows-latest
+ rust: stable
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Query version number
+ id: get_version
+ shell: bash
+ run: |
+ echo "using version tag ${GITHUB_REF:10}"
+ echo ::set-output name=version::"${GITHUB_REF:10}"
+
+ - name: Install Rust
+ if: matrix.rust
+ run: |
+ rustup update ${{ matrix.rust }} --no-self-update
+ rustup default ${{ matrix.rust }}
+
+ - name: Install musl-tools (Linux)
+ if: matrix.build == 'linux'
+ run: |
+ sudo apt-get update -y
+ sudo apt-get install musl-tools -y
+
+ - name: Install p7zip (MacOS)
+ if: matrix.build == 'macos'
+ run: brew install p7zip
+
+ - name: Build (Linux)
+ if: matrix.build == 'linux'
+ run: |
+ rustup target add ${{ env.LINUX_TARGET }}
+ cargo build --release --target ${{ env.LINUX_TARGET }}
+
+ - name: Build (MacOS)
+ if: matrix.build == 'macos'
+ run: cargo build --release
+
+ - name: Build (Windows)
+ if: matrix.build == 'windows'
+ run: cargo build --release
+ env:
+ RUSTFLAGS: -Ctarget-feature=+crt-static
+
+ - name: Create artifact directory
+ run: |
+ mkdir ${{ env.RELEASE_DIR }}
+ mkdir dist
+
+ - name: Create tarball (Linux)
+ if: matrix.build == 'linux'
+ run: |
+ mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
+ mv ${{ env.RELEASE_ADDS }} ./dist
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+
+ - name: Create tarball (Windows)
+ if: matrix.build == 'windows'
+ shell: bash
+ run: |
+ mv ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ mv ${{ env.RELEASE_ADDS }} ./dist
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+
+ - name: Create tarball (MacOS)
+ if: matrix.build == 'macos'
+ run: |
+ mv ./target/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
+ mv ${{ env.RELEASE_ADDS }} ./dist
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+
+ - name: Upload Zip
+ uses: actions/upload-artifact@v1
+ with:
+ name: ${{ matrix.build }}
+ path: ./${{ env.RELEASE_DIR }}
+
+ release:
+ name: GitHub Release
+ needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - name: Query version number
+ id: get_version
+ shell: bash
+ run: |
+ echo "using version tag ${GITHUB_REF:10}"
+ echo ::set-output name=version::"${GITHUB_REF:10}"
+
+ - name: Create Release
+ id: create_release
+ uses: actions/create-release@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ tag_name: ${{ steps.get_version.outputs.VERSION }}
+ release_name: ${{ steps.get_version.outputs.VERSION }}
+
+ - name: Download Linux tarball
+ uses: actions/download-artifact@v1
+ with:
+ name: linux
+
+ - name: Download MacOS tarball
+ uses: actions/download-artifact@v1
+ with:
+ name: windows
+
+ - name: Download MacOS tarball
+ uses: actions/download-artifact@v1
+ with:
+ name: macos
+
+ - name: Release Linux tarball
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ asset_content_type: application/gzip
+ asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+
+ - name: Release Windows tarball
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./windows/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ asset_content_type: application/gzip
+ asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+
+ - name: Release MacOS tarball
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./macos/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ asset_content_type: application/gzip
+ asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000..0538048
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,63 @@
+name: Tests
+
+on: [pull_request]
+
+jobs:
+ test:
+ name: Test
+
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ build: [linux-stable, macos-stable, windows-stable]
+ include:
+ - build: linux-stable
+ os: ubuntu-latest
+ rust: stable
+ - build: macos-stable
+ os: macos-latest
+ rust: stable
+ - build: windows-stable
+ os: windows-latest
+ rust: stable
+
+ steps:
+ - uses: actions/checkout@v2
+ - uses: nanasess/setup-chromedriver@master
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: ${{ matrix.rust }}
+ override: true
+ target: wasm32-unknown-unknown
+ - uses: actions/setup-node@v2
+
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ env:
+ cache-name: cache-dependencies
+ with:
+ path: |
+ ~/.cargo/.crates.toml
+ ~/.cargo/.crates2.json
+ ~/.cargo/bin
+ ~/.cargo/registry/index
+ ~/.cargo/registry/cache
+ target
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('Cargo.lock') }}
+
+ - name: Update rust
+ run: |
+ rustup update ${{ matrix.rust }} --no-self-update
+ rustup default ${{ matrix.rust }}
+ rustup target add wasm32-unknown-unknown --toolchain stable
+
+ - name: Run Tests
+ run: cargo test --features "strict" --all --locked
+ env:
+ RUST_BACKTRACE: 1
+
+ - name: Clippy
+ run: cargo clippy
+
+ - name: Cargo fmt
+ run: cargo fmt --all -- --check
diff --git a/Cargo.toml b/Cargo.toml
index 158774b..d201d9c 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -46,4 +46,12 @@ serial_test_derive = "0.2"
tempfile = "3"
[features]
+# OpenSSL is vendored by default, can use system OpenSSL through feature flag.
+default = ['openssl/vendored']
+
+# Treat compiler warnings as a build error.
+# This only runs in CI by default
+strict = ['openssl/vendored']
+sys-openssl = ['openssl']
+# Keeping feature for users already using this feature flag
vendored-openssl = ['openssl/vendored']
From b183a4c0cf6c36df65c534153d7056464651078e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sat, 19 Jun 2021 14:41:28 +0200
Subject: [PATCH 20/66] fix: Use v0.24.0 of geckodriver
---
src/test/webdriver/geckodriver.rs | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/test/webdriver/geckodriver.rs b/src/test/webdriver/geckodriver.rs
index d2c6841..125d0c8 100644
--- a/src/test/webdriver/geckodriver.rs
+++ b/src/test/webdriver/geckodriver.rs
@@ -186,10 +186,11 @@ fn get_version_from_json(json: impl AsRef) -> Result String {
+fn assemble_geckodriver_url(_tag: &str, target: &str, ext: &str) -> String {
format!(
"https://github.com/mozilla/geckodriver/releases/download/{tag}/geckodriver-{tag}-{target}.{ext}",
- tag=tag,
+ // TODO: Temporary use v0.24.0 instead of latest. Latest is currently not working...
+ tag="v0.24.0",
target=target,
ext=ext,
)
From 8b021a85e307e5bb68b598c41f939a2394488cf4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Tue, 29 Jun 2021 19:36:00 +0200
Subject: [PATCH 21/66] doc: Remove travis and appveyor badges and show github
actions
---
README.md | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index 91dc907..c52be4a 100644
--- a/README.md
+++ b/README.md
@@ -7,8 +7,7 @@
-
-
+
@@ -20,7 +19,8 @@
Chat
- Built with 🦀🕸 by The Rust and WebAssembly Working Group
+Built with 🦀🕸 by The Rust and WebAssembly Working Group
+
## About
@@ -89,4 +89,4 @@ This project was started by [ashleygwilliams] and is co-maintained by [ashleygwi
[ashleygwilliams]: https://github.com/ashleygwilliams
[drager]: https://github.com/drager
-[rustwasm Working Group]: https://github.com/rustwasm/team
+[rustwasm working group]: https://github.com/rustwasm/team
From adbaa67db6f1332ce5c02b5875635fd0035d341b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Tue, 29 Jun 2021 19:55:21 +0200
Subject: [PATCH 22/66] chore(ci): Run tests on push
---
.github/workflows/test.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 0538048..27ddfc5 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -1,6 +1,6 @@
name: Tests
-on: [pull_request]
+on: [push, pull_request]
jobs:
test:
From 6f02778d26b5f44bb371245196529b78035e3176 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Wed, 30 Jun 2021 21:22:25 +0200
Subject: [PATCH 23/66] chore(ci): Add build and deploy book
---
.github/workflows/book.yml | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 .github/workflows/book.yml
diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml
new file mode 100644
index 0000000..c65b532
--- /dev/null
+++ b/.github/workflows/book.yml
@@ -0,0 +1,38 @@
+name: Build and deploy documentation book
+
+on:
+ push:
+ branches:
+ - master
+
+jobs:
+ book:
+ name: Build and deploy book
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: stable
+ override: true
+
+ - name: Install mdbook
+ run: |
+ (test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update)
+ (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.2" mdbook)
+ cargo install-update -a
+
+ - name: Build book
+ run: |
+ mdbook --version
+ (cd docs && mv _theme theme && mdbook build)
+ rustc ./docs/_installer/build-installer.rs
+ ./build-installer
+
+ - name: Deploy book
+ uses: JamesIves/github-pages-deploy-action@4.1.4
+ with:
+ branch: gh-pages
+ folder: docs
+ token: ${{ secrets.GITHUB_TOKEN }}
+ single-commit: true
From 3ff9d5c886a1dc914e24fae88d245e1aa3232a99 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Wed, 30 Jun 2021 21:27:46 +0200
Subject: [PATCH 24/66] chore(ci): Only run on master branch
---
.github/workflows/test.yml | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 27ddfc5..a154f87 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -1,6 +1,12 @@
name: Tests
-on: [push, pull_request]
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ branches:
+ - master
jobs:
test:
From d908dcb1bef7161f362ed12ed15f8aec17247c3f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Wed, 30 Jun 2021 15:58:18 +0200
Subject: [PATCH 25/66] chore(ci): Update release template
---
.github/workflows/release.yml | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 2499ec5..2121fc1 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -1,14 +1,14 @@
on:
push:
tags:
- - "v*" # Run when tag matches v*, i.e. v1.0, v20.15.10
+ - 'v*' # Run when tag matches v*, i.e. v1.0, v20.15.10
name: Release
env:
RELEASE_BIN: wasm-pack
RELEASE_DIR: artifacts
- GITHUB_REF: "${{ github.ref }}"
+ GITHUB_REF: '${{ github.ref }}'
WINDOWS_TARGET: x86_64-pc-windows-msvc
MACOS_TARGET: x86_64-apple-darwin
LINUX_TARGET: x86_64-unknown-linux-musl
@@ -36,6 +36,11 @@ jobs:
steps:
- uses: actions/checkout@v2
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: ${{ matrix.rust }}
+ override: true
+ target: wasm32-unknown-unknow
- name: Query version number
id: get_version
@@ -44,12 +49,6 @@ jobs:
echo "using version tag ${GITHUB_REF:10}"
echo ::set-output name=version::"${GITHUB_REF:10}"
- - name: Install Rust
- if: matrix.rust
- run: |
- rustup update ${{ matrix.rust }} --no-self-update
- rustup default ${{ matrix.rust }}
-
- name: Install musl-tools (Linux)
if: matrix.build == 'linux'
run: |
From 8d1ea111eac38d742112964bda7635870a8182c5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Tue, 29 Jun 2021 20:52:02 +0200
Subject: [PATCH 26/66] 0.10.0
---
.github/workflows/release.yml | 10 +-
.github/workflows/test.yml | 6 -
CHANGELOG.md | 112 ++++
Cargo.lock | 992 ++++++++++++++++-------------
Cargo.toml | 6 +-
README.md | 2 +-
docs/index.html | 6 +-
npm/README.md | 14 +-
npm/package-lock.json | 4 +-
npm/package.json | 2 +-
src/test/webdriver/chromedriver.rs | 2 +-
src/test/webdriver/geckodriver.rs | 7 +-
12 files changed, 673 insertions(+), 490 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 2121fc1..4756e32 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -14,7 +14,7 @@ env:
LINUX_TARGET: x86_64-unknown-linux-musl
# Space separated paths to include in the archive.
- RELEASE_ADDS: README.md
+ RELEASE_ADDS: README.md LICENSE-APACHE LICENSE-MIT
jobs:
build:
@@ -40,7 +40,7 @@ jobs:
with:
toolchain: ${{ matrix.rust }}
override: true
- target: wasm32-unknown-unknow
+ target: wasm32-unknown-unknown
- name: Query version number
id: get_version
@@ -85,7 +85,7 @@ jobs:
run: |
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
- name: Create tarball (Windows)
if: matrix.build == 'windows'
@@ -93,14 +93,14 @@ jobs:
run: |
mv ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- name: Create tarball (MacOS)
if: matrix.build == 'macos'
run: |
mv ./target/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
- name: Upload Zip
uses: actions/upload-artifact@v1
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index a154f87..6b1b81c 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -51,12 +51,6 @@ jobs:
target
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('Cargo.lock') }}
- - name: Update rust
- run: |
- rustup update ${{ matrix.rust }} --no-self-update
- rustup default ${{ matrix.rust }}
- rustup target add wasm32-unknown-unknown --toolchain stable
-
- name: Run Tests
run: cargo test --features "strict" --all --locked
env:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e00db72..c9e2d8d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,8 +2,42 @@
## 🤍 Unreleased
+## 🌦️ 0.10.0
+
+- ### ✨ Features
+
+ - **Added keywords - [lucashorward], [issue/707] [pull/838]**
+
+ `package.json` files usually contain a keywords array so that npm can make searching easier.
+ This PR extracts keywords from `Cargo.toml` and puts them into `package.json`.
+
+ [lucashorward]: https://github.com/lucashorward
+ [pull/838]: https://github.com/rustwasm/wasm-pack/pull/838
+ [issue/707]: https://github.com/rustwasm/wasm-pack/issues/707
+
- ### 🤕 Fixes
+ - **Update binary-install to get fix for axios security vulnerability - [simlay], [Rizary], [issue/958] [pull/973] [pull/1012]**
+
+ Updates `binary-install` npm package to version `^0.1.0` in order to get security fix for a security vulnerability in axios.
+
+ [simlay]: https://github.com/simlay
+ [rizary]: https://github.com/Rizary
+ [pull/973]: https://github.com/rustwasm/wasm-pack/pull/973
+ [pull/1012]: https://github.com/rustwasm/wasm-pack/pull/1012
+ [issue/958]: https://github.com/rustwasm/wasm-pack/issues/958
+
+ - **Fix cargo-generate installation - [bradyjoslin], [issue/975] [issue/907] [pull/983]**
+
+ `wasm-pack new hello-wasm` didn't work due to a bad link when trying to install `cargo-generate`.
+
+ This PR points the installation to the correct place and makes `wasm-pack new` working again!
+
+ [bradyjoslin]: https://github.com/bradyjoslin
+ [pull/983]: https://github.com/rustwasm/wasm-pack/pull/983
+ [issue/975]: https://github.com/rustwasm/wasm-pack/issues/975
+ [issue/907]: https://github.com/rustwasm/wasm-pack/issues/907
+
- **Pass through extra options when building tests - [azriel91], [issue/698] [pull/851]**
`wasm-pack test` accepts extra options to pass through to `cargo` when running tests.
@@ -15,6 +49,84 @@
[pull/851]: https://github.com/rustwasm/wasm-pack/pull/851
[issue/698]: https://github.com/rustwasm/wasm-pack/issues/698
+ - **Corrected files included in package.json for bundler / no target - [lucashorward], [issue/837] [pull/839]**
+
+ `wasm-pack build` and `wasm-pack build --target bundler` generates a \_bg.js file, but it was not added to the `package.json`.
+ The file that is added, \*.js will however reference the \_bg.js, so when the package was distributed (both through pack or publish) it is not usable.
+
+ This PR includes that \_bg.js file in `package.json`.
+
+ [pull/839]: https://github.com/rustwasm/wasm-pack/pull/839
+ [issue/837]: https://github.com/rustwasm/wasm-pack/issues/837
+
+ - **Find the main package if multiple packages have the same name - [ghost], [pull/830]**
+
+ If there were 2 packages with the same name, `wasm-pack` would sometimes use the wrong one and errored.
+
+ [ghost]: https://github.com/ghost
+ [pull/830]: https://github.com/rustwasm/wasm-pack/pull/830
+ [issue/829]: https://github.com/rustwasm/wasm-pack/issues/829
+
+- ### 📖 Documentation
+
+ - **Remove duplicated "is" in the wee_alloc tutorial- [pione30], [issue/1003] [pull/1004]**
+
+ [pione30]: https://github.com/pione30
+ [pull/1004]: https://github.com/rustwasm/wasm-pack/pull/1004
+ [issue/1003]: https://github.com/rustwasm/wasm-pack/issues/1003
+
+ - **Fix TOC links - [Swaagie], [pull/1007]**
+
+ [swaagie]: https://github.com/Swaagie
+ [pull/1007]: https://github.com/rustwasm/wasm-pack/pull/1007
+
+ - **Remove outdated TOC heading- [gthb], [pull/1011]**
+
+ [gthb]: https://github.com/gthb
+ [pull/1011]: https://github.com/rustwasm/wasm-pack/pull/1011
+
+ - **Add link to template repo - [milahu], [pull/942]**
+
+ [milahu]: https://github.com/milahu
+ [pull/942]: https://github.com/rustwasm/wasm-pack/pull/942
+
+ - **Remove greenkeeper reference - [cdvv7788], [crotwell], [issue/1001] [pull/844] [pull/1002]**
+
+ [cdvv7788]: https://github.com/cdvv7788
+ [crotwell]: https://github.com/crotwell
+ [pull/844]: https://github.com/rustwasm/wasm-pack/pull/844
+ [pull/1002]: https://github.com/rustwasm/wasm-pack/pull/1002
+ [issue/1001]: https://github.com/rustwasm/wasm-pack/issues/1001
+
+- ### 🛠️ Maintenance
+
+ - **Fix CI. Remove appveyor and travis and use Github actions - [ashleygwilliams], [drager], [issue/594] [issue/979] [pull/947]**
+
+ [pull/947]: https://github.com/rustwasm/wasm-pack/pull/947
+ [issue/594]: https://github.com/rustwasm/wasm-pack/issues/594
+ [issue/979]: https://github.com/rustwasm/wasm-pack/issues/979
+
+ - **Cargo update - [ashleygwilliams], [pull/800]**
+
+ [ashleygwilliams]: https://github.com/ashleygwilliams
+ [pull/800]: https://github.com/rustwasm/wasm-pack/pull/800
+
+ - **Remove dirs dependency - [brightly-salty], [issue/943] [pull/944]**
+
+ [brightly-salty]: https://github.com/brightly-salty
+ [pull/944]: https://github.com/rustwasm/wasm-pack/pull/944
+ [issue/943]: https://github.com/rustwasm/wasm-pack/issues/943
+
+ - **Fix logs for uniformity - [petosorus], [issue/716] [pull/723]**
+
+ [petosorus]: https://github.com/petosorus
+ [pull/723]: https://github.com/rustwasm/wasm-pack/pull/723
+ [issue/716]: https://github.com/rustwasm/wasm-pack/issues/716
+
+ - **Fixing build error - [Pauan], [pull/841]**
+
+ [pull/841]: https://github.com/rustwasm/wasm-pack/pull/841
+
## ☁️ 0.9.1
- ### 🤕 Fixes
diff --git a/Cargo.lock b/Cargo.lock
index 8b618e1..e1e68c2 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3,16 +3,25 @@
version = 3
[[package]]
-name = "adler32"
-version = "1.0.4"
+name = "addr2line"
+version = "0.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a"
+dependencies = [
+ "gimli",
+]
+
+[[package]]
+name = "adler"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
[[package]]
name = "aho-corasick"
-version = "0.7.8"
+version = "0.7.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "743ad5a418686aad3b87fd14c43badd828cf26e214a00f92a384291cf22e1811"
+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
dependencies = [
"memchr",
]
@@ -23,7 +32,7 @@ version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
dependencies = [
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -34,9 +43,9 @@ checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
[[package]]
name = "arrayvec"
-version = "0.5.1"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
[[package]]
name = "assert_cmd"
@@ -58,7 +67,7 @@ checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
dependencies = [
"hermit-abi",
"libc",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -69,30 +78,23 @@ checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
[[package]]
name = "autocfg"
-version = "1.0.0"
+version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
[[package]]
name = "backtrace"
-version = "0.3.44"
+version = "0.3.60"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4036b9bf40f3cf16aba72a3d65e8a520fc4bafcdc7079aea8f848c58c5b5536"
-dependencies = [
- "backtrace-sys",
- "cfg-if",
- "libc",
- "rustc-demangle",
-]
-
-[[package]]
-name = "backtrace-sys"
-version = "0.1.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
+checksum = "b7815ea54e4d821e791162e078acbebfd6d8c8939cd559c9335dceb1c8ca7282"
dependencies = [
+ "addr2line",
"cc",
+ "cfg-if 1.0.0",
"libc",
+ "miniz_oxide",
+ "object",
+ "rustc-demangle",
]
[[package]]
@@ -106,9 +108,9 @@ dependencies = [
[[package]]
name = "base64"
-version = "0.11.0"
+version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
[[package]]
name = "binary-install"
@@ -135,9 +137,9 @@ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
[[package]]
name = "blake2b_simd"
-version = "0.5.10"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
+checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
dependencies = [
"arrayref",
"arrayvec",
@@ -146,9 +148,9 @@ dependencies = [
[[package]]
name = "byteorder"
-version = "1.3.4"
+version = "1.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
[[package]]
name = "bytes"
@@ -163,9 +165,9 @@ dependencies = [
[[package]]
name = "bzip2"
-version = "0.3.3"
+version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42b7c3cbf0fa9c1b82308d57191728ca0256cb821220f4e2fd410a72ade26e3b"
+checksum = "6afcd980b5f3a45017c57e57a2fcccbb351cc43a356ce117ef760ef8052b89b0"
dependencies = [
"bzip2-sys",
"libc",
@@ -173,21 +175,13 @@ dependencies = [
[[package]]
name = "bzip2-sys"
-version = "0.1.7"
+version = "0.1.11+1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6584aa36f5ad4c9247f5323b0a42f37802b37a836f0ad87084d7a33961abe25f"
+checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
dependencies = [
"cc",
"libc",
-]
-
-[[package]]
-name = "c2-chacha"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
-dependencies = [
- "ppv-lite86",
+ "pkg-config",
]
[[package]]
@@ -204,9 +198,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.0.50"
+version = "1.0.68"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
+checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787"
[[package]]
name = "cfg-if"
@@ -214,22 +208,30 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
[[package]]
name = "chrono"
-version = "0.4.10"
+version = "0.4.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
dependencies = [
+ "libc",
"num-integer",
"num-traits",
"time",
+ "winapi 0.3.9",
]
[[package]]
name = "clap"
-version = "2.33.0"
+version = "2.33.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
+checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
dependencies = [
"ansi_term",
"atty",
@@ -249,19 +251,7 @@ dependencies = [
"kernel32-sys",
"lazy_static 0.2.11",
"libc",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "clicolors-control"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90082ee5dcdd64dc4e9e0d37fbf3ee325419e39c0092191e0393df65518f741e"
-dependencies = [
- "atty",
- "lazy_static 1.4.0",
- "libc",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -280,30 +270,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ecd48adf136733979b49e15bc3b4c43cc0d3c85ece7bd08e6daa414c6fcb13e6"
dependencies = [
"atty",
- "clicolors-control 0.2.0",
+ "clicolors-control",
"lazy_static 1.4.0",
"libc",
- "parking_lot 0.10.0",
+ "parking_lot 0.11.1",
"regex",
"termios",
"unicode-width",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "console"
-version = "0.9.2"
+version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45e0f3986890b3acbc782009e2629dfe2baa430ac091519ce3be26164a2ae6c0"
+checksum = "3993e6445baa160675931ec041a5e03ca84b9c6e32a056150d3aa2bdda0a1f45"
dependencies = [
- "clicolors-control 1.0.1",
"encode_unicode",
"lazy_static 1.4.0",
"libc",
"regex",
- "termios",
+ "terminal_size",
"unicode-width",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -342,9 +331,9 @@ dependencies = [
[[package]]
name = "core-foundation"
-version = "0.6.4"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d"
+checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62"
dependencies = [
"core-foundation-sys",
"libc",
@@ -352,69 +341,82 @@ dependencies = [
[[package]]
name = "core-foundation-sys"
-version = "0.6.2"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b"
+checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b"
[[package]]
name = "crc32fast"
-version = "1.2.0"
+version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
]
[[package]]
name = "crossbeam-deque"
-version = "0.7.2"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3aa945d63861bfe624b55d153a39684da1e8c0bc8fba932f7ee3a3c16cea3ca"
+checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
dependencies = [
"crossbeam-epoch",
- "crossbeam-utils",
+ "crossbeam-utils 0.7.2",
+ "maybe-uninit",
]
[[package]]
name = "crossbeam-epoch"
-version = "0.8.0"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5064ebdbf05ce3cb95e45c8b086f72263f4166b29b97f6baff7ef7fe047b55ac"
+checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
dependencies = [
- "autocfg 0.1.7",
- "cfg-if",
- "crossbeam-utils",
+ "autocfg 1.0.1",
+ "cfg-if 0.1.10",
+ "crossbeam-utils 0.7.2",
"lazy_static 1.4.0",
+ "maybe-uninit",
"memoffset",
"scopeguard 1.1.0",
]
[[package]]
name = "crossbeam-queue"
-version = "0.2.1"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c695eeca1e7173472a32221542ae469b3e9aac3a4fc81f7696bcad82029493db"
+checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
dependencies = [
- "cfg-if",
- "crossbeam-utils",
+ "cfg-if 0.1.10",
+ "crossbeam-utils 0.7.2",
+ "maybe-uninit",
]
[[package]]
name = "crossbeam-utils"
-version = "0.7.0"
+version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4"
+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
dependencies = [
- "autocfg 0.1.7",
- "cfg-if",
+ "autocfg 1.0.1",
+ "cfg-if 0.1.10",
+ "lazy_static 1.4.0",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"
+dependencies = [
+ "cfg-if 1.0.0",
"lazy_static 1.4.0",
]
[[package]]
name = "curl"
-version = "0.4.25"
+version = "0.4.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06aa71e9208a54def20792d877bc663d6aae0732b9852e612c4a933177c31283"
+checksum = "003cb79c1c6d1c93344c7e1201bb51c2148f24ec2bd9c253709d6b2efb796515"
dependencies = [
"curl-sys",
"libc",
@@ -422,14 +424,14 @@ dependencies = [
"openssl-sys",
"schannel",
"socket2",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "curl-sys"
-version = "0.4.26"
+version = "0.4.44+curl-7.77.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0853fe2a575bb381b1f173610372c7722d9fa9bc4056512ed99fe6a644c388c6"
+checksum = "4b6d85e9322b193f117c966e79c2d6929ec08c02f339f950044aba12e20bbaf1"
dependencies = [
"cc",
"libc",
@@ -437,7 +439,7 @@ dependencies = [
"openssl-sys",
"pkg-config",
"vcpkg",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -446,7 +448,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ad1c29a0368928e78c551354dbff79f103a962ad820519724ef0d74f1c62fa9"
dependencies = [
- "console 0.9.2",
+ "console 0.14.1",
"lazy_static 1.4.0",
"tempfile 2.2.0",
]
@@ -465,20 +467,20 @@ checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
dependencies = [
"libc",
"redox_users",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "dtoa"
-version = "0.4.5"
+version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3"
+checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0"
[[package]]
name = "either"
-version = "1.5.3"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
+checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
[[package]]
name = "encode_unicode"
@@ -488,11 +490,11 @@ checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
[[package]]
name = "encoding_rs"
-version = "0.8.22"
+version = "0.8.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd8d03faa7fe0c1431609dfad7bbe827af30f82e1e2ae6f7ee4fca6bd764bc28"
+checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
]
[[package]]
@@ -504,16 +506,7 @@ dependencies = [
"atty",
"humantime",
"log",
- "termcolor 1.1.0",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.12.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d371106cc88ffdfb1eabd7111e432da544f16f3e2d7bf1dfe8bf575f1df045cd"
-dependencies = [
- "version_check",
+ "termcolor",
]
[[package]]
@@ -530,9 +523,9 @@ dependencies = [
[[package]]
name = "failure"
-version = "0.1.6"
+version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
+checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
dependencies = [
"backtrace",
"failure_derive",
@@ -540,35 +533,35 @@ dependencies = [
[[package]]
name = "failure_derive"
-version = "0.1.6"
+version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
+checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
"synstructure",
]
[[package]]
name = "filetime"
-version = "0.2.8"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ff6d4dab0aa0c8e6346d46052e93b13a16cf847b54ed357087c35011048cc7d"
+checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "redox_syscall",
- "winapi 0.3.8",
+ "redox_syscall 0.2.9",
+ "winapi 0.3.9",
]
[[package]]
name = "flate2"
-version = "1.0.13"
+version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bd6d6f4752952feb71363cffc9ebac9411b75b87c6ab6058c40c8900cf43c0f"
+checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"crc32fast",
"libc",
"miniz_oxide",
@@ -576,18 +569,18 @@ dependencies = [
[[package]]
name = "float-cmp"
-version = "0.5.3"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75224bec9bfe1a65e2d34132933f2de7fe79900c96a0174307554244ece8150e"
+checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4"
dependencies = [
"num-traits",
]
[[package]]
name = "fnv"
-version = "1.0.6"
+version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
[[package]]
name = "foreign-types"
@@ -604,6 +597,16 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+[[package]]
+name = "form_urlencoded"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+dependencies = [
+ "matches",
+ "percent-encoding 2.1.0",
+]
+
[[package]]
name = "fuchsia-cprng"
version = "0.1.1"
@@ -628,9 +631,9 @@ checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
[[package]]
name = "futures"
-version = "0.1.29"
+version = "0.1.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef"
+checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678"
[[package]]
name = "futures-cpupool"
@@ -644,15 +647,32 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.1.14"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+ "wasi 0.9.0+wasi-snapshot-preview1",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "wasi",
+ "wasi 0.10.2+wasi-snapshot-preview1",
]
+[[package]]
+name = "gimli"
+version = "0.24.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0e4075386626662786ddb0ec9081e7c7eeb1ba31951f447ca780ef9f5d568189"
+
[[package]]
name = "glob"
version = "0.2.11"
@@ -677,20 +697,26 @@ dependencies = [
"tokio-io",
]
+[[package]]
+name = "hashbrown"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
+
[[package]]
name = "heck"
-version = "0.3.1"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
dependencies = [
"unicode-segmentation",
]
[[package]]
name = "hermit-abi"
-version = "0.1.7"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2c55f143919fbc0bc77e427fe2d74cf23786d7c1875666f2fde3ac3c659bb67"
+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
dependencies = [
"libc",
]
@@ -726,25 +752,23 @@ dependencies = [
[[package]]
name = "httparse"
-version = "1.3.4"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68"
[[package]]
name = "human-panic"
-version = "1.0.1"
+version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21638c5955a6daf3ecc42cae702335fc37a72a4abcc6959ce457b31a7d43bbdd"
+checksum = "39f357a500abcbd7c5f967c1d45c8838585b36743823b9d43488f24850534e36"
dependencies = [
"backtrace",
- "failure",
"os_type",
"serde",
"serde_derive",
- "tempdir",
- "termcolor 0.3.6",
- "toml",
- "uuid 0.6.5",
+ "termcolor",
+ "toml 0.5.8",
+ "uuid 0.8.2",
]
[[package]]
@@ -758,9 +782,9 @@ dependencies = [
[[package]]
name = "hyper"
-version = "0.12.35"
+version = "0.12.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6"
+checksum = "5c843caf6296fc1f93444735205af9ed4e109a539005abb2564ae1d6fad34c52"
dependencies = [
"bytes",
"futures",
@@ -812,9 +836,9 @@ dependencies = [
[[package]]
name = "idna"
-version = "0.2.0"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
+checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
dependencies = [
"matches",
"unicode-bidi",
@@ -823,11 +847,21 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "1.3.2"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5"
+dependencies = [
+ "autocfg 1.0.1",
+ "hashbrown",
+]
+
+[[package]]
+name = "instant"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "076f042c5b7b98f31d205f1249267e12a6518c1481e9dae9764af19b707d2292"
+checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
dependencies = [
- "autocfg 1.0.0",
+ "cfg-if 1.0.0",
]
[[package]]
@@ -845,14 +879,14 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "302d553b8abc8187beb7d663e34c065ac4570b273bc9511a50e940e99409c577"
dependencies = [
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "itoa"
-version = "0.4.5"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
+checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"
[[package]]
name = "kernel32-sys"
@@ -878,15 +912,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "libc"
-version = "0.2.67"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb147597cdf94ed43ab7a9038716637d2d1bf2bc571da995d0028dec06bd3018"
+checksum = "12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6"
[[package]]
name = "libz-sys"
-version = "1.0.25"
+version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
+checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66"
dependencies = [
"cc",
"libc",
@@ -906,20 +940,29 @@ dependencies = [
[[package]]
name = "lock_api"
-version = "0.3.3"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
+dependencies = [
+ "scopeguard 1.1.0",
+]
+
+[[package]]
+name = "lock_api"
+version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79b2de95ecb4691949fea4716ca53cdbcfccb2c612e19644a8bad05edcf9f47b"
+checksum = "0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb"
dependencies = [
"scopeguard 1.1.0",
]
[[package]]
name = "log"
-version = "0.4.8"
+version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
]
[[package]]
@@ -936,17 +979,17 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
[[package]]
name = "memchr"
-version = "2.3.2"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53445de381a1f436797497c61d851644d0e8e88e6140f22872ad33a704933978"
+checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
[[package]]
name = "memoffset"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
+checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
dependencies = [
- "rustc_version",
+ "autocfg 1.0.1",
]
[[package]]
@@ -957,9 +1000,9 @@ checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
[[package]]
name = "mime_guess"
-version = "2.0.1"
+version = "2.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a0ed03949aef72dbdf3116a383d7b38b4768e6f960528cd6a6044aa9ed68599"
+checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
dependencies = [
"mime",
"unicase",
@@ -967,20 +1010,21 @@ dependencies = [
[[package]]
name = "miniz_oxide"
-version = "0.3.6"
+version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa679ff6578b1cddee93d7e82e263b94a575e0bfced07284eb0c037c1d2416a5"
+checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
dependencies = [
- "adler32",
+ "adler",
+ "autocfg 1.0.1",
]
[[package]]
name = "mio"
-version = "0.6.21"
+version = "0.6.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
+checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"fuchsia-zircon",
"fuchsia-zircon-sys",
"iovec",
@@ -995,9 +1039,9 @@ dependencies = [
[[package]]
name = "miow"
-version = "0.2.1"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d"
dependencies = [
"kernel32-sys",
"net2",
@@ -1007,9 +1051,9 @@ dependencies = [
[[package]]
name = "native-tls"
-version = "0.2.3"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b2df1a4c22fd44a62147fd8f13dd0f95c9d8ca7b2610299b2a2f9cf8964274e"
+checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4"
dependencies = [
"lazy_static 1.4.0",
"libc",
@@ -1020,91 +1064,106 @@ dependencies = [
"schannel",
"security-framework",
"security-framework-sys",
- "tempfile 3.1.0",
+ "tempfile 3.2.0",
]
[[package]]
name = "net2"
-version = "0.2.33"
+version = "0.2.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"libc",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "normalize-line-endings"
-version = "0.2.2"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e0a1a39eab95caf4f5556da9289b9e68f0aafac901b2ce80daaf020d3b733a8"
+checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
[[package]]
name = "num-integer"
-version = "0.1.42"
+version = "0.1.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f6ea62e9d81a77cd3ee9a2a5b9b609447857f3d358704331e4ef39eb247fcba"
+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
"num-traits",
]
[[package]]
name = "num-traits"
-version = "0.2.11"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096"
+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
]
[[package]]
name = "num_cpus"
-version = "1.12.0"
+version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46203554f085ff89c235cd12f7075f3233af9b11ed7c9e16dfe2560d03313ce6"
+checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
dependencies = [
"hermit-abi",
"libc",
]
+[[package]]
+name = "object"
+version = "0.25.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a38f2be3697a57b4060074ff41b44c16870d916ad7877c17696e063257482bc7"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
+
[[package]]
name = "openssl"
-version = "0.10.28"
+version = "0.10.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "973293749822d7dd6370d6da1e523b0d1db19f06c459134c658b2a4261378b52"
+checksum = "549430950c79ae24e6d02e0b7404534ecf311d94cc9f861e9e4020187d13d885"
dependencies = [
"bitflags",
- "cfg-if",
+ "cfg-if 1.0.0",
"foreign-types",
- "lazy_static 1.4.0",
"libc",
+ "once_cell",
"openssl-sys",
]
[[package]]
name = "openssl-probe"
-version = "0.1.2"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a"
[[package]]
name = "openssl-src"
-version = "111.6.1+1.1.1d"
+version = "111.15.0+1.1.1k"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c91b04cb43c1a8a90e934e0cd612e2a5715d976d2d6cff4490278a0cddf35005"
+checksum = "b1a5f6ae2ac04393b217ea9f700cd04fa9bf3d93fae2872069f3d15d908af70a"
dependencies = [
"cc",
]
[[package]]
name = "openssl-sys"
-version = "0.9.54"
+version = "0.9.65"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1024c0a59774200a555087a6da3f253a9095a5f344e353b212ac4c8b8e450986"
+checksum = "7a7907e3bfa08bb85105209cdfcb6c63d109f8f6c1ed6ca318fff5c1853fbc1d"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
"cc",
"libc",
"openssl-src",
@@ -1114,18 +1173,18 @@ dependencies = [
[[package]]
name = "os_type"
-version = "2.2.0"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7edc011af0ae98b7f88cf7e4a83b70a54a75d2b8cb013d6efd02e5956207e9eb"
+checksum = "96eaebe22d9f12429b1af6a0b5dd411ccfc5cb5968710abbb8c512046be9df90"
dependencies = [
"regex",
]
[[package]]
name = "owning_ref"
-version = "0.4.0"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
+checksum = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce"
dependencies = [
"stable_deref_trait",
]
@@ -1146,19 +1205,20 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
dependencies = [
- "lock_api 0.3.3",
+ "lock_api 0.3.4",
"parking_lot_core 0.6.2",
"rustc_version",
]
[[package]]
name = "parking_lot"
-version = "0.10.0"
+version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92e98c49ab0b7ce5b222f2cc9193fc4efe11c6d0bd4f648e374684a6857b1cfc"
+checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
dependencies = [
- "lock_api 0.3.3",
- "parking_lot_core 0.7.0",
+ "instant",
+ "lock_api 0.4.4",
+ "parking_lot_core 0.8.3",
]
[[package]]
@@ -1170,8 +1230,8 @@ dependencies = [
"libc",
"rand 0.5.6",
"rustc_version",
- "smallvec 0.6.13",
- "winapi 0.3.8",
+ "smallvec 0.6.14",
+ "winapi 0.3.9",
]
[[package]]
@@ -1180,27 +1240,27 @@ version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"cloudabi",
"libc",
- "redox_syscall",
+ "redox_syscall 0.1.57",
"rustc_version",
- "smallvec 0.6.13",
- "winapi 0.3.8",
+ "smallvec 0.6.14",
+ "winapi 0.3.9",
]
[[package]]
name = "parking_lot_core"
-version = "0.7.0"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7582838484df45743c8434fbff785e8edf260c28748353d44bc0da32e0ceabf1"
+checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
dependencies = [
- "cfg-if",
- "cloudabi",
+ "cfg-if 1.0.0",
+ "instant",
"libc",
- "redox_syscall",
- "smallvec 1.2.0",
- "winapi 0.3.8",
+ "redox_syscall 0.2.9",
+ "smallvec 1.6.1",
+ "winapi 0.3.9",
]
[[package]]
@@ -1217,27 +1277,21 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
[[package]]
name = "pkg-config"
-version = "0.3.17"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
-
-[[package]]
-name = "podio"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "780fb4b6698bbf9cf2444ea5d22411cef2953f0824b98f33cf454ec5615645bd"
+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
[[package]]
name = "ppv-lite86"
-version = "0.2.6"
+version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
[[package]]
name = "predicates"
-version = "1.0.2"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9bfe52247e5cc9b2f943682a85a5549fb9662245caf094504e69a2f03fe64d4"
+checksum = "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df"
dependencies = [
"difference",
"float-cmp",
@@ -1248,15 +1302,15 @@ dependencies = [
[[package]]
name = "predicates-core"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
+checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451"
[[package]]
name = "predicates-tree"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
+checksum = "15f553275e5721409451eb85e15fd9a860a6e5ab4496eb215987502b5f5391f2"
dependencies = [
"predicates-core",
"treeline",
@@ -1269,9 +1323,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
"version_check",
]
@@ -1281,8 +1335,8 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
"version_check",
]
@@ -1297,24 +1351,21 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.8"
+version = "1.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3acb317c6ff86a4e579dfa00fc5e6cca91ecbb4e7eb2df0468805b674eb88548"
+checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
dependencies = [
- "unicode-xid 0.2.0",
+ "unicode-xid 0.2.2",
]
[[package]]
name = "publicsuffix"
-version = "1.5.4"
+version = "1.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bbaa49075179162b49acac1c6aa45fb4dafb5f13cf6794276d77bc7fd95757b"
+checksum = "95b4ce31ff0a27d93c8de1849cf58162283752f065a90d508f1105fa6c9a213f"
dependencies = [
- "error-chain",
- "idna 0.2.0",
- "lazy_static 1.4.0",
- "regex",
- "url 2.1.1",
+ "idna 0.2.3",
+ "url 2.2.2",
]
[[package]]
@@ -1334,11 +1385,11 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.2"
+version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
dependencies = [
- "proc-macro2 1.0.8",
+ "proc-macro2 1.0.27",
]
[[package]]
@@ -1361,7 +1412,7 @@ dependencies = [
"libc",
"rand_core 0.3.1",
"rdrand",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1374,7 +1425,7 @@ dependencies = [
"fuchsia-cprng",
"libc",
"rand_core 0.3.1",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1393,20 +1444,19 @@ dependencies = [
"rand_os",
"rand_pcg",
"rand_xorshift",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "rand"
-version = "0.7.3"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8"
dependencies = [
- "getrandom",
"libc",
- "rand_chacha 0.2.1",
- "rand_core 0.5.1",
- "rand_hc 0.2.0",
+ "rand_chacha 0.3.1",
+ "rand_core 0.6.3",
+ "rand_hc 0.3.1",
]
[[package]]
@@ -1421,12 +1471,12 @@ dependencies = [
[[package]]
name = "rand_chacha"
-version = "0.2.1"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
dependencies = [
- "c2-chacha",
- "rand_core 0.5.1",
+ "ppv-lite86",
+ "rand_core 0.6.3",
]
[[package]]
@@ -1446,11 +1496,11 @@ checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
[[package]]
name = "rand_core"
-version = "0.5.1"
+version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
dependencies = [
- "getrandom",
+ "getrandom 0.2.3",
]
[[package]]
@@ -1464,11 +1514,11 @@ dependencies = [
[[package]]
name = "rand_hc"
-version = "0.2.0"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7"
dependencies = [
- "rand_core 0.5.1",
+ "rand_core 0.6.3",
]
[[package]]
@@ -1488,7 +1538,7 @@ checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
dependencies = [
"libc",
"rand_core 0.4.2",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1502,7 +1552,7 @@ dependencies = [
"libc",
"rand_core 0.4.2",
"rdrand",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1535,46 +1585,54 @@ dependencies = [
[[package]]
name = "redox_syscall"
-version = "0.1.56"
+version = "0.1.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
+checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee"
+dependencies = [
+ "bitflags",
+]
[[package]]
name = "redox_users"
-version = "0.3.4"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
+checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
dependencies = [
- "getrandom",
- "redox_syscall",
+ "getrandom 0.1.16",
+ "redox_syscall 0.1.57",
"rust-argon2",
]
[[package]]
name = "regex"
-version = "1.3.4"
+version = "1.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "322cf97724bea3ee221b78fe25ac9c46114ebb51747ad5babd51a2fc6a8235a8"
+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
dependencies = [
"aho-corasick",
"memchr",
"regex-syntax",
- "thread_local",
]
[[package]]
name = "regex-syntax"
-version = "0.6.14"
+version = "0.6.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b28dfe3fe9badec5dbf0a79a9cccad2cfc2ab5484bdb3e44cbd1ae8b3ba2be06"
+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
[[package]]
name = "remove_dir_all"
-version = "0.5.2"
+version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
dependencies = [
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1613,21 +1671,21 @@ dependencies = [
[[package]]
name = "rust-argon2"
-version = "0.7.0"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
+checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb"
dependencies = [
- "base64 0.11.0",
+ "base64 0.13.0",
"blake2b_simd",
"constant_time_eq",
- "crossbeam-utils",
+ "crossbeam-utils 0.8.5",
]
[[package]]
name = "rustc-demangle"
-version = "0.1.16"
+version = "0.1.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+checksum = "dead70b0b5e03e9c814bcb6b01e03e68f7c57a80aa48c72ec92152ab3e818d49"
[[package]]
name = "rustc_version"
@@ -1640,9 +1698,9 @@ dependencies = [
[[package]]
name = "ryu"
-version = "1.0.2"
+version = "1.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
[[package]]
name = "same-file"
@@ -1655,12 +1713,12 @@ dependencies = [
[[package]]
name = "schannel"
-version = "0.1.17"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "507a9e6e8ffe0a4e0ebb9a10293e62fdf7657c06f1b8bb07a8fcf697d2abf295"
+checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
dependencies = [
"lazy_static 1.4.0",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -1677,10 +1735,11 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
name = "security-framework"
-version = "0.3.4"
+version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ef2429d7cefe5fd28bd1d2ed41c944547d4ff84776f5935b456da44593a16df"
+checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467"
dependencies = [
+ "bitflags",
"core-foundation",
"core-foundation-sys",
"libc",
@@ -1689,11 +1748,12 @@ dependencies = [
[[package]]
name = "security-framework-sys"
-version = "0.3.3"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e31493fc37615debb8c5090a7aeb4a9730bc61e77ab10b9af59f1a202284f895"
+checksum = "7e4effb91b4b8b6fb7732e670b6cee160278ff8e6bf485c7805d9e319d76e284"
dependencies = [
"core-foundation-sys",
+ "libc",
]
[[package]]
@@ -1714,22 +1774,22 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
-version = "1.0.104"
+version = "1.0.126"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
+checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.104"
+version = "1.0.126"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
+checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
]
[[package]]
@@ -1743,9 +1803,9 @@ dependencies = [
[[package]]
name = "serde_json"
-version = "1.0.48"
+version = "1.0.64"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9371ade75d4c2d6cb154141b9752cf3781ec9c05e0e5cf35060e1e70ee7b9c25"
+checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79"
dependencies = [
"itoa",
"ryu",
@@ -1791,42 +1851,40 @@ checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
[[package]]
name = "slab"
-version = "0.4.2"
+version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527"
[[package]]
name = "smallvec"
-version = "0.6.13"
+version = "0.6.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
+checksum = "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0"
dependencies = [
"maybe-uninit",
]
[[package]]
name = "smallvec"
-version = "1.2.0"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c2fb2ec9bcd216a5b0d0ccf31ab17b5ed1d627960edff65bbe95d3ce221cefc"
+checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
[[package]]
name = "socket2"
-version = "0.3.11"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
+checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2"
dependencies = [
- "cfg-if",
"libc",
- "redox_syscall",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "stable_deref_trait"
-version = "1.1.1"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
[[package]]
name = "string"
@@ -1862,9 +1920,9 @@ checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
dependencies = [
"heck",
"proc-macro-error",
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
]
[[package]]
@@ -1880,49 +1938,38 @@ dependencies = [
[[package]]
name = "syn"
-version = "1.0.14"
+version = "1.0.73"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af6f3550d8dff9ef7dc34d384ac6f107e5d31c8f57d9f28e0081503f547ac8f5"
+checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "unicode-xid 0.2.0",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "unicode-xid 0.2.2",
]
[[package]]
name = "synstructure"
-version = "0.12.3"
+version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
+checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
- "unicode-xid 0.2.0",
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
+ "unicode-xid 0.2.2",
]
[[package]]
name = "tar"
-version = "0.4.26"
+version = "0.4.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3196bfbffbba3e57481b6ea32249fbaf590396a52505a2615adbb79d9d826d3"
+checksum = "7d779dc6aeff029314570f666ec83f19df7280bb36ef338442cfa8c604021b80"
dependencies = [
"filetime",
"libc",
- "redox_syscall",
"xattr",
]
-[[package]]
-name = "tempdir"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-dependencies = [
- "rand 0.4.6",
- "remove_dir_all",
-]
-
[[package]]
name = "tempfile"
version = "2.2.0"
@@ -1932,47 +1979,48 @@ dependencies = [
"kernel32-sys",
"libc",
"rand 0.3.23",
- "redox_syscall",
+ "redox_syscall 0.1.57",
"winapi 0.2.8",
]
[[package]]
name = "tempfile"
-version = "3.1.0"
+version = "3.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "rand 0.7.3",
- "redox_syscall",
+ "rand 0.8.4",
+ "redox_syscall 0.2.9",
"remove_dir_all",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
name = "termcolor"
-version = "0.3.6"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adc4587ead41bf016f11af03e55a624c06568b5a19db4e90fde573d805074f83"
+checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
dependencies = [
- "wincolor",
+ "winapi-util",
]
[[package]]
-name = "termcolor"
-version = "1.1.0"
+name = "terminal_size"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
+checksum = "633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df"
dependencies = [
- "winapi-util",
+ "libc",
+ "winapi 0.3.9",
]
[[package]]
name = "termios"
-version = "0.3.1"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
+checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b"
dependencies = [
"libc",
]
@@ -1987,25 +2035,50 @@ dependencies = [
]
[[package]]
-name = "thread_local"
-version = "1.0.1"
+name = "thiserror"
+version = "1.0.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
+checksum = "fa6f76457f59514c7eeb4e59d891395fab0b2fd1d40723ae737d64153392e9c6"
dependencies = [
- "lazy_static 1.4.0",
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d"
+dependencies = [
+ "proc-macro2 1.0.27",
+ "quote 1.0.9",
+ "syn 1.0.73",
]
[[package]]
name = "time"
-version = "0.1.42"
+version = "0.1.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
dependencies = [
"libc",
- "redox_syscall",
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
+[[package]]
+name = "tinyvec"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+
[[package]]
name = "tokio"
version = "0.1.22"
@@ -2052,7 +2125,7 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
dependencies = [
- "crossbeam-utils",
+ "crossbeam-utils 0.7.2",
"futures",
]
@@ -2073,7 +2146,7 @@ version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
dependencies = [
- "crossbeam-utils",
+ "crossbeam-utils 0.7.2",
"futures",
"lazy_static 1.4.0",
"log",
@@ -2118,7 +2191,7 @@ checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
dependencies = [
"crossbeam-deque",
"crossbeam-queue",
- "crossbeam-utils",
+ "crossbeam-utils 0.7.2",
"futures",
"lazy_static 1.4.0",
"log",
@@ -2133,7 +2206,7 @@ version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
dependencies = [
- "crossbeam-utils",
+ "crossbeam-utils 0.7.2",
"futures",
"slab",
"tokio-executor",
@@ -2148,6 +2221,15 @@ dependencies = [
"serde",
]
+[[package]]
+name = "toml"
+version = "0.5.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
+dependencies = [
+ "serde",
+]
+
[[package]]
name = "treeline"
version = "0.1.0"
@@ -2156,9 +2238,9 @@ checksum = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
[[package]]
name = "try-lock"
-version = "0.2.2"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
+checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
[[package]]
name = "try_from"
@@ -2166,7 +2248,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "283d3b89e1368717881a9d51dad843cc435380d8109c9e47d38780a324698d8b"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
]
[[package]]
@@ -2180,33 +2262,33 @@ dependencies = [
[[package]]
name = "unicode-bidi"
-version = "0.3.4"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0"
dependencies = [
"matches",
]
[[package]]
name = "unicode-normalization"
-version = "0.1.12"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
+checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
dependencies = [
- "smallvec 1.2.0",
+ "tinyvec",
]
[[package]]
name = "unicode-segmentation"
-version = "1.6.0"
+version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796"
[[package]]
name = "unicode-width"
-version = "0.1.7"
+version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
+checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
[[package]]
name = "unicode-xid"
@@ -2216,9 +2298,9 @@ checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
[[package]]
name = "unicode-xid"
-version = "0.2.0"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
[[package]]
name = "url"
@@ -2233,60 +2315,60 @@ dependencies = [
[[package]]
name = "url"
-version = "2.1.1"
+version = "2.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb"
+checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
dependencies = [
- "idna 0.2.0",
+ "form_urlencoded",
+ "idna 0.2.3",
"matches",
"percent-encoding 2.1.0",
]
[[package]]
name = "uuid"
-version = "0.6.5"
+version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1436e58182935dcd9ce0add9ea0b558e8a87befe01c1a301e6020aeb0876363"
+checksum = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a"
dependencies = [
- "cfg-if",
- "rand 0.4.6",
+ "rand 0.6.5",
]
[[package]]
name = "uuid"
-version = "0.7.4"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a"
+checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
dependencies = [
- "rand 0.6.5",
+ "getrandom 0.2.3",
]
[[package]]
name = "vcpkg"
-version = "0.2.8"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
[[package]]
name = "vec_map"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
[[package]]
name = "version_check"
-version = "0.9.1"
+version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
+checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe"
[[package]]
name = "walkdir"
-version = "2.3.1"
+version = "2.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d"
+checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
dependencies = [
"same-file",
- "winapi 0.3.8",
+ "winapi 0.3.9",
"winapi-util",
]
@@ -2307,9 +2389,15 @@ version = "0.9.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+[[package]]
+name = "wasi"
+version = "0.10.2+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+
[[package]]
name = "wasm-pack"
-version = "0.9.1"
+version = "0.10.0"
dependencies = [
"assert_cmd",
"atty",
@@ -2339,8 +2427,8 @@ dependencies = [
"siphasher",
"strsim",
"structopt",
- "tempfile 3.1.0",
- "toml",
+ "tempfile 3.2.0",
+ "toml 0.4.10",
"walkdir",
"which",
]
@@ -2363,9 +2451,9 @@ checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
[[package]]
name = "winapi"
-version = "0.3.8"
+version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
dependencies = [
"winapi-i686-pc-windows-gnu",
"winapi-x86_64-pc-windows-gnu",
@@ -2385,11 +2473,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
[[package]]
name = "winapi-util"
-version = "0.1.3"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ccfbf554c6ad11084fb7517daca16cfdcaccbdadba4fc336f032a8b12c2ad80"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
dependencies = [
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -2398,22 +2486,13 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-[[package]]
-name = "wincolor"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eeb06499a3a4d44302791052df005d5232b927ed1a9658146d842165c4de7767"
-dependencies = [
- "winapi 0.3.8",
-]
-
[[package]]
name = "winreg"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9"
dependencies = [
- "winapi 0.3.8",
+ "winapi 0.3.9",
]
[[package]]
@@ -2437,13 +2516,14 @@ dependencies = [
[[package]]
name = "zip"
-version = "0.5.4"
+version = "0.5.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e41ff37ba788e2169b19fa70253b70cb53d9f2db9fb9aea9bcfc5047e02c3bae"
+checksum = "93ab48844d61251bb3835145c521d88aa4031d7139e8485990f60ca911fa0815"
dependencies = [
+ "byteorder",
"bzip2",
"crc32fast",
"flate2",
- "podio",
+ "thiserror",
"time",
]
diff --git a/Cargo.toml b/Cargo.toml
index d201d9c..617eada 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,9 +1,9 @@
[package]
name = "wasm-pack"
description = "📦✨ your favorite rust -> wasm workflow tool!"
-version = "0.9.1"
-authors = ["Ashley Williams "]
-repository = "https://github.com/ashleygwilliams/wasm-pack.git"
+version = "0.10.0"
+authors = ["Ashley Williams ", "Jesper Håkansson "]
+repository = "https://github.com/rustwasm/wasm-pack.git"
license = "MIT/Apache-2.0"
readme = "README.md"
categories = ["wasm"]
diff --git a/README.md b/README.md
index c52be4a..8ba511e 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/index.html b/docs/index.html
index f42db00..fbec2ba 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -42,9 +42,9 @@
📦✨ your favorite rust -> wasm workflow tool!
## About
@@ -29,12 +29,10 @@ This tool seeks to be a one-stop shop for building and working with rust-
generated WebAssembly that you would like to interop with JavaScript, in the
browser or with Node.js. `wasm-pack` helps you build rust-generated
WebAssembly packages that you could publish to the npm registry, or otherwise use
-alongside any javascript packages in workflows that you already use, such as [webpack]
-or [greenkeeper].
+alongside any javascript packages in workflows that you already use, such as [webpack].
[bundler-support]: https://github.com/rustwasm/team/blob/master/goals/bundler-integration.md#details
[webpack]: https://webpack.js.org/
-[greenkeeper]: https://greenkeeper.io/
This project is a part of the [rust-wasm] group. You can find more info by
visiting that repo!
@@ -91,4 +89,4 @@ This project was started by [ashleygwilliams] and is co-maintained by [ashleygwi
[ashleygwilliams]: https://github.com/ashleygwilliams
[drager]: https://github.com/drager
-[rustwasm Working Group]: https://github.com/rustwasm/team
+[rustwasm working group]: https://github.com/rustwasm/team
diff --git a/npm/package-lock.json b/npm/package-lock.json
index e0c7f94..2bbf475 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "wasm-pack",
- "version": "0.9.1",
+ "version": "0.10.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "wasm-pack",
- "version": "0.9.1",
+ "version": "0.10.0",
"hasInstallScript": true,
"license": "MIT OR Apache-2.0",
"dependencies": {
diff --git a/npm/package.json b/npm/package.json
index a903a48..a7f493a 100644
--- a/npm/package.json
+++ b/npm/package.json
@@ -1,6 +1,6 @@
{
"name": "wasm-pack",
- "version": "0.9.1",
+ "version": "0.10.0",
"description": "📦✨ your favorite rust -> wasm workflow tool!",
"main": "binary.js",
"scripts": {
diff --git a/src/test/webdriver/chromedriver.rs b/src/test/webdriver/chromedriver.rs
index 212c96f..c1c96ad 100644
--- a/src/test/webdriver/chromedriver.rs
+++ b/src/test/webdriver/chromedriver.rs
@@ -9,7 +9,7 @@ use target;
// Keep it up to date with each `wasm-pack` release.
// https://chromedriver.storage.googleapis.com/LATEST_RELEASE
-const DEFAULT_CHROMEDRIVER_VERSION: &str = "79.0.3945.36";
+const DEFAULT_CHROMEDRIVER_VERSION: &str = "91.0.4472.101";
const CHROMEDRIVER_LAST_UPDATED_STAMP: &str = "chromedriver_last_updated";
const CHROMEDRIVER_VERSION_STAMP: &str = "chromedriver_version";
diff --git a/src/test/webdriver/geckodriver.rs b/src/test/webdriver/geckodriver.rs
index 125d0c8..f19eaee 100644
--- a/src/test/webdriver/geckodriver.rs
+++ b/src/test/webdriver/geckodriver.rs
@@ -9,7 +9,7 @@ use target;
// Keep it up to date with each `wasm-pack` release.
// https://github.com/mozilla/geckodriver/releases/latest
-const DEFAULT_GECKODRIVER_VERSION: &str = "v0.26.0";
+const DEFAULT_GECKODRIVER_VERSION: &str = "v0.29.1";
const DEFAULT_WINDOWS_GECKODRIVER_VERSION: &str = "v0.24.0";
const GECKODRIVER_LAST_UPDATED_STAMP: &str = "geckodriver_last_updated";
@@ -186,11 +186,10 @@ fn get_version_from_json(json: impl AsRef) -> Result String {
+fn assemble_geckodriver_url(tag: &str, target: &str, ext: &str) -> String {
format!(
"https://github.com/mozilla/geckodriver/releases/download/{tag}/geckodriver-{tag}-{target}.{ext}",
- // TODO: Temporary use v0.24.0 instead of latest. Latest is currently not working...
- tag="v0.24.0",
+ tag=tag,
target=target,
ext=ext,
)
From 260d79ac89152d0c9b112ee4420420710fc4a029 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Fri, 2 Jul 2021 19:10:54 +0200
Subject: [PATCH 27/66] fix(ci): Fix release tarballs
---
.github/workflows/release.yml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 4756e32..a09516c 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -85,7 +85,7 @@ jobs:
run: |
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
- name: Create tarball (Windows)
if: matrix.build == 'windows'
@@ -93,14 +93,14 @@ jobs:
run: |
mv ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- name: Create tarball (MacOS)
if: matrix.build == 'macos'
run: |
mv ./target/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
- name: Upload Zip
uses: actions/upload-artifact@v1
From a8423bdab9e130bd8edb2d00e7c9f74b82004764 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 4 Jul 2021 13:06:54 +0200
Subject: [PATCH 28/66] fix(ci): Upload window init exe file
---
.github/workflows/release.yml | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index a09516c..1ab3d9e 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -91,8 +91,10 @@ jobs:
if: matrix.build == 'windows'
shell: bash
run: |
- mv ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
mv ${{ env.RELEASE_ADDS }} ./dist
+ mv wasm-pack-init.exe ${{ env.RELEASE_DIR }}
7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- name: Create tarball (MacOS)
@@ -134,7 +136,7 @@ jobs:
with:
name: linux
- - name: Download MacOS tarball
+ - name: Download Windows tarball
uses: actions/download-artifact@v1
with:
name: windows
@@ -164,6 +166,16 @@ jobs:
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ - name: Release Windows init exe
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./windows/wasm-pack-init.exe
+ asset_content_type: application/vnd.microsoft.portable-executable
+ asset_name: wasm-pack-init.exe
+
- name: Release MacOS tarball
uses: actions/upload-release-asset@v1
env:
From 175173c0a68d166ceb881091fd4f209f5beb65c9 Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Sun, 4 Jul 2021 17:42:29 +0100
Subject: [PATCH 29/66] Automically approve new PRs for running Github test
actions
---
.github/workflows/approve.yml | 15 +++++++++++++++
1 file changed, 15 insertions(+)
create mode 100644 .github/workflows/approve.yml
diff --git a/.github/workflows/approve.yml b/.github/workflows/approve.yml
new file mode 100644
index 0000000..ffe7e12
--- /dev/null
+++ b/.github/workflows/approve.yml
@@ -0,0 +1,15 @@
+name: Automatic Approve
+on:
+ schedule:
+ - cron: "0 0 * * *"
+ workflow_dispatch:
+jobs:
+ automatic-approve:
+ name: Automatic Approve
+ runs-on: ubuntu-latest
+ steps:
+ - name: Automatic Approve
+ uses: mheap/automatic-approve-action@v1.1.0
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}
+ workflows: "test.yml"
From d79e72189c523586debcee2ebbf6a2fd065e8abf Mon Sep 17 00:00:00 2001
From: Joao Neves
Date: Tue, 2 Mar 2021 13:38:26 +0100
Subject: [PATCH 30/66] Implements RFC 8, fixing #606
---
src/command/utils.rs | 1 +
src/manifest/mod.rs | 43 +++++++++++++++++++++++++-----
src/manifest/npm/commonjs.rs | 4 +++
src/manifest/npm/esmodules.rs | 4 +++
src/manifest/npm/nomodules.rs | 4 +++
tests/all/manifest.rs | 50 ++++++++++++++++++++++++++++++++++-
tests/all/utils/manifest.rs | 8 +++++-
7 files changed, 105 insertions(+), 9 deletions(-)
diff --git a/src/command/utils.rs b/src/command/utils.rs
index 4a735e2..7c6ec0c 100644
--- a/src/command/utils.rs
+++ b/src/command/utils.rs
@@ -37,6 +37,7 @@ fn find_manifest_from_cwd() -> Result {
/// Construct our `pkg` directory in the crate.
pub fn create_pkg_dir(out_dir: &Path) -> Result<(), failure::Error> {
+ let _ = fs::remove_dir_all(&out_dir); // Clean up any existing directory and ignore errors
fs::create_dir_all(&out_dir)?;
fs::write(out_dir.join(".gitignore"), "*")?;
Ok(())
diff --git a/src/manifest/mod.rs b/src/manifest/mod.rs
index e82451c..8e88c02 100644
--- a/src/manifest/mod.rs
+++ b/src/manifest/mod.rs
@@ -8,8 +8,8 @@
mod npm;
-use std::fs;
use std::path::Path;
+use std::{collections::HashMap, fs};
use self::npm::{
repository::Repository, CommonJSPackage, ESModulesPackage, NoModulesPackage, NpmPackage,
@@ -575,14 +575,25 @@ impl CrateData {
target: Target,
) -> Result<(), Error> {
let pkg_file_path = out_dir.join("package.json");
+ // Check if a `package.json` was already generated by wasm-bindgen, if so
+ // we merge the NPM dependencies already specified in it.
+ let existing_deps = if pkg_file_path.exists() {
+ // It's just a map of dependency names to versions
+ Some(serde_json::from_str::>(
+ &fs::read_to_string(&pkg_file_path)?,
+ )?)
+ } else {
+ None
+ };
let npm_data = match target {
- Target::Nodejs => self.to_commonjs(scope, disable_dts, out_dir),
- Target::NoModules => self.to_nomodules(scope, disable_dts, out_dir),
- Target::Bundler => self.to_esmodules(scope, disable_dts, out_dir),
- Target::Web => self.to_web(scope, disable_dts, out_dir),
+ Target::Nodejs => self.to_commonjs(scope, disable_dts, existing_deps, out_dir),
+ Target::NoModules => self.to_nomodules(scope, disable_dts, existing_deps, out_dir),
+ Target::Bundler => self.to_esmodules(scope, disable_dts, existing_deps, out_dir),
+ Target::Web => self.to_web(scope, disable_dts, existing_deps, out_dir),
};
let npm_json = serde_json::to_string_pretty(&npm_data)?;
+
fs::write(&pkg_file_path, npm_json)
.with_context(|_| format!("failed to write: {}", pkg_file_path.display()))?;
Ok(())
@@ -657,7 +668,13 @@ impl CrateData {
})
}
- fn to_commonjs(&self, scope: &Option, disable_dts: bool, out_dir: &Path) -> NpmPackage {
+ fn to_commonjs(
+ &self,
+ scope: &Option,
+ disable_dts: bool,
+ dependencies: Option>,
+ out_dir: &Path,
+ ) -> NpmPackage {
let data = self.npm_data(scope, false, disable_dts, out_dir);
let pkg = &self.data.packages[self.current_idx];
@@ -683,6 +700,7 @@ impl CrateData {
homepage: data.homepage,
types: data.dts_file,
keywords: data.keywords,
+ dependencies,
})
}
@@ -690,6 +708,7 @@ impl CrateData {
&self,
scope: &Option,
disable_dts: bool,
+ dependencies: Option>,
out_dir: &Path,
) -> NpmPackage {
let data = self.npm_data(scope, true, disable_dts, out_dir);
@@ -718,10 +737,17 @@ impl CrateData {
types: data.dts_file,
side_effects: false,
keywords: data.keywords,
+ dependencies,
})
}
- fn to_web(&self, scope: &Option, disable_dts: bool, out_dir: &Path) -> NpmPackage {
+ fn to_web(
+ &self,
+ scope: &Option,
+ disable_dts: bool,
+ dependencies: Option>,
+ out_dir: &Path,
+ ) -> NpmPackage {
let data = self.npm_data(scope, false, disable_dts, out_dir);
let pkg = &self.data.packages[self.current_idx];
@@ -748,6 +774,7 @@ impl CrateData {
types: data.dts_file,
side_effects: false,
keywords: data.keywords,
+ dependencies,
})
}
@@ -755,6 +782,7 @@ impl CrateData {
&self,
scope: &Option,
disable_dts: bool,
+ dependencies: Option>,
out_dir: &Path,
) -> NpmPackage {
let data = self.npm_data(scope, false, disable_dts, out_dir);
@@ -782,6 +810,7 @@ impl CrateData {
homepage: data.homepage,
types: data.dts_file,
keywords: data.keywords,
+ dependencies,
})
}
diff --git a/src/manifest/npm/commonjs.rs b/src/manifest/npm/commonjs.rs
index e421c9c..eaf681d 100644
--- a/src/manifest/npm/commonjs.rs
+++ b/src/manifest/npm/commonjs.rs
@@ -1,3 +1,5 @@
+use std::collections::HashMap;
+
use manifest::npm::repository::Repository;
#[derive(Serialize)]
@@ -21,4 +23,6 @@ pub struct CommonJSPackage {
pub types: Option,
#[serde(skip_serializing_if = "Option::is_none")]
pub keywords: Option>,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub dependencies: Option>,
}
diff --git a/src/manifest/npm/esmodules.rs b/src/manifest/npm/esmodules.rs
index 640a926..b3b541b 100644
--- a/src/manifest/npm/esmodules.rs
+++ b/src/manifest/npm/esmodules.rs
@@ -1,3 +1,5 @@
+use std::collections::HashMap;
+
use manifest::npm::repository::Repository;
#[derive(Serialize)]
@@ -23,4 +25,6 @@ pub struct ESModulesPackage {
pub side_effects: bool,
#[serde(skip_serializing_if = "Option::is_none")]
pub keywords: Option>,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub dependencies: Option>,
}
diff --git a/src/manifest/npm/nomodules.rs b/src/manifest/npm/nomodules.rs
index 6ac2508..20567cc 100644
--- a/src/manifest/npm/nomodules.rs
+++ b/src/manifest/npm/nomodules.rs
@@ -1,3 +1,5 @@
+use std::collections::HashMap;
+
use manifest::npm::repository::Repository;
#[derive(Serialize)]
@@ -21,4 +23,6 @@ pub struct NoModulesPackage {
pub types: Option,
#[serde(skip_serializing_if = "Option::is_none")]
pub keywords: Option>,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub dependencies: Option>,
}
diff --git a/tests/all/manifest.rs b/tests/all/manifest.rs
index c25c3e5..c5f0fbf 100644
--- a/tests/all/manifest.rs
+++ b/tests/all/manifest.rs
@@ -1,5 +1,5 @@
use assert_cmd::prelude::*;
-use std::collections::HashSet;
+use std::collections::{HashMap, HashSet};
use std::fs;
use std::path::PathBuf;
use utils::{self, fixture};
@@ -314,6 +314,54 @@ fn it_creates_a_package_json_with_correct_keys_when_types_are_skipped() {
assert_eq!(actual_files, expected_files);
}
+#[test]
+fn it_creates_a_package_json_with_npm_dependencies_provided_by_wasm_bindgen() {
+ let fixture = fixture::js_hello_world();
+ let out_dir = fixture.path.join("pkg");
+ let crate_data = manifest::CrateData::new(&fixture.path, None).unwrap();
+ wasm_pack::command::utils::create_pkg_dir(&out_dir).unwrap();
+ // Write a `package.json` in the out_dir, as wasm-bindgen does:
+ utils::manifest::create_wbg_package_json(
+ &out_dir,
+ r#"
+ { "foo": "^1.2.3" }
+ "#,
+ )
+ .unwrap();
+ assert!(crate_data
+ .write_package_json(&out_dir, &None, true, Target::Bundler)
+ .is_ok());
+ let package_json_path = &out_dir.join("package.json");
+ fs::metadata(package_json_path).unwrap();
+ utils::manifest::read_package_json(&fixture.path, &out_dir).unwrap();
+ let pkg = utils::manifest::read_package_json(&fixture.path, &out_dir).unwrap();
+ assert_eq!(pkg.name, "js-hello-world");
+ assert_eq!(pkg.repository.ty, "git");
+ assert_eq!(
+ pkg.repository.url,
+ "https://github.com/rustwasm/wasm-pack.git"
+ );
+ assert_eq!(pkg.module, "js_hello_world.js");
+
+ let actual_files: HashSet = pkg.files.into_iter().collect();
+ let expected_files: HashSet = [
+ "js_hello_world_bg.wasm",
+ "js_hello_world_bg.js",
+ "js_hello_world.js",
+ ]
+ .iter()
+ .map(|&s| String::from(s))
+ .collect();
+ assert_eq!(actual_files, expected_files);
+
+ let dependencies: Option> = pkg.dependencies;
+ assert!(dependencies.is_some());
+ let mut expected_dependencies: HashMap = HashMap::new();
+ expected_dependencies.insert("foo".to_owned(), "^1.2.3".to_owned());
+
+ assert_eq!(dependencies.unwrap(), expected_dependencies);
+}
+
#[test]
fn it_errors_when_wasm_bindgen_is_not_declared() {
let fixture = fixture::bad_cargo_toml();
diff --git a/tests/all/utils/manifest.rs b/tests/all/utils/manifest.rs
index c261bc1..eeeb4e6 100644
--- a/tests/all/utils/manifest.rs
+++ b/tests/all/utils/manifest.rs
@@ -1,6 +1,6 @@
-use std::fs::File;
use std::io::prelude::*;
use std::path::Path;
+use std::{collections::HashMap, fs::File};
use failure::Error;
use serde_json;
@@ -25,6 +25,7 @@ pub struct NpmPackage {
pub side_effects: bool,
pub homepage: Option,
pub keywords: Option>,
+ pub dependencies: Option>,
}
fn default_none() -> String {
@@ -50,3 +51,8 @@ pub fn read_package_json(path: &Path, out_dir: &Path) -> Result Result<(), Error> {
+ let manifest_path = out_dir.join("package.json");
+ Ok(std::fs::write(manifest_path, contents)?)
+}
From 137731225033cb330913f5aafab493499774eae3 Mon Sep 17 00:00:00 2001
From: Riley Shea
Date: Fri, 9 Jul 2021 20:11:25 -0400
Subject: [PATCH 31/66] fix docs: warning label appearing offscreen
---
docs/_theme/header.hbs | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/docs/_theme/header.hbs b/docs/_theme/header.hbs
index 61e24cf..7fab25f 100644
--- a/docs/_theme/header.hbs
+++ b/docs/_theme/header.hbs
@@ -35,10 +35,12 @@
}
From 0fff34cbb15f45a122617024ccf7cfbe64e73217 Mon Sep 17 00:00:00 2001
From: iuslkae
Date: Fri, 9 Jul 2021 23:42:39 -0500
Subject: [PATCH 32/66] feat(docs): Under prerequisites, considerations for
nodejs
---
docs/src/SUMMARY.md | 1 +
docs/src/prerequisites/considerations.md | 38 ++++++++++++++++++++++++
2 files changed, 39 insertions(+)
create mode 100644 docs/src/prerequisites/considerations.md
diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md
index 9e18324..7e367c7 100644
--- a/docs/src/SUMMARY.md
+++ b/docs/src/SUMMARY.md
@@ -4,6 +4,7 @@
- [Quickstart](./quickstart.md)
- [Prerequisites](./prerequisites/index.md)
- [npm (optional)](./prerequisites/npm.md)
+ - [considerations](./prerequisites/considerations.md)
- [Non-`rustup` setups](./prerequisites/non-rustup-setups.md)
- [Commands](./commands/index.md)
- [`new`](./commands/new.md)
diff --git a/docs/src/prerequisites/considerations.md b/docs/src/prerequisites/considerations.md
new file mode 100644
index 0000000..b4bd082
--- /dev/null
+++ b/docs/src/prerequisites/considerations.md
@@ -0,0 +1,38 @@
+# nodejs
+
+Currently, `wasm-pack` generated npm modules require us to you have [fetch] polyfill in your node project.
+
+If there is a module from `wasm-pack build --target nodejs` you may encounter some errors regarding global `Headers`, `Request`, `Response` and `fetch` Web APIs.
+
+## Common errors:
+
+```js
+ReqwestError(reqwest::Error { kind: Builder, source: "JsValue(ReferenceError: Headers is not defined
+ReqwestError(reqwest::Error { kind: Builder, source: "JsValue(ReferenceError: Request is not defined
+
+ var ret = getObject(arg0) instanceof Response;
+ReferenceError: Response is not defined
+```
+
+## Workarround
+Import or declare fetch and objects: Headers, Request, Response
+
+```ts
+// CommonJS
+const fetch = require('node-fetch');
+
+// ES Module
+import fetch from 'node-fetch';
+
+// @ts-ignore
+global.fetch = fetch;
+// @ts-ignore
+global.Headers = fetch.Headers;
+// @ts-ignore
+global.Request = fetch.Request;
+// @ts-ignore
+global.Response = fetch.Response;
+```
+
+[fetch]: https://github.com/node-fetch/node-fetch
+
From b242938066485f1e50bb78ba08f21602feb80d4c Mon Sep 17 00:00:00 2001
From: Frederic Kettelhoit
Date: Tue, 20 Jul 2021 20:18:32 +0200
Subject: [PATCH 33/66] Fix example commands in docs broken by PR #851
---
docs/src/commands/build.md | 10 +++++-----
docs/src/commands/test.md | 12 ++++++------
.../template-deep-dive/wee_alloc.md | 2 +-
3 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/docs/src/commands/build.md b/docs/src/commands/build.md
index fa9b7dd..9f4bae4 100644
--- a/docs/src/commands/build.md
+++ b/docs/src/commands/build.md
@@ -127,13 +127,13 @@ wasm-pack build examples/js-hello-world --mode no-install
## Extra options
-The `build` command can pass extra options straight to `cargo build` even if they are not
-supported in wasm-pack. To use them you should add standalone `--` argument at the very
-end of your command, and all the arguments you want to pass to cargo should go after.
-For example, to build the previous example using cargo's offline feature:
+The `build` command can pass extra options straight to `cargo build` even if
+they are not supported in wasm-pack. To use them simply add the extra arguments
+at the very end of your command, just as you would for `cargo build`. For
+example, to build the previous example using cargo's offline feature:
```
-wasm-pack build examples/js-hello-world --mode no-install -- --offline
+wasm-pack build examples/js-hello-world --mode no-install --offline
```
diff --git a/docs/src/commands/test.md b/docs/src/commands/test.md
index 08c8b73..b851b0a 100644
--- a/docs/src/commands/test.md
+++ b/docs/src/commands/test.md
@@ -44,8 +44,8 @@ wasm-pack test --node --firefox --chrome --safari --headless
The `test` command can pass extra options straight to `cargo test` even if they are not
supported in wasm-pack.
-To use them you should add standalone `--` argument at the very
-end of your command, and all the arguments you want to pass to cargo should go after.
+To use them simply add the extra arguments at the very end of your command, just
+as you would for `cargo test`.
`cargo test -h` for a list of all options that you can pass through.
@@ -72,16 +72,16 @@ $ tree crates/foo
```
# Run all tests in tests/diff_patch.rs in Firefox
-wasm-pack test crates/foo --firefox --headless -- --test diff_patch
+wasm-pack test crates/foo --firefox --headless --test diff_patch
# Run all tests in tests/diff_patch.rs that contain the word "replace"
-wasm-pack test crates/foo --firefox --headless -- --test diff_patch replace
+wasm-pack test crates/foo --firefox --headless --test diff_patch replace
# Run all tests inside of a `tests` module inside of src/lib/diff.rs
-wasm-pack test crates/foo --firefox --headless -- --lib diff::tests
+wasm-pack test crates/foo --firefox --headless --lib diff::tests
# Same as the above, but only if they contain the word replace
-wasm-pack test crates/foo --firefox --headless -- --lib diff::tests::replace
+wasm-pack test crates/foo --firefox --headless --lib diff::tests::replace
```
Note that you can also filter tests by location in which they're supposed to
diff --git a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
index 3b9f15a..f95b244 100644
--- a/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
+++ b/docs/src/tutorials/npm-browser-packages/template-deep-dive/wee_alloc.md
@@ -40,7 +40,7 @@ allocator, but only if the `wee_alloc` feature is enabled at compile time. The
feature can be enabled by passing extra options while building:
```
-$ wasm-pack build -- --features wee_alloc
+$ wasm-pack build --features wee_alloc
```
or alternatively you could turn it on by default in `Cargo.toml`:
From ca1f6d838cf6afc472d56d77ef54cbfc5694eebc Mon Sep 17 00:00:00 2001
From: Frederic Kettelhoit
Date: Tue, 20 Jul 2021 20:57:35 +0200
Subject: [PATCH 34/66] Use same syntax for extra arguments as wasm-pack test
---
src/command/build.rs | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/command/build.rs b/src/command/build.rs
index b1b6eb5..df3accd 100644
--- a/src/command/build.rs
+++ b/src/command/build.rs
@@ -18,6 +18,7 @@ use std::fmt;
use std::path::PathBuf;
use std::str::FromStr;
use std::time::Instant;
+use structopt::clap::AppSettings;
use PBAR;
/// Everything required to configure and run the `wasm-pack build` command.
@@ -101,6 +102,13 @@ pub enum BuildProfile {
/// Everything required to configure and run the `wasm-pack build` command.
#[derive(Debug, StructOpt)]
+#[structopt(
+ // Allows unknown `--option`s to be parsed as positional arguments, so we can forward it to `cargo`.
+ setting = AppSettings::AllowLeadingHyphen,
+
+ // Allows `--` to be parsed as an argument, so we can forward it to `cargo`.
+ setting = AppSettings::TrailingVarArg,
+)]
pub struct BuildOptions {
/// The path to the Rust crate. If not set, searches up the path from the current directory.
#[structopt(parse(from_os_str))]
@@ -148,7 +156,7 @@ pub struct BuildOptions {
/// Sets the output file names. Defaults to package name.
pub out_name: Option,
- #[structopt(last = true)]
+ #[structopt(allow_hyphen_values = true)]
/// List of extra options to pass to `cargo build`
pub extra_options: Vec,
}
From a14035d546c4ddd6f9d278473bea15728c03c335 Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Tue, 3 Aug 2021 18:39:33 +0100
Subject: [PATCH 35/66] Run book build on all branches
---
.github/workflows/book.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml
index c65b532..748e627 100644
--- a/.github/workflows/book.yml
+++ b/.github/workflows/book.yml
@@ -2,8 +2,7 @@ name: Build and deploy documentation book
on:
push:
- branches:
- - master
+ pull_request:
jobs:
book:
@@ -31,6 +30,7 @@ jobs:
- name: Deploy book
uses: JamesIves/github-pages-deploy-action@4.1.4
+ if: ${{ github.ref == 'refs/heads/master' }}
with:
branch: gh-pages
folder: docs
From 58ac4f1c51c9e95fafd40e663fc0b9bc3aa15951 Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Tue, 3 Aug 2021 18:42:38 +0100
Subject: [PATCH 36/66] Cache mdbook
---
.github/workflows/book.yml | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml
index 748e627..393ae5d 100644
--- a/.github/workflows/book.yml
+++ b/.github/workflows/book.yml
@@ -15,6 +15,19 @@ jobs:
toolchain: stable
override: true
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ env:
+ cache-name: cache-mdbook
+ with:
+ path: |
+ ~/.cargo/.crates.toml
+ ~/.cargo/.crates2.json
+ ~/.cargo/bin
+ ~/.cargo/registry/index
+ ~/.cargo/registry/cache
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-0.2 }}
+
- name: Install mdbook
run: |
(test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update)
From b3655b86f909b4cba5c689e619ca92ecb5ef410b Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Tue, 3 Aug 2021 19:59:46 +0100
Subject: [PATCH 37/66] Upgrade mdbook to 0.3
---
.github/workflows/book.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml
index 393ae5d..4d06b70 100644
--- a/.github/workflows/book.yml
+++ b/.github/workflows/book.yml
@@ -26,12 +26,12 @@ jobs:
~/.cargo/bin
~/.cargo/registry/index
~/.cargo/registry/cache
- key: ${{ runner.os }}-build-${{ env.cache-name }}-0.2 }}
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-0.3 }}
- name: Install mdbook
run: |
(test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update)
- (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.2" mdbook)
+ (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.3" mdbook)
cargo install-update -a
- name: Build book
From d8e64684e6c431b75dfe48376f8426d44e931e50 Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Wed, 27 Jan 2021 22:59:17 +0000
Subject: [PATCH 38/66] Remove direct usage of serial_test_derive
---
Cargo.lock | 16 +++++++++-------
Cargo.toml | 3 +--
tests/all/main.rs | 2 +-
3 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index e1e68c2..d3f60e9 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1826,21 +1826,24 @@ dependencies = [
[[package]]
name = "serial_test"
-version = "0.2.0"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50bfbc39343545618d97869d77f38ed43e48dd77432717dbc7ed39d797f3ecbe"
+checksum = "f74862f16557830c73deefde614c906f8af0157e064b64f156e32a0b12d7114c"
dependencies = [
"lazy_static 1.4.0",
+ "parking_lot 0.9.0",
+ "serial_test_derive",
]
[[package]]
name = "serial_test_derive"
-version = "0.2.0"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89dd85be2e2ad75b041c9df2892ac078fa6e0b90024028b2b9fb4125b7530f01"
+checksum = "3c188479c8b700998829c168d7a4c21032660b0dd2ed87a0b166c85811750740"
dependencies = [
- "quote 0.6.13",
- "syn 0.15.44",
+ "proc-macro2 1.0.8",
+ "quote 1.0.2",
+ "syn 1.0.14",
]
[[package]]
@@ -2423,7 +2426,6 @@ dependencies = [
"serde_ignored",
"serde_json",
"serial_test",
- "serial_test_derive",
"siphasher",
"strsim",
"structopt",
diff --git a/Cargo.toml b/Cargo.toml
index 617eada..eec41b2 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -41,8 +41,7 @@ chrono = "0.4.6"
assert_cmd = "0.11"
lazy_static = "1.1.0"
predicates = "1.0.0"
-serial_test = "0.2"
-serial_test_derive = "0.2"
+serial_test = "0.3"
tempfile = "3"
[features]
diff --git a/tests/all/main.rs b/tests/all/main.rs
index 0a306ab..20a25ae 100644
--- a/tests/all/main.rs
+++ b/tests/all/main.rs
@@ -8,7 +8,7 @@ extern crate serde_derive;
extern crate binary_install;
extern crate serde_json;
#[macro_use]
-extern crate serial_test_derive;
+extern crate serial_test;
extern crate structopt;
extern crate tempfile;
extern crate wasm_pack;
From a807401673bb3e95227e109800d40820069dd0bc Mon Sep 17 00:00:00 2001
From: Tom Parker-Shemilt
Date: Tue, 3 Aug 2021 20:04:09 +0100
Subject: [PATCH 39/66] Update Cargo.lock
---
Cargo.lock | 93 +++++++++++++++++-------------------------------------
1 file changed, 29 insertions(+), 64 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index d3f60e9..2705458 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -537,9 +537,9 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
+ "proc-macro2",
+ "quote",
+ "syn",
"synstructure",
]
@@ -1323,9 +1323,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
+ "proc-macro2",
+ "quote",
+ "syn",
"version_check",
]
@@ -1335,27 +1335,18 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
+ "proc-macro2",
+ "quote",
"version_check",
]
-[[package]]
-name = "proc-macro2"
-version = "0.4.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-dependencies = [
- "unicode-xid 0.1.0",
-]
-
[[package]]
name = "proc-macro2"
version = "1.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
dependencies = [
- "unicode-xid 0.2.2",
+ "unicode-xid",
]
[[package]]
@@ -1374,22 +1365,13 @@ version = "1.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-[[package]]
-name = "quote"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
-dependencies = [
- "proc-macro2 0.4.30",
-]
-
[[package]]
name = "quote"
version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2",
]
[[package]]
@@ -1787,9 +1769,9 @@ version = "1.0.126"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
@@ -1841,9 +1823,9 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c188479c8b700998829c168d7a4c21032660b0dd2ed87a0b166c85811750740"
dependencies = [
- "proc-macro2 1.0.8",
- "quote 1.0.2",
- "syn 1.0.14",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
@@ -1923,20 +1905,9 @@ checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
dependencies = [
"heck",
"proc-macro-error",
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
-]
-
-[[package]]
-name = "syn"
-version = "0.15.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
-dependencies = [
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "unicode-xid 0.1.0",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
@@ -1945,9 +1916,9 @@ version = "1.0.73"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "unicode-xid 0.2.2",
+ "proc-macro2",
+ "quote",
+ "unicode-xid",
]
[[package]]
@@ -1956,10 +1927,10 @@ version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
- "unicode-xid 0.2.2",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "unicode-xid",
]
[[package]]
@@ -2052,9 +2023,9 @@ version = "1.0.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d"
dependencies = [
- "proc-macro2 1.0.27",
- "quote 1.0.9",
- "syn 1.0.73",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
@@ -2293,12 +2264,6 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
-[[package]]
-name = "unicode-xid"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-
[[package]]
name = "unicode-xid"
version = "0.2.2"
From 5b1bd1af1f49a8dde84ee1157e38d202f9ffd2ac Mon Sep 17 00:00:00 2001
From: Frederic Kettelhoit
Date: Wed, 4 Aug 2021 11:01:54 +0200
Subject: [PATCH 40/66] Fix build test by using new syntax
---
tests/all/build.rs | 1 -
1 file changed, 1 deletion(-)
diff --git a/tests/all/build.rs b/tests/all/build.rs
index 0c59ba8..4524498 100644
--- a/tests/all/build.rs
+++ b/tests/all/build.rs
@@ -264,7 +264,6 @@ fn build_with_arbitrary_cargo_options() {
fixture
.wasm_pack()
.arg("build")
- .arg("--")
.arg("--no-default-features")
.assert()
.success();
From dafc83d49dd5cc89a93de689ccac5d893c00e41a Mon Sep 17 00:00:00 2001
From: Frederic Kettelhoit
Date: Thu, 5 Aug 2021 12:00:47 +0200
Subject: [PATCH 41/66] Only parse first build argument as path if it does not
start with hyphens
---
src/command/build.rs | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/command/build.rs b/src/command/build.rs
index df3accd..e18a77c 100644
--- a/src/command/build.rs
+++ b/src/command/build.rs
@@ -184,7 +184,15 @@ type BuildStep = fn(&mut Build) -> Result<(), Error>;
impl Build {
/// Construct a build command from the given options.
- pub fn try_from_opts(build_opts: BuildOptions) -> Result {
+ pub fn try_from_opts(mut build_opts: BuildOptions) -> Result {
+ if let Some(path) = &build_opts.path {
+ if path.to_string_lossy().starts_with("--") {
+ let path = build_opts.path.take().unwrap();
+ build_opts
+ .extra_options
+ .insert(0, path.to_string_lossy().into_owned().to_string());
+ }
+ }
let crate_path = get_crate_path(build_opts.path)?;
let crate_data = manifest::CrateData::new(&crate_path, build_opts.out_name.clone())?;
let out_dir = crate_path.join(PathBuf::from(build_opts.out_dir));
From e5e5b1eba1549f005f16a4927dca746d28bd9381 Mon Sep 17 00:00:00 2001
From: Jubilee Young
Date: Sat, 4 Sep 2021 17:18:40 -0700
Subject: [PATCH 42/66] fix: typos in comments
---
src/emoji.rs | 2 +-
src/installer.rs | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/emoji.rs b/src/emoji.rs
index 3365ad6..d4bcb8e 100644
--- a/src/emoji.rs
+++ b/src/emoji.rs
@@ -1,4 +1,4 @@
-//! Emoji contants used by `wasm-pack`.
+//! Emoji constants used by `wasm-pack`.
//!
//! For the woefully unfamiliar:
//!
diff --git a/src/installer.rs b/src/installer.rs
index ce89667..47e64ec 100644
--- a/src/installer.rs
+++ b/src/installer.rs
@@ -12,7 +12,7 @@
//! downloaded via curl/sh, and then the shell script downloads this executable
//! and runs it.
//!
-//! This may get more complicated over time (self upates anyone?) but for now
+//! This may get more complicated over time (self updates anyone?) but for now
//! it's pretty simple! We're largely just moving over our currently running
//! executable to a different path.
From 8aaef72af004bb71ca5708500bb3cbe5827475ae Mon Sep 17 00:00:00 2001
From: Jubilee Young
Date: Sat, 4 Sep 2021 20:51:15 -0700
Subject: [PATCH 43/66] fix: mem::take TODO
---
src/test/webdriver.rs | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/test/webdriver.rs b/src/test/webdriver.rs
index 7b4223d..f0f34e8 100644
--- a/src/test/webdriver.rs
+++ b/src/test/webdriver.rs
@@ -39,8 +39,7 @@ struct Collector(Vec);
impl Collector {
pub fn take_content(&mut self) -> Vec {
- // TODO: replace with `std::mem::take` once stable
- std::mem::replace(&mut self.0, Vec::default())
+ std::mem::take(&mut self.0)
}
}
From 69c5624b17c8df3f0de0a02d2b50c890c20bbf16 Mon Sep 17 00:00:00 2001
From: Jubilee Young
Date: Sat, 4 Sep 2021 20:51:59 -0700
Subject: [PATCH 44/66] fix: remove needless clones, borrows
---
src/bindgen.rs | 18 +++++++++---------
src/build/wasm_target.rs | 4 ++--
src/command/build.rs | 6 +++---
src/install/mod.rs | 10 +++++-----
src/manifest/mod.rs | 2 +-
src/test/webdriver.rs | 4 ++--
6 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/src/bindgen.rs b/src/bindgen.rs
index 02d02dc..535d6b8 100644
--- a/src/bindgen.rs
+++ b/src/bindgen.rs
@@ -6,7 +6,7 @@ use failure::{self, ResultExt};
use install::{self, Tool};
use manifest::CrateData;
use semver;
-use std::path::{Path, PathBuf};
+use std::path::Path;
use std::process::Command;
/// Run the `wasm-bindgen` CLI to generate bindings for the current crate's
@@ -49,7 +49,7 @@ pub fn wasm_bindgen_build(
.arg(dts_arg);
let target_arg = build_target_arg(target, &bindgen_path)?;
- if supports_dash_dash_target(bindgen_path.to_path_buf())? {
+ if supports_dash_dash_target(&bindgen_path)? {
cmd.arg("--target").arg(target_arg);
} else {
cmd.arg(target_arg);
@@ -75,7 +75,7 @@ pub fn wasm_bindgen_build(
}
/// Check if the `wasm-bindgen` dependency is locally satisfied for the web target
-fn supports_web_target(cli_path: &PathBuf) -> Result {
+fn supports_web_target(cli_path: &Path) -> Result {
let cli_version = semver::Version::parse(&install::get_cli_version(
&install::Tool::WasmBindgen,
cli_path,
@@ -85,30 +85,30 @@ fn supports_web_target(cli_path: &PathBuf) -> Result {
}
/// Check if the `wasm-bindgen` dependency is locally satisfied for the --target flag
-fn supports_dash_dash_target(cli_path: PathBuf) -> Result {
+fn supports_dash_dash_target(cli_path: &Path) -> Result {
let cli_version = semver::Version::parse(&install::get_cli_version(
&install::Tool::WasmBindgen,
- &cli_path,
+ cli_path,
)?)?;
let expected_version = semver::Version::parse("0.2.40")?;
Ok(cli_version >= expected_version)
}
-fn build_target_arg(target: Target, cli_path: &PathBuf) -> Result {
- if !supports_dash_dash_target(cli_path.to_path_buf())? {
+fn build_target_arg(target: Target, cli_path: &Path) -> Result {
+ if !supports_dash_dash_target(cli_path)? {
Ok(build_target_arg_legacy(target, cli_path)?)
} else {
Ok(target.to_string())
}
}
-fn build_target_arg_legacy(target: Target, cli_path: &PathBuf) -> Result {
+fn build_target_arg_legacy(target: Target, cli_path: &Path) -> Result {
log::info!("Your version of wasm-bindgen is out of date. You should consider updating your Cargo.toml to a version >= 0.2.40.");
let target_arg = match target {
Target::Nodejs => "--nodejs",
Target::NoModules => "--no-modules",
Target::Web => {
- if supports_web_target(&cli_path)? {
+ if supports_web_target(cli_path)? {
"--web"
} else {
bail!("Your current version of wasm-bindgen does not support the 'web' target. Please update your project to wasm-bindgen version >= 0.2.39.")
diff --git a/src/build/wasm_target.rs b/src/build/wasm_target.rs
index 27fb2ca..f3cdf11 100644
--- a/src/build/wasm_target.rs
+++ b/src/build/wasm_target.rs
@@ -5,7 +5,7 @@ use emoji;
use failure::{Error, ResultExt};
use log::info;
use std::fmt;
-use std::path::PathBuf;
+use std::path::{Path, PathBuf};
use std::process::Command;
use PBAR;
@@ -81,7 +81,7 @@ fn get_rustc_sysroot() -> Result {
}
/// Checks if the wasm32-unknown-unknown is present in rustc's sysroot.
-fn is_wasm32_target_in_sysroot(sysroot: &PathBuf) -> bool {
+fn is_wasm32_target_in_sysroot(sysroot: &Path) -> bool {
let wasm32_target = "wasm32-unknown-unknown";
let rustlib_path = sysroot.join("lib/rustlib");
diff --git a/src/command/build.rs b/src/command/build.rs
index e18a77c..b680270 100644
--- a/src/command/build.rs
+++ b/src/command/build.rs
@@ -190,7 +190,7 @@ impl Build {
let path = build_opts.path.take().unwrap();
build_opts
.extra_options
- .insert(0, path.to_string_lossy().into_owned().to_string());
+ .insert(0, path.to_string_lossy().into_owned());
}
}
let crate_path = get_crate_path(build_opts.path)?;
@@ -370,7 +370,7 @@ impl Build {
let bindgen = install::download_prebuilt_or_cargo_install(
Tool::WasmBindgen,
&self.cache,
- &bindgen_version,
+ bindgen_version,
self.mode.install_permitted(),
)?;
self.bindgen = Some(bindgen);
@@ -382,7 +382,7 @@ impl Build {
info!("Building the wasm bindings...");
bindgen::wasm_bindgen_build(
&self.crate_data,
- &self.bindgen.as_ref().unwrap(),
+ self.bindgen.as_ref().unwrap(),
&self.out_dir,
&self.out_name,
self.disable_dts,
diff --git a/src/install/mod.rs b/src/install/mod.rs
index 071c821..06bf72a 100644
--- a/src/install/mod.rs
+++ b/src/install/mod.rs
@@ -10,7 +10,7 @@ use log::debug;
use log::{info, warn};
use std::env;
use std::fs;
-use std::path::PathBuf;
+use std::path::Path;
use std::process::Command;
use target;
use which::which;
@@ -71,7 +71,7 @@ pub fn download_prebuilt_or_cargo_install(
let msg = format!("{}Installing {}...", emoji::DOWN_ARROW, tool);
PBAR.info(&msg);
- let dl = download_prebuilt(&tool, &cache, version, install_permitted);
+ let dl = download_prebuilt(&tool, cache, version, install_permitted);
match dl {
Ok(dl) => return Ok(dl),
Err(e) => {
@@ -82,13 +82,13 @@ pub fn download_prebuilt_or_cargo_install(
}
}
- cargo_install(tool, &cache, version, install_permitted)
+ cargo_install(tool, cache, version, install_permitted)
}
/// Check if the tool dependency is locally satisfied.
pub fn check_version(
tool: &Tool,
- path: &PathBuf,
+ path: &Path,
expected_version: &str,
) -> Result {
let expected_version = if expected_version == "latest" {
@@ -107,7 +107,7 @@ pub fn check_version(
}
/// Fetches the version of a CLI tool
-pub fn get_cli_version(tool: &Tool, path: &PathBuf) -> Result {
+pub fn get_cli_version(tool: &Tool, path: &Path) -> Result {
let mut cmd = Command::new(path);
cmd.arg("--version");
let stdout = child::run_capture_stdout(cmd, tool)?;
diff --git a/src/manifest/mod.rs b/src/manifest/mod.rs
index e82451c..898de42 100644
--- a/src/manifest/mod.rs
+++ b/src/manifest/mod.rs
@@ -644,7 +644,7 @@ impl CrateData {
files,
main: js_file,
homepage: self.manifest.package.homepage.clone(),
- keywords: keywords,
+ keywords,
}
}
diff --git a/src/test/webdriver.rs b/src/test/webdriver.rs
index f0f34e8..93de546 100644
--- a/src/test/webdriver.rs
+++ b/src/test/webdriver.rs
@@ -23,13 +23,13 @@ fn get_and_notify(
name: &str,
url: &str,
) -> Result, failure::Error> {
- if let Some(dl) = cache.download(false, name, &[name], &url)? {
+ if let Some(dl) = cache.download(false, name, &[name], url)? {
return Ok(Some(dl.binary(name)?));
}
if installation_allowed {
PBAR.info(&format!("Getting {}...", name));
}
- match cache.download(installation_allowed, name, &[name], &url)? {
+ match cache.download(installation_allowed, name, &[name], url)? {
Some(dl) => Ok(Some(dl.binary(name)?)),
None => Ok(None),
}
From 5a25b971c9b487a2b6cc928202c0cfb18cbfa43e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 15:46:08 +0200
Subject: [PATCH 45/66] fix: Add exe to binary name if windows
---
npm/binary.js | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/npm/binary.js b/npm/binary.js
index 15a12a0..d66bf98 100644
--- a/npm/binary.js
+++ b/npm/binary.js
@@ -1,13 +1,14 @@
const { Binary } = require("binary-install");
const os = require("os");
-const { join } = require("path");
+
+const windows = "x86_64-pc-windows-msvc";
const getPlatform = () => {
const type = os.type();
const arch = os.arch();
if (type === "Windows_NT" && arch === "x64") {
- return "x86_64-pc-windows-msvc";
+ return windows;
}
if (type === "Linux" && arch === "x64") {
return "x86_64-unknown-linux-musl";
@@ -25,7 +26,7 @@ const getBinary = () => {
const author = "rustwasm";
const name = "wasm-pack";
const url = `https://github.com/${author}/${name}/releases/download/v${version}/${name}-v${version}-${platform}.tar.gz`;
- return new Binary(name, url );
+ return new Binary(platform === windows ? "wasm-pack.exe" : "wasm-pack", url);
};
const run = () => {
@@ -46,5 +47,5 @@ const uninstall = () => {
module.exports = {
install,
run,
- uninstall
+ uninstall,
};
From 6d81411605afcf6418b73866d77c32616e86d442 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 15:47:58 +0200
Subject: [PATCH 46/66] chore: Update package-lock
---
npm/package-lock.json | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/npm/package-lock.json b/npm/package-lock.json
index 2bbf475..e837284 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -191,9 +191,9 @@
}
},
"node_modules/tar": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
- "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+ "version": "6.1.11",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+ "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
"dependencies": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
@@ -357,9 +357,9 @@
}
},
"tar": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
- "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+ "version": "6.1.11",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+ "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
"requires": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
From d37c2d63de9f15870cb324f1c69b319e0ef165e7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 15:46:08 +0200
Subject: [PATCH 47/66] fix: Add exe to binary name if windows
---
npm/binary.js | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/npm/binary.js b/npm/binary.js
index 15a12a0..d66bf98 100644
--- a/npm/binary.js
+++ b/npm/binary.js
@@ -1,13 +1,14 @@
const { Binary } = require("binary-install");
const os = require("os");
-const { join } = require("path");
+
+const windows = "x86_64-pc-windows-msvc";
const getPlatform = () => {
const type = os.type();
const arch = os.arch();
if (type === "Windows_NT" && arch === "x64") {
- return "x86_64-pc-windows-msvc";
+ return windows;
}
if (type === "Linux" && arch === "x64") {
return "x86_64-unknown-linux-musl";
@@ -25,7 +26,7 @@ const getBinary = () => {
const author = "rustwasm";
const name = "wasm-pack";
const url = `https://github.com/${author}/${name}/releases/download/v${version}/${name}-v${version}-${platform}.tar.gz`;
- return new Binary(name, url );
+ return new Binary(platform === windows ? "wasm-pack.exe" : "wasm-pack", url);
};
const run = () => {
@@ -46,5 +47,5 @@ const uninstall = () => {
module.exports = {
install,
run,
- uninstall
+ uninstall,
};
From e9b620c123340be73e72d2aa4c4da203e54ef1ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 15:47:58 +0200
Subject: [PATCH 48/66] chore: Update package-lock
---
npm/package-lock.json | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/npm/package-lock.json b/npm/package-lock.json
index 2bbf475..e837284 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -191,9 +191,9 @@
}
},
"node_modules/tar": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
- "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+ "version": "6.1.11",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+ "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
"dependencies": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
@@ -357,9 +357,9 @@
}
},
"tar": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
- "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+ "version": "6.1.11",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+ "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
"requires": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
From ec6f0c2e22b7c15613a2e4a0779a04e067e17ae7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 16:23:15 +0200
Subject: [PATCH 49/66] 0.10.1
---
Cargo.lock | 223 +++++++++++++++++++++---------------------
Cargo.toml | 2 +-
docs/index.html | 6 +-
npm/package-lock.json | 4 +-
npm/package.json | 2 +-
5 files changed, 117 insertions(+), 120 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index e1e68c2..7b05553 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
[[package]]
name = "addr2line"
-version = "0.15.2"
+version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a"
+checksum = "3e61f2b7f93d2c7d2b08263acaa4a363b3e276806c68af6134c44f523bf1aacd"
dependencies = [
"gimli",
]
@@ -84,9 +84,9 @@ checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
[[package]]
name = "backtrace"
-version = "0.3.60"
+version = "0.3.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7815ea54e4d821e791162e078acbebfd6d8c8939cd559c9335dceb1c8ca7282"
+checksum = "e7a905d892734eea339e896738c14b9afce22b5318f64b951e70bf3844419b01"
dependencies = [
"addr2line",
"cc",
@@ -131,9 +131,9 @@ dependencies = [
[[package]]
name = "bitflags"
-version = "1.2.1"
+version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "blake2b_simd"
@@ -198,9 +198,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.0.68"
+version = "1.0.70"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787"
+checksum = "d26a6ce4b6a484fa3edb70f7efa6fc430fd2b87285fe8b84304fd0936faa0dc0"
[[package]]
name = "cfg-if"
@@ -273,7 +273,7 @@ dependencies = [
"clicolors-control",
"lazy_static 1.4.0",
"libc",
- "parking_lot 0.11.1",
+ "parking_lot 0.11.2",
"regex",
"termios",
"unicode-width",
@@ -356,9 +356,9 @@ dependencies = [
[[package]]
name = "crossbeam-deque"
-version = "0.7.3"
+version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
+checksum = "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed"
dependencies = [
"crossbeam-epoch",
"crossbeam-utils 0.7.2",
@@ -429,9 +429,9 @@ dependencies = [
[[package]]
name = "curl-sys"
-version = "0.4.44+curl-7.77.0"
+version = "0.4.45+curl-7.78.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b6d85e9322b193f117c966e79c2d6929ec08c02f339f950044aba12e20bbaf1"
+checksum = "de9e5a72b1c744eb5dd20b2be4d7eb84625070bb5c4ab9b347b70464ab1e62eb"
dependencies = [
"cc",
"libc",
@@ -537,29 +537,29 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
"synstructure",
]
[[package]]
name = "filetime"
-version = "0.2.14"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8"
+checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98"
dependencies = [
"cfg-if 1.0.0",
"libc",
- "redox_syscall 0.2.9",
+ "redox_syscall 0.2.10",
"winapi 0.3.9",
]
[[package]]
name = "flate2"
-version = "1.0.20"
+version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
+checksum = "80edafed416a46fb378521624fab1cfa2eb514784fd8921adbe8a8d8321da811"
dependencies = [
"cfg-if 1.0.0",
"crc32fast",
@@ -669,9 +669,9 @@ dependencies = [
[[package]]
name = "gimli"
-version = "0.24.0"
+version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e4075386626662786ddb0ec9081e7c7eeb1ba31951f447ca780ef9f5d568189"
+checksum = "f0a01e0497841a3b2db4f8afa483cce65f7e96a3498bd6c541734792aeac8fe7"
[[package]]
name = "glob"
@@ -752,9 +752,9 @@ dependencies = [
[[package]]
name = "httparse"
-version = "1.4.1"
+version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68"
+checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503"
[[package]]
name = "human-panic"
@@ -857,9 +857,9 @@ dependencies = [
[[package]]
name = "instant"
-version = "0.1.9"
+version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
+checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d"
dependencies = [
"cfg-if 1.0.0",
]
@@ -884,9 +884,9 @@ dependencies = [
[[package]]
name = "itoa"
-version = "0.4.7"
+version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"
+checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
[[package]]
name = "kernel32-sys"
@@ -912,9 +912,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "libc"
-version = "0.2.97"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6"
+checksum = "3cb00336871be5ed2c8ed44b60ae9959dc5b9f08539422ed43f09e34ecaeba21"
[[package]]
name = "libz-sys"
@@ -949,9 +949,9 @@ dependencies = [
[[package]]
name = "lock_api"
-version = "0.4.4"
+version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb"
+checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109"
dependencies = [
"scopeguard 1.1.0",
]
@@ -967,9 +967,9 @@ dependencies = [
[[package]]
name = "matches"
-version = "0.1.8"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
[[package]]
name = "maybe-uninit"
@@ -979,9 +979,9 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
[[package]]
name = "memchr"
-version = "2.4.0"
+version = "2.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
[[package]]
name = "memoffset"
@@ -1051,9 +1051,9 @@ dependencies = [
[[package]]
name = "native-tls"
-version = "0.2.7"
+version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4"
+checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d"
dependencies = [
"lazy_static 1.4.0",
"libc",
@@ -1115,9 +1115,9 @@ dependencies = [
[[package]]
name = "object"
-version = "0.25.3"
+version = "0.26.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a38f2be3697a57b4060074ff41b44c16870d916ad7877c17696e063257482bc7"
+checksum = "39f37e50073ccad23b6d09bcb5b263f4e76d3bb6038e4a3c08e52162ffa8abc2"
dependencies = [
"memchr",
]
@@ -1130,9 +1130,9 @@ checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
[[package]]
name = "openssl"
-version = "0.10.35"
+version = "0.10.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "549430950c79ae24e6d02e0b7404534ecf311d94cc9f861e9e4020187d13d885"
+checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a"
dependencies = [
"bitflags",
"cfg-if 1.0.0",
@@ -1150,18 +1150,18 @@ checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a"
[[package]]
name = "openssl-src"
-version = "111.15.0+1.1.1k"
+version = "111.16.0+1.1.1l"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a5f6ae2ac04393b217ea9f700cd04fa9bf3d93fae2872069f3d15d908af70a"
+checksum = "7ab2173f69416cf3ec12debb5823d244127d23a9b127d5a5189aa97c5fa2859f"
dependencies = [
"cc",
]
[[package]]
name = "openssl-sys"
-version = "0.9.65"
+version = "0.9.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a7907e3bfa08bb85105209cdfcb6c63d109f8f6c1ed6ca318fff5c1853fbc1d"
+checksum = "1996d2d305e561b70d1ee0c53f1542833f4e1ac6ce9a6708b6ff2738ca67dc82"
dependencies = [
"autocfg 1.0.1",
"cc",
@@ -1212,13 +1212,13 @@ dependencies = [
[[package]]
name = "parking_lot"
-version = "0.11.1"
+version = "0.11.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
+checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
dependencies = [
"instant",
- "lock_api 0.4.4",
- "parking_lot_core 0.8.3",
+ "lock_api 0.4.5",
+ "parking_lot_core 0.8.5",
]
[[package]]
@@ -1251,14 +1251,14 @@ dependencies = [
[[package]]
name = "parking_lot_core"
-version = "0.8.3"
+version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
+checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216"
dependencies = [
"cfg-if 1.0.0",
"instant",
"libc",
- "redox_syscall 0.2.9",
+ "redox_syscall 0.2.10",
"smallvec 1.6.1",
"winapi 0.3.9",
]
@@ -1308,9 +1308,9 @@ checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451"
[[package]]
name = "predicates-tree"
-version = "1.0.2"
+version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f553275e5721409451eb85e15fd9a860a6e5ab4496eb215987502b5f5391f2"
+checksum = "d7dd0fd014130206c9352efbdc92be592751b2b9274dff685348341082c6ea3d"
dependencies = [
"predicates-core",
"treeline",
@@ -1323,9 +1323,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
"version_check",
]
@@ -1335,7 +1335,7 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
"version_check",
]
@@ -1351,9 +1351,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.27"
+version = "1.0.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
+checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d"
dependencies = [
"unicode-xid 0.2.2",
]
@@ -1389,7 +1389,7 @@ version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
]
[[package]]
@@ -1591,9 +1591,9 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
[[package]]
name = "redox_syscall"
-version = "0.2.9"
+version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee"
+checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff"
dependencies = [
"bitflags",
]
@@ -1683,9 +1683,9 @@ dependencies = [
[[package]]
name = "rustc-demangle"
-version = "0.1.20"
+version = "0.1.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dead70b0b5e03e9c814bcb6b01e03e68f7c57a80aa48c72ec92152ab3e818d49"
+checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342"
[[package]]
name = "rustc_version"
@@ -1735,9 +1735,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
name = "security-framework"
-version = "2.3.1"
+version = "2.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467"
+checksum = "525bc1abfda2e1998d152c45cf13e696f76d0a4972310b22fac1658b05df7c87"
dependencies = [
"bitflags",
"core-foundation",
@@ -1748,9 +1748,9 @@ dependencies = [
[[package]]
name = "security-framework-sys"
-version = "2.3.0"
+version = "2.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e4effb91b4b8b6fb7732e670b6cee160278ff8e6bf485c7805d9e319d76e284"
+checksum = "a9dd14d83160b528b7bfd66439110573efcfbe281b17fc2ca9f39f550d619c7e"
dependencies = [
"core-foundation-sys",
"libc",
@@ -1774,22 +1774,22 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
-version = "1.0.126"
+version = "1.0.130"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03"
+checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.126"
+version = "1.0.130"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43"
+checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
]
[[package]]
@@ -1803,9 +1803,9 @@ dependencies = [
[[package]]
name = "serde_json"
-version = "1.0.64"
+version = "1.0.67"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79"
+checksum = "a7f9e390c27c3c0ce8bc5d725f6e4d30a29d26659494aa4b17535f7522c5c950"
dependencies = [
"itoa",
"ryu",
@@ -1851,9 +1851,9 @@ checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
[[package]]
name = "slab"
-version = "0.4.3"
+version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527"
+checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590"
[[package]]
name = "smallvec"
@@ -1872,9 +1872,9 @@ checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
[[package]]
name = "socket2"
-version = "0.4.0"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2"
+checksum = "765f090f0e423d2b55843402a07915add955e7d60657db13707a159727326cad"
dependencies = [
"libc",
"winapi 0.3.9",
@@ -1903,9 +1903,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
[[package]]
name = "structopt"
-version = "0.3.21"
+version = "0.3.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c"
+checksum = "bf9d950ef167e25e0bdb073cf1d68e9ad2795ac826f2f3f59647817cf23c0bfa"
dependencies = [
"clap",
"lazy_static 1.4.0",
@@ -1914,15 +1914,15 @@ dependencies = [
[[package]]
name = "structopt-derive"
-version = "0.4.14"
+version = "0.4.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
+checksum = "134d838a2c9943ac3125cf6df165eda53493451b719f3255b2a26b85f772d0ba"
dependencies = [
"heck",
"proc-macro-error",
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
]
[[package]]
@@ -1938,32 +1938,32 @@ dependencies = [
[[package]]
name = "syn"
-version = "1.0.73"
+version = "1.0.76"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7"
+checksum = "c6f107db402c2c2055242dbf4d2af0e69197202e9faacbef9571bbe47f5a1b84"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
"unicode-xid 0.2.2",
]
[[package]]
name = "synstructure"
-version = "0.12.4"
+version = "0.12.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
+checksum = "474aaa926faa1603c40b7885a9eaea29b444d1cb2850cb7c0e37bb1a4182f4fa"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
"unicode-xid 0.2.2",
]
[[package]]
name = "tar"
-version = "0.4.35"
+version = "0.4.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d779dc6aeff029314570f666ec83f19df7280bb36ef338442cfa8c604021b80"
+checksum = "d6f5515d3add52e0bbdcad7b83c388bb36ba7b754dda3b5f5bc2d38640cdba5c"
dependencies = [
"filetime",
"libc",
@@ -1992,7 +1992,7 @@ dependencies = [
"cfg-if 1.0.0",
"libc",
"rand 0.8.4",
- "redox_syscall 0.2.9",
+ "redox_syscall 0.2.10",
"remove_dir_all",
"winapi 0.3.9",
]
@@ -2036,22 +2036,22 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.25"
+version = "1.0.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa6f76457f59514c7eeb4e59d891395fab0b2fd1d40723ae737d64153392e9c6"
+checksum = "602eca064b2d83369e2b2f34b09c70b605402801927c65c11071ac911d299b88"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.25"
+version = "1.0.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d"
+checksum = "bad553cc2c78e8de258400763a647e80e6d1b31ee237275d756f6836d204494c"
dependencies = [
- "proc-macro2 1.0.27",
+ "proc-macro2 1.0.29",
"quote 1.0.9",
- "syn 1.0.73",
+ "syn 1.0.76",
]
[[package]]
@@ -2066,9 +2066,9 @@ dependencies = [
[[package]]
name = "tinyvec"
-version = "1.2.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342"
+checksum = "848a1e1181b9f6753b5e96a092749e29b11d19ede67dfbbd6c7dc7e0f49b5338"
dependencies = [
"tinyvec_macros",
]
@@ -2262,12 +2262,9 @@ dependencies = [
[[package]]
name = "unicode-bidi"
-version = "0.3.5"
+version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0"
-dependencies = [
- "matches",
-]
+checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085"
[[package]]
name = "unicode-normalization"
@@ -2280,9 +2277,9 @@ dependencies = [
[[package]]
name = "unicode-segmentation"
-version = "1.7.1"
+version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796"
+checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
[[package]]
name = "unicode-width"
@@ -2397,7 +2394,7 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
[[package]]
name = "wasm-pack"
-version = "0.10.0"
+version = "0.10.1"
dependencies = [
"assert_cmd",
"atty",
diff --git a/Cargo.toml b/Cargo.toml
index 617eada..5a49003 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "wasm-pack"
description = "📦✨ your favorite rust -> wasm workflow tool!"
-version = "0.10.0"
+version = "0.10.1"
authors = ["Ashley Williams ", "Jesper Håkansson "]
repository = "https://github.com/rustwasm/wasm-pack.git"
license = "MIT/Apache-2.0"
diff --git a/docs/index.html b/docs/index.html
index fbec2ba..4e183d2 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -42,9 +42,9 @@
📦✨ your favorite rust -> wasm workflow tool!
-
✨ Install wasm-pack 0.10.0 ✨
-
2 Jul 2021 |
-
+ ✨ Install wasm-pack 0.10.1 ✨
+
5 Sep 2021 |
+
Release Notes
diff --git a/npm/package-lock.json b/npm/package-lock.json
index e837284..b0c22aa 100644
--- a/npm/package-lock.json
+++ b/npm/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "wasm-pack",
- "version": "0.10.0",
+ "version": "0.10.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "wasm-pack",
- "version": "0.10.0",
+ "version": "0.10.1",
"hasInstallScript": true,
"license": "MIT OR Apache-2.0",
"dependencies": {
diff --git a/npm/package.json b/npm/package.json
index a7f493a..8ce22f6 100644
--- a/npm/package.json
+++ b/npm/package.json
@@ -1,6 +1,6 @@
{
"name": "wasm-pack",
- "version": "0.10.0",
+ "version": "0.10.1",
"description": "📦✨ your favorite rust -> wasm workflow tool!",
"main": "binary.js",
"scripts": {
From 3a9fae4775f7b83fd6813f6a920623f090a62641 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 4 Jul 2021 13:06:54 +0200
Subject: [PATCH 50/66] fix(ci): Upload window init exe file
---
.github/workflows/release.yml | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 4756e32..c23dad1 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -91,9 +91,11 @@ jobs:
if: matrix.build == 'windows'
shell: bash
run: |
- mv ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ mv wasm-pack-init.exe ${{ env.RELEASE_DIR }}
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- name: Create tarball (MacOS)
if: matrix.build == 'macos'
@@ -134,7 +136,7 @@ jobs:
with:
name: linux
- - name: Download MacOS tarball
+ - name: Download Windows tarball
uses: actions/download-artifact@v1
with:
name: windows
@@ -164,6 +166,16 @@ jobs:
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ - name: Release Windows init exe
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./windows/wasm-pack-init.exe
+ asset_content_type: application/vnd.microsoft.portable-executable
+ asset_name: wasm-pack-init.exe
+
- name: Release MacOS tarball
uses: actions/upload-release-asset@v1
env:
From e60f29fc19669b9f05f4df0b6500c90692eafca4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Fri, 2 Jul 2021 19:10:54 +0200
Subject: [PATCH 51/66] fix(ci): Fix release tarballs
---
.github/workflows/release.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index c23dad1..1ab3d9e 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -85,7 +85,7 @@ jobs:
run: |
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
- name: Create tarball (Windows)
if: matrix.build == 'windows'
@@ -102,7 +102,7 @@ jobs:
run: |
mv ./target/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist/* | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
- name: Upload Zip
uses: actions/upload-artifact@v1
From b1e67d3d22b17bcfe60d5d8258bd4609bcb9bf55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Sun, 5 Sep 2021 19:37:31 +0200
Subject: [PATCH 52/66] doc: Update CHANGELOG
---
CHANGELOG.md | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c9e2d8d..bf70a74 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,15 @@
## 🤍 Unreleased
+## 🌦️ 0.10.1
+
+- ### 🤕 Fixes
+
+ - **Add exe to binary name if windows - [drager], [issue/1038] [pull/1055]**
+
+ [pull/1055]: https://github.com/rustwasm/wasm-pack/pull/1055
+ [issue/1038]: https://github.com/rustwasm/wasm-pack/issues/1038
+
## 🌦️ 0.10.0
- ### ✨ Features
From 7ccacca9370c418d2108d7bf70e797908a7b6538 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jesper=20H=C3=A5kansson?=
Date: Mon, 6 Sep 2021 19:39:25 +0200
Subject: [PATCH 53/66] fix(ci): Make folder in tar named full name instead of
dist
---
.github/workflows/release.yml | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 1ab3d9e..8a425a7 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -78,31 +78,33 @@ jobs:
- name: Create artifact directory
run: |
mkdir ${{ env.RELEASE_DIR }}
- mkdir dist
+ mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}
+ mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}
+ mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}
- name: Create tarball (Linux)
if: matrix.build == 'linux'
run: |
- mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
- mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}/${{ env.RELEASE_BIN }}
+ mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}
+ 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
- name: Create tarball (Windows)
if: matrix.build == 'windows'
shell: bash
run: |
- cp ./target/release/${{ env.RELEASE_BIN }}.exe ./dist/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}/${{ env.RELEASE_BIN }}.exe
cp ./target/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
- mv ${{ env.RELEASE_ADDS }} ./dist
+ mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}
mv wasm-pack-init.exe ${{ env.RELEASE_DIR }}
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- name: Create tarball (MacOS)
if: matrix.build == 'macos'
run: |
- mv ./target/release/${{ env.RELEASE_BIN }} ./dist/${{ env.RELEASE_BIN }}
- mv ${{ env.RELEASE_ADDS }} ./dist
- 7z a -ttar -so -an ./dist | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ mv ./target/release/${{ env.RELEASE_BIN }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}/${{ env.RELEASE_BIN }}
+ mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}
+ 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
- name: Upload Zip
uses: actions/upload-artifact@v1
From 1272e4c530b3a91450c2a06f9973887fa646bbcf Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 14:25:09 +0000
Subject: [PATCH 54/66] Add linux/arm64 to release
---
.github/workflows/release.yml | 98 ++++++++++++++++++-----------------
1 file changed, 51 insertions(+), 47 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 8a425a7..ac5eb21 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -11,7 +11,8 @@ env:
GITHUB_REF: '${{ github.ref }}'
WINDOWS_TARGET: x86_64-pc-windows-msvc
MACOS_TARGET: x86_64-apple-darwin
- LINUX_TARGET: x86_64-unknown-linux-musl
+ LINUX_AMD64_TARGET: x86_64-unknown-linux-musl
+ LINUX_ARM64_TARGET: aarch64-unknown-linux-musl
# Space separated paths to include in the archive.
RELEASE_ADDS: README.md LICENSE-APACHE LICENSE-MIT
@@ -22,15 +23,17 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
- build: [linux, macos, windows]
include:
- - build: linux
+ - target: ${{ env.LINUX_AMD64_TARGET }}
os: ubuntu-latest
rust: stable
- - build: macos
+ - target: ${{ env.LINUX_ARM64_TARGET }}
+ os: ubuntu-latest
+ rust: stable
+ - target: ${{ env.MACOS_TARGET }}
os: macos-latest
rust: stable
- - build: windows
+ - target: ${{ env.WINDOWS_TARGET }}
os: windows-latest
rust: stable
@@ -50,66 +53,52 @@ jobs:
echo ::set-output name=version::"${GITHUB_REF:10}"
- name: Install musl-tools (Linux)
- if: matrix.build == 'linux'
+ if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
sudo apt-get install musl-tools -y
- name: Install p7zip (MacOS)
- if: matrix.build == 'macos'
+ if: matrix.os == 'macos-latest'
run: brew install p7zip
- - name: Build (Linux)
- if: matrix.build == 'linux'
- run: |
- rustup target add ${{ env.LINUX_TARGET }}
- cargo build --release --target ${{ env.LINUX_TARGET }}
+ - name: Add rustup target
+ run: rustup target add ${{ matrix.target }}
- - name: Build (MacOS)
- if: matrix.build == 'macos'
- run: cargo build --release
+ - name: Build
+ run: cargo build --release --target ${{ matrix.target }}
- - name: Build (Windows)
- if: matrix.build == 'windows'
- run: cargo build --release
- env:
- RUSTFLAGS: -Ctarget-feature=+crt-static
+ - name: Set RUSTFLAGS (Windows)
+ if: matrix.os == 'windows-latest'
+ run: echo "RUSTFLAGS=-Ctarget-feature=+crt-static" >> $GITHUB_ENV
- name: Create artifact directory
run: |
mkdir ${{ env.RELEASE_DIR }}
- mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}
- mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}
- mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}
+ mkdir -p ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}
- - name: Create tarball (Linux)
- if: matrix.build == 'linux'
+ - name: Move binaries (Linux/MacOS)
+ if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
run: |
- mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BIN }} ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}/${{ env.RELEASE_BIN }}
- mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}
- 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ mv ./target/${{ matrix.target }}/release/${{ env.RELEASE_BIN }} ${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}/${{ env.RELEASE_BIN }}
+ mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}
- - name: Create tarball (Windows)
- if: matrix.build == 'windows'
+ - name: Move binaries (Windows)
+ if: matrix.os == 'windows-latest'
shell: bash
run: |
- cp ./target/release/${{ env.RELEASE_BIN }}.exe ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}/${{ env.RELEASE_BIN }}.exe
+ cp ./target/release/${{ env.RELEASE_BIN }}.exe ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}/${{ env.RELEASE_BIN }}.exe
cp ./target/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
- mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}
+ mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}
mv wasm-pack-init.exe ${{ env.RELEASE_DIR }}
- 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
- - name: Create tarball (MacOS)
- if: matrix.build == 'macos'
- run: |
- mv ./target/release/${{ env.RELEASE_BIN }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}/${{ env.RELEASE_BIN }}
- mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}
- 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ - name: Create tarball
+ run: 7z a -ttar -so -an ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }} | 7z a -si ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}.tar.gz
- name: Upload Zip
uses: actions/upload-artifact@v1
with:
- name: ${{ matrix.build }}
+ name: ${{ matrix.target }}
path: ./${{ env.RELEASE_DIR }}
release:
@@ -133,30 +122,45 @@ jobs:
tag_name: ${{ steps.get_version.outputs.VERSION }}
release_name: ${{ steps.get_version.outputs.VERSION }}
- - name: Download Linux tarball
+ - name: Download Linux amd64 tarball
+ uses: actions/download-artifact@v1
+ with:
+ name: ${{ env.LINUX_AMD64_TARGET }}
+
+ - name: Download Linux arm64 tarball
uses: actions/download-artifact@v1
with:
- name: linux
+ name: ${{ env.LINUX_ARM64_TARGET }}
- name: Download Windows tarball
uses: actions/download-artifact@v1
with:
- name: windows
+ name: ${{ env.WINDOWS_TARGET }}
- name: Download MacOS tarball
uses: actions/download-artifact@v1
with:
- name: macos
+ name: ${{ env.MACOS_TARGET }}
+
+ - name: Release Linux amd64 tarball
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_AMD64_TARGET }}.tar.gz
+ asset_content_type: application/gzip
+ asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_AMD64_TARGET }}.tar.gz
- - name: Release Linux tarball
+ - name: Release Linux arm64 tarball
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_ARM64_TARGET }}.tar.gz
asset_content_type: application/gzip
- asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_TARGET }}.tar.gz
+ asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_ARM64_TARGET }}.tar.gz
- name: Release Windows tarball
uses: actions/upload-release-asset@v1
From 8d2e4baf6e8a8196be432f4ceac4e36e54dd4ee4 Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 14:35:22 +0000
Subject: [PATCH 55/66] remove env from matrix
---
.github/workflows/release.yml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index ac5eb21..b468bb7 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -24,16 +24,16 @@ jobs:
strategy:
matrix:
include:
- - target: ${{ env.LINUX_AMD64_TARGET }}
+ - target: x86_64-unknown-linux-musl
os: ubuntu-latest
rust: stable
- - target: ${{ env.LINUX_ARM64_TARGET }}
+ - target: aarch64-unknown-linux-musl
os: ubuntu-latest
rust: stable
- - target: ${{ env.MACOS_TARGET }}
+ - target: x86_64-apple-darwin
os: macos-latest
rust: stable
- - target: ${{ env.WINDOWS_TARGET }}
+ - target: x86_64-pc-windows-msvc
os: windows-latest
rust: stable
From 3737ed523e70b12a2b89cca8270383677d76940d Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 14:53:24 +0000
Subject: [PATCH 56/66] add gcc for aarch64
---
.github/workflows/release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index b468bb7..4856baf 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -56,7 +56,7 @@ jobs:
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
- sudo apt-get install musl-tools -y
+ sudo apt-get install musl-tools gcc-10-aarch64-linux-gnu -y
- name: Install p7zip (MacOS)
if: matrix.os == 'macos-latest'
From c139f6d8c6069e10bac143ff0b3235b929b2dad8 Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 14:57:31 +0000
Subject: [PATCH 57/66] set TARGET_CC
---
.github/workflows/release.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 4856baf..aeeb991 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -56,7 +56,8 @@ jobs:
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
- sudo apt-get install musl-tools gcc-10-aarch64-linux-gnu -y
+ sudo apt-get install clang -y
+ echo "TARGET_CC=clang" >> $GITHUB_ENV
- name: Install p7zip (MacOS)
if: matrix.os == 'macos-latest'
From 28abdfb2926aea798cc4d63f0186a57135b3affc Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 15:07:10 +0000
Subject: [PATCH 58/66] add libc6-dev-arm64-cross
---
.github/workflows/release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index aeeb991..3b396cb 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -56,7 +56,7 @@ jobs:
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
- sudo apt-get install clang -y
+ sudo apt-get install clang libc6-dev-arm64-cross -y
echo "TARGET_CC=clang" >> $GITHUB_ENV
- name: Install p7zip (MacOS)
From d8a4964300046ba2665402af80006245be5120f9 Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 15:34:59 +0000
Subject: [PATCH 59/66] set arm linker
---
.github/workflows/release.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 3b396cb..e18caca 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -58,6 +58,7 @@ jobs:
sudo apt-get update -y
sudo apt-get install clang libc6-dev-arm64-cross -y
echo "TARGET_CC=clang" >> $GITHUB_ENV
+ echo "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER=/usr/aarch64-linux-gnu/bin/ld" >> $GITHUB_ENV
- name: Install p7zip (MacOS)
if: matrix.os == 'macos-latest'
From ce69931d7c18ebc74138b5a7d1e1f17e61adee65 Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 15:39:06 +0000
Subject: [PATCH 60/66] set cflags
---
.github/workflows/release.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index e18caca..0740669 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -52,12 +52,13 @@ jobs:
echo "using version tag ${GITHUB_REF:10}"
echo ::set-output name=version::"${GITHUB_REF:10}"
- - name: Install musl-tools (Linux)
+ - name: Install C compilation tooling (Linux)
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
sudo apt-get install clang libc6-dev-arm64-cross -y
echo "TARGET_CC=clang" >> $GITHUB_ENV
+ echo "CFLAGS_aarch64_unknown_linux_musl=--sysroot=/usr/aarch64-linux-gnu" >> $GITHUB_ENV
echo "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER=/usr/aarch64-linux-gnu/bin/ld" >> $GITHUB_ENV
- name: Install p7zip (MacOS)
From a2cc5f577c26a4fdf7571f76979781a21254265c Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 15:55:34 +0000
Subject: [PATCH 61/66] update gcc
---
.github/workflows/release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 0740669..670c320 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -56,7 +56,7 @@ jobs:
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
- sudo apt-get install clang libc6-dev-arm64-cross -y
+ sudo apt-get install clang gcc-aarch64-linux-gnu -y
echo "TARGET_CC=clang" >> $GITHUB_ENV
echo "CFLAGS_aarch64_unknown_linux_musl=--sysroot=/usr/aarch64-linux-gnu" >> $GITHUB_ENV
echo "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER=/usr/aarch64-linux-gnu/bin/ld" >> $GITHUB_ENV
From 89f73e338a765517624dd109e9aaaf1f798ff24b Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 16:12:05 +0000
Subject: [PATCH 62/66] fix windows
---
.github/workflows/release.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 670c320..e896e83 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -90,8 +90,8 @@ jobs:
if: matrix.os == 'windows-latest'
shell: bash
run: |
- cp ./target/release/${{ env.RELEASE_BIN }}.exe ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}/${{ env.RELEASE_BIN }}.exe
- cp ./target/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
+ cp ./target/${{ matrix.target }}/release/${{ env.RELEASE_BIN }}.exe ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}/${{ env.RELEASE_BIN }}.exe
+ cp ./target/${{ matrix.target }}/release/${{ env.RELEASE_BIN }}.exe wasm-pack-init.exe
mv ${{ env.RELEASE_ADDS }} ./${{ env.RELEASE_DIR }}/${{ env.RELEASE_BIN }}-${{ steps.get_version.outputs.VERSION }}-${{ matrix.target }}
mv wasm-pack-init.exe ${{ env.RELEASE_DIR }}
From d1d40f995435e6b8a8009990a8702189e308018e Mon Sep 17 00:00:00 2001
From: Nick Cardin
Date: Thu, 30 Sep 2021 16:55:40 +0000
Subject: [PATCH 63/66] use download-artifact@v2
---
.github/workflows/release.yml | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index e896e83..ea3891b 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -126,22 +126,22 @@ jobs:
release_name: ${{ steps.get_version.outputs.VERSION }}
- name: Download Linux amd64 tarball
- uses: actions/download-artifact@v1
+ uses: actions/download-artifact@v2
with:
name: ${{ env.LINUX_AMD64_TARGET }}
- name: Download Linux arm64 tarball
- uses: actions/download-artifact@v1
+ uses: actions/download-artifact@v2
with:
name: ${{ env.LINUX_ARM64_TARGET }}
- name: Download Windows tarball
- uses: actions/download-artifact@v1
+ uses: actions/download-artifact@v2
with:
name: ${{ env.WINDOWS_TARGET }}
- name: Download MacOS tarball
- uses: actions/download-artifact@v1
+ uses: actions/download-artifact@v2
with:
name: ${{ env.MACOS_TARGET }}
@@ -151,7 +151,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_AMD64_TARGET }}.tar.gz
+ asset_path: ./wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_AMD64_TARGET }}.tar.gz
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_AMD64_TARGET }}.tar.gz
@@ -161,7 +161,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./linux/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_ARM64_TARGET }}.tar.gz
+ asset_path: ./wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_ARM64_TARGET }}.tar.gz
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX_ARM64_TARGET }}.tar.gz
@@ -171,7 +171,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./windows/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
+ asset_path: ./wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS_TARGET }}.tar.gz
@@ -181,7 +181,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./windows/wasm-pack-init.exe
+ asset_path: ./wasm-pack-init.exe
asset_content_type: application/vnd.microsoft.portable-executable
asset_name: wasm-pack-init.exe
@@ -191,6 +191,6 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./macos/wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
+ asset_path: ./wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
asset_content_type: application/gzip
asset_name: wasm-pack-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS_TARGET }}.tar.gz
From a8da03cf01971a5f691cfcad56a5a3c0832637bc Mon Sep 17 00:00:00 2001
From: Fichtelcoder
Date: Sat, 23 Oct 2021 11:22:10 +0200
Subject: [PATCH 64/66] Fix #1059.
This is the correct way to pass extra arguments, such as features to cargo.
---
docs/src/commands/build.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/src/commands/build.md b/docs/src/commands/build.md
index 9f4bae4..616fd24 100644
--- a/docs/src/commands/build.md
+++ b/docs/src/commands/build.md
@@ -133,7 +133,7 @@ at the very end of your command, just as you would for `cargo build`. For
example, to build the previous example using cargo's offline feature:
```
-wasm-pack build examples/js-hello-world --mode no-install --offline
+wasm-pack build examples/js-hello-world --mode no-install -- --offline
```
From 713868b204f151acd1989c3f29ff9d3bc944c306 Mon Sep 17 00:00:00 2001
From: Dominic Elm
Date: Fri, 3 Dec 2021 19:58:33 +0100
Subject: [PATCH 65/66] feat: add support for macos aarch64
---
src/install/mod.rs | 2 +-
src/target.rs | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/install/mod.rs b/src/install/mod.rs
index 06bf72a..6474d1e 100644
--- a/src/install/mod.rs
+++ b/src/install/mod.rs
@@ -172,7 +172,7 @@ fn prebuilt_url(tool: &Tool, version: &str) -> Result {
Tool::WasmOpt => "x86-linux",
_ => bail!("Unrecognized target!"),
}
- } else if target::MACOS && target::x86_64 {
+ } else if target::MACOS && (target::x86_64 || target::aarch64) {
"x86_64-apple-darwin"
} else if target::WINDOWS && target::x86_64 {
match tool {
diff --git a/src/target.rs b/src/target.rs
index cfaff6a..0a6d38f 100644
--- a/src/target.rs
+++ b/src/target.rs
@@ -13,3 +13,5 @@ pub const WINDOWS: bool = cfg!(target_os = "windows");
pub const x86_64: bool = cfg!(target_arch = "x86_64");
#[allow(non_upper_case_globals)]
pub const x86: bool = cfg!(target_arch = "x86");
+#[allow(non_upper_case_globals)]
+pub const aarch64: bool = cfg!(target_arch = "aarch64");
From 08825f20113f8be2fc2fcedddd51dedca9669f97 Mon Sep 17 00:00:00 2001
From: Dominic Elm
Date: Tue, 14 Dec 2021 08:56:09 +0100
Subject: [PATCH 66/66] fix: add support for arm64 when using npm
---
npm/binary.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/npm/binary.js b/npm/binary.js
index d66bf98..41b33d8 100644
--- a/npm/binary.js
+++ b/npm/binary.js
@@ -13,7 +13,7 @@ const getPlatform = () => {
if (type === "Linux" && arch === "x64") {
return "x86_64-unknown-linux-musl";
}
- if (type === "Darwin" && arch === "x64") {
+ if (type === "Darwin" && (arch === "x64" || arch === "arm64")) {
return "x86_64-apple-darwin";
}