1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-24 16:19:12 -05:00

chore: release crates (#10269)

* Revert "tooling(bench_util): benching and profiling utilities (#10223)"

This reverts commit 733a000305.

* Upgrade notify
This commit is contained in:
Bartek Iwańczuk 2021-04-21 00:15:39 +02:00 committed by GitHub
parent 0cc0196576
commit 3432833574
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
20 changed files with 178 additions and 112 deletions

45
Cargo.lock generated
View file

@ -1,7 +1,5 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "Inflector"
version = "0.11.4"
@ -196,15 +194,6 @@ version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
[[package]]
name = "bench_util"
version = "0.0.0"
dependencies = [
"bencher",
"deno_core",
"tokio",
]
[[package]]
name = "bencher"
version = "0.1.5"
@ -581,17 +570,17 @@ dependencies = [
[[package]]
name = "deno_console"
version = "0.3.0"
version = "0.4.0"
dependencies = [
"deno_core",
]
[[package]]
name = "deno_core"
version = "0.84.0"
version = "0.85.0"
dependencies = [
"anyhow",
"bench_util",
"bencher",
"futures",
"indexmap",
"lazy_static",
@ -608,7 +597,7 @@ dependencies = [
[[package]]
name = "deno_crypto"
version = "0.17.0"
version = "0.18.0"
dependencies = [
"deno_core",
"rand 0.8.3",
@ -632,7 +621,7 @@ dependencies = [
[[package]]
name = "deno_fetch"
version = "0.25.0"
version = "0.26.0"
dependencies = [
"bytes",
"data-url",
@ -648,7 +637,7 @@ dependencies = [
[[package]]
name = "deno_file"
version = "0.2.0"
version = "0.3.0"
dependencies = [
"deno_core",
"uuid",
@ -676,7 +665,7 @@ dependencies = [
[[package]]
name = "deno_runtime"
version = "0.11.0"
version = "0.12.0"
dependencies = [
"atty",
"bytes",
@ -724,7 +713,7 @@ dependencies = [
[[package]]
name = "deno_timers"
version = "0.1.0"
version = "0.2.0"
dependencies = [
"deno_core",
"tokio",
@ -732,9 +721,9 @@ dependencies = [
[[package]]
name = "deno_url"
version = "0.3.0"
version = "0.4.0"
dependencies = [
"bench_util",
"bencher",
"deno_core",
"idna",
"percent-encoding",
@ -743,7 +732,7 @@ dependencies = [
[[package]]
name = "deno_web"
version = "0.33.0"
version = "0.34.0"
dependencies = [
"deno_core",
"futures",
@ -751,7 +740,7 @@ dependencies = [
[[package]]
name = "deno_webgpu"
version = "0.4.0"
version = "0.5.0"
dependencies = [
"deno_core",
"serde",
@ -762,14 +751,14 @@ dependencies = [
[[package]]
name = "deno_webidl"
version = "0.3.0"
version = "0.4.0"
dependencies = [
"deno_core",
]
[[package]]
name = "deno_websocket"
version = "0.8.0"
version = "0.9.0"
dependencies = [
"deno_core",
"http",
@ -2006,9 +1995,9 @@ dependencies = [
[[package]]
name = "notify"
version = "5.0.0-pre.6"
version = "5.0.0-pre.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5fd82b93434edb9c00ae65ee741e0e081cdc8c63346ab9f687935a629aaf4c3"
checksum = "1ebe7699a0f8c5759450716ee03d231685c22b4fe8f406c42c22e0ad94d40ce7"
dependencies = [
"anymap",
"bitflags",
@ -2799,7 +2788,7 @@ dependencies = [
[[package]]
name = "serde_v8"
version = "0.2.0"
version = "0.3.0"
dependencies = [
"bencher",
"rusty_v8",

View file

@ -7,7 +7,6 @@ members = [
"runtime",
"serde_v8",
"test_plugin",
"bench_util",
"test_util",
"op_crates/crypto",
"op_crates/fetch",

View file

@ -13,5 +13,5 @@ repository = "https://github.com/denoland/deno"
[dependencies]
bencher = "0.1"
deno_core = { version = "0.84.0", path = "../core" }
deno_core = { version = "0.85.0", path = "../core" }
tokio = { version = "1.4.0", features = ["full"] }

View file

@ -24,8 +24,8 @@ harness = false
path = "./bench/main.rs"
[build-dependencies]
deno_core = { path = "../core", version = "0.84.0" }
deno_runtime = { path = "../runtime", version = "0.11.0" }
deno_core = { path = "../core", version = "0.85.0" }
deno_runtime = { path = "../runtime", version = "0.12.0" }
regex = "1.4.3"
serde = { version = "1.0.125", features = ["derive"] }
@ -34,10 +34,10 @@ winapi = "0.3.9"
winres = "0.1.11"
[dependencies]
deno_core = { path = "../core", version = "0.84.0" }
deno_core = { path = "../core", version = "0.85.0" }
deno_doc = "0.3.0"
deno_lint = "0.4.0"
deno_runtime = { path = "../runtime", version = "0.11.0" }
deno_runtime = { path = "../runtime", version = "0.12.0" }
atty = "0.2.14"
base64 = "0.13.0"
@ -58,7 +58,7 @@ lazy_static = "1.4.0"
libc = "0.2.93"
log = { version = "0.4.14", features = ["serde"] }
lspower = "1.0.0"
notify = "5.0.0-pre.6"
notify = "5.0.0-pre.7"
percent-encoding = "2.1.0"
pin-project = "1.0.6"
regex = "1.4.3"

View file

@ -1,7 +1,7 @@
# Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
[package]
name = "deno_core"
version = "0.84.0"
version = "0.85.0"
edition = "2018"
description = "A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio"
authors = ["the Deno authors"]
@ -13,7 +13,7 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
serde_v8 = { version = "0.2.0", path = "../serde_v8" }
serde_v8 = { version = "0.3.0", path = "../serde_v8" }
anyhow = "1.0.40"
futures = "0.3.13"
@ -34,7 +34,7 @@ path = "examples/http_bench_json_ops.rs"
# These dependencies are only used for the 'http_bench_*_ops' examples.
[dev-dependencies]
tokio = { version = "1.4.0", features = ["full"] }
bench_util = { version = "0.0.0", path = "../bench_util" }
bencher = "0.1"
[[bench]]
name = "op_baseline"

View file

@ -1,26 +1,38 @@
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
use bencher::{benchmark_group, benchmark_main, Bencher};
use deno_core::error::AnyError;
use deno_core::op_async;
use deno_core::op_sync;
use deno_core::serialize_op_result;
use deno_core::v8;
use deno_core::JsRuntime;
use deno_core::Op;
use deno_core::OpState;
use deno_core::ZeroCopyBuf;
use bench_util::bench_or_profile;
use bench_util::bencher::{benchmark_group, Bencher};
use bench_util::{bench_js_async, bench_js_sync};
use std::cell::RefCell;
use std::rc::Rc;
fn setup(rt: &mut JsRuntime) {
rt.register_op("pi_json", op_sync(|_, _: (), _| Ok(314159)));
rt.register_op("pi_async", op_async(op_pi_async));
rt.register_op("nop", |state, _, _| {
fn create_js_runtime() -> JsRuntime {
let mut runtime = JsRuntime::new(Default::default());
runtime.register_op("pi_json", op_sync(|_, _: (), _| Ok(314159)));
runtime.register_op("pi_async", op_async(op_pi_async));
runtime.register_op("nop", |state, _, _| {
Op::Sync(serialize_op_result(Ok(9), state))
});
// Init ops
runtime
.execute(
"init",
r#"
Deno.core.ops();
Deno.core.registerErrorClass('Error', Error);
"#,
)
.unwrap();
runtime
}
// this is a function since async closures aren't stable
@ -32,21 +44,57 @@ async fn op_pi_async(
Ok(314159)
}
pub fn bench_runtime_js(b: &mut Bencher, src: &str) {
let mut runtime = create_js_runtime();
let context = runtime.global_context();
let scope = &mut v8::HandleScope::with_context(runtime.v8_isolate(), context);
let code = v8::String::new(scope, src).unwrap();
let script = v8::Script::compile(scope, code, None).unwrap();
b.iter(|| {
script.run(scope).unwrap();
});
}
pub fn bench_runtime_js_async(b: &mut Bencher, src: &str) {
let mut runtime = create_js_runtime();
let tokio_runtime = tokio::runtime::Builder::new_current_thread()
.enable_all()
.build()
.unwrap();
b.iter(|| {
runtime.execute("inner_loop", src).unwrap();
let future = runtime.run_event_loop();
tokio_runtime.block_on(future).unwrap();
});
}
fn bench_op_pi_json(b: &mut Bencher) {
bench_js_sync(b, r#"Deno.core.opSync("pi_json");"#, setup);
bench_runtime_js(
b,
r#"for(let i=0; i < 1e3; i++) {
Deno.core.opSync("pi_json", null);
}"#,
);
}
fn bench_op_nop(b: &mut Bencher) {
bench_js_sync(
bench_runtime_js(
b,
r#"Deno.core.dispatchByName("nop", null, null, null);"#,
setup,
r#"for(let i=0; i < 1e3; i++) {
Deno.core.dispatchByName("nop", null, null, null);
}"#,
);
}
fn bench_op_async(b: &mut Bencher) {
bench_js_async(b, r#"Deno.core.opAsync("pi_async");"#, setup);
bench_runtime_js_async(
b,
r#"for(let i=0; i < 1e3; i++) {
Deno.core.opAsync("pi_async", null);
}"#,
);
}
benchmark_group!(benches, bench_op_pi_json, bench_op_nop, bench_op_async);
bench_or_profile!(benches);
benchmark_main!(benches);

View file

@ -2,7 +2,7 @@
[package]
name = "deno_console"
version = "0.3.0"
version = "0.4.0"
edition = "2018"
description = "Implementation of Console API for Deno"
authors = ["the Deno authors"]
@ -14,4 +14,4 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_crypto"
version = "0.17.0"
version = "0.18.0"
edition = "2018"
description = "Web Cryptography API implementation for Deno"
authors = ["the Deno authors"]
@ -14,6 +14,6 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
rand = "0.8.3"

View file

@ -2,7 +2,7 @@
[package]
name = "deno_fetch"
version = "0.25.0"
version = "0.26.0"
edition = "2018"
description = "Fetch API implementation for Deno"
authors = ["the Deno authors"]
@ -16,8 +16,8 @@ path = "lib.rs"
[dependencies]
bytes = "1.0.1"
data-url = "0.1.0"
deno_core = { version = "0.84.0", path = "../../core" }
deno_file = { version = "0.2.0", path = "../file" }
deno_core = { version = "0.85.0", path = "../../core" }
deno_file = { version = "0.3.0", path = "../file" }
http = "0.2.3"
reqwest = { version = "0.11.2", default-features = false, features = ["rustls-tls", "stream", "gzip", "brotli"] }
serde = { version = "1.0.125", features = ["derive"] }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_file"
version = "0.2.0"
version = "0.3.0"
edition = "2018"
description = "File API implementation for Deno"
authors = ["the Deno authors"]
@ -14,5 +14,5 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
uuid = { version = "0.8.2", features = ["v4"] }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_timers"
version = "0.1.0"
version = "0.2.0"
edition = "2018"
description = "Timers API implementation for Deno"
authors = ["the Deno authors"]
@ -14,5 +14,5 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
tokio = { version = "1.4.0", features = ["full"] }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_url"
version = "0.3.0"
version = "0.4.0"
edition = "2018"
description = "URL API implementation for Deno"
authors = ["the Deno authors"]
@ -14,13 +14,13 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
idna = "0.2.2"
percent-encoding = "2.1.0"
serde = { version = "1.0.125", features = ["derive"] }
[dev-dependencies]
bench_util = { version = "0.0.0", path = "../../bench_util" }
bencher = "0.1"
[[bench]]
name = "url_ops"

View file

@ -1,29 +1,58 @@
use bencher::{benchmark_group, benchmark_main, Bencher};
use deno_core::op_sync;
use deno_core::v8;
use deno_core::JsRuntime;
use bench_util::bench_js_sync;
use bench_util::bench_or_profile;
use bench_util::bencher::{benchmark_group, Bencher};
fn setup(rt: &mut JsRuntime) {
rt.register_op("op_url_parse", op_sync(deno_url::op_url_parse));
rt.register_op(
fn create_js_runtime() -> JsRuntime {
let mut runtime = JsRuntime::new(Default::default());
runtime.register_op("op_url_parse", op_sync(deno_url::op_url_parse));
runtime.register_op(
"op_url_parse_search_params",
op_sync(deno_url::op_url_parse_search_params),
);
rt.register_op(
runtime.register_op(
"op_url_stringify_search_params",
op_sync(deno_url::op_url_stringify_search_params),
);
deno_url::init(rt);
rt.execute("setup", "const { URL } = globalThis.__bootstrap.url;")
runtime
.execute(
"bootstrap",
"globalThis.__bootstrap = (globalThis.__bootstrap || {});",
)
.unwrap();
deno_url::init(&mut runtime);
runtime
.execute(
"init",
r#"
Deno.core.ops();
Deno.core.registerErrorClass('Error', Error);
"#,
)
.unwrap();
runtime
.execute("setup", "const { URL } = globalThis.__bootstrap.url;")
.unwrap();
runtime
}
pub fn bench_runtime_js(b: &mut Bencher, src: &str) {
let mut runtime = create_js_runtime();
let context = runtime.global_context();
let scope = &mut v8::HandleScope::with_context(runtime.v8_isolate(), context);
let code = v8::String::new(scope, src).unwrap();
let script = v8::Script::compile(scope, code, None).unwrap();
b.iter(|| {
script.run(scope).unwrap();
});
}
fn bench_url_parse(b: &mut Bencher) {
bench_js_sync(b, r#"new URL(`http://www.google.com/${i}`);"#, setup);
bench_runtime_js(b, r#"new URL(`http://www.google.com/`);"#);
}
benchmark_group!(benches, bench_url_parse,);
bench_or_profile!(benches);
benchmark_main!(benches);

View file

@ -2,7 +2,7 @@
[package]
name = "deno_web"
version = "0.33.0"
version = "0.34.0"
edition = "2018"
description = "Collection of Web APIs"
authors = ["the Deno authors"]
@ -14,7 +14,7 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
[dev-dependencies]
futures = "0.3.13"

View file

@ -2,7 +2,7 @@
[package]
name = "deno_webgpu"
version = "0.4.0"
version = "0.5.0"
edition = "2018"
description = "WebGPU implementation for Deno"
authors = ["the Deno authors"]
@ -14,7 +14,7 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
tokio = { version = "1.4.0", features = ["full"] }
serde = { version = "1.0.125", features = ["derive"] }
wgpu-core = { version = "0.7.0", features = ["trace"] }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_webidl"
version = "0.3.0"
version = "0.4.0"
edition = "2018"
description = "WebIDL implementation for Deno"
authors = ["the Deno authors"]
@ -14,4 +14,4 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_websocket"
version = "0.8.0"
version = "0.9.0"
edition = "2018"
description = "Implementation of WebSocket API for Deno"
authors = ["the Deno authors"]
@ -14,7 +14,7 @@ repository = "https://github.com/denoland/deno"
path = "lib.rs"
[dependencies]
deno_core = { version = "0.84.0", path = "../../core" }
deno_core = { version = "0.85.0", path = "../../core" }
http = "0.2.3"
serde = { version = "1.0.125", features = ["derive"] }
tokio = { version = "1.4.0", features = ["full"] }

View file

@ -2,7 +2,7 @@
[package]
name = "deno_runtime"
version = "0.11.0"
version = "0.12.0"
license = "MIT"
authors = ["the Deno authors"]
edition = "2018"
@ -18,34 +18,34 @@ name = "hello_runtime"
path = "examples/hello_runtime.rs"
[build-dependencies]
deno_console = { path = "../op_crates/console", version = "0.3.0" }
deno_core = { path = "../core", version = "0.84.0" }
deno_crypto = { path = "../op_crates/crypto", version = "0.17.0" }
deno_fetch = { path = "../op_crates/fetch", version = "0.25.0" }
deno_file = { path = "../op_crates/file", version = "0.2.0" }
deno_timers = { path = "../op_crates/timers", version = "0.1.0" }
deno_url = { path = "../op_crates/url", version = "0.3.0" }
deno_web = { path = "../op_crates/web", version = "0.33.0" }
deno_webgpu = { path = "../op_crates/webgpu", version = "0.4.0" }
deno_webidl = { path = "../op_crates/webidl", version = "0.3.0" }
deno_websocket = { path = "../op_crates/websocket", version = "0.8.0" }
deno_console = { path = "../op_crates/console", version = "0.4.0" }
deno_core = { path = "../core", version = "0.85.0" }
deno_crypto = { path = "../op_crates/crypto", version = "0.18.0" }
deno_fetch = { path = "../op_crates/fetch", version = "0.26.0" }
deno_file = { path = "../op_crates/file", version = "0.3.0" }
deno_timers = { path = "../op_crates/timers", version = "0.2.0" }
deno_url = { path = "../op_crates/url", version = "0.4.0" }
deno_web = { path = "../op_crates/web", version = "0.34.0" }
deno_webgpu = { path = "../op_crates/webgpu", version = "0.5.0" }
deno_webidl = { path = "../op_crates/webidl", version = "0.4.0" }
deno_websocket = { path = "../op_crates/websocket", version = "0.9.0" }
[target.'cfg(windows)'.build-dependencies]
winres = "0.1.11"
winapi = "0.3.9"
[dependencies]
deno_console = { path = "../op_crates/console", version = "0.3.0" }
deno_core = { path = "../core", version = "0.84.0" }
deno_crypto = { path = "../op_crates/crypto", version = "0.17.0" }
deno_fetch = { path = "../op_crates/fetch", version = "0.25.0" }
deno_file = { path = "../op_crates/file", version = "0.2.0" }
deno_timers = { path = "../op_crates/timers", version = "0.1.0" }
deno_url = { path = "../op_crates/url", version = "0.3.0" }
deno_web = { path = "../op_crates/web", version = "0.33.0" }
deno_webgpu = { path = "../op_crates/webgpu", version = "0.4.0" }
deno_webidl = { path = "../op_crates/webidl", version = "0.3.0" }
deno_websocket = { path = "../op_crates/websocket", version = "0.8.0" }
deno_console = { path = "../op_crates/console", version = "0.4.0" }
deno_core = { path = "../core", version = "0.85.0" }
deno_crypto = { path = "../op_crates/crypto", version = "0.18.0" }
deno_fetch = { path = "../op_crates/fetch", version = "0.26.0" }
deno_file = { path = "../op_crates/file", version = "0.3.0" }
deno_timers = { path = "../op_crates/timers", version = "0.2.0" }
deno_url = { path = "../op_crates/url", version = "0.4.0" }
deno_web = { path = "../op_crates/web", version = "0.34.0" }
deno_webgpu = { path = "../op_crates/webgpu", version = "0.5.0" }
deno_webidl = { path = "../op_crates/webidl", version = "0.4.0" }
deno_websocket = { path = "../op_crates/websocket", version = "0.9.0" }
atty = "0.2.14"
bytes = "1"
@ -58,7 +58,7 @@ indexmap = "1.6.2"
lazy_static = "1.4.0"
libc = "0.2.93"
log = "0.4.14"
notify = "5.0.0-pre.6"
notify = "5.0.0-pre.7"
percent-encoding = "2.1.0"
regex = "1.4.3"
ring = "0.16.20"

View file

@ -78,6 +78,7 @@ fn get_notify_error_class(error: &notify::Error) -> &'static str {
PathNotFound => "NotFound",
WatchNotFound => "NotFound",
InvalidConfig(_) => "InvalidData",
MaxFilesWatch => "Error",
}
}

View file

@ -1,7 +1,7 @@
# Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
[package]
name = "serde_v8"
version = "0.2.0"
version = "0.3.0"
authors = ["the Deno authors"]
edition = "2018"
description = "Rust to V8 serialization and deserialization"