From 2407c4d67f537b09ca5f6052de6c1134cea210c7 Mon Sep 17 00:00:00 2001 From: David Alsh Date: Tue, 7 Jan 2025 01:09:17 +0000 Subject: [PATCH 1/4] update rust version --- rust-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust-toolchain b/rust-toolchain index 71fae54fb..6b4de0a42 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -1 +1 @@ -1.82.0 +1.83.0 From b3616692c9a3e7734d8eb551acf29bf467ac9fdf Mon Sep 17 00:00:00 2001 From: David Alsh Date: Tue, 7 Jan 2025 01:36:33 +0000 Subject: [PATCH 2/4] lint fix --- crates/atlaspack/src/atlaspack.rs | 2 +- crates/atlaspack/src/project_root.rs | 28 +-- .../src/requests/asset_graph_request.rs | 8 +- .../atlaspack/src/requests/target_request.rs | 14 +- .../src/atlaspack_rc_config_loader.rs | 2 +- crates/atlaspack_config/src/map/matcher.rs | 38 +-- .../src/map/named_pipelines_map.rs | 14 +- crates/atlaspack_core/src/asset_graph.rs | 8 +- crates/atlaspack_core/src/project_path.rs | 2 +- .../src/node_package_manager.rs | 4 +- .../benches/env_variables_benchmark.rs | 4 +- .../src/js_transformer.rs | 8 +- .../src/js_transformer/conversion.rs | 2 +- .../src/js_transformer/conversion/symbol.rs | 2 +- .../src/package_json.rs | 230 +++++++----------- .../benches/lmdb_js_safe_benchmark.rs | 2 +- crates/lmdb-js-lite/src/lib.rs | 4 +- crates/lmdb-js-lite/src/writer.rs | 8 +- crates/macros/src/lib.rs | 4 +- packages/transformers/js/core/src/collect.rs | 13 +- .../js/core/src/dependency_collector.rs | 74 ++---- .../transformers/js/core/src/env_replacer.rs | 4 +- packages/transformers/js/core/src/fs.rs | 6 +- .../js/core/src/global_replacer.rs | 4 +- packages/transformers/js/core/src/hoist.rs | 14 +- .../js/core/src/magic_comments/visitor.rs | 2 +- .../transformers/js/core/src/node_replacer.rs | 12 +- .../benches/node_resolver_bench.rs | 136 +++++------ packages/utils/node-resolver-rs/src/cache.rs | 2 +- packages/utils/node-resolver-rs/src/lib.rs | 2 +- .../node-resolver-rs/src/package_json.rs | 2 +- 31 files changed, 275 insertions(+), 380 deletions(-) diff --git a/crates/atlaspack/src/atlaspack.rs b/crates/atlaspack/src/atlaspack.rs index c777e5cc0..50d142136 100644 --- a/crates/atlaspack/src/atlaspack.rs +++ b/crates/atlaspack/src/atlaspack.rs @@ -185,7 +185,7 @@ mod tests { rpc(), )?; - let assets = vec!["foo", "bar", "baz"]; + let assets = ["foo", "bar", "baz"]; atlaspack.commit_assets( &assets diff --git a/crates/atlaspack/src/project_root.rs b/crates/atlaspack/src/project_root.rs index 93e8e5b21..f4993f9e7 100644 --- a/crates/atlaspack/src/project_root.rs +++ b/crates/atlaspack/src/project_root.rs @@ -118,54 +118,48 @@ mod tests { #[test] fn returns_none_when_there_is_no_common_path() { assert_eq!( - common_path(&vec![PathBuf::from("dist"), PathBuf::from("src")]), + common_path(&[PathBuf::from("dist"), PathBuf::from("src")]), None, ); assert_eq!( - common_path(&vec![ - PathBuf::from("dist"), - PathBuf::from("packages").join("foo"), - ]), + common_path(&[PathBuf::from("dist"), PathBuf::from("packages").join("foo")]), None, ); } #[test] fn returns_the_common_prefix() { - assert_eq!( - common_path(&vec![PathBuf::from("/")]), - Some(PathBuf::from("/")) - ); + assert_eq!(common_path(&[PathBuf::from("/")]), Some(PathBuf::from("/"))); assert_eq!( - common_path(&vec![PathBuf::from("src")]), + common_path(&[PathBuf::from("src")]), Some(PathBuf::from("src")) ); assert_eq!( - common_path(&vec![ + common_path(&[ PathBuf::from("packages/foo"), PathBuf::from("packages/bar"), - PathBuf::from("packages/baz"), + PathBuf::from("packages/baz") ]), Some(PathBuf::from("packages")) ); assert_eq!( - common_path(&vec![ + common_path(&[ PathBuf::from("packages/foo"), PathBuf::from("packages/foo/a.js"), - PathBuf::from("packages/foo/bar/b.js"), + PathBuf::from("packages/foo/bar/b.js") ]), Some(PathBuf::from("packages").join("foo")) ); assert_eq!( - common_path(&vec![ + common_path(&[ PathBuf::from("packages/foo/a.js"), PathBuf::from("packages/bar/b.js"), - PathBuf::from("packages/baz/c.js"), + PathBuf::from("packages/baz/c.js") ]), Some(PathBuf::from("packages")) ); @@ -312,7 +306,7 @@ mod tests { fs.set_current_working_directory(&cwd()); fs.create_directory(&vcs) - .expect(format!("Expected {} directory to be created", vcs.display()).as_str()); + .unwrap_or_else(|_| panic!("Expected {} directory to be created", vcs.display())); assert_eq!( infer_project_root(fs, entries).map_err(|e| e.to_string()), diff --git a/crates/atlaspack/src/requests/asset_graph_request.rs b/crates/atlaspack/src/requests/asset_graph_request.rs index 7fc57f40a..93cb87b07 100644 --- a/crates/atlaspack/src/requests/asset_graph_request.rs +++ b/crates/atlaspack/src/requests/asset_graph_request.rs @@ -568,7 +568,7 @@ mod tests { asset_graph_request_result .graph .assets - .get(0) + .first() .unwrap() .asset .file_path, @@ -578,7 +578,7 @@ mod tests { asset_graph_request_result .graph .assets - .get(0) + .first() .unwrap() .asset .code, @@ -589,7 +589,7 @@ mod tests { "# ) .trim_start() - .trim_end_matches(|p| p == ' ') + .trim_end_matches(' ') .to_string() )) ); @@ -672,7 +672,7 @@ mod tests { asset_graph_request_result .graph .assets - .get(0) + .first() .unwrap() .asset .file_path, diff --git a/crates/atlaspack/src/requests/target_request.rs b/crates/atlaspack/src/requests/target_request.rs index 0beb343ea..75a4ae37a 100644 --- a/crates/atlaspack/src/requests/target_request.rs +++ b/crates/atlaspack/src/requests/target_request.rs @@ -874,10 +874,9 @@ mod tests { }} }} "#, - module_format.map_or_else( - || String::default(), - |module_format| format!(r#""type": "{module_format}","#) - ), + module_format.map_or_else(String::default, |module_format| format!( + r#""type": "{module_format}","# + )), ), None, None, @@ -1734,10 +1733,9 @@ mod tests { }} }} "#, - module_format.map_or_else( - || String::default(), - |module_format| format!(r#""type": "{module_format}","#) - ), + module_format.map_or_else(String::default, |module_format| format!( + r#""type": "{module_format}","# + )), ), None, None, diff --git a/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs b/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs index 331b9a582..11dbb1eef 100644 --- a/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs +++ b/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs @@ -496,7 +496,7 @@ mod tests { let err = AtlaspackRcConfigLoader::new(fs, package_manager) .load( - &&project_root, + (&project_root), LoadConfigOptions { additional_reporters: Vec::new(), config: Some("@scope/config"), diff --git a/crates/atlaspack_config/src/map/matcher.rs b/crates/atlaspack_config/src/map/matcher.rs index f3eb8ea1b..aff816ea5 100644 --- a/crates/atlaspack_config/src/map/matcher.rs +++ b/crates/atlaspack_config/src/map/matcher.rs @@ -42,10 +42,10 @@ mod tests { for path in paths("a.ts") { let is_match = named_pattern_matcher(&path); - assert_eq!(is_match("*.t", ""), false); - assert_eq!(is_match("*.tsx", ""), false); - assert_eq!(is_match("types:*.{ts,tsx}", ""), false); - assert_eq!(is_match("url:*", ""), false); + assert!(!is_match("*.t", "")); + assert!(!is_match("*.tsx", "")); + assert!(!is_match("types:*.{ts,tsx}", "")); + assert!(!is_match("url:*", "")); } } @@ -54,8 +54,8 @@ mod tests { for path in paths("a.ts") { let is_match = named_pattern_matcher(&path); - assert_eq!(is_match("types:*.{ts,tsx}", "type"), false); - assert_eq!(is_match("types:*.{ts,tsx}", "typesa"), false); + assert!(!is_match("types:*.{ts,tsx}", "type")); + assert!(!is_match("types:*.{ts,tsx}", "typesa")); } } @@ -64,9 +64,9 @@ mod tests { for path in paths("a.ts") { let is_match = named_pattern_matcher(&path); - assert_eq!(is_match("*.{ts,tsx}", ""), true); - assert_eq!(is_match("*.ts", ""), true); - assert_eq!(is_match("*", ""), true); + assert!(is_match("*.{ts,tsx}", "")); + assert!(is_match("*.ts", "")); + assert!(is_match("*", "")); } } @@ -75,9 +75,9 @@ mod tests { for path in paths("a.ts") { let is_match = named_pattern_matcher(&path); - assert_eq!(is_match("types:*.{ts,tsx}", "types"), true); - assert_eq!(is_match("types:*.ts", "types"), true); - assert_eq!(is_match("types:*", "types"), true); + assert!(is_match("types:*.{ts,tsx}", "types")); + assert!(is_match("types:*.ts", "types")); + assert!(is_match("types:*", "types")); } } } @@ -90,10 +90,10 @@ mod tests { for path in paths("a.ts") { let is_match = pattern_matcher(&path); - assert_eq!(is_match("*.t"), false); - assert_eq!(is_match("*.tsx"), false); - assert_eq!(is_match("types:*.{ts,tsx}"), false); - assert_eq!(is_match("url:*"), false); + assert!(!is_match("*.t")); + assert!(!is_match("*.tsx")); + assert!(!is_match("types:*.{ts,tsx}")); + assert!(!is_match("url:*")); } } @@ -102,9 +102,9 @@ mod tests { for path in paths("a.ts") { let is_match = pattern_matcher(&path); - assert_eq!(is_match("*.{ts,tsx}"), true); - assert_eq!(is_match("*.ts"), true); - assert_eq!(is_match("*"), true); + assert!(is_match("*.{ts,tsx}")); + assert!(is_match("*.ts")); + assert!(is_match("*")); } } } diff --git a/crates/atlaspack_config/src/map/named_pipelines_map.rs b/crates/atlaspack_config/src/map/named_pipelines_map.rs index adc4c0fdb..067195949 100644 --- a/crates/atlaspack_config/src/map/named_pipelines_map.rs +++ b/crates/atlaspack_config/src/map/named_pipelines_map.rs @@ -342,15 +342,15 @@ mod tests { String::from("data-url:*") => pipelines("1") }); - assert_eq!(map.contains_named_pipeline("data-url"), true); + assert!(map.contains_named_pipeline("data-url")); } #[test] fn returns_false_for_empty_map() { let empty_map = NamedPipelinesMap::default(); - assert_eq!(empty_map.contains_named_pipeline("data-url"), false); - assert_eq!(empty_map.contains_named_pipeline("types"), false); + assert!(!empty_map.contains_named_pipeline("data-url")); + assert!(!empty_map.contains_named_pipeline("types")); } #[test] @@ -361,10 +361,10 @@ mod tests { String::from("url:*") => pipelines("3") }); - assert_eq!(map.contains_named_pipeline("*"), false); - assert_eq!(map.contains_named_pipeline("data-url"), false); - assert_eq!(map.contains_named_pipeline("types"), false); - assert_eq!(map.contains_named_pipeline("urls"), false); + assert!(!map.contains_named_pipeline("*")); + assert!(!map.contains_named_pipeline("data-url")); + assert!(!map.contains_named_pipeline("types")); + assert!(!map.contains_named_pipeline("urls")); } } diff --git a/crates/atlaspack_core/src/asset_graph.rs b/crates/atlaspack_core/src/asset_graph.rs index 6af56d826..c59d16f55 100644 --- a/crates/atlaspack_core/src/asset_graph.rs +++ b/crates/atlaspack_core/src/asset_graph.rs @@ -686,12 +686,12 @@ mod tests { let mut specifier = first_entry.len() - 2; for node in nodes[1..].iter() { - let entry = serde_json::from_str::(&node)?; + let entry = serde_json::from_str::(node)?; let entry = entry.as_array().unwrap(); for value in entry { assert_eq!( - get_dependency(&value), + get_dependency(value), Some(json!(format!("dependency-{}", specifier))) ); @@ -707,7 +707,7 @@ mod tests { } fn get_dependency(value: &Value) -> Option { - assert_eq!(get_type(&value), json!("dependency")); + assert_eq!(get_type(value), json!("dependency")); value .get("value") @@ -719,7 +719,7 @@ mod tests { } fn get_asset(value: &Value) -> Option { - assert_eq!(get_type(&value), json!("asset")); + assert_eq!(get_type(value), json!("asset")); value .get("value") diff --git a/crates/atlaspack_core/src/project_path.rs b/crates/atlaspack_core/src/project_path.rs index 9a35e6f33..86858183a 100644 --- a/crates/atlaspack_core/src/project_path.rs +++ b/crates/atlaspack_core/src/project_path.rs @@ -31,7 +31,7 @@ mod tests { let project_path = Path::new("test").join("a.js"); assert_eq!( - to_project_path(&project_root, &project_root.join(project_path.clone())), + to_project_path(project_root, &project_root.join(project_path.clone())), project_path ); } diff --git a/crates/atlaspack_package_manager/src/node_package_manager.rs b/crates/atlaspack_package_manager/src/node_package_manager.rs index 7036c1ff5..86fce209b 100644 --- a/crates/atlaspack_package_manager/src/node_package_manager.rs +++ b/crates/atlaspack_package_manager/src/node_package_manager.rs @@ -10,7 +10,7 @@ pub struct NodePackageManager<'a> { resolver: atlaspack_resolver::Resolver<'a>, } -impl<'a> NodePackageManager<'a> { +impl NodePackageManager<'_> { pub fn new(project_root: PathBuf, fs: FileSystemRef) -> Self { Self { resolver: atlaspack_resolver::Resolver::node( @@ -21,7 +21,7 @@ impl<'a> NodePackageManager<'a> { } } -impl<'a> PackageManager for NodePackageManager<'a> { +impl PackageManager for NodePackageManager<'_> { fn resolve(&self, specifier: &str, from: &std::path::Path) -> anyhow::Result { let res = self.resolver.resolve(specifier, from, SpecifierType::Cjs); diff --git a/crates/atlaspack_plugin_transformer_js/benches/env_variables_benchmark.rs b/crates/atlaspack_plugin_transformer_js/benches/env_variables_benchmark.rs index 3a63901c6..8b9fe59fd 100644 --- a/crates/atlaspack_plugin_transformer_js/benches/env_variables_benchmark.rs +++ b/crates/atlaspack_plugin_transformer_js/benches/env_variables_benchmark.rs @@ -26,7 +26,7 @@ fn default_env_vars( for env_glob in environments { for (env_var, value) in env_vars .iter() - .filter(|(key, _value)| glob_match(&env_glob, key)) + .filter(|(key, _value)| glob_match(env_glob, key)) { vars.insert(env_var.as_str().into(), value.as_str().into()); } @@ -96,7 +96,7 @@ impl<'a> CachedEnvVariables<'a> { for (env_var, value) in self .env_vars .iter() - .filter(|(key, _value)| glob_match(&env_glob, key)) + .filter(|(key, _value)| glob_match(env_glob, key)) { vars.insert(env_var.as_str().into(), value.as_str().into()); } diff --git a/crates/atlaspack_plugin_transformer_js/src/js_transformer.rs b/crates/atlaspack_plugin_transformer_js/src/js_transformer.rs index c845bafc8..a5aae0911 100644 --- a/crates/atlaspack_plugin_transformer_js/src/js_transformer.rs +++ b/crates/atlaspack_plugin_transformer_js/src/js_transformer.rs @@ -557,12 +557,12 @@ mod tests { // This test will fail if the react version is read from the project root file_system.write_file( Path::new("src/package.json"), - format!(r#"{{ "dependencies": {{ "react": "^16.0.0" }} }}"#), + r#"{ "dependencies": { "react": "^16.0.0" } }"#.to_string(), ); file_system.write_file( Path::new("package.json"), - format!(r#"{{ "dependencies": {{ "react": "^18.0.0" }} }}"#), + r#"{ "dependencies": { "react": "^18.0.0" } }"#.to_string(), ); let result = run_test(TestOptions { @@ -620,7 +620,7 @@ mod tests { file_system.write_file( Path::new("package.json"), - format!(r#"{{ "dependencies": {{ "react": "^18.0.0" }} }}"#), + r#"{ "dependencies": { "react": "^18.0.0" } }"#.to_string(), ); let result = run_test(TestOptions { @@ -886,7 +886,7 @@ mod tests { let mut result = transformer.transform(context, asset).await?; - result.asset.code = Code::from(normalize_code(&result.asset.code.as_str()?)); + result.asset.code = Code::from(normalize_code(result.asset.code.as_str()?)); Ok(result) } diff --git a/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion.rs b/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion.rs index 5777933a7..15592cbdf 100644 --- a/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion.rs +++ b/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion.rs @@ -725,6 +725,6 @@ export * from 'other'; "#; let swc_output = run_swc_core_transform(source); let export = &swc_output.hoist_result.unwrap().re_exports[0]; - assert_eq!(is_re_export_all_symbol(export), true); + assert!(is_re_export_all_symbol(export)); } } diff --git a/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion/symbol.rs b/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion/symbol.rs index 9bdb8a54b..e3957a351 100644 --- a/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion/symbol.rs +++ b/crates/atlaspack_plugin_transformer_js/src/js_transformer/conversion/symbol.rs @@ -89,7 +89,7 @@ mod tests { let project_root = Path::new(""); let result = - transformer_collect_imported_symbol_to_symbol(project_root, &Path::new("test.js"), &import); + transformer_collect_imported_symbol_to_symbol(project_root, Path::new("test.js"), &import); assert_eq!( result, Symbol { diff --git a/crates/atlaspack_plugin_transformer_js/src/package_json.rs b/crates/atlaspack_plugin_transformer_js/src/package_json.rs index 5c56fe6de..969e15d7e 100644 --- a/crates/atlaspack_plugin_transformer_js/src/package_json.rs +++ b/crates/atlaspack_plugin_transformer_js/src/package_json.rs @@ -181,74 +181,59 @@ mod tests { #[test] fn returns_false_when_react_is_not_present() { - assert_eq!( - depends_on_react(&PackageJson { - dependencies: None, - dev_dependencies: None, - peer_dependencies: None, - }), - false - ); + assert!(!depends_on_react(&PackageJson { + dependencies: None, + dev_dependencies: None, + peer_dependencies: None, + })); } #[test] fn returns_true_when_react_is_present_in_dependencies() { - assert_eq!( - depends_on_react(&PackageJson { - dependencies: Some(DependencyList { - react: Some(String::default()) - }), - dev_dependencies: None, - peer_dependencies: None + assert!(depends_on_react(&PackageJson { + dependencies: Some(DependencyList { + react: Some(String::default()) }), - true - ); + dev_dependencies: None, + peer_dependencies: None + })); } #[test] fn returns_true_when_react_is_present_in_dev_dependencies() { - assert_eq!( - depends_on_react(&PackageJson { - dependencies: None, - dev_dependencies: Some(DependencyList { - react: Some(String::default()) - }), - peer_dependencies: None + assert!(depends_on_react(&PackageJson { + dependencies: None, + dev_dependencies: Some(DependencyList { + react: Some(String::default()) }), - true - ); + peer_dependencies: None + })); } #[test] fn returns_true_when_react_is_present_in_peer_dependencies() { - assert_eq!( - depends_on_react(&PackageJson { - dependencies: None, - dev_dependencies: None, - peer_dependencies: Some(DependencyList { - react: Some(String::default()) - }), + assert!(depends_on_react(&PackageJson { + dependencies: None, + dev_dependencies: None, + peer_dependencies: Some(DependencyList { + react: Some(String::default()) }), - true - ); + })); } #[test] fn returns_true_when_react_is_present_in_all_dependencies() { - assert_eq!( - depends_on_react(&PackageJson { - dependencies: Some(DependencyList { - react: Some(String::default()) - }), - dev_dependencies: Some(DependencyList { - react: Some(String::default()) - }), - peer_dependencies: Some(DependencyList { - react: Some(String::default()) - }), + assert!(depends_on_react(&PackageJson { + dependencies: Some(DependencyList { + react: Some(String::default()) }), - true - ); + dev_dependencies: Some(DependencyList { + react: Some(String::default()) + }), + peer_dependencies: Some(DependencyList { + react: Some(String::default()) + }), + })); } } @@ -257,149 +242,122 @@ mod tests { #[test] fn returns_false_when_react_is_not_present() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: None, - dev_dependencies: None, - peer_dependencies: None, - }), - false - ); + assert!(!supports_automatic_jsx_runtime(&PackageJson { + dependencies: None, + dev_dependencies: None, + peer_dependencies: None, + })); } #[test] fn returns_false_when_react_dependency_is_below_range() { for version in unsupported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: Some(DependencyList { - react: Some(version) - }), - dev_dependencies: None, - peer_dependencies: None, + assert!(!supports_automatic_jsx_runtime(&PackageJson { + dependencies: Some(DependencyList { + react: Some(version) }), - false - ); + dev_dependencies: None, + peer_dependencies: None, + })); } } #[test] fn returns_false_when_react_dev_dependency_is_below_range() { for version in unsupported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: None, - dev_dependencies: Some(DependencyList { - react: Some(version) - }), - peer_dependencies: None, + assert!(!supports_automatic_jsx_runtime(&PackageJson { + dependencies: None, + dev_dependencies: Some(DependencyList { + react: Some(version) }), - false - ); + peer_dependencies: None, + })); } } #[test] fn returns_false_when_react_peer_dependency_is_below_range() { for version in unsupported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: None, - dev_dependencies: None, - peer_dependencies: Some(DependencyList { - react: Some(version) - }), + assert!(!supports_automatic_jsx_runtime(&PackageJson { + dependencies: None, + dev_dependencies: None, + peer_dependencies: Some(DependencyList { + react: Some(version) }), - false - ); + })); } } #[test] fn returns_false_when_react_dependencies_are_below_range() { for version in unsupported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - dev_dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - peer_dependencies: Some(DependencyList { - react: Some(version) - }), + assert!(!supports_automatic_jsx_runtime(&PackageJson { + dependencies: Some(DependencyList { + react: Some(version.clone()) + }), + dev_dependencies: Some(DependencyList { + react: Some(version.clone()) + }), + peer_dependencies: Some(DependencyList { + react: Some(version) }), - false - ); + })); } } #[test] fn returns_true_when_react_dependency_is_in_range() { for version in supported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - dev_dependencies: None, - peer_dependencies: None, + assert!(supports_automatic_jsx_runtime(&PackageJson { + dependencies: Some(DependencyList { + react: Some(version.clone()) }), - true - ); + dev_dependencies: None, + peer_dependencies: None, + })); } } #[test] fn returns_true_when_react_dev_dependency_is_in_range() { for version in supported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: None, - dev_dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - peer_dependencies: None, + assert!(supports_automatic_jsx_runtime(&PackageJson { + dependencies: None, + dev_dependencies: Some(DependencyList { + react: Some(version.clone()) }), - true - ); + peer_dependencies: None, + })); } } #[test] fn returns_true_when_react_peer_dependency_is_in_range() { for version in supported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: None, - dev_dependencies: None, - peer_dependencies: Some(DependencyList { - react: Some(version.clone()) - }), + assert!(supports_automatic_jsx_runtime(&PackageJson { + dependencies: None, + dev_dependencies: None, + peer_dependencies: Some(DependencyList { + react: Some(version.clone()) }), - true - ); + })); } } #[test] fn returns_true_when_react_dependencies_are_in_range() { for version in supported_versions() { - assert_eq!( - supports_automatic_jsx_runtime(&PackageJson { - dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - dev_dependencies: Some(DependencyList { - react: Some(version.clone()) - }), - peer_dependencies: Some(DependencyList { - react: Some(version) - }), + assert!(supports_automatic_jsx_runtime(&PackageJson { + dependencies: Some(DependencyList { + react: Some(version.clone()) + }), + dev_dependencies: Some(DependencyList { + react: Some(version.clone()) + }), + peer_dependencies: Some(DependencyList { + react: Some(version) }), - true - ); + })); } } diff --git a/crates/lmdb-js-lite/benches/lmdb_js_safe_benchmark.rs b/crates/lmdb-js-lite/benches/lmdb_js_safe_benchmark.rs index b06e45c1d..71898d5d1 100644 --- a/crates/lmdb-js-lite/benches/lmdb_js_safe_benchmark.rs +++ b/crates/lmdb-js-lite/benches/lmdb_js_safe_benchmark.rs @@ -19,7 +19,7 @@ fn criterion_benchmark(c: &mut Criterion) { c.bench_function("inserting entries", |b| { b.iter(|| { input - .put(&mut txn, black_box("key"), black_box(&vec![1, 2, 3, 4, 5])) + .put(&mut txn, black_box("key"), black_box(&[1, 2, 3, 4, 5])) .unwrap(); }) }); diff --git a/crates/lmdb-js-lite/src/lib.rs b/crates/lmdb-js-lite/src/lib.rs index 7da77fe8c..2966c9640 100644 --- a/crates/lmdb-js-lite/src/lib.rs +++ b/crates/lmdb-js-lite/src/lib.rs @@ -245,7 +245,7 @@ impl LMDB { .into_iter() .map(|entry| NativeEntry { key: entry.key, - value: entry.value.into(), + value: entry.value.to_vec(), }) .collect(), resolve: Box::new(|value| { @@ -469,7 +469,7 @@ mod tests { })(); if let Err(DatabaseWriterError::HeedError(heed::Error::Mdb(heed::MdbError::MapFull))) = error { - current_size = current_size * 2; + current_size *= 2; tracing::info!("Resizing database {current_size}"); unsafe { read.environment().resize(current_size).unwrap() } } diff --git a/crates/lmdb-js-lite/src/writer.rs b/crates/lmdb-js-lite/src/writer.rs index e1652f7a6..62112e965 100644 --- a/crates/lmdb-js-lite/src/writer.rs +++ b/crates/lmdb-js-lite/src/writer.rs @@ -233,7 +233,7 @@ pub enum RwTransaction<'a, 'b> { Borrowed(&'a mut RwTxn<'b>), } -impl<'a, 'b> RwTransaction<'a, 'b> { +impl<'b> RwTransaction<'_, 'b> { #[allow(clippy::should_implement_trait)] pub fn deref_mut(&mut self) -> &mut RwTxn<'b> { match self { @@ -248,7 +248,7 @@ pub enum Transaction<'a, 'b> { Borrowed(&'a RoTxn<'b>), } -impl<'a, 'b> Transaction<'a, 'b> { +impl<'b> Transaction<'_, 'b> { #[allow(clippy::should_implement_trait)] pub fn deref(&self) -> &RoTxn<'b> { match self { @@ -389,7 +389,7 @@ mod tests { let writer = DatabaseWriter::new(&options).unwrap(); let mut write_txn = writer.environment().write_txn().unwrap(); writer - .put(&mut write_txn, "key", &vec![1, 2, 3, 3, 3, 3, 3, 3, 4]) + .put(&mut write_txn, "key", &[1, 2, 3, 3, 3, 3, 3, 3, 4]) .unwrap(); write_txn.commit().unwrap(); @@ -543,7 +543,7 @@ mod tests { }), }) .unwrap(); - let _result = rx.recv().unwrap().unwrap(); + rx.recv().unwrap().unwrap(); } fn get_sync(writer: &DatabaseWriterHandle, key: impl Into) -> Option> { diff --git a/crates/macros/src/lib.rs b/crates/macros/src/lib.rs index bc000626d..90cff2c44 100644 --- a/crates/macros/src/lib.rs +++ b/crates/macros/src/lib.rs @@ -177,7 +177,7 @@ impl<'a> Macros<'a> { } } -impl<'a> Fold for Macros<'a> { +impl Fold for Macros<'_> { fn fold_module(&mut self, mut node: Module) -> Module { // Pre-pass to find all macro imports. node.body.retain(|item| { @@ -377,7 +377,7 @@ pub enum JsValue { Function(String), } -impl<'a> Macros<'a> { +impl Macros<'_> { /// Statically evaluate a JS expression to a value, if possible. fn eval(&self, expr: &Expr) -> Result { match expr.unwrap_parens() { diff --git a/packages/transformers/js/core/src/collect.rs b/packages/transformers/js/core/src/collect.rs index 15bab0981..e8afd2936 100644 --- a/packages/transformers/js/core/src/collect.rs +++ b/packages/transformers/js/core/src/collect.rs @@ -1224,9 +1224,8 @@ mod tests { #[test] fn test_visit_module_sets_is_empty_on_empty_file() { - let RunVisitResult { visitor, .. } = - run_test_visit_const(r#""#, |context| make_default_swc_collector(context)); - assert_eq!(visitor.is_empty_or_empty_export, true); + let RunVisitResult { visitor, .. } = run_test_visit_const(r#""#, make_default_swc_collector); + assert!(visitor.is_empty_or_empty_export); } #[test] @@ -1234,7 +1233,7 @@ mod tests { let RunVisitResult { visitor, .. } = run_test_visit_const(r#"export {}"#, |context| { make_default_swc_collector(context) }); - assert_eq!(visitor.is_empty_or_empty_export, true); + assert!(visitor.is_empty_or_empty_export); } #[test] @@ -1243,7 +1242,7 @@ mod tests { run_test_visit_const(r#"console.log('hello');"#, |context| { make_default_swc_collector(context) }); - assert_eq!(visitor.is_empty_or_empty_export, false); + assert!(!visitor.is_empty_or_empty_export); } #[test] @@ -1251,7 +1250,7 @@ mod tests { let RunVisitResult { visitor, .. } = run_test_visit_const(r#"export default 2;"#, |context| { make_default_swc_collector(context) }); - assert_eq!(visitor.is_empty_or_empty_export, false); + assert!(!visitor.is_empty_or_empty_export); } #[test] @@ -1260,6 +1259,6 @@ mod tests { run_test_visit_const(r#"console.log('hello');console.log('world')"#, |context| { make_default_swc_collector(context) }); - assert_eq!(visitor.is_empty_or_empty_export, false); + assert!(!visitor.is_empty_or_empty_export); } } diff --git a/packages/transformers/js/core/src/dependency_collector.rs b/packages/transformers/js/core/src/dependency_collector.rs index a4fed495a..afee70139 100644 --- a/packages/transformers/js/core/src/dependency_collector.rs +++ b/packages/transformers/js/core/src/dependency_collector.rs @@ -171,7 +171,7 @@ struct DependencyCollector<'a> { conditions: &'a mut HashSet, } -impl<'a> DependencyCollector<'a> { +impl DependencyCollector<'_> { fn add_dependency( &mut self, mut specifier: JsWord, @@ -326,7 +326,7 @@ fn rewrite_require_specifier(node: ast::CallExpr, unresolved_mark: Mark) -> ast: node } -impl<'a> Fold for DependencyCollector<'a> { +impl Fold for DependencyCollector<'_> { fn fold_module(&mut self, node: ast::Module) -> ast::Module { let mut res = node.fold_children_with(self); if let Some(decl) = self.import_meta.take() { @@ -1116,7 +1116,7 @@ impl<'a> Fold for DependencyCollector<'a> { } } -impl<'a> DependencyCollector<'a> { +impl DependencyCollector<'_> { fn fold_new_promise(&mut self, node: ast::NewExpr) -> ast::NewExpr { use ast::Expr::*; @@ -1383,7 +1383,7 @@ impl Fold for PromiseTransformer { } } -impl<'a> DependencyCollector<'a> { +impl DependencyCollector<'_> { fn match_new_url(&mut self, expr: &ast::Expr) -> Option<(JsWord, swc_core::common::Span)> { use ast::*; @@ -1721,9 +1721,7 @@ mod tests { "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1766,7 +1764,7 @@ mod tests { import { x } from 'other'; "# .trim_start() - .trim_end_matches(|p: char| p == ' '); + .trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1809,7 +1807,7 @@ mod tests { export { x } from 'other'; "# .trim_start() - .trim_end_matches(|p: char| p == ' '); + .trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1852,7 +1850,7 @@ mod tests { export * from 'other'; "# .trim_start() - .trim_end_matches(|p: char| p == ' '); + .trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1898,9 +1896,7 @@ mod tests { "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1950,9 +1946,7 @@ try {{ "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -1999,9 +1993,7 @@ Promise.resolve().then(()=>require("{}")); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2050,9 +2042,7 @@ Promise.resolve().then(function() {{ "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2103,9 +2093,7 @@ Promise.resolve().then(function() {{ "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2152,9 +2140,7 @@ new Promise((resolve)=>resolve(require("{}"))); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2203,9 +2189,7 @@ new Promise(function(resolve) {{ "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2252,9 +2236,7 @@ Promise.resolve(require("{}")); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2300,9 +2282,7 @@ Promise.resolve(require("{}")); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2348,9 +2328,7 @@ Promise.resolve(require("{}")); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2396,9 +2374,7 @@ Promise.resolve(require("{}")); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2448,9 +2424,7 @@ document.body.appendChild(img); "#, hash ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2498,9 +2472,7 @@ document.body.appendChild(img); "#, hash_b, hash_a, ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); @@ -2569,9 +2541,7 @@ document.body.appendChild(img); "#, hash_a, hash_b ); - let expected_code = expected_code - .trim_start() - .trim_end_matches(|p: char| p == ' '); + let expected_code = expected_code.trim_start().trim_end_matches(' '); assert_eq!(output_code, expected_code); assert_eq!(diagnostics, []); diff --git a/packages/transformers/js/core/src/env_replacer.rs b/packages/transformers/js/core/src/env_replacer.rs index 38e579a27..b67919395 100644 --- a/packages/transformers/js/core/src/env_replacer.rs +++ b/packages/transformers/js/core/src/env_replacer.rs @@ -23,7 +23,7 @@ pub struct EnvReplacer<'a> { pub unresolved_mark: Mark, } -impl<'a> VisitMut for EnvReplacer<'a> { +impl VisitMut for EnvReplacer<'_> { fn visit_mut_expr(&mut self, node: &mut Expr) { // Replace assignments to process.browser with `true` // TODO: this seems questionable but we did it in the JS version?? @@ -206,7 +206,7 @@ impl<'a> VisitMut for EnvReplacer<'a> { } } -impl<'a> EnvReplacer<'a> { +impl EnvReplacer<'_> { /// If an expression matches `process.browser = ...` then the RHS is replaced with /// `true` when `is_browser` is set to true. /// diff --git a/packages/transformers/js/core/src/fs.rs b/packages/transformers/js/core/src/fs.rs index 6eb5fbe3b..b6d0a58c7 100644 --- a/packages/transformers/js/core/src/fs.rs +++ b/packages/transformers/js/core/src/fs.rs @@ -55,7 +55,7 @@ struct InlineFS<'a> { deps: &'a mut Vec, } -impl<'a> Fold for InlineFS<'a> { +impl Fold for InlineFS<'_> { fn fold_module(&mut self, node: Module) -> Module { node.visit_with(&mut self.collect); node.fold_children_with(self) @@ -80,7 +80,7 @@ impl<'a> Fold for InlineFS<'a> { } } -impl<'a> InlineFS<'a> { +impl InlineFS<'_> { fn match_module_reference(&self, node: &Expr) -> Option<(JsWord, JsWord)> { match node { Expr::Ident(ident) => { @@ -233,7 +233,7 @@ struct Evaluator<'a> { inline: &'a InlineFS<'a>, } -impl<'a> Fold for Evaluator<'a> { +impl Fold for Evaluator<'_> { fn fold_expr(&mut self, node: Expr) -> Expr { let node = maybe_grow_default(|| node.fold_children_with(self)); diff --git a/packages/transformers/js/core/src/global_replacer.rs b/packages/transformers/js/core/src/global_replacer.rs index d0ec4e3ba..3dca147ee 100644 --- a/packages/transformers/js/core/src/global_replacer.rs +++ b/packages/transformers/js/core/src/global_replacer.rs @@ -224,11 +224,11 @@ mod tests { GlobalReplacer { source_map: run_test_context.source_map.clone(), items, - global_mark: run_test_context.global_mark.clone(), + global_mark: run_test_context.global_mark, globals: Default::default(), project_root: Path::new("project-root"), filename: Path::new("filename"), - unresolved_mark: run_test_context.unresolved_mark.clone(), + unresolved_mark: run_test_context.unresolved_mark, scope_hoist: false, } } diff --git a/packages/transformers/js/core/src/hoist.rs b/packages/transformers/js/core/src/hoist.rs index 652bb3a26..7c142806b 100644 --- a/packages/transformers/js/core/src/hoist.rs +++ b/packages/transformers/js/core/src/hoist.rs @@ -383,7 +383,7 @@ macro_rules! hoist_visit_fn { }; } -impl<'a> Fold for Hoist<'a> { +impl Fold for Hoist<'_> { fn fold_module(&mut self, node: Module) -> Module { let mut node = node; for item in node.body { @@ -1275,7 +1275,7 @@ impl<'a> Fold for Hoist<'a> { } } -impl<'a> Hoist<'a> { +impl Hoist<'_> { fn add_require(&mut self, source: &JsWord, import_kind: ImportKind) { let src = match import_kind { ImportKind::Import => format!("{}:{}:{}", self.module_id, source, "esm"), @@ -1759,10 +1759,10 @@ mod tests { #[test] fn collect_has_cjs_exports() { let (collect, _code, _hoist) = parse("module.exports = {};"); - assert_eq!(collect.has_cjs_exports, true); + assert!(collect.has_cjs_exports); let (collect, _code, _hoist) = parse("this.someExport = 'true';"); - assert_eq!(collect.has_cjs_exports, true); + assert!(collect.has_cjs_exports); // Some TSC polyfills use a pattern like below, we want to avoid marking these modules as cjs. let (collect, _code, _hoist) = parse( @@ -1771,7 +1771,7 @@ mod tests { var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function () {} "#, ); - assert_eq!(collect.has_cjs_exports, false); + assert!(!collect.has_cjs_exports); // A free module is maybe considered a cjs export let (collect, _code, _hoist) = parse( @@ -1780,7 +1780,7 @@ mod tests { export { performance }; ", ); - assert_eq!(collect.has_cjs_exports, true); + assert!(collect.has_cjs_exports); let (collect, _code, _hoist) = parse( " @@ -1788,7 +1788,7 @@ mod tests { export { performance }; ", ); - assert_eq!(collect.has_cjs_exports, false); + assert!(!collect.has_cjs_exports); } #[test] diff --git a/packages/transformers/js/core/src/magic_comments/visitor.rs b/packages/transformers/js/core/src/magic_comments/visitor.rs index fd5f29f22..96e5060c9 100644 --- a/packages/transformers/js/core/src/magic_comments/visitor.rs +++ b/packages/transformers/js/core/src/magic_comments/visitor.rs @@ -31,7 +31,7 @@ impl<'a> MagicCommentsVisitor<'a> { } } -impl<'a> Visit for MagicCommentsVisitor<'a> { +impl Visit for MagicCommentsVisitor<'_> { fn visit_call_expr(&mut self, node: &CallExpr) { if !node.callee.is_import() { node.visit_children_with(self); diff --git a/packages/transformers/js/core/src/node_replacer.rs b/packages/transformers/js/core/src/node_replacer.rs index f16e89d9e..70c0eaba4 100644 --- a/packages/transformers/js/core/src/node_replacer.rs +++ b/packages/transformers/js/core/src/node_replacer.rs @@ -38,7 +38,7 @@ pub struct NodeReplacer<'a> { pub items: &'a mut Vec, } -impl<'a> VisitMut for NodeReplacer<'a> { +impl VisitMut for NodeReplacer<'_> { fn visit_mut_expr(&mut self, node: &mut ast::Expr) { use ast::Expr::*; @@ -255,7 +255,7 @@ console.log($parcel$__filename); "# .trim_start(); assert_eq!(output_code, expected_code); - assert_eq!(has_node_replacements, true); + assert!(has_node_replacements); assert_eq!(items[0].specifier, JsWord::from("path")); assert_eq!(items[0].kind, DependencyKind::Require); assert_eq!(items[0].source_type, Some(SourceType::Module)); @@ -289,7 +289,7 @@ console.log($parcel$__dirname); "# .trim_start(); assert_eq!(output_code, expected_code); - assert_eq!(has_node_replacements, true); + assert!(has_node_replacements); assert_eq!(items[0].specifier, JsWord::from("path")); assert_eq!(items[0].kind, DependencyKind::Require); assert_eq!(items[0].source_type, Some(SourceType::Module)); @@ -328,7 +328,7 @@ function something(__filename, __dirname) { "# .trim_start(); assert_eq!(output_code, expected_code); - assert_eq!(has_node_replacements, false); + assert!(!has_node_replacements); assert_eq!(items.len(), 0); } @@ -356,7 +356,7 @@ const filename = obj.__filename; "# .trim_start(); assert_eq!(output_code, expected_code); - assert_eq!(has_node_replacements, false); + assert!(!has_node_replacements); assert_eq!(items.len(), 0); } @@ -385,7 +385,7 @@ const filename = obj[$parcel$__filename]; "# .trim_start(); assert_eq!(output_code, expected_code); - assert_eq!(has_node_replacements, true); + assert!(has_node_replacements); assert_eq!(items.len(), 1); } } diff --git a/packages/utils/node-resolver-rs/benches/node_resolver_bench.rs b/packages/utils/node-resolver-rs/benches/node_resolver_bench.rs index 96fd50066..f290f191b 100644 --- a/packages/utils/node-resolver-rs/benches/node_resolver_bench.rs +++ b/packages/utils/node-resolver-rs/benches/node_resolver_bench.rs @@ -178,29 +178,23 @@ fn criterion_benchmark(c: &mut Criterion) { ); c.bench_function("Run safe resolver simple OsFileSystem", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) + .result + .unwrap(); + black_box(result) + }); }); c.bench_function("Run safe resolver modules OsFileSystem", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) + .result + .unwrap(); + black_box(result) + }); }); let make_resolver = || { @@ -211,29 +205,23 @@ fn criterion_benchmark(c: &mut Criterion) { }; c.bench_function("Run unsafe resolver simple OsFileSystem", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) + .result + .unwrap(); + black_box(result) + }); }); c.bench_function("Run unsafe resolver modules OsFileSystem", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) + .result + .unwrap(); + black_box(result) + }); }); let preloading_fs = PreloadingFileSystem::load(&root()); @@ -247,32 +235,26 @@ fn criterion_benchmark(c: &mut Criterion) { c.bench_function( "Run safe resolver simple - PreloadingFileSystem - No IO", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) + .result + .unwrap(); + black_box(result) + }); }, ); c.bench_function( "Run safe resolver modules - PreloadingFileSystem - No IO", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) + .result + .unwrap(); + black_box(result) + }); }, ); @@ -286,32 +268,26 @@ fn criterion_benchmark(c: &mut Criterion) { c.bench_function( "Run unsafe resolver simple - PreloadingFileSystem - No IO", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("./bar.js", &root().join("foo.js"), SpecifierType::Esm) + .result + .unwrap(); + black_box(result) + }); }, ); c.bench_function( "Run unsafe resolver modules - PreloadingFileSystem - No IO", |b| { - b.iter_with_setup( - || make_resolver(), - |resolver| { - let result = resolver - .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) - .result - .unwrap(); - black_box(result) - }, - ); + b.iter_with_setup(&make_resolver, |resolver| { + let result = resolver + .resolve("@scope/pkg", &root().join("foo.js"), SpecifierType::Cjs) + .result + .unwrap(); + black_box(result) + }); }, ); } diff --git a/packages/utils/node-resolver-rs/src/cache.rs b/packages/utils/node-resolver-rs/src/cache.rs index 85a5425cd..da3cdaa28 100644 --- a/packages/utils/node-resolver-rs/src/cache.rs +++ b/packages/utils/node-resolver-rs/src/cache.rs @@ -47,7 +47,7 @@ pub enum CacheCow<'a> { Owned(Cache), } -impl<'a> Deref for CacheCow<'a> { +impl Deref for CacheCow<'_> { type Target = Cache; fn deref(&self) -> &Self::Target { diff --git a/packages/utils/node-resolver-rs/src/lib.rs b/packages/utils/node-resolver-rs/src/lib.rs index f77d61127..8845b98c0 100644 --- a/packages/utils/node-resolver-rs/src/lib.rs +++ b/packages/utils/node-resolver-rs/src/lib.rs @@ -99,7 +99,7 @@ pub enum Extensions<'a> { Owned(Vec), } -impl<'a> Extensions<'a> { +impl Extensions<'_> { fn iter(&self) -> impl Iterator { match self { Extensions::Borrowed(v) => itertools::Either::Left(v.iter().copied()), diff --git a/packages/utils/node-resolver-rs/src/package_json.rs b/packages/utils/node-resolver-rs/src/package_json.rs index 3bea9d276..1915791f4 100644 --- a/packages/utils/node-resolver-rs/src/package_json.rs +++ b/packages/utils/node-resolver-rs/src/package_json.rs @@ -689,7 +689,7 @@ pub struct EntryIter<'a> { fields: Fields, } -impl<'a> Iterator for EntryIter<'a> { +impl Iterator for EntryIter<'_> { type Item = (PathBuf, &'static str); fn next(&mut self) -> Option { From a5ebc6f56f1d14a814d19f6300b7be2acf77c88b Mon Sep 17 00:00:00 2001 From: David Alsh Date: Tue, 7 Jan 2025 01:54:00 +0000 Subject: [PATCH 3/4] CI --- .github/workflows/ci.yml | 13 ++++--------- .github/workflows/release.yml | 6 ++---- .github/workflows/repl.yml | 5 ++--- .../src/atlaspack_rc_config_loader.rs | 2 +- crates/lmdb-js-lite/Cargo.toml | 1 + 5 files changed, 10 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index caa7cbdba..9892206f4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,10 +25,9 @@ jobs: - uses: actions/setup-node@v4 with: cache: yarn - - uses: dtolnay/rust-toolchain@master + - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.82.0 - components: rustfmt + components: rustfmt, clippy - run: yarn --frozen-lockfile - run: yarn lint @@ -67,9 +66,7 @@ jobs: with: cache: yarn node-version: ${{ matrix.node }} - - uses: dtolnay/rust-toolchain@master - with: - toolchain: 1.82.0 + - uses: actions-rust-lang/setup-rust-toolchain@v1 - uses: Swatinem/rust-cache@v2 with: shared-key: ${{ matrix.os }} @@ -98,9 +95,7 @@ jobs: with: cache: yarn node-version: ${{ matrix.node }} - - uses: dtolnay/rust-toolchain@master - with: - toolchain: 1.82.0 + - uses: actions-rust-lang/setup-rust-toolchain@v1 - uses: Swatinem/rust-cache@v2 with: shared-key: ${{ matrix.os }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b1bcbb9e8..4bc2e0993 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -41,9 +41,8 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install Rust - uses: dtolnay/rust-toolchain@master + uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.82.0 target: ${{ matrix.target }} - uses: bahmutov/npm-install@v1.8.35 - uses: Swatinem/rust-cache@v2 @@ -139,9 +138,8 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install Rust - uses: dtolnay/rust-toolchain@master + uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.82.0 target: ${{ matrix.target }} - name: Install cross compile toolchains run: | diff --git a/.github/workflows/repl.yml b/.github/workflows/repl.yml index fa745633e..22ed2e15e 100644 --- a/.github/workflows/repl.yml +++ b/.github/workflows/repl.yml @@ -34,10 +34,9 @@ jobs: with: cache: yarn node-version: 20 - - uses: dtolnay/rust-toolchain@master + - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.82.0 - targets: wasm32-unknown-unknown + target: wasm32-unknown-unknown - name: Install wasm-opt run: | curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz diff --git a/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs b/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs index 11dbb1eef..a61e89e2b 100644 --- a/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs +++ b/crates/atlaspack_config/src/atlaspack_rc_config_loader.rs @@ -496,7 +496,7 @@ mod tests { let err = AtlaspackRcConfigLoader::new(fs, package_manager) .load( - (&project_root), + &project_root, LoadConfigOptions { additional_reporters: Vec::new(), config: Some("@scope/config"), diff --git a/crates/lmdb-js-lite/Cargo.toml b/crates/lmdb-js-lite/Cargo.toml index aaeb41f61..cbc0be4e5 100644 --- a/crates/lmdb-js-lite/Cargo.toml +++ b/crates/lmdb-js-lite/Cargo.toml @@ -32,6 +32,7 @@ lz4_flex = { workspace = true } [dev-dependencies] criterion = { workspace = true } rand = { workspace = true } +napi = { workspace = true, features = ["noop"] } [build-dependencies] napi-build = { workspace = true } From 2e255f97dcabcbaf3238f6fe265a845642d63c64 Mon Sep 17 00:00:00 2001 From: David Alsh Date: Tue, 7 Jan 2025 05:35:41 +0000 Subject: [PATCH 4/4] reverting to old CI action --- .github/workflows/ci.yml | 13 +++++++++---- .github/workflows/release.yml | 8 +++++--- .github/workflows/repl.yml | 5 +++-- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9892206f4..8def5e9c9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,9 +25,10 @@ jobs: - uses: actions/setup-node@v4 with: cache: yarn - - uses: actions-rust-lang/setup-rust-toolchain@v1 + - uses: dtolnay/rust-toolchain@master with: - components: rustfmt, clippy + toolchain: 1.83.0 + components: rustfmt - run: yarn --frozen-lockfile - run: yarn lint @@ -66,7 +67,9 @@ jobs: with: cache: yarn node-version: ${{ matrix.node }} - - uses: actions-rust-lang/setup-rust-toolchain@v1 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: 1.83.0 - uses: Swatinem/rust-cache@v2 with: shared-key: ${{ matrix.os }} @@ -95,7 +98,9 @@ jobs: with: cache: yarn node-version: ${{ matrix.node }} - - uses: actions-rust-lang/setup-rust-toolchain@v1 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: 1.83.0 - uses: Swatinem/rust-cache@v2 with: shared-key: ${{ matrix.os }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4bc2e0993..2f6d88062 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -41,8 +41,9 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rust-lang/setup-rust-toolchain@v1 + uses: dtolnay/rust-toolchain@master with: + toolchain: 1.83.0 target: ${{ matrix.target }} - uses: bahmutov/npm-install@v1.8.35 - uses: Swatinem/rust-cache@v2 @@ -88,7 +89,7 @@ jobs: - name: Install Rust uses: actions-rs/toolchain@v1 with: - toolchain: 1.82.0 + toolchain: 1.83.0 profile: minimal override: true - uses: bahmutov/npm-install@v1.8.35 @@ -138,8 +139,9 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rust-lang/setup-rust-toolchain@v1 + uses: dtolnay/rust-toolchain@master with: + toolchain: 1.83.0 target: ${{ matrix.target }} - name: Install cross compile toolchains run: | diff --git a/.github/workflows/repl.yml b/.github/workflows/repl.yml index 22ed2e15e..0d30499a4 100644 --- a/.github/workflows/repl.yml +++ b/.github/workflows/repl.yml @@ -34,9 +34,10 @@ jobs: with: cache: yarn node-version: 20 - - uses: actions-rust-lang/setup-rust-toolchain@v1 + - uses: dtolnay/rust-toolchain@master with: - target: wasm32-unknown-unknown + toolchain: 1.83.0 + targets: wasm32-unknown-unknown - name: Install wasm-opt run: | curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz