Skip to content

Commit 0dc4128

Browse files
committed
refactor: enable more perf rule
1 parent ba49552 commit 0dc4128

File tree

210 files changed

+1329
-1221
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

210 files changed

+1329
-1221
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ verbose_bit_mask = "warn"
496496
zero_sized_map_values = "warn"
497497

498498
# performance
499-
perf = "warn"
499+
perf = { level = "warn", priority = -1 }
500500
# performance - memory allocation optimization
501501
box_collection = "warn"
502502
redundant_allocation = "warn"

crates/rspack/src/builder/builder_context.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ impl BuilderContext {
127127
plugins.push(rspack_plugin_externals::node_target_plugin())
128128
}
129129
BuiltinPluginOptions::ElectronTargetPlugin(context) => {
130-
rspack_plugin_externals::electron_target_plugin(context, &mut plugins)
130+
rspack_plugin_externals::electron_target_plugin(&context, &mut plugins)
131131
}
132132
BuiltinPluginOptions::HttpExternalsRspackPlugin((css, web_async)) => {
133133
plugins.push(rspack_plugin_externals::http_externals_rspack_plugin(
@@ -149,11 +149,11 @@ impl BuilderContext {
149149
plugins.push(rspack_plugin_runtime::ModuleChunkFormatPlugin::default().boxed());
150150
}
151151
BuiltinPluginOptions::EnableChunkLoadingPlugin(chunk_loading_type) => {
152-
rspack_plugin_runtime::enable_chunk_loading_plugin(chunk_loading_type, &mut plugins);
152+
rspack_plugin_runtime::enable_chunk_loading_plugin(&chunk_loading_type, &mut plugins);
153153
}
154154
BuiltinPluginOptions::EnableWasmLoadingPlugin(wasm_loading_type) => {
155155
plugins.push(rspack_plugin_wasm::enable_wasm_loading_plugin(
156-
wasm_loading_type,
156+
&wasm_loading_type,
157157
));
158158
}
159159

@@ -169,7 +169,7 @@ impl BuilderContext {
169169
BuiltinPluginOptions::SourceMapDevToolPlugin(options) => {
170170
plugins.push(
171171
rspack_plugin_devtool::SourceMapDevToolModuleOptionsPlugin::new(
172-
rspack_plugin_devtool::SourceMapDevToolModuleOptionsPluginOptions {
172+
&rspack_plugin_devtool::SourceMapDevToolModuleOptionsPluginOptions {
173173
module: options.module,
174174
cheap: !options.columns,
175175
},
@@ -181,7 +181,7 @@ impl BuilderContext {
181181
BuiltinPluginOptions::EvalSourceMapDevToolPlugin(options) => {
182182
plugins.push(
183183
rspack_plugin_devtool::SourceMapDevToolModuleOptionsPlugin::new(
184-
rspack_plugin_devtool::SourceMapDevToolModuleOptionsPluginOptions {
184+
&rspack_plugin_devtool::SourceMapDevToolModuleOptionsPluginOptions {
185185
module: options.module,
186186
cheap: !options.columns,
187187
},
@@ -315,7 +315,7 @@ impl BuilderContext {
315315

316316
// Define and optimization plugins
317317
BuiltinPluginOptions::DefinePlugin(values) => {
318-
plugins.push(rspack_plugin_javascript::define_plugin::DefinePlugin::new(values).boxed())
318+
plugins.push(rspack_plugin_javascript::define_plugin::DefinePlugin::new(&values).boxed())
319319
}
320320
BuiltinPluginOptions::AnyMinimizerRspackPlugin(plugin) => plugins.push(plugin),
321321

crates/rspack_binding_api/src/compilation/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,7 @@ impl JsCompilation {
371371
pub fn rename_asset(&mut self, filename: String, new_name: String) -> Result<()> {
372372
let compilation = self.as_mut()?;
373373

374-
compilation.rename_asset(&filename, new_name);
374+
compilation.rename_asset(&filename, &new_name);
375375
Ok(())
376376
}
377377

crates/rspack_binding_api/src/exports_info.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,9 @@ impl JsExportsInfo {
105105
Either::B(v) => v.into_iter().map(Into::into).collect::<Vec<_>>(),
106106
};
107107
let exports_info = ExportsInfoGetter::prefetch(
108-
&self.exports_info,
108+
self.exports_info,
109109
module_graph,
110-
PrefetchExportsInfoMode::Nested(&names),
110+
&PrefetchExportsInfoMode::Nested(&names),
111111
);
112112
let used = exports_info.get_used(&names, runtime.as_ref());
113113
Ok(used as u32)

crates/rspack_binding_api/src/raw_options/raw_builtins/mod.rs

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,11 @@ use rspack_plugin_ignore::IgnorePlugin;
6767
use rspack_plugin_javascript::{
6868
FlagDependencyExportsPlugin, FlagDependencyUsagePlugin, InferAsyncModulesPlugin,
6969
InlineExportsPlugin, JsPlugin, MangleExportsPlugin, ModuleConcatenationPlugin,
70-
SideEffectsFlagPlugin, api_plugin::APIPlugin, define_plugin::DefinePlugin,
71-
provide_plugin::ProvidePlugin, url_plugin::URLPlugin,
70+
SideEffectsFlagPlugin,
71+
api_plugin::APIPlugin,
72+
define_plugin::{DefinePlugin, DefineValue},
73+
provide_plugin::ProvidePlugin,
74+
url_plugin::URLPlugin,
7275
};
7376
use rspack_plugin_json::JsonPlugin;
7477
use rspack_plugin_library::enable_library_plugin;
@@ -301,11 +304,9 @@ impl<'a> BuiltinPlugin<'a> {
301304
match name {
302305
// webpack also have these plugins
303306
BuiltinPluginName::DefinePlugin => {
304-
let plugin = DefinePlugin::new(
305-
downcast_into(self.options)
306-
.map_err(|report| napi::Error::from_reason(report.to_string()))?,
307-
)
308-
.boxed();
307+
let definitions: DefineValue = downcast_into(self.options)
308+
.map_err(|report| napi::Error::from_reason(report.to_string()))?;
309+
let plugin = DefinePlugin::new(&definitions).boxed();
309310
plugins.push(plugin);
310311
}
311312
BuiltinPluginName::ProvidePlugin => {
@@ -393,12 +394,14 @@ impl<'a> BuiltinPlugin<'a> {
393394
BuiltinPluginName::ElectronTargetPlugin => {
394395
let context = downcast_into::<String>(self.options)
395396
.map_err(|report| napi::Error::from_reason(report.to_string()))?;
396-
electron_target_plugin(context.into(), plugins);
397+
let context: ElectronTargetContext = context.into();
398+
electron_target_plugin(&context, plugins);
397399
}
398400
BuiltinPluginName::EnableChunkLoadingPlugin => {
399401
let chunk_loading_type = downcast_into::<String>(self.options)
400402
.map_err(|report| napi::Error::from_reason(report.to_string()))?;
401-
enable_chunk_loading_plugin(chunk_loading_type.as_str().into(), plugins);
403+
let chunk_loading_type: ChunkLoadingType = chunk_loading_type.as_str().into();
404+
enable_chunk_loading_plugin(&chunk_loading_type, plugins);
402405
}
403406
BuiltinPluginName::EnableLibraryPlugin => {
404407
let library_type = downcast_into::<String>(self.options)
@@ -408,9 +411,8 @@ impl<'a> BuiltinPlugin<'a> {
408411
BuiltinPluginName::EnableWasmLoadingPlugin => {
409412
let wasm_loading_type = downcast_into::<String>(self.options)
410413
.map_err(|report| napi::Error::from_reason(report.to_string()))?;
411-
plugins.push(enable_wasm_loading_plugin(
412-
wasm_loading_type.as_str().into(),
413-
));
414+
let wasm_loading_type: WasmLoadingType = wasm_loading_type.as_str().into();
415+
plugins.push(enable_wasm_loading_plugin(&wasm_loading_type));
414416
}
415417
BuiltinPluginName::FetchCompileAsyncWasmPlugin => {
416418
plugins.push(FetchCompileAsyncWasmPlugin::default().boxed());
@@ -580,7 +582,7 @@ impl<'a> BuiltinPlugin<'a> {
580582
.map_err(|report| napi::Error::from_reason(report.to_string()))?
581583
.into();
582584
plugins.push(
583-
SourceMapDevToolModuleOptionsPlugin::new(SourceMapDevToolModuleOptionsPluginOptions {
585+
SourceMapDevToolModuleOptionsPlugin::new(&SourceMapDevToolModuleOptionsPluginOptions {
584586
module: options.module,
585587
cheap: !options.columns,
586588
})
@@ -594,7 +596,7 @@ impl<'a> BuiltinPlugin<'a> {
594596
.map_err(|report| napi::Error::from_reason(report.to_string()))?
595597
.into();
596598
plugins.push(
597-
SourceMapDevToolModuleOptionsPlugin::new(SourceMapDevToolModuleOptionsPluginOptions {
599+
SourceMapDevToolModuleOptionsPlugin::new(&SourceMapDevToolModuleOptionsPluginOptions {
598600
module: options.module,
599601
cheap: !options.columns,
600602
})

crates/rspack_binding_api/src/swc.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ fn _transform(source: String, options: String) -> napi::Result<TransformOutput>
6666
options.filename.clone().into(),
6767
))),
6868
comments,
69-
options,
69+
&options,
7070
Some(module_source_map_kind),
7171
|_, _| {},
7272
|_| noop_pass(),

crates/rspack_browser/src/oneshot.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,7 @@ pub fn channel<T>() -> (Sender<T>, Receiver<T>) {
2424
inner: inner.clone(),
2525
};
2626

27-
let rx = Receiver {
28-
inner: inner.clone(),
29-
};
27+
let rx = Receiver { inner };
3028

3129
(tx, rx)
3230
}

crates/rspack_cacheable_macros/src/cacheable/impl.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ impl VisitMut for FieldAttrVisitor {
4848
}
4949

5050
/// impl #[cacheable] without with args
51-
pub fn impl_cacheable(tokens: TokenStream, args: CacheableArgs) -> TokenStream {
51+
pub fn impl_cacheable(tokens: TokenStream, args: &CacheableArgs) -> TokenStream {
5252
let mut input = parse_macro_input!(tokens as Item);
5353

5454
let mut visitor = FieldAttrVisitor::default();

crates/rspack_cacheable_macros/src/cacheable/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ pub fn cacheable(
1616
if args.with.is_some() {
1717
impl_cacheable_with(tokens, args)
1818
} else {
19-
impl_cacheable(tokens, args)
19+
impl_cacheable(tokens, &args)
2020
}
2121
}
2222

crates/rspack_cacheable_test/tests/with/as_preset/rspack_sources.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ struct Data(#[cacheable(with=AsPreset)] BoxSource);
77

88
#[test]
99
fn test_rspack_source() {
10-
fn test_data(data: Data) {
11-
let bytes = to_bytes(&data, &()).unwrap();
10+
fn test_data(data: &Data) {
11+
let bytes = to_bytes(data, &()).unwrap();
1212
let new_data: Data = from_bytes(&bytes, &()).unwrap();
1313
assert_eq!(data.0.buffer(), new_data.0.buffer());
1414
assert_eq!(
@@ -17,6 +17,6 @@ fn test_rspack_source() {
1717
);
1818
}
1919

20-
test_data(Data(RawBufferSource::from("123".as_bytes()).boxed()));
21-
test_data(Data(RawStringSource::from_static("123").boxed()));
20+
test_data(&Data(RawBufferSource::from("123".as_bytes()).boxed()));
21+
test_data(&Data(RawStringSource::from_static("123").boxed()));
2222
}

0 commit comments

Comments
 (0)