mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-23 18:21:13 +08:00
perf: 纯路径跳过门移到读盘之前
This commit is contained in:
Generated
+19
-19
@@ -1160,7 +1160,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_builtins"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"fast-float",
|
||||
@@ -1185,7 +1185,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_bytecode"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"num-bigint",
|
||||
"oxide_log",
|
||||
@@ -1193,7 +1193,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_cfg"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_emit",
|
||||
@@ -1204,7 +1204,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_cli"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"ansi_term",
|
||||
"bumpalo",
|
||||
@@ -1227,7 +1227,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_code_cache"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"lru",
|
||||
"oxide_bytecode",
|
||||
@@ -1236,7 +1236,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_compiler"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_cfg",
|
||||
@@ -1256,7 +1256,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_dce"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_cfg",
|
||||
@@ -1270,7 +1270,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_emit"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"num-bigint",
|
||||
"oxc_allocator",
|
||||
@@ -1285,7 +1285,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_engine"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_compiler",
|
||||
@@ -1297,7 +1297,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_ir"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_log",
|
||||
@@ -1306,7 +1306,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_kernel"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"bumpalo",
|
||||
"dashmap",
|
||||
@@ -1320,7 +1320,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_liveness"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_cfg",
|
||||
@@ -1332,7 +1332,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_log"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"tracing",
|
||||
"tracing-appender",
|
||||
@@ -1341,7 +1341,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_parser"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxc_allocator",
|
||||
"oxc_ast",
|
||||
@@ -1356,7 +1356,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_regalloc"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_cfg",
|
||||
@@ -1372,7 +1372,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_runtime_api"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"num-bigint",
|
||||
"num-traits",
|
||||
@@ -1385,7 +1385,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_test262"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"oxide_bytecode",
|
||||
"oxide_compiler",
|
||||
@@ -1403,7 +1403,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_types"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"bumpalo",
|
||||
"dashmap",
|
||||
@@ -1416,7 +1416,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oxide_vm"
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
dependencies = [
|
||||
"bumpalo",
|
||||
"chrono",
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ members = [
|
||||
]
|
||||
|
||||
[workspace.package]
|
||||
version = "0.15.1"
|
||||
version = "0.15.2"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
rust-version = "1.80"
|
||||
|
||||
@@ -262,7 +262,8 @@ pub(crate) fn read_async_output(vm: &Vm) -> String {
|
||||
}
|
||||
|
||||
/// 串行与并行执行路径共享的每测试管线:
|
||||
/// 读文件、解析元数据、应用跳过过滤,然后运行。恰好返回一个 `TestResult`。
|
||||
/// 先应用只看路径串的跳过过滤,再读文件、解析元数据、应用依赖内容的跳过过滤,然后运行。
|
||||
/// 恰好返回一个 `TestResult`。
|
||||
/// worker 自有状态(`engine`、`harness_sources`、`harness_cache`、`harness_module_cache`)永不跨线程。
|
||||
#[expect(clippy::too_many_arguments)]
|
||||
pub(crate) fn process_path(
|
||||
@@ -270,6 +271,30 @@ pub(crate) fn process_path(
|
||||
harness_sources: &HarnessSources, harness_cache: &Arc<RwLock<HarnessPrefixCache>>,
|
||||
harness_module_cache: &Arc<RwLock<HarnessModuleCache>>,
|
||||
) -> TestResult {
|
||||
let path_str = path.to_string_lossy().replace('\\', "/");
|
||||
|
||||
if let Some(filter_str) = filter {
|
||||
if !path_str.contains(filter_str.as_str()) {
|
||||
return TestResult::skip(path.to_path_buf(), "filtered".into());
|
||||
}
|
||||
}
|
||||
|
||||
if path_str.contains("staging") {
|
||||
return TestResult::skip(path.to_path_buf(), "staging tests excluded".into());
|
||||
}
|
||||
|
||||
if !no_skip {
|
||||
if path_str.contains("/function-ctor/") || path_str.contains("/realm/") {
|
||||
return TestResult::skip(path.to_path_buf(), "unsupported class/eval feature excluded".into());
|
||||
}
|
||||
if let Some(reason) = eval_family_excluded(&path_str) {
|
||||
return TestResult::skip(path.to_path_buf(), reason.into());
|
||||
}
|
||||
if let Some(reason) = pre_existing_excluded(&path_str) {
|
||||
return TestResult::skip(path.to_path_buf(), reason.into());
|
||||
}
|
||||
}
|
||||
|
||||
let source = match std::fs::read_to_string(path) {
|
||||
Ok(s) => s,
|
||||
Err(e) => return TestResult::skip(path.to_path_buf(), format!("read error: {e}")),
|
||||
@@ -280,28 +305,7 @@ pub(crate) fn process_path(
|
||||
None => return TestResult::skip(path.to_path_buf(), String::from("no YAML metadata")),
|
||||
};
|
||||
|
||||
if let Some(filter_str) = filter {
|
||||
let path_str = path.to_string_lossy().replace('\\', "/");
|
||||
if !path_str.contains(filter_str.as_str()) {
|
||||
return TestResult::skip(path.to_path_buf(), "filtered".into());
|
||||
}
|
||||
}
|
||||
|
||||
if path.to_string_lossy().contains("staging") {
|
||||
return TestResult::skip(path.to_path_buf(), "staging tests excluded".into());
|
||||
}
|
||||
|
||||
if !no_skip {
|
||||
let path_str = path.to_string_lossy().replace('\\', "/");
|
||||
if path_str.contains("/function-ctor/") || path_str.contains("/realm/") {
|
||||
return TestResult::skip(path.to_path_buf(), "unsupported class/eval feature excluded".into());
|
||||
}
|
||||
if let Some(reason) = eval_family_excluded(&path_str) {
|
||||
return TestResult::skip(path.to_path_buf(), reason.into());
|
||||
}
|
||||
if let Some(reason) = pre_existing_excluded(&path_str) {
|
||||
return TestResult::skip(path.to_path_buf(), reason.into());
|
||||
}
|
||||
if let Some(reason) = is_skipped(&meta) {
|
||||
return TestResult::skip(path.to_path_buf(), reason);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user