From 57b7654816b1a53f85fffd447e45c28c45a795d1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 20 Aug 2025 15:00:35 +0800 Subject: [PATCH 01/38] init next-rspack-binding --- Cargo.toml | 1 + crates/next-rspack/Cargo.toml | 33 + crates/next-rspack/src/config_shared.rs | 18 + crates/next-rspack/src/handle_externals.rs | 645 ++++++++++++++++++ crates/next-rspack/src/lib.rs | 113 +++ .../next-rspack/src/next_externals_plugin.rs | 264 +++++++ 6 files changed, 1074 insertions(+) create mode 100644 crates/next-rspack/Cargo.toml create mode 100644 crates/next-rspack/src/config_shared.rs create mode 100644 crates/next-rspack/src/handle_externals.rs create mode 100644 crates/next-rspack/src/lib.rs create mode 100644 crates/next-rspack/src/next_externals_plugin.rs diff --git a/Cargo.toml b/Cargo.toml index 52d4488e612b0..4a2ed71e7d40d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,6 +11,7 @@ members = [ "crates/next-core", "crates/next-custom-transforms", "crates/next-taskless", + "crates/next-rspack", "turbopack/crates/*", "turbopack/crates/*/fuzz", "turbopack/xtask", diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml new file mode 100644 index 0000000000000..1cf06f1c5db71 --- /dev/null +++ b/crates/next-rspack/Cargo.toml @@ -0,0 +1,33 @@ +[package] +name = "next-rspack-binding" +publish = false +edition = "2021" + +[lib] +crate-type = ["cdylib"] + +[dependencies] +rspack_binding_builder = { version = "=0.4.11" } +rspack_binding_builder_macros = { version = "=0.4.11" } + +rspack_core = { version = "=0.4.11" } +rspack_error = { version = "=0.4.11" } +rspack_hook = { version = "=0.4.11" } +rspack_plugin_externals = { version = "=0.4.11" } +rspack_sources = { version = "=0.4.8" } + +once_cell = { workspace = true } +regex = { workspace = true } +rspack_regex = { version = "=0.4.11" } +rustc-hash = { workspace = true } + +napi = { workspace = true, features = ["async", "tokio_rt", "serde-json", "anyhow", "napi7", "compat-mode"] } +napi-derive = { version = "2", features = ["compat-mode"] } + +# Enable SWC plugin feature for targets that support it +# Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf +[target.'cfg(not(any(target_arch = "wasm32", target_arch = "arm", all(target_os = "windows", target_arch = "x86"), all(target_os = "windows", target_arch = "aarch64"))))'.dependencies] +rspack_binding_builder = {version = "=0.4.11", features = ["plugin"] } + +[build-dependencies] +rspack_binding_build = { version = "=0.4.11" } diff --git a/crates/next-rspack/src/config_shared.rs b/crates/next-rspack/src/config_shared.rs new file mode 100644 index 0000000000000..d99589827761d --- /dev/null +++ b/crates/next-rspack/src/config_shared.rs @@ -0,0 +1,18 @@ +#[derive(Debug, Clone, PartialEq, Eq, Default)] +pub enum EsmExternalsConfig { + #[default] + None, + Loose, + Strict, +} + +#[derive(Debug, Clone, Default)] +pub struct ExperimentalConfig { + pub esm_externals: EsmExternalsConfig, +} + +#[derive(Debug, Clone, Default)] +pub struct NextConfigComplete { + pub experimental: ExperimentalConfig, + pub bundle_pages_router_dependencies: Option, +} diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs new file mode 100644 index 0000000000000..b1667dc1c0a28 --- /dev/null +++ b/crates/next-rspack/src/handle_externals.rs @@ -0,0 +1,645 @@ +use std::{ + future::Future, + path::Path, + pin::Pin, + sync::{Arc, LazyLock}, +}; + +use once_cell::sync::OnceCell; +use regex::Regex; +use rspack_core::{Alias, DependencyCategory, Resolve, ResolveOptionsWithDependencyType}; +use rspack_regex::RspackRegex; +use rustc_hash::FxHashMap; + +use crate::config_shared::{EsmExternalsConfig, NextConfigComplete}; + +const WEBPACK_BUNDLED_LAYERS: &[&str] = &[ + "rsc", + "action-browser", + "ssr", + "app-pages-browser", + "shared", + "instrument", + "middleware", +]; + +fn is_webpack_bundled_layer(layer: Option<&str>) -> bool { + layer.is_some_and(|layer| WEBPACK_BUNDLED_LAYERS.contains(&layer)) +} + +static REACT_PACKAGES_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^(react|react-dom|react-server-dom-webpack)($|/)").unwrap()); + +static NOT_EXTERNAL_MODULES_REGEX: LazyLock = LazyLock::new(|| { + Regex::new( + r"^(?:private-next-pages/|next/(?:dist/pages/|(?:app|cache|document|link|form|head|image|legacy/image|constants|dynamic|script|navigation|headers|router|compat/router|server)$)|string-hash|private-next-rsc-action-validate|private-next-rsc-action-client-wrapper|private-next-rsc-server-reference|private-next-rsc-cache-wrapper|private-next-rsc-track-dynamic-import$)" + ).unwrap() +}); + +static NEXT_IMAGE_LOADER_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]shared[/\\]lib[/\\]image-loader").unwrap()); + +static NEXT_SERVER_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\]next-server").unwrap()); + +static NEXT_SHARED_CJS_REGEX: LazyLock = LazyLock::new(|| { + RspackRegex::new(r"^next[/\\]dist[/\\]shared[/\\](?!lib[/\\]router[/\\]router)").unwrap() +}); + +static NEXT_COMPILED_CJS_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.c?js$").unwrap()); + +static NEXT_SHARED_ESM_REGEX: LazyLock = LazyLock::new(|| { + RspackRegex::new(r"^next[/\\]dist[/\\]esm[/\\]shared[/\\](?!lib[/\\]router[/\\]router)").unwrap() +}); + +static NEXT_COMPILED_MJS_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.mjs$").unwrap()); + +static BABEL_RUNTIME_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"node_modules[/\\]@babel[/\\]runtime[/\\]").unwrap()); + +static WEBPACK_CSS_LOADER_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"node_modules[/\\]webpack|node_modules[/\\]css-loader").unwrap()); + +const BARREL_OPTIMIZATION_PREFIX: &str = "__barrel_optimize__"; + +const WEBPACK_SERVER_ONLY_LAYERS: &[&str] = &["rsc", "action-browser", "instrument", "middleware"]; + +fn should_use_react_server_condition(layer: Option<&str>) -> bool { + layer.is_some_and(|layer| WEBPACK_SERVER_ONLY_LAYERS.contains(&layer)) +} + +static NODE_RESOLVE_OPTIONS: LazyLock = + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: Some(Box::new(Resolve { + extensions: Some(vec![ + ".js".to_string(), + ".json".to_string(), + ".node".to_string(), + ]), + alias: None, + prefer_relative: Some(false), + prefer_absolute: Some(false), + symlinks: Some(true), + main_files: Some(vec!["index".to_string()]), + main_fields: Some(vec!["main".to_string()]), + condition_names: Some(vec!["node".to_string(), "require".to_string()]), + tsconfig: None, + modules: None, + fallback: Some(Alias::OverwriteToNoAlias), + fully_specified: Some(false), + exports_fields: Some(vec![vec!["exports".to_string()]]), + extension_alias: None, + alias_fields: None, + roots: Some(vec![]), + restrictions: Some(vec![]), + imports_fields: Some(vec![vec!["imports".to_string()]]), + by_dependency: None, + description_files: Some(vec!["package.json".to_string()]), + enforce_extension: Some(false), + pnp: None, + })), + resolve_to_context: false, + dependency_category: DependencyCategory::CommonJS, + }); + +static NODE_BASE_RESOLVE_OPTIONS: LazyLock = + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options + }), + resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: NODE_RESOLVE_OPTIONS.dependency_category, + }); + +static NODE_ESM_RESOLVE_OPTIONS: LazyLock = + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options.condition_names = Some(vec!["node".to_string(), "import".to_string()]); + options.fully_specified = Some(true); + options + }), + resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: DependencyCategory::Esm, + }); + +static NODE_BASE_ESM_RESOLVE_OPTIONS: LazyLock = + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_ESM_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options + }), + resolve_to_context: NODE_ESM_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: NODE_ESM_RESOLVE_OPTIONS.dependency_category, + }); + +static NODE_MODULES_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"node_modules[/\\].*\.[mc]?js$").unwrap()); + +fn is_resource_in_packages( + resource: &str, + package_names: &[String], + package_dir_mapping: Option<&FxHashMap>, +) -> bool { + if package_names.is_empty() { + return false; + } + package_names.iter().any(|pkg| { + if let Some(dirs) = package_dir_mapping { + if let Some(dir) = dirs.get(pkg) { + return resource.starts_with(&format!("{dir}/")); + } + } + resource.contains(&format!( + "/node_modules/{}/", + pkg.replace('/', std::path::MAIN_SEPARATOR_STR) + )) + }) +} + +#[derive(Debug)] +pub struct ExternalHandler { + config: NextConfigComplete, + opt_out_bundling_package_regex: RspackRegex, + transpiled_packages: Vec, + dir: String, + resolved_external_package_dirs: OnceCell>, + loose_esm_externals: bool, + default_overrides: FxHashMap, +} + +impl ExternalHandler { + pub fn new( + config: NextConfigComplete, + opt_out_bundling_package_regex: RspackRegex, + transpiled_packages: Vec, + dir: String, + default_overrides: FxHashMap, + ) -> Self { + let loose_esm_externals = config.experimental.esm_externals == EsmExternalsConfig::Loose; + + Self { + config, + opt_out_bundling_package_regex, + transpiled_packages, + dir, + resolved_external_package_dirs: OnceCell::default(), + loose_esm_externals, + default_overrides, + } + } + + fn resolve_bundling_opt_out_packages( + &self, + resolved_res: &str, + is_app_layer: bool, + external_type: &str, + is_opt_out_bundling: bool, + request: &str, + ) -> Option { + if NODE_MODULES_REGEX.is_match(resolved_res) { + let should_bundle_pages = !is_app_layer + && self + .config + .bundle_pages_router_dependencies + .unwrap_or(false) + && !is_opt_out_bundling; + + let should_be_bundled = should_bundle_pages + || is_resource_in_packages( + resolved_res, + &self.transpiled_packages, + self.resolved_external_package_dirs.get(), + ); + + if !should_be_bundled { + return Some(format!("{external_type} {request}")); + } + } + None + } + + pub async fn handle_externals( + &self, + context: String, + request: String, + dependency_type: &str, + layer: Option<&str>, + get_resolve: GetResolveFn, + ) -> rspack_error::Result> { + // We need to externalize internal requests for files intended to + // not be bundled. + let is_local = request.starts_with('.') || Path::new(&request).is_absolute(); + + // make sure import "next" shows a warning when imported + // in pages/components + if request == "next" { + return Ok(Some( + "commonjs next/dist/lib/import-next-warning".to_string(), + )); + } + + let is_app_layer = is_webpack_bundled_layer(layer); + + // Relative requires don't need custom resolution, because they + // are relative to requests we've already resolved here. + // Absolute requires (require('/foo')) are extremely uncommon, but + // also have no need for customization as they're already resolved. + if !is_local { + if request == "next" { + return Ok(Some(format!("commonjs {request}"))); + } + + // Handle React packages + if REACT_PACKAGES_REGEX.is_match(&request) && !is_app_layer { + return Ok(Some(format!("commonjs {request}"))); + } + + // Skip modules that should not be external + if NOT_EXTERNAL_MODULES_REGEX.is_match(&request) { + return Ok(None); + } + } + + // @swc/helpers should not be external as it would + // require hoisting the package which we can't rely on + if request.contains("@swc/helpers") { + return Ok(None); + } + + // BARREL_OPTIMIZATION_PREFIX is a special marker that tells Next.js to + // optimize the import by removing unused exports. This has to be compiled. + if request.starts_with(BARREL_OPTIMIZATION_PREFIX) { + return Ok(None); + } + + // When in esm externals mode, and using import, we resolve with + // ESM resolving options. + // Also disable esm request when appDir is enabled + let is_esm_requested = dependency_type == "esm"; + + // Don't bundle @vercel/og nodejs bundle for nodejs runtime. + // TODO-APP: bundle route.js with different layer that externals common node_module deps. + // Make sure @vercel/og is loaded as ESM for Node.js runtime + if should_use_react_server_condition(layer) + && request == "next/dist/compiled/@vercel/og/index.node.js" + { + return Ok(Some(format!("module {request}"))); + } + + // Specific Next.js imports that should remain external + // TODO-APP: Investigate if we can remove this. + if request.starts_with("next/dist/") { + // Non external that needs to be transpiled + // Image loader needs to be transpiled + if NEXT_IMAGE_LOADER_REGEX.is_match(&request) { + return Ok(None); + } + + if NEXT_SERVER_REGEX.is_match(&request) { + return Ok(Some(format!("commonjs {request}"))); + } + + if NEXT_SHARED_CJS_REGEX.test(&request) || NEXT_COMPILED_CJS_REGEX.is_match(&request) { + return Ok(Some(format!("commonjs {request}"))); + } + + if NEXT_SHARED_ESM_REGEX.test(&request) || NEXT_COMPILED_MJS_REGEX.is_match(&request) { + return Ok(Some(format!("module {request}"))); + } + + return Ok(resolve_next_external(&request)); + } + + // TODO-APP: Let's avoid this resolve call as much as possible, and eventually get rid of it. + let resolve_result = resolve_external( + self.dir.to_string(), + &self.config.experimental.esm_externals, + context.to_string(), + request.to_string(), + is_esm_requested, + get_resolve.clone(), + if is_local { + Some(Box::new(resolve_next_external)) + } else { + None + }, + None, + None, + None, + None, + None, + ) + .await?; + + if let Some(local_res) = resolve_result.local_res { + return Ok(Some(local_res)); + } + + // Forcedly resolve the styled-jsx installed by next.js, + // since `resolveExternal` cannot find the styled-jsx dep with pnpm + let (res, is_esm) = if request == "styled-jsx/style" { + ( + self + .default_overrides + .get("styled-jsx/style") + .map(|s| s.to_string()), + resolve_result.is_esm, + ) + } else { + (resolve_result.res, resolve_result.is_esm) + }; + + let Some(res) = res else { + // If the request cannot be resolved we need to have + // webpack "bundle" it so it surfaces the not found error. + return Ok(None); + }; + + let is_opt_out_bundling = self.opt_out_bundling_package_regex.test(&res); + + // Apply bundling rules to all app layers. + // Since handleExternals only handle the server layers, we don't need to exclude client here + if !is_opt_out_bundling && is_app_layer { + return Ok(None); + } + + // ESM externals can only be imported (and not required). + // Make an exception in loose mode. + if !is_esm_requested && is_esm && !self.loose_esm_externals && !is_local { + return Err(rspack_error::error!( + "ESM packages ({}) need to be imported. Use 'import' to reference the package instead. https://nextjs.org/docs/messages/import-esm-externals", + request + )); + } + + let external_type = if is_esm { "module" } else { "commonjs" }; + + // Default pages have to be transpiled + // This is the @babel/plugin-transform-runtime "helpers: true" option + if BABEL_RUNTIME_REGEX.is_match(&res) { + return Ok(None); + } + + // Webpack itself has to be compiled because it doesn't always use module relative paths + if WEBPACK_CSS_LOADER_REGEX.is_match(&res) { + return Ok(None); + } + + // If a package should be transpiled by Next.js, we skip making it external. + // It doesn't matter what the extension is, as we'll transpile it anyway. + if !self.transpiled_packages.is_empty() && self.resolved_external_package_dirs.get().is_none() { + let mut resolved_dirs = FxHashMap::default(); + + // We need to resolve all the external package dirs initially. + for pkg in &self.transpiled_packages { + let pkg_request = format!("{pkg}/package.json"); + let pkg_res = resolve_external( + self.dir.to_string(), + &self.config.experimental.esm_externals, + context.to_string(), + pkg_request, + is_esm_requested, + get_resolve.clone(), + if is_local { + Some(Box::new(resolve_next_external)) + } else { + None + }, + None, + None, + None, + None, + None, + ) + .await?; + + if let Some(res) = pkg_res.res { + if let Some(parent) = Path::new(&res).parent() { + resolved_dirs.insert(pkg.clone(), parent.to_string_lossy().to_string()); + } + } + } + + self + .resolved_external_package_dirs + .get_or_init(move || resolved_dirs); + } + + let resolved_bundling_opt_out_res = self.resolve_bundling_opt_out_packages( + &res, + is_app_layer, + external_type, + is_opt_out_bundling, + &request, + ); + + if resolved_bundling_opt_out_res.is_some() { + return Ok(resolved_bundling_opt_out_res); + } + + // if here, we default to bundling the file + Ok(None) + } +} + +static EXTERNAL_PATTERN: LazyLock = LazyLock::new(|| { + let path_separators = r"[/\\]"; + let optional_esm_part = format!(r"(({path_separators})esm)?{path_separators}",); + let external_file_end = r"(\.external(\.js)?)$"; + let next_dist = format!(r"next{path_separators}dist"); + + Regex::new(&format!( + r"{next_dist}{optional_esm_part}.*{external_file_end}" + )) + .unwrap() +}); + +static NEXT_DIST_REPLACE_PATTERN: LazyLock = + LazyLock::new(|| Regex::new(r".*?next[/\\]dist").unwrap()); + +/// Returns an externalized path if the file is a Next.js file and ends with either `.shared-runtime.js` or `.external.js` +/// This is used to ensure that files used across the rendering runtime(s) and the user code are one and the same. +/// The logic in this function will rewrite the require to the correct bundle location depending on the layer at which the file is being used. +/// +/// # Arguments +/// * `local_res` - the full path to the file +/// +/// # Returns +/// * `Option` - the externalized path, or None if not external +pub fn resolve_next_external(local_res: &str) -> Option { + let is_external = EXTERNAL_PATTERN.is_match(local_res); + + // If the file ends with .external, we need to make it a commonjs require in all cases + // This is used mainly to share the async local storage across the routing, rendering and user layers. + if is_external { + // It's important we return the path that starts with `next/dist/` here instead of the absolute path + // otherwise NFT will get tripped up + let normalized_path = NEXT_DIST_REPLACE_PATTERN.replace(local_res, "next/dist"); + let normalized_path = normalize_path_sep(&normalized_path); + + Some(format!("commonjs {normalized_path}")) + } else { + None + } +} + +/// Normalize path separators to forward slashes +fn normalize_path_sep(path: &str) -> String { + path.replace('\\', "/") +} + +#[derive(Debug)] +pub struct ResolveResult { + pub res: Option, + pub is_esm: bool, + pub local_res: Option, +} + +impl EsmExternalsConfig { + pub fn is_enabled(&self) -> bool { + !matches!(self, EsmExternalsConfig::None) + } + + pub fn is_loose(&self) -> bool { + matches!(self, EsmExternalsConfig::Loose) + } +} + +type ResolveFn = Box< + dyn Fn( + String, + String, + ) -> Pin< + Box, bool)>> + Send + 'static>, + > + Send + + 'static, +>; +type GetResolveFn = + Arc) -> ResolveFn + Send + Sync + 'static>; +type IsLocalCallbackFn = Box Option + Send + Sync + 'static>; + +#[allow(clippy::too_many_arguments)] +pub async fn resolve_external( + dir: String, + esm_externals_config: &EsmExternalsConfig, + context: String, + request: String, + is_esm_requested: bool, + get_resolve: GetResolveFn, + is_local_callback: Option, + base_resolve_check: Option, + esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, + node_resolve_options: Option<&ResolveOptionsWithDependencyType>, + base_esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, + base_resolve_options: Option<&ResolveOptionsWithDependencyType>, +) -> rspack_error::Result { + let esm_externals = esm_externals_config.is_enabled(); + let loose_esm_externals = esm_externals_config.is_loose(); + + let mut res: Option = None; + let mut is_esm = false; + + let prefer_esm_options = if esm_externals && is_esm_requested { + vec![true, false] + } else { + vec![false] + }; + + let base_resolve_check = base_resolve_check.unwrap_or(true); + let esm_resolve_options = esm_resolve_options.unwrap_or(&NODE_ESM_RESOLVE_OPTIONS); + let node_resolve_options = node_resolve_options.unwrap_or(&NODE_RESOLVE_OPTIONS); + let base_esm_resolve_options = base_esm_resolve_options.unwrap_or(&NODE_BASE_ESM_RESOLVE_OPTIONS); + let base_resolve_options = base_resolve_options.unwrap_or(&NODE_BASE_RESOLVE_OPTIONS); + + for prefer_esm in prefer_esm_options { + let resolve_options = if prefer_esm { + esm_resolve_options + } else { + node_resolve_options + }; + + let resolve = get_resolve(Some(resolve_options.clone())); + + // Resolve the import with the webpack provided context, this + // ensures we're resolving the correct version when multiple exist. + match resolve(context.to_string(), request.to_string()).await { + Ok((resolved_path, resolved_is_esm)) => { + res = resolved_path; + is_esm = resolved_is_esm; + } + Err(_) => { + res = None; + } + } + + if res.is_none() { + continue; + } + + // ESM externals can only be imported (and not required). + // Make an exception in loose mode. + if !is_esm_requested && is_esm && !loose_esm_externals { + continue; + } + + if let Some(is_local_callback) = &is_local_callback { + if let Some(ref resolved) = res { + return Ok(ResolveResult { + res: None, + is_esm: false, + local_res: is_local_callback(resolved), + }); + } + } + + // Bundled Node.js code is relocated without its node_modules tree. + // This means we need to make sure its request resolves to the same + // package that'll be available at runtime. If it's not identical, + // we need to bundle the code (even if it _should_ be external). + if base_resolve_check { + let resolve_options = if is_esm { + base_esm_resolve_options + } else { + base_resolve_options + }; + + let base_resolve = get_resolve(Some(resolve_options.clone())); + + let (base_res, base_is_esm) = match base_resolve(dir.to_string(), request.to_string()).await { + Ok((resolved_path, resolved_is_esm)) => (resolved_path, resolved_is_esm), + Err(_) => (None, false), + }; + + // Same as above: if the package, when required from the root, + // would be different from what the real resolution would use, we + // cannot externalize it. + // If request is pointing to a symlink it could point to the same file, + // the resolver will resolve symlinks so this is handled + if base_res != res || is_esm != base_is_esm { + res = None; + continue; + } + } + + break; + } + + Ok(ResolveResult { + res, + is_esm, + local_res: None, + }) +} diff --git a/crates/next-rspack/src/lib.rs b/crates/next-rspack/src/lib.rs new file mode 100644 index 0000000000000..95448c73b5d81 --- /dev/null +++ b/crates/next-rspack/src/lib.rs @@ -0,0 +1,113 @@ +mod config_shared; +mod handle_externals; +mod next_externals_plugin; + +use napi::bindgen_prelude::*; +use rspack_binding_builder_macros::register_plugin; +use rspack_core::BoxPlugin; +use rspack_regex::RspackRegex; +use rustc_hash::FxHashMap; + +use crate::{ + config_shared::{EsmExternalsConfig, ExperimentalConfig, NextConfigComplete}, + next_externals_plugin::{NextExternalsPlugin, NextExternalsPluginOptions}, +}; + +#[macro_use] +extern crate napi_derive; +extern crate rspack_binding_builder; + +#[derive(Debug)] +#[napi(object, object_to_js = false)] +pub struct NapiExperimentalConfig { + pub esm_externals: Option>, +} + +impl From for ExperimentalConfig { + fn from(value: NapiExperimentalConfig) -> Self { + ExperimentalConfig { + esm_externals: match value.esm_externals { + Some(esm_externals) => match esm_externals { + Either::A(s) => { + if s == "loose" { + EsmExternalsConfig::Loose + } else { + EsmExternalsConfig::Strict + } + } + Either::B(b) => { + if b { + EsmExternalsConfig::Strict + } else { + EsmExternalsConfig::None + } + } + }, + None => EsmExternalsConfig::None, + }, + } + } +} + +#[derive(Debug)] +#[napi(object, object_to_js = false)] +pub struct NapiNextConfigComplete { + pub experimental: NapiExperimentalConfig, + pub bundle_pages_router_dependencies: Option, +} + +impl From for NextConfigComplete { + fn from(value: NapiNextConfigComplete) -> Self { + let NapiNextConfigComplete { + experimental, + bundle_pages_router_dependencies, + } = value; + NextConfigComplete { + experimental: experimental.into(), + bundle_pages_router_dependencies, + } + } +} + +#[derive(Debug)] +#[napi(object, object_to_js = false)] +pub struct NapiNextExternalsPluginOptions { + pub compiler_type: String, + pub config: NapiNextConfigComplete, + pub builtin_modules: Vec, + #[napi(ts_type = "RegExp")] + pub opt_out_bundling_package_regex: RspackRegex, + pub final_transpile_packages: Vec, + pub dir: String, + #[napi(ts_type = "Record")] + pub default_overrides: FxHashMap, +} + +impl From for NextExternalsPluginOptions { + fn from(value: NapiNextExternalsPluginOptions) -> Self { + let NapiNextExternalsPluginOptions { + compiler_type, + config, + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } = value; + NextExternalsPluginOptions { + compiler_type, + config: config.into(), + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } + } +} + +register_plugin!("NextExternalsPlugin", |env: Env, object: Unknown<'_>| { + let napi_options: NapiNextExternalsPluginOptions = + unsafe { FromNapiValue::from_napi_value(env.raw(), object.raw())? }; + Ok(Box::new(NextExternalsPlugin::new(napi_options.into())) as BoxPlugin) +}); diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs new file mode 100644 index 0000000000000..8a6448ff58000 --- /dev/null +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -0,0 +1,264 @@ +use std::{ + path::Path, + sync::{Arc, LazyLock}, +}; + +use rspack_core::{ + ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, + ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, + ResolveOptionsWithDependencyType, ResolveResult, +}; +use rspack_error::ToStringResultToRspackResultExt; +use rspack_hook::plugin; +use rspack_plugin_externals::ExternalsPlugin; +use rspack_regex::RspackRegex; +use rustc_hash::{FxHashMap, FxHashSet}; + +use crate::{config_shared::NextConfigComplete, handle_externals::ExternalHandler}; + +static SUPPORTED_NATIVE_MODULES: &[&str] = &["buffer", "events", "assert", "util", "async_hooks"]; + +static SUPPORTED_EDGE_POLYFILLS: LazyLock> = + LazyLock::new(|| SUPPORTED_NATIVE_MODULES.iter().copied().collect()); + +fn get_edge_polyfilled_modules() -> ExternalItem { + let mut externals = ExternalItemObject::default(); + for &module in SUPPORTED_NATIVE_MODULES { + externals.insert( + module.to_string(), + ExternalItemValue::String(format!("commonjs node:{module}")), + ); + externals.insert( + format!("node:{module}"), + ExternalItemValue::String(format!("commonjs node:{module}")), + ); + } + ExternalItem::Object(externals) +} + +fn is_node_js_module(module_name: &str, builtin_modules: &[String]) -> bool { + builtin_modules + .iter() + .any(|builtin_module| builtin_module == module_name) +} + +fn is_supported_edge_polyfill(module_name: &str) -> bool { + SUPPORTED_EDGE_POLYFILLS.contains(module_name) +} + +async fn handle_webpack_external_for_edge_runtime( + ctx: ExternalItemFnCtx, + builtin_modules: Arc>, +) -> rspack_error::Result { + let is_middleware_or_api_edge = match &ctx.context_info.issuer_layer { + Some(layer) => layer == "middleware" || layer == "api-edge", + None => false, + }; + + let result = if is_middleware_or_api_edge + && is_node_js_module(&ctx.request, &builtin_modules) + && !is_supported_edge_polyfill(&ctx.request) + { + let resolver = ctx + .resolver_factory + .get(ctx.resolve_options_with_dependency_type); + // Allow user to provide and use their polyfills, as we do with buffer. + match resolver + .resolve(Path::new(&ctx.context), &ctx.request) + .await + { + Ok(_) => None, + Err(_) => Some(ExternalItemValue::String(format!( + "root globalThis.__import_unsupported('{}')", + ctx.request + ))), + } + } else { + None + }; + + Ok(ExternalItemFnResult { + external_type: None, + result, + }) +} + +#[derive(Debug)] +pub struct NextExternalsPluginOptions { + pub compiler_type: String, + pub config: NextConfigComplete, + pub builtin_modules: Vec, + pub opt_out_bundling_package_regex: RspackRegex, + pub final_transpile_packages: Vec, + pub dir: String, + pub default_overrides: FxHashMap, +} + +#[derive(Debug)] +#[plugin] +pub struct NextExternalsPlugin { + compiler_type: String, + builtin_modules: Arc>, + external_handler: Arc, +} + +impl NextExternalsPlugin { + #[allow(dead_code)] + pub fn new(options: NextExternalsPluginOptions) -> Self { + let NextExternalsPluginOptions { + compiler_type, + config, + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } = options; + + let external_handler = ExternalHandler::new( + config.clone(), + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + ); + + Self::new_inner( + compiler_type, + Arc::new(builtin_modules), + Arc::new(external_handler), + ) + } +} + +impl Plugin for NextExternalsPlugin { + fn name(&self) -> &'static str { + "NextExternalsPlugin" + } + + fn apply( + &self, + ctx: PluginContext<&mut ApplyContext>, + options: &CompilerOptions, + ) -> rspack_error::Result<()> { + let is_client = self.compiler_type == "client"; + let is_edge_server = self.compiler_type == "edge-server"; + + let external_type = if is_client || is_edge_server { + "assign".to_string() + } else { + "commonjs2".to_string() + }; + + let builtin_modules = self.builtin_modules.clone(); + let externals = if is_client || is_edge_server { + if is_edge_server { + vec![ + ExternalItem::String("next".to_string()), + ExternalItem::Object(FxHashMap::from_iter([ + ( + "@builder.io/partytown".to_string(), + ExternalItemValue::String("{}".to_string()), + ), + ( + "next/dist/compiled/etag".to_string(), + ExternalItemValue::String("{}".to_string()), + ), + ])), + get_edge_polyfilled_modules(), + ExternalItem::Fn(Box::new(move |ctx| { + let builtin_modules = builtin_modules.clone(); + Box::pin( + async move { handle_webpack_external_for_edge_runtime(ctx, builtin_modules).await }, + ) + })), + ] + } else { + vec![ExternalItem::String("next".to_string())] + } + } else { + let external_handler = self.external_handler.clone(); + self + .builtin_modules + .iter() + .map(|module| ExternalItem::String(module.to_string())) + .chain([ExternalItem::Fn(Box::new(move |ctx| { + let external_handler = external_handler.clone(); + let result = Box::pin(async move { + let external_result = external_handler + .handle_externals( + ctx.context, + ctx.request, + &ctx.dependency_type, + ctx.context_info.issuer_layer.as_deref(), + Arc::new(move |options: Option| { + let first = ctx.resolve_options_with_dependency_type.clone(); + let second = options.unwrap_or(ResolveOptionsWithDependencyType { + resolve_options: None, + resolve_to_context: false, + dependency_category: DependencyCategory::Unknown, + }); + + let merged_resolve_options = match second.resolve_options.as_ref() { + Some(second_resolve_options) => match first.resolve_options.as_ref() { + Some(first_resolve_options) => Some(Box::new( + first_resolve_options + .clone() + .merge(*second_resolve_options.clone()), + )), + None => Some(second_resolve_options.clone()), + }, + None => first.resolve_options.clone(), + }; + let merged_options = ResolveOptionsWithDependencyType { + resolve_options: merged_resolve_options, + resolve_to_context: first.resolve_to_context, + dependency_category: first.dependency_category, + }; + let resolver = ctx.resolver_factory.get(merged_options); + + Box::new(move |resolve_context: String, request_to_resolve: String| { + let resolver = resolver.clone(); + Box::pin(async move { + let resolve_result = resolver + .resolve(Path::new(&resolve_context), &request_to_resolve) + .await + .to_rspack_result()?; + Ok(match resolve_result { + ResolveResult::Resource(resource) => { + let is_esm = if resource.path.as_str().ends_with(".js") { + resource.description_data.as_ref().is_some_and(|description_data| { + if let Some(object) = description_data.json().as_object() { + object.get("type").is_some_and(|v| v.as_str() == Some("module")) + } else { + false + } + }) + } else { + resource.path.as_str().ends_with(".mjs") + }; + (Some(resource.full_path()), is_esm) + } + ResolveResult::Ignored => (None, false), + }) + }) + }) + }), + ) + .await?; + Ok(ExternalItemFnResult { + external_type: None, + result: external_result.map(ExternalItemValue::String), + }) + }); + result + }))]) + .collect::>() + }; + + ExternalsPlugin::new(external_type, externals) + .apply(PluginContext::with_context(ctx.context), options)?; + + Ok(()) + } +} From 7841dc3c13bdcc262fa88a818b8fececdacd0db9 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 27 Aug 2025 18:02:55 +0800 Subject: [PATCH 02/38] chore: take next-rspack out crago workspace --- Cargo.toml | 1 - crates/next-rspack/Cargo.toml | 10 +++++----- crates/next-rspack/rust-toolchain.toml | 3 +++ 3 files changed, 8 insertions(+), 6 deletions(-) create mode 100644 crates/next-rspack/rust-toolchain.toml diff --git a/Cargo.toml b/Cargo.toml index 4a2ed71e7d40d..52d4488e612b0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,6 @@ members = [ "crates/next-core", "crates/next-custom-transforms", "crates/next-taskless", - "crates/next-rspack", "turbopack/crates/*", "turbopack/crates/*/fuzz", "turbopack/xtask", diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml index 1cf06f1c5db71..751dace3777eb 100644 --- a/crates/next-rspack/Cargo.toml +++ b/crates/next-rspack/Cargo.toml @@ -16,13 +16,13 @@ rspack_hook = { version = "=0.4.11" } rspack_plugin_externals = { version = "=0.4.11" } rspack_sources = { version = "=0.4.8" } -once_cell = { workspace = true } -regex = { workspace = true } +once_cell = { version = "1.17.1" } +regex = { version = "1.10.6" } rspack_regex = { version = "=0.4.11" } -rustc-hash = { workspace = true } +rustc-hash = { version = "2.1.1" } -napi = { workspace = true, features = ["async", "tokio_rt", "serde-json", "anyhow", "napi7", "compat-mode"] } -napi-derive = { version = "2", features = ["compat-mode"] } +napi = { version = "3.1.2" } +napi-derive = { version = "3.1.2" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf diff --git a/crates/next-rspack/rust-toolchain.toml b/crates/next-rspack/rust-toolchain.toml new file mode 100644 index 0000000000000..7968dd60f531a --- /dev/null +++ b/crates/next-rspack/rust-toolchain.toml @@ -0,0 +1,3 @@ +[toolchain] +profile = "default" +channel = "nightly-2025-05-30" From 3d4f6df966e977e8898295b6fa2743c2f767d8d1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 27 Aug 2025 20:28:30 +0800 Subject: [PATCH 03/38] can build rspack package --- Cargo.toml | 5 +- crates/next-rspack/.npmrc | 1 + crates/next-rspack/Cargo.lock | 8724 ++++++++++++++++++++++++ crates/next-rspack/Cargo.toml | 44 +- crates/next-rspack/build.rs | 3 + crates/next-rspack/index.d.ts | 22 + crates/next-rspack/index.js | 396 ++ crates/next-rspack/package.json | 52 + crates/next-rspack/pnpm-lock.yaml | 1279 ++++ crates/next-rspack/pnpm-workspace.yaml | 0 crates/next-rspack/tsconfig.json | 7 + 11 files changed, 10519 insertions(+), 14 deletions(-) create mode 100644 crates/next-rspack/.npmrc create mode 100644 crates/next-rspack/Cargo.lock create mode 100644 crates/next-rspack/build.rs create mode 100644 crates/next-rspack/index.d.ts create mode 100644 crates/next-rspack/index.js create mode 100644 crates/next-rspack/package.json create mode 100644 crates/next-rspack/pnpm-lock.yaml create mode 100644 crates/next-rspack/pnpm-workspace.yaml create mode 100644 crates/next-rspack/tsconfig.json diff --git a/Cargo.toml b/Cargo.toml index 52d4488e612b0..3c108a1443f6f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,7 +16,10 @@ members = [ "turbopack/xtask", ] -exclude = ["crates/next-error-code-swc-plugin"] +exclude = [ + "crates/next-error-code-swc-plugin", + "crates/next-rspack" +] [workspace.lints.clippy] too_many_arguments = "allow" diff --git a/crates/next-rspack/.npmrc b/crates/next-rspack/.npmrc new file mode 100644 index 0000000000000..ea5c45db3c8d5 --- /dev/null +++ b/crates/next-rspack/.npmrc @@ -0,0 +1 @@ +workspace-root=false diff --git a/crates/next-rspack/Cargo.lock b/crates/next-rspack/Cargo.lock new file mode 100644 index 0000000000000..40fc029001c1e --- /dev/null +++ b/crates/next-rspack/Cargo.lock @@ -0,0 +1,8724 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + +[[package]] +name = "addr2line" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +dependencies = [ + "gimli 0.31.1", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" + +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom 0.2.16", + "once_cell", + "version_check", +] + +[[package]] +name = "ahash" +version = "0.8.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" +dependencies = [ + "cfg-if", + "getrandom 0.3.3", + "once_cell", + "serde", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "allocator-api2" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "any_ascii" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70033777eb8b5124a81a1889416543dddef2de240019b674c81285a2635a7e1e" + +[[package]] +name = "anyhow" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +dependencies = [ + "backtrace", +] + +[[package]] +name = "anymap3" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "170433209e817da6aae2c51aa0dd443009a613425dd041ebfb2492d1c4c11a25" + +[[package]] +name = "arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" + +[[package]] +name = "arca" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f915ddd863ef73f11c10c75170e86db1d4f539689bc6bfb9ce25d6528d6fe83" +dependencies = [ + "clean-path", + "path-slash", + "radix_trie", +] + +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "ascii" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" + +[[package]] +name = "ast_node" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1e2cddd48eafd883890770673b1971faceaf80a185445671abc3ea0c00593ee" +dependencies = [ + "quote", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "async-recursion" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "async-trait" +version = "0.1.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "auto_impl" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "backtrace" +version = "0.3.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" +dependencies = [ + "addr2line", + "cfg-if", + "libc", + "miniz_oxide 0.8.9", + "object 0.36.7", + "rustc-demangle", + "windows-targets 0.52.6", +] + +[[package]] +name = "backtrace-ext" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "537beee3be4a18fb023b570f80e3ae28003db9167a751266b259926e25539d50" +dependencies = [ + "backtrace", +] + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "base64-simd" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "781dd20c3aff0bd194fe7d2a977dd92f21c173891f3a03b677359e5fa457e5d5" +dependencies = [ + "simd-abstraction", +] + +[[package]] +name = "base64-simd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +dependencies = [ + "outref 0.5.2", + "vsimd", +] + +[[package]] +name = "better_scoped_tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd228125315b132eed175bf47619ac79b945b26e56b848ba203ae4ea8603609" +dependencies = [ + "scoped-tls", +] + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "bindgen" +version = "0.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +dependencies = [ + "bitflags 2.9.1", + "cexpr", + "clang-sys", + "itertools 0.13.0", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.104", +] + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec 0.6.3", +] + +[[package]] +name = "bit-set" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" +dependencies = [ + "bit-vec 0.8.0", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bit-vec" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + +[[package]] +name = "blake3" +version = "1.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "browserslist-data" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c49471c5ae53cefe3ac4acc4d3c75cb4b68995b70b3bbb864f8e08fae282098c" +dependencies = [ + "ahash 0.8.12", + "chrono", +] + +[[package]] +name = "browserslist-rs" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8dd48a6ca358df4f7000e3fb5f08738b1b91a0e5d5f862e2f77b2b14647547f5" +dependencies = [ + "ahash 0.8.12", + "browserslist-data", + "chrono", + "either", + "itertools 0.13.0", + "nom 7.1.3", + "serde", + "serde_json", + "thiserror 1.0.69", +] + +[[package]] +name = "bstr" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +dependencies = [ + "allocator-api2", +] + +[[package]] +name = "bus" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b7118d0221d84fada881b657c2ddb7cd55108db79c8764c9ee212c0c259b783" +dependencies = [ + "crossbeam-channel", + "num_cpus", + "parking_lot_core", +] + +[[package]] +name = "bytecheck" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" +dependencies = [ + "bytecheck_derive 0.6.12", + "ptr_meta 0.1.4", + "simdutf8", +] + +[[package]] +name = "bytecheck" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" +dependencies = [ + "bytecheck_derive 0.8.1", + "ptr_meta 0.3.0", + "rancor", + "simdutf8", +] + +[[package]] +name = "bytecheck_derive" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "bytecheck_derive" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +dependencies = [ + "serde", +] + +[[package]] +name = "bytes-str" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c60b5ce37e0b883c37eb89f79a1e26fbe9c1081945d024eee93e8d91a7e18b3" +dependencies = [ + "bytes", + "rkyv 0.8.8", + "serde", +] + +[[package]] +name = "bytesize" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e93abca9e28e0a1b9877922aacb20576e05d4679ffa78c3d6dc22a26a216659" +dependencies = [ + "serde", +] + +[[package]] +name = "camino" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo-platform" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror 2.0.12", +] + +[[package]] +name = "castaway" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" +dependencies = [ + "rustversion", +] + +[[package]] +name = "cc" +version = "1.2.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362" +dependencies = [ + "shlex", +] + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom 7.1.3", +] + +[[package]] +name = "cfg-if" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" + +[[package]] +name = "chrono" +version = "0.4.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "num-traits", + "serde", + "windows-link", +] + +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half", +] + +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "clean-path" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aaa6b4b263a5d737e9bf6b7c09b72c41a5480aec4d7219af827f6564e950b6a5" + +[[package]] +name = "cmake" +version = "0.1.54" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +dependencies = [ + "cc", +] + +[[package]] +name = "compact_str" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f" +dependencies = [ + "castaway", + "cfg-if", + "itoa", + "ryu", + "static_assertions", +] + +[[package]] +name = "concat-string" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7439becb5fafc780b6f4de382b1a7a3e70234afe783854a4702ee8adbb838609" + +[[package]] +name = "concurrent_lru" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7feb5cb312f774e8a24540e27206db4e890f7d488563671d24a16389cf4c2e4e" +dependencies = [ + "once_cell", +] + +[[package]] +name = "console" +version = "0.15.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" +dependencies = [ + "encode_unicode", + "libc", + "once_cell", + "unicode-width 0.2.1", + "windows-sys 0.59.0", +] + +[[package]] +name = "const-str" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21077772762a1002bb421c3af42ac1725fa56066bfc53d9a55bb79905df2aaf3" +dependencies = [ + "const-str-proc-macro", +] + +[[package]] +name = "const-str-proc-macro" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e1e0fdd2e5d3041e530e1b21158aeeef8b5d0e306bc5c1e3d6cf0930d10e25a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "constant_time_eq" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "convert_case" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "cooked-waker" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147be55d677052dabc6b22252d5dd0fd4c29c8c27aa4f2fbef0f94aa003b406f" + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "corosensei" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d1ea1c2a2f898d2a6ff149587b8a04f41ee708d248c723f01ac2f0f01edc0b3" +dependencies = [ + "autocfg", + "cfg-if", + "libc", + "scopeguard", + "windows-sys 0.59.0", +] + +[[package]] +name = "cow-utils" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "417bef24afe1460300965a25ff4a24b8b45ad011948302ec221e8a0a81eb2c79" + +[[package]] +name = "cpufeatures" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "cranelift-bforest" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "305d51c180ebdc46ef61bc60c54ae6512db3bc9a05842a1f1e762e45977019ab" +dependencies = [ + "cranelift-entity", +] + +[[package]] +name = "cranelift-bitset" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "690d8ae6c73748e5ce3d8fe59034dceadb8823e6c8994ba324141c5eae909b0e" + +[[package]] +name = "cranelift-codegen" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd7ca95e831c18d1356da783765c344207cbdffea91e13e47fa9327dbb2e0719" +dependencies = [ + "bumpalo", + "cranelift-bforest", + "cranelift-bitset", + "cranelift-codegen-meta", + "cranelift-codegen-shared", + "cranelift-control", + "cranelift-entity", + "cranelift-isle", + "gimli 0.28.1", + "hashbrown 0.14.5", + "log", + "regalloc2", + "rustc-hash 1.1.0", + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cranelift-codegen-meta" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0a2d2ab65e6cbf91f81781d8da65ec2005510f18300eff21a99526ed6785863" +dependencies = [ + "cranelift-codegen-shared", +] + +[[package]] +name = "cranelift-codegen-shared" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efcff860573cf3db9ae98fbd949240d78b319df686cc306872e7fab60e9c84d7" + +[[package]] +name = "cranelift-control" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69d70e5b75c2d5541ef80a99966ccd97aaa54d2a6af19ea31759a28538e1685a" +dependencies = [ + "arbitrary", +] + +[[package]] +name = "cranelift-entity" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a48cb0a194c9ba82fec35a1e492055388d89b2e3c03dee9dcf2488892be8004d" +dependencies = [ + "cranelift-bitset", +] + +[[package]] +name = "cranelift-frontend" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8327afc6c1c05f4be62fefce5b439fa83521c65363a322e86ea32c85e7ceaf64" +dependencies = [ + "cranelift-codegen", + "log", + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cranelift-isle" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56b08621c00321efcfa3eee6a3179adc009e21ea8d24ca7adc3c326184bc3f48" + +[[package]] +name = "crc32fast" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crunchy" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "css-module-lexer" +version = "0.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b51940c54c6ca015d3add383571ec5610114466eb67aa0a27096e1dcf3c9e29" +dependencies = [ + "smallvec", +] + +[[package]] +name = "cssparser" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9be934d936a0fbed5bcdc01042b770de1398bf79d0e192f49fa7faea0e99281e" +dependencies = [ + "cssparser-macros", + "dtoa-short", + "itoa", + "phf", + "serde", + "smallvec", +] + +[[package]] +name = "cssparser-color" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "556c099a61d85989d7af52b692e35a8d68a57e7df8c6d07563dc0778b3960c9f" +dependencies = [ + "cssparser", +] + +[[package]] +name = "cssparser-macros" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" +dependencies = [ + "quote", + "syn 2.0.104", +] + +[[package]] +name = "ctor" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4735f265ba6a1188052ca32d461028a7d1125868be18e287e756019da7607b5" +dependencies = [ + "ctor-proc-macro", + "dtor", +] + +[[package]] +name = "ctor-proc-macro" +version = "0.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f211af61d8efdd104f96e57adf5e426ba1bc3ed7a4ead616e15e5881fd79c4d" + +[[package]] +name = "darling" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +dependencies = [ + "darling_core 0.14.4", + "darling_macro 0.14.4", +] + +[[package]] +name = "darling" +version = "0.20.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" +dependencies = [ + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling_core" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", +] + +[[package]] +name = "darling_core" +version = "0.20.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.11.1", + "syn 2.0.104", +] + +[[package]] +name = "darling_macro" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +dependencies = [ + "darling_core 0.14.4", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.20.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" +dependencies = [ + "darling_core 0.20.11", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", +] + +[[package]] +name = "dashmap" +version = "6.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" +dependencies = [ + "cfg-if", + "crossbeam-utils", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", + "rayon", +] + +[[package]] +name = "data-encoding" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" + +[[package]] +name = "data-url" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193" +dependencies = [ + "matches", +] + +[[package]] +name = "debugid" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" +dependencies = [ + "serde", + "uuid", +] + +[[package]] +name = "deranged" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derive_builder" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" +dependencies = [ + "derive_builder_macro 0.12.0", +] + +[[package]] +name = "derive_builder" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" +dependencies = [ + "derive_builder_macro 0.20.2", +] + +[[package]] +name = "derive_builder_core" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" +dependencies = [ + "darling 0.14.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder_core" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" +dependencies = [ + "darling 0.20.11", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "derive_builder_macro" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" +dependencies = [ + "derive_builder_core 0.12.0", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder_macro" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" +dependencies = [ + "derive_builder_core 0.20.2", + "syn 2.0.104", +] + +[[package]] +name = "derive_more" +version = "0.99.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", + "unicode-xid", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "document-features" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" +dependencies = [ + "litrs", +] + +[[package]] +name = "dtoa" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" + +[[package]] +name = "dtoa-short" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" +dependencies = [ + "dtoa", +] + +[[package]] +name = "dtor" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97cbdf2ad6846025e8e25df05171abfb30e3ababa12ee0a0e44b9bbe570633a8" +dependencies = [ + "dtor-proc-macro", +] + +[[package]] +name = "dtor-proc-macro" +version = "0.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7454e41ff9012c00d53cf7f475c5e3afa3b91b7c90568495495e8d9bf47a1055" + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "dyn-clone" +version = "1.0.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" + +[[package]] +name = "either" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" + +[[package]] +name = "encode_unicode" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" + +[[package]] +name = "endian-type" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" + +[[package]] +name = "enum-iterator" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4eeac5c5edb79e4e39fe8439ef35207780a11f69c52cbe424ce3dfad4cb78de6" +dependencies = [ + "enum-iterator-derive", +] + +[[package]] +name = "enum-iterator-derive" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c134c37760b27a871ba422106eedbb8247da973a09e82558bf26d619c882b159" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "enumset" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6ee17054f550fd7400e1906e2f9356c7672643ed34008a9e8abe147ccd2d821" +dependencies = [ + "enumset_derive", +] + +[[package]] +name = "enumset_derive" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d07902c93376f1e96c34abc4d507c0911df3816cef50b01f5a2ff3ad8c370d" +dependencies = [ + "darling 0.20.11", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "errno" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +dependencies = [ + "libc", + "windows-sys 0.60.2", +] + +[[package]] +name = "fallible-iterator" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" + +[[package]] +name = "fancy-regex" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2" +dependencies = [ + "bit-set 0.5.3", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "fancy-regex" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf04c5ec15464ace8355a7b440a33aece288993475556d461154d7a62ad9947c" +dependencies = [ + "bit-set 0.8.0", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "fast-glob" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39ea3f6bbcf4dbe2076b372186fc7aeecd5f6f84754582e56ee7db262b15a6f0" +dependencies = [ + "arrayvec", +] + +[[package]] +name = "fastrand" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" + +[[package]] +name = "filetime" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +dependencies = [ + "cfg-if", + "libc", + "libredox", + "windows-sys 0.59.0", +] + +[[package]] +name = "fixedbitset" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" + +[[package]] +name = "flate2" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" +dependencies = [ + "crc32fast", + "miniz_oxide 0.8.9", +] + +[[package]] +name = "float-cmp" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b09cf3155332e944990140d967ff5eceb70df778b34f77d8075db46e4704e6d8" +dependencies = [ + "num-traits", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "from_variant" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "308530a56b099da144ebc5d8e179f343ad928fa2b3558d1eb3db9af18d6eff43" +dependencies = [ + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-executor" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-macro" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + +[[package]] +name = "futures-task" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" + +[[package]] +name = "futures-util" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.11.1+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "getrandom" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasi 0.14.2+wasi-0.2.4", +] + +[[package]] +name = "gimli" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +dependencies = [ + "fallible-iterator", + "indexmap 2.10.0", + "stable_deref_trait", +] + +[[package]] +name = "gimli" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" + +[[package]] +name = "glob" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" + +[[package]] +name = "globset" +version = "0.4.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" +dependencies = [ + "aho-corasick", + "bstr", + "log", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "half" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +dependencies = [ + "cfg-if", + "crunchy", +] + +[[package]] +name = "halfbrown" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8588661a8607108a5ca69cab034063441a0413a0b041c13618a7dd348021ef6f" +dependencies = [ + "hashbrown 0.14.5", + "serde", +] + +[[package]] +name = "handlebars" +version = "6.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759e2d5aea3287cb1190c8ec394f42866cb5bf74fcbf213f354e3c856ea26098" +dependencies = [ + "derive_builder 0.20.2", + "log", + "num-order", + "pest", + "pest_derive", + "serde", + "serde_json", + "thiserror 2.0.12", +] + +[[package]] +name = "hash32" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" +dependencies = [ + "byteorder", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.8", +] + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +dependencies = [ + "ahash 0.8.12", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash 0.8.12", + "allocator-api2", +] + +[[package]] +name = "hashbrown" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] + +[[package]] +name = "hashlink" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" +dependencies = [ + "hashbrown 0.15.4", +] + +[[package]] +name = "heapless" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" +dependencies = [ + "hash32", + "stable_deref_trait", +] + +[[package]] +name = "heck" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "hstr" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4933df6fceb5d21a21e9fb5b46e572a83be4108e5b544de7ebe87cc1245b5d23" +dependencies = [ + "hashbrown 0.14.5", + "new_debug_unreachable", + "once_cell", + "rustc-hash 2.1.1", + "triomphe", +] + +[[package]] +name = "html-escape" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d1ad449764d627e22bfd7cd5e8868264fc9236e07c752972b4080cd351cb476" +dependencies = [ + "utf8-width", +] + +[[package]] +name = "http" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "icu_collections" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +dependencies = [ + "displaydoc", + "potential_utf", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locale_core" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_normalizer" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" + +[[package]] +name = "icu_properties" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locale_core", + "icu_properties_data", + "icu_provider", + "potential_utf", + "zerotrie", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" + +[[package]] +name = "icu_provider" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +dependencies = [ + "displaydoc", + "icu_locale_core", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerotrie", + "zerovec", +] + +[[package]] +name = "id-arena" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + +[[package]] +name = "if_chain" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" + +[[package]] +name = "ignore" +version = "0.4.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" +dependencies = [ + "crossbeam-deque", + "globset", + "log", + "memchr", + "regex-automata 0.4.9", + "same-file", + "walkdir", + "winapi-util", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" +dependencies = [ + "equivalent", + "hashbrown 0.15.4", + "rayon", + "serde", +] + +[[package]] +name = "indicatif" +version = "0.17.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" +dependencies = [ + "console", + "number_prefix", + "portable-atomic", + "unicode-width 0.2.1", + "web-time", +] + +[[package]] +name = "indoc" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" + +[[package]] +name = "inotify" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" +dependencies = [ + "bitflags 2.9.1", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "insta" +version = "1.43.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "154934ea70c58054b556dd430b99a98c2a7ff5309ac9891597e339b5c28f4371" +dependencies = [ + "console", + "once_cell", + "regex", + "serde", + "similar", +] + +[[package]] +name = "inventory" +version = "0.3.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" +dependencies = [ + "rustversion", +] + +[[package]] +name = "io-uring" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" +dependencies = [ + "bitflags 2.9.1", + "cfg-if", + "libc", +] + +[[package]] +name = "ipnet" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" + +[[package]] +name = "iprange" +version = "0.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37209be0ad225457e63814401415e748e2453a5297f9b637338f5fb8afa4ec00" +dependencies = [ + "ipnet", +] + +[[package]] +name = "is-macro" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d57a3e447e24c22647738e4607f1df1e0ec6f72e16182c4cd199f647cdfb0e4" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "is_ci" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7655c9839580ee829dfacba1d1278c2b7883e50a277ff7541299489d6bdfdc45" + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + +[[package]] +name = "js-sys" +version = "0.3.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "json" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd" + +[[package]] +name = "json-strip-comments" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b271732a960335e715b6b2ae66a086f115c74eb97360e996d2bd809bfc063bba" +dependencies = [ + "memchr", +] + +[[package]] +name = "jsonc-parser" +version = "0.26.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b558af6b49fd918e970471374e7a798b2c9bbcda624a210ffa3901ee5614bc8e" +dependencies = [ + "serde_json", +] + +[[package]] +name = "kqueue" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac30106d7dce88daf4a3fcb4879ea939476d5074a9b7ddd0fb97fa4bed5596a" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "leb128" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" + +[[package]] +name = "leb128fmt" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" + +[[package]] +name = "lexical-sort" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c09e4591611e231daf4d4c685a66cb0410cc1e502027a20ae55f2bb9e997207a" +dependencies = [ + "any_ascii", +] + +[[package]] +name = "libc" +version = "0.2.174" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" + +[[package]] +name = "libloading" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" +dependencies = [ + "cfg-if", + "windows-targets 0.53.2", +] + +[[package]] +name = "libredox" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4488594b9328dee448adb906d8b126d9b7deb7cf5c22161ee591610bb1be83c0" +dependencies = [ + "bitflags 2.9.1", + "libc", + "redox_syscall", +] + +[[package]] +name = "libunwind" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c6639b70a7ce854b79c70d7e83f16b5dc0137cc914f3d7d03803b513ecc67ac" + +[[package]] +name = "libyml" +version = "0.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3302702afa434ffa30847a83305f0a69d6abd74293b6554c18ec85c7ef30c980" +dependencies = [ + "anyhow", + "version_check", +] + +[[package]] +name = "lightningcss" +version = "1.0.0-alpha.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c84f971730745f4aaac013b6cf4328baf1548efc973c0d95cfd843a3c1ca07af" +dependencies = [ + "ahash 0.8.12", + "bitflags 2.9.1", + "const-str", + "cssparser", + "cssparser-color", + "data-encoding", + "getrandom 0.2.16", + "indexmap 2.10.0", + "itertools 0.10.5", + "lazy_static", + "lightningcss-derive", + "parcel_selectors", + "parcel_sourcemap", + "paste", + "pathdiff", + "serde", + "smallvec", + "static-self", +] + +[[package]] +name = "lightningcss-derive" +version = "1.0.0-alpha.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84c12744d1279367caed41739ef094c325d53fb0ffcd4f9b84a368796f870252" +dependencies = [ + "convert_case 0.6.0", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linked_hash_set" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bae85b5be22d9843c80e5fc80e9b64c8a3b1f98f867c709956eca3efff4e92e2" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" + +[[package]] +name = "linux-raw-sys" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" + +[[package]] +name = "litemap" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" + +[[package]] +name = "litrs" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + +[[package]] +name = "lock_api" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" + +[[package]] +name = "lru" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "718e8fae447df0c7e1ba7f5189829e63fd536945c8988d61444c19039f16b670" +dependencies = [ + "hashbrown 0.13.2", +] + +[[package]] +name = "lz4_flex" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08ab2867e3eeeca90e844d1940eab391c9dc5228783db2ed999acbc0a9ed375a" +dependencies = [ + "twox-hash 2.1.1", +] + +[[package]] +name = "mach2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" +dependencies = [ + "libc", +] + +[[package]] +name = "macho-unwind-info" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb4bdc8b0ce69932332cf76d24af69c3a155242af95c226b2ab6c2e371ed1149" +dependencies = [ + "thiserror 2.0.12", + "zerocopy", + "zerocopy-derive", +] + +[[package]] +name = "managed" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d" + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + +[[package]] +name = "md4" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da5ac363534dce5fabf69949225e174fbf111a498bf0ff794c8ea1fba9f3dda" +dependencies = [ + "digest", +] + +[[package]] +name = "memchr" +version = "2.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" + +[[package]] +name = "memmap2" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d28bba84adfe6646737845bc5ebbfa2c08424eb1c37e94a1fd2a82adb56a872" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "micromegas-perfetto" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf00fa025e680c9ac4fef886b4448d3cd6eaa6afa09946ff8fcb67f15c73f73c" +dependencies = [ + "anyhow", + "prost", + "xxhash-rust", +] + +[[package]] +name = "miette" +version = "7.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f98efec8807c63c752b5bd61f862c165c115b0a35685bdcfd9238c7aeb592b7" +dependencies = [ + "backtrace", + "backtrace-ext", + "cfg-if", + "miette-derive", + "owo-colors", + "supports-color", + "supports-hyperlinks", + "supports-unicode", + "terminal_size 0.4.2", + "textwrap", + "unicode-width 0.1.14", +] + +[[package]] +name = "miette-derive" +version = "7.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db5b29714e950dbb20d5e6f74f9dcec4edbcc1067bb7f8ed198c097b8c1a818b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "mimalloc-rspack" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de20bb33bf95d9c060030d53bcb5d5dc03cbbedfbd1dcda5f6f285b946dae2c0" +dependencies = [ + "rspack-libmimalloc-sys", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "mime_guess" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" +dependencies = [ + "mime", + "unicase", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" +dependencies = [ + "adler", +] + +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", +] + +[[package]] +name = "mio" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" +dependencies = [ + "libc", + "log", + "wasi 0.11.1+wasi-snapshot-preview1", + "windows-sys 0.59.0", +] + +[[package]] +name = "more-asserts" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" + +[[package]] +name = "munge" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cce144fab80fbb74ec5b89d1ca9d41ddf6b644ab7e986f7d3ed0aab31625cb1" +dependencies = [ + "munge_macro", +] + +[[package]] +name = "munge_macro" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "574af9cd5b9971cbfdf535d6a8d533778481b241c447826d976101e0149392a1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "napi" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82f391d2bc1f67f5f52ebd895fabe526d7ef9381dc499a2be90780d6f246eb79" +dependencies = [ + "anyhow", + "bitflags 2.9.1", + "ctor", + "napi-build", + "napi-sys", + "nohash-hasher", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "tokio", +] + +[[package]] +name = "napi-build" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fff539e61c5e3dd4d7d283610662f5d672c2aea0f158df78af694f13dbb3287b" + +[[package]] +name = "napi-derive" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43e61844e0c0bb81e711f2084abe7cff187b03ca21ff8b000cb59bbda61e15a9" +dependencies = [ + "convert_case 0.8.0", + "ctor", + "napi-derive-backend", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "napi-derive-backend" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7ab19e9b98efb13895f492a2e367ca50c955ac3c4723613af73fdda4011afcc" +dependencies = [ + "convert_case 0.8.0", + "proc-macro2", + "quote", + "semver", + "syn 2.0.104", +] + +[[package]] +name = "napi-sys" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e4e7135a8f97aa0f1509cce21a8a1f9dcec1b50d8dee006b48a5adb69a9d64d" +dependencies = [ + "libloading", +] + +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + +[[package]] +name = "next-rspack-binding" +version = "0.0.0" +dependencies = [ + "napi", + "napi-derive", + "once_cell", + "regex", + "rspack_binding_build", + "rspack_binding_builder", + "rspack_binding_builder_macros", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_plugin_externals", + "rspack_regex", + "rspack_sources", + "rustc-hash 2.1.1", +] + +[[package]] +name = "nibble_vec" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" +dependencies = [ + "smallvec", +] + +[[package]] +name = "nohash-hasher" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" + +[[package]] +name = "nom" +version = "5.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08959a387a676302eebf4ddbcbc611da04285579f76f88ee0506c63b1a61dd4b" +dependencies = [ + "memchr", + "version_check", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "normpath" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a9da8c9922c35a1033d76f7272dfc2e7ee20392083d75aeea6ced23c6266578" +dependencies = [ + "winapi", +] + +[[package]] +name = "notify" +version = "8.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3163f59cd3fa0e9ef8c32f242966a7b9994fd7378366099593e0e73077cd8c97" +dependencies = [ + "bitflags 2.9.1", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "log", + "mio", + "notify-types", + "walkdir", + "windows-sys 0.60.2", +] + +[[package]] +name = "notify-types" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", + "serde", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-modular" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17bb261bf36fa7d83f4c294f834e91256769097b3cb505d44831e0a179ac647f" + +[[package]] +name = "num-order" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "537b596b97c40fcf8056d153049eb22f481c17ebce72a513ec9286e4986d1bb6" +dependencies = [ + "num-modular", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" +dependencies = [ + "num_enum_derive", + "rustversion", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "num_threads" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" +dependencies = [ + "libc", +] + +[[package]] +name = "number_prefix" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + +[[package]] +name = "object" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +dependencies = [ + "crc32fast", + "flate2", + "hashbrown 0.14.5", + "indexmap 2.10.0", + "memchr", + "ruzstd", +] + +[[package]] +name = "object" +version = "0.36.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" + +[[package]] +name = "oneshot" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e296cf87e61c9cfc1a61c3c63a0f7f286ed4554e0e22be84e8a38e1d264a2a29" + +[[package]] +name = "outref" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4" + +[[package]] +name = "outref" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" + +[[package]] +name = "owo-colors" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48dd4f4a2c8405440fd0462561f0e5806bd0f77e86f51c761481bdd4018b545e" + +[[package]] +name = "par-core" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e96cbd21255b7fb29a5d51ef38a779b517a91abd59e2756c039583f43ef4c90f" +dependencies = [ + "once_cell", + "rayon", +] + +[[package]] +name = "par-iter" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3eae0176a010bb94b9a67f0eb9da0fd31410817d58850649c54f485124c9a71a" +dependencies = [ + "either", + "par-core", +] + +[[package]] +name = "parcel_selectors" +version = "0.28.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54fd03f1ad26cb6b3ec1b7414fa78a3bd639e7dbb421b1a60513c96ce886a196" +dependencies = [ + "bitflags 2.9.1", + "cssparser", + "log", + "phf", + "phf_codegen", + "precomputed-hash", + "rustc-hash 2.1.1", + "serde", + "smallvec", + "static-self", +] + +[[package]] +name = "parcel_sourcemap" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "485b74d7218068b2b7c0e3ff12fbc61ae11d57cb5d8224f525bd304c6be05bbb" +dependencies = [ + "base64-simd 0.7.0", + "data-url", + "rkyv 0.7.45", + "serde", + "serde_json", + "vlq", +] + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "path-clean" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecba01bf2678719532c5e3059e0b5f0811273d94b397088b82e3bd0a78c78fdd" + +[[package]] +name = "path-clean" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" + +[[package]] +name = "path-slash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" + +[[package]] +name = "pathdiff" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3" +dependencies = [ + "camino", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pest" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" +dependencies = [ + "memchr", + "thiserror 2.0.12", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb056d9e8ea77922845ec74a1c4e8fb17e7c218cc4fc11a15c5d25e189aa40bc" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87e404e638f781eb3202dc82db6760c8ae8a1eeef7fb3fa8264b2ef280504966" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "pest_meta" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edd1101f170f5903fde0914f899bb503d9ff5271d7ba76bbb70bea63690cc0d5" +dependencies = [ + "pest", + "sha2", +] + +[[package]] +name = "petgraph" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" +dependencies = [ + "fixedbitset", + "indexmap 2.10.0", +] + +[[package]] +name = "phf" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +dependencies = [ + "phf_macros", + "phf_shared", +] + +[[package]] +name = "phf_codegen" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" +dependencies = [ + "phf_generator", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +dependencies = [ + "phf_shared", + "rand", +] + +[[package]] +name = "phf_macros" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +dependencies = [ + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher 1.0.1", +] + +[[package]] +name = "pin-project" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pnp" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6add7fe3063e1c9b9a2b9780fba7047187617a37823a6541a62160f4e972cc91" +dependencies = [ + "arca", + "byteorder", + "clean-path", + "concurrent_lru", + "fancy-regex 0.13.0", + "indexmap 2.10.0", + "lazy_static", + "miniz_oxide 0.7.4", + "path-slash", + "pathdiff", + "radix_trie", + "regex", + "serde", + "serde_json", + "serde_with", + "thiserror 2.0.12", +] + +[[package]] +name = "pnp" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e001eb06e9523653f2a88adb94e286ef5d7acfe64158b21bf57a6f6bc3ba65ca" +dependencies = [ + "byteorder", + "clean-path", + "concurrent_lru", + "fancy-regex 0.16.1", + "miniz_oxide 0.8.9", + "path-slash", + "pathdiff", + "radix_trie", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "thiserror 2.0.12", +] + +[[package]] +name = "portable-atomic" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" + +[[package]] +name = "potential_utf" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +dependencies = [ + "zerovec", +] + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + +[[package]] +name = "precomputed-map" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84350ffee5cedfabf9bee3e8825721f651da8ff79d50fe7a37cf0ca015c428ee" + +[[package]] +name = "preset_env_base" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e82699979593636125cbeeedaf538d11f3dc4645287bbd594041404ad4a88a" +dependencies = [ + "anyhow", + "browserslist-rs", + "dashmap 5.5.3", + "from_variant", + "once_cell", + "rustc-hash 2.1.1", + "semver", + "serde", + "st-map", + "tracing", +] + +[[package]] +name = "prettyplease" +version = "0.2.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061c1221631e079b26479d25bbf2275bfe5917ae8419cd7e34f13bfc2aa7539a" +dependencies = [ + "proc-macro2", + "syn 2.0.104", +] + +[[package]] +name = "proc-macro-crate" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +dependencies = [ + "toml_edit", +] + +[[package]] +name = "proc-macro-error-attr2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "proc-macro-error2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +dependencies = [ + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "proc-macro2" +version = "1.0.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "prost" +version = "0.13.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +dependencies = [ + "bytes", + "prost-derive", +] + +[[package]] +name = "prost-derive" +version = "0.13.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +dependencies = [ + "anyhow", + "itertools 0.14.0", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "psm" +version = "0.1.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e944464ec8536cd1beb0bbfd96987eb5e3b72f2ecdafdc5c769a37f1fa2ae1f" +dependencies = [ + "cc", +] + +[[package]] +name = "ptr_meta" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" +dependencies = [ + "ptr_meta_derive 0.1.4", +] + +[[package]] +name = "ptr_meta" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" +dependencies = [ + "ptr_meta_derive 0.3.0", +] + +[[package]] +name = "ptr_meta_derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ptr_meta_derive" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "pulldown-cmark" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffade02495f22453cd593159ea2f59827aae7f53fa8323f756799b670881dcf8" +dependencies = [ + "bitflags 1.3.2", + "memchr", + "unicase", +] + +[[package]] +name = "quote" +version = "1.0.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "radix_fmt" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce082a9940a7ace2ad4a8b7d0b1eac6aa378895f18be598230c5f2284ac05426" + +[[package]] +name = "radix_trie" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" +dependencies = [ + "endian-type", + "nibble_vec", +] + +[[package]] +name = "rancor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" +dependencies = [ + "ptr_meta 0.3.0", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.16", +] + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "redox_syscall" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6" +dependencies = [ + "bitflags 2.9.1", +] + +[[package]] +name = "ref-cast" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "regalloc2" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad156d539c879b7a24a363a2016d77961786e71f48f2e2fc8302a92abd2429a6" +dependencies = [ + "hashbrown 0.13.2", + "log", + "rustc-hash 1.1.0", + "slice-group-by", + "smallvec", +] + +[[package]] +name = "regex" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "region" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6b6ebd13bc009aef9cd476c1310d49ac354d36e240cf1bd753290f3dc7199a7" +dependencies = [ + "bitflags 1.3.2", + "libc", + "mach2", + "windows-sys 0.52.0", +] + +[[package]] +name = "regress" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "145bb27393fe455dd64d6cbc8d059adfa392590a45eadf079c01b11857e7b010" +dependencies = [ + "hashbrown 0.15.4", + "memchr", +] + +[[package]] +name = "rend" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +dependencies = [ + "bytecheck 0.6.12", +] + +[[package]] +name = "rend" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" +dependencies = [ + "bytecheck 0.8.1", +] + +[[package]] +name = "replace_with" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51743d3e274e2b18df81c4dc6caf8a5b8e15dbe799e0dca05c7617380094e884" + +[[package]] +name = "rkyv" +version = "0.7.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" +dependencies = [ + "bitvec", + "bytecheck 0.6.12", + "bytes", + "hashbrown 0.12.3", + "ptr_meta 0.1.4", + "rend 0.4.2", + "rkyv_derive 0.7.45", + "seahash", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "395027076c569819ea6035ee62e664f5e03d74e281744f55261dd1afd939212b" +dependencies = [ + "bytecheck 0.8.1", + "bytes", + "hashbrown 0.14.5", + "indexmap 2.10.0", + "munge", + "ptr_meta 0.3.0", + "rancor", + "rend 0.5.2", + "rkyv_derive 0.8.8", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv_derive" +version = "0.7.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "rkyv_derive" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cb82b74b4810f07e460852c32f522e979787691b0b7b7439fe473e49d49b2f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "ropey" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93411e420bcd1a75ddd1dc3caf18c23155eda2c090631a85af21ba19e97093b5" +dependencies = [ + "smallvec", + "str_indices", +] + +[[package]] +name = "rspack-libmimalloc-sys" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c741844b1fbe0cfbae8dfeb73b5e5fdc95daf7be58bdd72afb3fd85c86bccdb" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "rspack_allocator" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa88e63457ac0506093cd69866cc03e867813713b8baf2f344416938e9baaccd" +dependencies = [ + "mimalloc-rspack", +] + +[[package]] +name = "rspack_base64" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6757eddfb933fe4d217287b1ea51ae0d19d203c9e0663fd7b30cd94b91928c55" +dependencies = [ + "base64-simd 0.8.0", + "regex", +] + +[[package]] +name = "rspack_binding_api" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "633433b9aa019c62307e74db5dab5310907373a2eeee0f7ed860a35663a4a945" +dependencies = [ + "anyhow", + "async-trait", + "browserslist-rs", + "cow-utils", + "derive_more 2.0.1", + "futures", + "glob", + "heck 0.5.0", + "napi", + "napi-derive", + "once_cell", + "parking_lot", + "rayon", + "ropey", + "rspack_allocator", + "rspack_browserslist", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_fs", + "rspack_hash", + "rspack_hook", + "rspack_ids", + "rspack_javascript_compiler", + "rspack_loader_lightningcss", + "rspack_loader_preact_refresh", + "rspack_loader_react_refresh", + "rspack_loader_runner", + "rspack_loader_swc", + "rspack_loader_testing", + "rspack_napi", + "rspack_napi_macros", + "rspack_paths", + "rspack_plugin_asset", + "rspack_plugin_banner", + "rspack_plugin_circular_dependencies", + "rspack_plugin_context_replacement", + "rspack_plugin_copy", + "rspack_plugin_css", + "rspack_plugin_css_chunking", + "rspack_plugin_devtool", + "rspack_plugin_dll", + "rspack_plugin_dynamic_entry", + "rspack_plugin_ensure_chunk_conditions", + "rspack_plugin_entry", + "rspack_plugin_externals", + "rspack_plugin_extract_css", + "rspack_plugin_hmr", + "rspack_plugin_html", + "rspack_plugin_ignore", + "rspack_plugin_javascript", + "rspack_plugin_json", + "rspack_plugin_lazy_compilation", + "rspack_plugin_library", + "rspack_plugin_lightning_css_minimizer", + "rspack_plugin_limit_chunk_count", + "rspack_plugin_merge_duplicate_chunks", + "rspack_plugin_mf", + "rspack_plugin_module_info_header", + "rspack_plugin_no_emit_on_errors", + "rspack_plugin_progress", + "rspack_plugin_real_content_hash", + "rspack_plugin_remove_duplicate_modules", + "rspack_plugin_remove_empty_chunks", + "rspack_plugin_rsdoctor", + "rspack_plugin_rslib", + "rspack_plugin_rstest", + "rspack_plugin_runtime", + "rspack_plugin_runtime_chunk", + "rspack_plugin_schemes", + "rspack_plugin_size_limits", + "rspack_plugin_split_chunks", + "rspack_plugin_sri", + "rspack_plugin_swc_js_minimizer", + "rspack_plugin_warn_sensitive_module", + "rspack_plugin_wasm", + "rspack_plugin_web_worker_template", + "rspack_plugin_worker", + "rspack_regex", + "rspack_tasks", + "rspack_tracing", + "rspack_util", + "rspack_workspace", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_core", + "tokio", + "tracing", + "tracing-subscriber", + "ustr-fxhash", +] + +[[package]] +name = "rspack_binding_build" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a867e432cc8e8861d2ee5730bfd41ba858826f046f2a061c248ba5376c225443" +dependencies = [ + "napi-build", +] + +[[package]] +name = "rspack_binding_builder" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32abfac3741a0b68c843ae9909ada330f52125fad4f784723019c8ce917d281b" +dependencies = [ + "rspack_binding_api", +] + +[[package]] +name = "rspack_binding_builder_macros" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "612bec1490452c3f597741e37a5484843a5c201b771b42e1006a9c2848c27b6c" +dependencies = [ + "proc-macro2", + "quote", + "rspack_binding_builder", + "syn 2.0.104", +] + +[[package]] +name = "rspack_browserslist" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af7dd657a1a0b5e9defcb485cfd60dccd8f0e00f813b79c7698e46a7f34c5593" +dependencies = [ + "browserslist-rs", + "lightningcss", + "regex", +] + +[[package]] +name = "rspack_cacheable" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "015f2308a81c661ca409ad93cf5fede4a8f035d877aa6edd210b134728c93eaf" +dependencies = [ + "camino", + "dashmap 6.1.0", + "hashlink", + "indexmap 2.10.0", + "inventory", + "json", + "lightningcss", + "once_cell", + "rkyv 0.8.8", + "rspack_macros", + "rspack_resolver", + "rspack_sources", + "serde_json", + "smol_str", + "swc_core", + "ustr-fxhash", + "xxhash-rust", +] + +[[package]] +name = "rspack_collections" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d146c501b9e3503e0e98ed70c82239410cbe9b16a46ff76403a16655e939fe0e" +dependencies = [ + "dashmap 6.1.0", + "hashlink", + "indexmap 2.10.0", + "rayon", + "rspack_cacheable", + "serde", + "ustr-fxhash", +] + +[[package]] +name = "rspack_core" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68f37e1edd43075515bf1907761dca472e4ef03a45c823e27ff9cb63063c5d9d" +dependencies = [ + "anymap3", + "async-recursion", + "async-trait", + "bitflags 2.9.1", + "cow-utils", + "dashmap 6.1.0", + "derive_more 2.0.1", + "dyn-clone", + "either", + "futures", + "hashlink", + "hex", + "indexmap 2.10.0", + "indoc", + "itertools 0.14.0", + "json", + "mime_guess", + "napi", + "num-bigint", + "once_cell", + "paste", + "rayon", + "regex", + "rkyv 0.8.8", + "ropey", + "rspack_base64", + "rspack_cacheable", + "rspack_collections", + "rspack_dojang", + "rspack_error", + "rspack_fs", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_javascript_compiler", + "rspack_loader_runner", + "rspack_location", + "rspack_macros", + "rspack_napi", + "rspack_paths", + "rspack_regex", + "rspack_resolver", + "rspack_sources", + "rspack_storage", + "rspack_tasks", + "rspack_util", + "rspack_workspace", + "rustc-hash 2.1.1", + "scopeguard", + "serde", + "serde_json", + "sugar_path", + "swc_core", + "swc_node_comments", + "tokio", + "tracing", + "ustr-fxhash", +] + +[[package]] +name = "rspack_dojang" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9803670afdceac77551ca44c99b9a63c78e77848bc1d5db11d5a9975a290486e" +dependencies = [ + "html-escape", + "serde_json", +] + +[[package]] +name = "rspack_error" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3eed5d2301c7d4f3e863a56639c7b7328591b2349a8ce3aeaa10d40952a95f41" +dependencies = [ + "anyhow", + "cow-utils", + "derive_more 2.0.1", + "futures", + "miette", + "once_cell", + "owo-colors", + "rspack_cacheable", + "rspack_collections", + "rspack_location", + "rspack_paths", + "serde_json", + "swc_core", + "termcolor", + "textwrap", + "thiserror 1.0.69", + "unicode-width 0.2.1", +] + +[[package]] +name = "rspack_fs" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e8c3a3048f15ca00041c6e03d6c2ff4767ec97c01a92f4c9202ef9b4ce2003" +dependencies = [ + "async-trait", + "cfg-if", + "dashmap 6.1.0", + "dunce", + "notify", + "pnp 0.9.4", + "rspack_error", + "rspack_paths", + "rspack_util", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_futures" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed166cdaa1d1e32908370caac06460f0e2f98c6be8ea887fab8d2d11f6fd22f2" +dependencies = [ + "rspack_tasks", + "tokio", +] + +[[package]] +name = "rspack_hash" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad5c85eeccfd376381bd53e75e2c55d726e4958b44f1db9dbb4362e24882d691" +dependencies = [ + "md4", + "rspack_cacheable", + "sha2", + "smol_str", + "xxhash-rust", +] + +[[package]] +name = "rspack_hook" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ee0602ae21e4b1957ea854c71d14badcd3e126873274dbcc85a9a392b3cc766" +dependencies = [ + "async-trait", + "rspack_error", + "rspack_macros", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_ids" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e526478b685cbc3d889919e07a8c7fc6dce4cae8eead442418156fd4be761c8" +dependencies = [ + "itertools 0.14.0", + "rayon", + "regex", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_util", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_javascript_compiler" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0214c53d0c708b306da908324cd98313420324869e4e7d795f09e04de3680ff2" +dependencies = [ + "anyhow", + "base64", + "indoc", + "jsonc-parser", + "rspack_cacheable", + "rspack_error", + "rspack_sources", + "rspack_util", + "rspack_workspace", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "stacker", + "swc_config", + "swc_core", + "swc_ecma_minifier", + "swc_error_reporters", + "swc_node_comments", + "url", +] + +[[package]] +name = "rspack_loader_lightningcss" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69f554eb812c46d1ef8a4db5501d60e604f4e218a579171a135e77260da038f7" +dependencies = [ + "async-trait", + "derive_more 2.0.1", + "lightningcss", + "parcel_sourcemap", + "rspack_browserslist", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_loader_runner", + "serde", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_loader_preact_refresh" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90b4da1de00dd8403075f5c5f86ee0676c4a534e49e5eacfe11d2230816aba74" +dependencies = [ + "async-trait", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_loader_runner", + "tracing", +] + +[[package]] +name = "rspack_loader_react_refresh" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea772f629b00f5c9c3838d50f667db59e7c2b9f0856a686be1e5a0f8a1c14ebf" +dependencies = [ + "async-trait", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_loader_runner", + "tracing", +] + +[[package]] +name = "rspack_loader_runner" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c55a622d4f471613f28d1fab984cb570b924d474aea658f0aeab0c936c378c5e" +dependencies = [ + "anymap3", + "async-trait", + "derive_more 2.0.1", + "once_cell", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_error", + "rspack_fs", + "rspack_paths", + "rspack_sources", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_loader_swc" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7672e35e4fd495dec9c00031bc83027a6148bc0bc52a90cf0b69c10cddd877a" +dependencies = [ + "async-trait", + "either", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_javascript_compiler", + "rspack_loader_runner", + "rspack_swc_plugin_import", + "rspack_swc_plugin_ts_collector", + "rspack_workspace", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "stacker", + "swc", + "swc_config", + "swc_core", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_loader_testing" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15f93556bd19da088b167ca2916c1629d4c3219fb7042869890ae48cbd12d25e" +dependencies = [ + "async-trait", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_loader_runner", + "serde_json", +] + +[[package]] +name = "rspack_location" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8dd370e51e426d45c67d96a7988cc17d44f82b214fdb9d2b7a8535b77cab425" +dependencies = [ + "itoa", + "rspack_cacheable", + "swc_core", +] + +[[package]] +name = "rspack_macros" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd3ffdcf2a4627cd364b8ad4745be427ed5e3d9d805cc2c55b03580c0164011c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "rspack_napi" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc238605490cb71b0bc98467409e8bed981178ce2c6e6c6ea55d3205eea2db2c" +dependencies = [ + "napi", + "oneshot", + "rspack_error", + "serde_json", + "tokio", +] + +[[package]] +name = "rspack_napi_macros" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad1ab72929cc98a4cbcacf5c66c73174dc31ed733770fb5bb26b04eb1172ba78" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "rspack_paths" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9914a0c8332ca7e32864b9a7deadb4238c587576118d003ccccad8f482044d0d" +dependencies = [ + "camino", + "rspack_cacheable", +] + +[[package]] +name = "rspack_plugin_asset" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20ca96bd67b7d9c71a0ac6a0ed836c2a28d8c07a8cf75e74ac1f98d663ceba3d" +dependencies = [ + "async-trait", + "mime_guess", + "rayon", + "rspack_base64", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_util", + "serde_json", + "tracing", + "urlencoding", +] + +[[package]] +name = "rspack_plugin_banner" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d81517000007da03d39dbdca9058f982dd5d560045604ebfe45bb1566008612a" +dependencies = [ + "cow-utils", + "futures", + "regex", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_util", + "tracing", +] + +[[package]] +name = "rspack_plugin_circular_dependencies" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d803e268b36b4dc4ec829c41ed46c2652d9e7e0ad4dd97dae6259bf4229453d" +dependencies = [ + "cow-utils", + "derive_more 2.0.1", + "futures", + "itertools 0.14.0", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_regex", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_context_replacement" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e32cc814e714d2d9dc2149623a15187a979bea5004fbb55192793840489acace" +dependencies = [ + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_paths", + "rspack_regex", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_copy" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d65af926c32578f929096378da32842b418cf045810bacb322619154529c0e3" +dependencies = [ + "dashmap 6.1.0", + "derive_more 2.0.1", + "futures", + "glob", + "pathdiff", + "regex", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_paths", + "rustc-hash 2.1.1", + "sugar_path", + "tracing", +] + +[[package]] +name = "rspack_plugin_css" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fc5ad7568ef56e401c71551c5ae63d0c278d1e6dce5eb7f7a4ec2f623e5ef" +dependencies = [ + "async-trait", + "cow-utils", + "css-module-lexer", + "heck 0.5.0", + "indexmap 2.10.0", + "once_cell", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_plugin_runtime", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "tokio", + "tracing", + "urlencoding", +] + +[[package]] +name = "rspack_plugin_css_chunking" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25e40ad8452f76f560bd339019d803975887293b8b065d6651d962086f33b27e" +dependencies = [ + "indexmap 2.10.0", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_plugin_css", + "rspack_regex", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_devtool" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daa8f054479e4aee040a971a4a3245c960aa8f4db1b2be109c04f81d99e5ef3c" +dependencies = [ + "async-trait", + "cow-utils", + "dashmap 6.1.0", + "derive_more 2.0.1", + "futures", + "itertools 0.14.0", + "rayon", + "regex", + "rspack_base64", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_plugin_javascript", + "rspack_util", + "rustc-hash 2.1.1", + "simd-json", + "sugar_path", + "tracing", +] + +[[package]] +name = "rspack_plugin_dll" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29c8572996117fd53717614b693d16a3020fd80be6c34029cc9d9817400a8db7" +dependencies = [ + "async-trait", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_paths", + "rspack_plugin_externals", + "rspack_util", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "tracing", +] + +[[package]] +name = "rspack_plugin_dynamic_entry" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c1d773c40d13f48a4e9b3c239cd07d9fda7d904ca68a3ad85d7570791120111" +dependencies = [ + "async-trait", + "derive_more 2.0.1", + "futures", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_util", + "tracing", +] + +[[package]] +name = "rspack_plugin_ensure_chunk_conditions" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d06ec662650c7c4bc035640da49b6be382d4600820080cb296c961f51a4db61a" +dependencies = [ + "rspack_core", + "rspack_error", + "rspack_hook", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_entry" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a450edce29c3089383a77bff69dfdb3b40e1bc8e847b261e3a38ea5b1910b3d9" +dependencies = [ + "async-trait", + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_plugin_externals" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63d24f995d1656413fbcea98882a1aff2adef5b2a81f8f98b6cde125ed8d05a2" +dependencies = [ + "regex", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_plugin_javascript", + "rspack_regex", + "tracing", +] + +[[package]] +name = "rspack_plugin_extract_css" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cffe5dc60ec7adfa8b28b13cbbe4ff4593685634c48cb1afc0ebe3a5317bacb" +dependencies = [ + "async-trait", + "cow-utils", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_paths", + "rspack_plugin_javascript", + "rspack_plugin_runtime", + "rspack_util", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "tokio", + "tracing", + "ustr-fxhash", +] + +[[package]] +name = "rspack_plugin_hmr" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0933a000985b927dda4588dac349b8a2850370dbb8478ac1f49014578120b68" +dependencies = [ + "async-trait", + "cow-utils", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_plugin_css", + "rspack_plugin_javascript", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_html" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d8a04c11ab1b63df4a691f176b7dab71cfd6d1e64cea439ce0c35d3a417f57c" +dependencies = [ + "anyhow", + "cow-utils", + "futures", + "itertools 0.14.0", + "path-clean 1.0.1", + "rayon", + "rspack_base64", + "rspack_core", + "rspack_dojang", + "rspack_error", + "rspack_hook", + "rspack_paths", + "rspack_util", + "serde", + "serde_json", + "sha2", + "sugar_path", + "swc_core", + "swc_html", + "swc_html_minifier", + "tokio", + "tracing", + "urlencoding", +] + +[[package]] +name = "rspack_plugin_ignore" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "def748adc05a7f546b0fc1202ab8434ea346aa656f05689438937f482ab29b54" +dependencies = [ + "derive_more 2.0.1", + "futures", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_regex", + "tracing", +] + +[[package]] +name = "rspack_plugin_javascript" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22882ef84d7cadf876604364c6f46faad23806eb20c928538319e815f2c31515" +dependencies = [ + "anymap3", + "async-trait", + "bitflags 2.9.1", + "cow-utils", + "either", + "fast-glob", + "indexmap 2.10.0", + "indoc", + "itertools 0.14.0", + "linked_hash_set", + "num-bigint", + "once_cell", + "rayon", + "regex", + "regress", + "ropey", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_ids", + "rspack_javascript_compiler", + "rspack_paths", + "rspack_regex", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "sugar_path", + "swc_core", + "swc_ecma_lexer", + "swc_node_comments", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "rspack_plugin_json" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6eb123c9ca7f053297e28a8015cb3c9e62d5c0fe916ac090cb9cf658d00bc1" +dependencies = [ + "async-trait", + "cow-utils", + "json", + "ropey", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_util", +] + +[[package]] +name = "rspack_plugin_lazy_compilation" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4e26ac1f450c593d769f5c40486db3e0315f41553cef78e216e9ef3bb287619" +dependencies = [ + "async-trait", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_plugin_javascript", + "rspack_regex", + "rspack_util", + "rustc-hash 2.1.1", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_library" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16f4346dc6b86fd0b1446558fd2d0c314d729805dd0284caab0bfec82d2e0071" +dependencies = [ + "async-trait", + "futures", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_plugin_javascript", + "rustc-hash 2.1.1", + "serde_json", + "swc_core", + "tracing", +] + +[[package]] +name = "rspack_plugin_lightning_css_minimizer" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05fefbfbface9e9061d079395975a7e5176bbc9ec84b15473f50517a8dd0908f" +dependencies = [ + "lightningcss", + "parcel_sourcemap", + "rayon", + "regex", + "ropey", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_util", + "tracing", +] + +[[package]] +name = "rspack_plugin_limit_chunk_count" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68c59553569d5b09b9b6af5fcf4081be2bf349b60972d0486c851f48da8367bc" +dependencies = [ + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_plugin_merge_duplicate_chunks" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3b06d9a2005acb0365889de02cdbdafdac26223de2f23c871bf4b87a4b5fa9c" +dependencies = [ + "rayon", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_mf" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e23427d124b73db76279135cbcd77844d51aa3e0c279de5b86d184de7ed52e5b" +dependencies = [ + "async-trait", + "camino", + "hashlink", + "itertools 0.14.0", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_fs", + "rspack_hash", + "rspack_hook", + "rspack_loader_runner", + "rspack_plugin_javascript", + "rspack_plugin_runtime", + "rspack_sources", + "rspack_util", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_module_info_header" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ea0b39e78847936a9b77dfaebeb2778eacffe3ec5872aac38c82e9e0115bfb" +dependencies = [ + "async-trait", + "regex", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_plugin_css", + "rspack_plugin_javascript", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_no_emit_on_errors" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08250c532394ba7398143df1d1640c0544ce29e8f6d78f81157b155a03b8658d" +dependencies = [ + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_plugin_progress" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f1b2e855c210a1494d34f5878a60325a2a02584ca13b482919cf27e5bf275d0" +dependencies = [ + "async-trait", + "futures", + "indicatif", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_real_content_hash" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fd01f3322699b9565272cd8976893512dc3698b7577e4fab6c05d5b04e96669" +dependencies = [ + "aho-corasick", + "derive_more 2.0.1", + "indexmap 2.10.0", + "once_cell", + "rayon", + "regex", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_util", + "rustc-hash 2.1.1", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_remove_duplicate_modules" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "360bd1253932fe60932d49da5f81ddd95ec3c95f01891dd1a17d7c8253d847ad" +dependencies = [ + "rspack_core", + "rspack_error", + "rspack_hook", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_remove_empty_chunks" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "060bfd3b260cb67390b439dfb2c3f28af5f7f20a88e1a2d573dfb3fdd913c8b8" +dependencies = [ + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_plugin_rsdoctor" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd0e88c24ce660fd8fc14c805605e875d65e3d031ea037a13141b930951cdc9d" +dependencies = [ + "async-trait", + "futures", + "indexmap 2.10.0", + "rayon", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_paths", + "rspack_util", + "rustc-hash 2.1.1", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_rslib" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08ec83bdf24e8144ecda0d82723f4a01ae2ba78e521581be1bee97f10fa4251" +dependencies = [ + "async-trait", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_plugin_javascript", + "swc_core", + "tracing", +] + +[[package]] +name = "rspack_plugin_rstest" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40f57ebeae1c72bf423dc46afe1416c37678652f0539481162e9a5289aee6f1" +dependencies = [ + "async-trait", + "camino", + "regex", + "rspack_cacheable", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_plugin_javascript", + "rspack_util", + "swc_core", + "tracing", +] + +[[package]] +name = "rspack_plugin_runtime" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19cf7111cadae5f00a5ac3529c7c6445af2704a72924890fb0526beaf4552622" +dependencies = [ + "async-trait", + "cow-utils", + "derive_more 2.0.1", + "futures", + "indexmap 2.10.0", + "itertools 0.14.0", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_plugin_javascript", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_plugin_runtime_chunk" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80ec602f46a848d3300fbbdeeb8e0de0a9a4f8acfd008fca3ca901cce59ab722" +dependencies = [ + "futures", + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_plugin_schemes" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bafb6aed15aea17f513a4521f0d6e9c4af6481bc923c35a6400226e252e1c9c6" +dependencies = [ + "anyhow", + "async-trait", + "cow-utils", + "once_cell", + "regex", + "rspack_base64", + "rspack_core", + "rspack_error", + "rspack_fs", + "rspack_hook", + "rspack_paths", + "rspack_util", + "serde", + "serde_json", + "sha2", + "tokio", + "tracing", + "url", + "urlencoding", +] + +[[package]] +name = "rspack_plugin_size_limits" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aede7128f5777dc8d974120619025fe16a673d47268f505b2aec560a12960cbe" +dependencies = [ + "derive_more 2.0.1", + "futures", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hook", + "rspack_util", + "tracing", +] + +[[package]] +name = "rspack_plugin_split_chunks" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d2573038dda777c27c148aae0e4a3bfdf642ea80f4d989b957189aae96d521c" +dependencies = [ + "dashmap 6.1.0", + "derive_more 2.0.1", + "futures", + "rayon", + "regex", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_futures", + "rspack_hash", + "rspack_hook", + "rspack_regex", + "rspack_util", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_sri" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3953a1acf665a07487298496a6d35ab3d58a66db89dc10a077f8296d53ef37f1" +dependencies = [ + "async-trait", + "cow-utils", + "derive_more 2.0.1", + "futures", + "indexmap 2.10.0", + "pathdiff", + "rayon", + "regex", + "rspack_base64", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_fs", + "rspack_hash", + "rspack_hook", + "rspack_paths", + "rspack_plugin_html", + "rspack_plugin_mf", + "rspack_plugin_real_content_hash", + "rspack_plugin_runtime", + "rspack_util", + "rustc-hash 2.1.1", + "serde_json", + "sha2", + "tokio", + "tracing", + "urlencoding", +] + +[[package]] +name = "rspack_plugin_swc_js_minimizer" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bd7ff5d41a967644052c535043f822c2de4bc20c91e61ef8d938ef98b7811d5" +dependencies = [ + "cow-utils", + "once_cell", + "rayon", + "regex", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_javascript_compiler", + "rspack_plugin_javascript", + "rspack_util", + "serde_json", + "swc_config", + "swc_core", + "swc_ecma_minifier", + "tracing", +] + +[[package]] +name = "rspack_plugin_warn_sensitive_module" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9926ccfe270ca833ecef0b062b9b592d098c6602faad9060880362dd0100ac45" +dependencies = [ + "cow-utils", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hook", + "rustc-hash 2.1.1", + "tracing", +] + +[[package]] +name = "rspack_plugin_wasm" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5a8c9db4673d601749270a6323b134b2c416806b4ead66cd955bfbb61e88812" +dependencies = [ + "async-trait", + "cow-utils", + "dashmap 6.1.0", + "indexmap 2.10.0", + "rayon", + "rspack_cacheable", + "rspack_collections", + "rspack_core", + "rspack_error", + "rspack_hash", + "rspack_hook", + "rspack_util", + "serde_json", + "swc_core", + "tokio", + "tracing", + "wasmparser 0.222.1", +] + +[[package]] +name = "rspack_plugin_web_worker_template" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "003a3077366d67ccd01fc421fe02498be42737316b2052c64f6e38b27c543151" +dependencies = [ + "rspack_core", + "rspack_plugin_runtime", +] + +[[package]] +name = "rspack_plugin_worker" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e665887c53162a7f4e3396cfd37043af9345e73373cc53eb5d7b762ced43dad0" +dependencies = [ + "rspack_core", + "rspack_error", + "rspack_hook", + "tracing", +] + +[[package]] +name = "rspack_regex" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9bd7d94039f3d32101584f89dbca0c8d8109f57afbd4dc1e5c7666c3a65f417" +dependencies = [ + "cow-utils", + "napi", + "regex-syntax 0.8.5", + "regress", + "rspack_cacheable", + "rspack_error", + "swc_core", +] + +[[package]] +name = "rspack_resolver" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbe5f72302219f584a16ffabdc8f89a4fc245d7c8b185df09db9fc11d55ac846" +dependencies = [ + "async-trait", + "cfg-if", + "dashmap 6.1.0", + "dunce", + "futures", + "indexmap 2.10.0", + "json-strip-comments", + "pnp 0.12.2", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "thiserror 1.0.69", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_sources" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36f2297ec566365aa29f1cc33c9c40db32789bc6116651f2b3e15d1f234b953b" +dependencies = [ + "dashmap 6.1.0", + "dyn-clone", + "itertools 0.13.0", + "memchr", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "simd-json", + "static_assertions", +] + +[[package]] +name = "rspack_storage" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2243f9e5c79d478112d80c4bb15e8708dc7376ad3056fc8e0ab4ac9c58564308" +dependencies = [ + "async-trait", + "cow-utils", + "futures", + "itertools 0.14.0", + "rayon", + "rspack_error", + "rspack_fs", + "rspack_paths", + "rustc-hash 2.1.1", + "tokio", + "tracing", +] + +[[package]] +name = "rspack_swc_plugin_import" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c9a6e8aa861bdfcc5ed00086a25ba0499a5814bb4bb1c0db297c8d23498e26" +dependencies = [ + "cow-utils", + "handlebars", + "heck 0.5.0", + "rustc-hash 2.1.1", + "serde", + "swc_core", +] + +[[package]] +name = "rspack_swc_plugin_ts_collector" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fa569cda9035b5de068a33c4070b4a81d711ab6e92a5cf04a245b16008feaa7" +dependencies = [ + "rustc-hash 2.1.1", + "swc_core", +] + +[[package]] +name = "rspack_tasks" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9bf0103222ffa867b45465389e28d99e4ddd6351f75d49fde369c0e3ab99780" +dependencies = [ + "tokio", +] + +[[package]] +name = "rspack_tracing" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff9c3eebbdb4f5494de9bc9d1f7b17798036b4182d419a6c991bd7efb1c5a04b" +dependencies = [ + "rspack_tracing_perfetto", + "tracing-subscriber", +] + +[[package]] +name = "rspack_tracing_perfetto" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "183a71dfe2f4c2fed1a0423a1f47211fac93ede244b22116cd456e86389e2261" +dependencies = [ + "bytes", + "micromegas-perfetto", + "prost", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "rspack_util" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aaeb4c610f914bbc8fa8fd0a0eac9004aae025b4e2e7ce2d21e3f90e97802a96" +dependencies = [ + "bitflags 2.9.1", + "concat-string", + "cow-utils", + "dashmap 6.1.0", + "indexmap 2.10.0", + "itoa", + "regex", + "ropey", + "rspack_cacheable", + "rspack_paths", + "rspack_regex", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "sugar_path", + "swc_config", + "swc_core", + "unicase", +] + +[[package]] +name = "rspack_workspace" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1982fd2c5f81ad7d2a73eb58c3db28cb32e39c0c3094cfd11d7c335d8ca130fb" + +[[package]] +name = "rustc-demangle" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc-hash" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" + +[[package]] +name = "rustix" +version = "0.38.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" +dependencies = [ + "bitflags 2.9.1", + "errno", + "libc", + "linux-raw-sys 0.4.15", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustix" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +dependencies = [ + "bitflags 2.9.1", + "errno", + "libc", + "linux-raw-sys 0.9.4", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustversion" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" + +[[package]] +name = "rusty_pool" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ed36cdb20de66d89a17ea04b8883fc7a386f2cf877aaedca5005583ce4876ff" +dependencies = [ + "crossbeam-channel", + "futures", + "futures-channel", + "futures-executor", + "num_cpus", +] + +[[package]] +name = "ruzstd" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c4eb8a81997cf040a091d1f7e1938aeab6749d3a0dfa73af43cdc32393483d" +dependencies = [ + "byteorder", + "derive_more 0.99.20", + "twox-hash 1.6.3", +] + +[[package]] +name = "ryu" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" + +[[package]] +name = "ryu-js" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15" + +[[package]] +name = "saffron" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03fb9a628596fc7590eb7edbf7b0613287be78df107f5f97b118aad59fb2eea9" +dependencies = [ + "chrono", + "nom 5.1.3", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schemars" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +dependencies = [ + "dyn-clone", + "indexmap 2.10.0", + "schemars_derive", + "serde", + "serde_json", + "url", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.104", +] + +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "seahash" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" + +[[package]] +name = "self_cell" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749" + +[[package]] +name = "semver" +version = "1.0.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +dependencies = [ + "serde", +] + +[[package]] +name = "seq-macro" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" + +[[package]] +name = "serde" +version = "1.0.219" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde-wasm-bindgen" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + +[[package]] +name = "serde_derive" +version = "1.0.219" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "serde_json" +version = "1.0.140" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +dependencies = [ + "indexmap 2.10.0", + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_with" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" +dependencies = [ + "base64", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.10.0", + "schemars 0.9.0", + "schemars 1.0.4", + "serde", + "serde_derive", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" +dependencies = [ + "darling 0.20.11", + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "serde_yml" +version = "0.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59e2dd588bf1597a252c3b920e0143eb99b0f76e4e082f4c92ce34fbc9e71ddd" +dependencies = [ + "indexmap 2.10.0", + "itoa", + "libyml", + "memchr", + "ryu", + "serde", + "version_check", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sha2" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shared-buffer" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6c99835bad52957e7aa241d3975ed17c1e5f8c92026377d117a606f36b84b16" +dependencies = [ + "bytes", + "memmap2", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "simd-abstraction" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987" +dependencies = [ + "outref 0.1.0", +] + +[[package]] +name = "simd-json" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2bcf6c6e164e81bc7a5d49fc6988b3d515d9e8c07457d7b74ffb9324b9cd40" +dependencies = [ + "getrandom 0.2.16", + "halfbrown", + "ref-cast", + "serde", + "serde_json", + "simdutf8", + "value-trait", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + +[[package]] +name = "similar" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "siphasher" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" + +[[package]] +name = "slab" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" + +[[package]] +name = "slice-group-by" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" + +[[package]] +name = "smallvec" +version = "1.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +dependencies = [ + "serde", +] + +[[package]] +name = "smartstring" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" +dependencies = [ + "autocfg", + "static_assertions", + "version_check", +] + +[[package]] +name = "smol_str" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d" + +[[package]] +name = "smoltcp" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee34c1e1bfc7e9206cc0fb8030a90129b4e319ab53856249bb27642cab914fb3" +dependencies = [ + "bitflags 1.3.2", + "byteorder", + "managed", +] + +[[package]] +name = "st-map" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8257dd592de7614be71a2342d36ba2d527ddad3f9a0c8d09d6ceed4c371531e4" +dependencies = [ + "arrayvec", + "static-map-macro", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "stacker" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cddb07e32ddb770749da91081d8d0ac3a16f1a569a18b20348cd371f5dead06b" +dependencies = [ + "cc", + "cfg-if", + "libc", + "psm", + "windows-sys 0.59.0", +] + +[[package]] +name = "static-map-macro" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "710e9696ef338691287aeb937ee6ffe60022f579d3c8d2fd9d58973a9a10a466" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "static-self" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6635404b73efc136af3a7956e53c53d4f34b2f16c95a15c438929add0f69412" +dependencies = [ + "indexmap 2.10.0", + "smallvec", + "static-self-derive", +] + +[[package]] +name = "static-self-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5268c96d4b907c558a9a52d8492522d6c7b559651a5e1d8f2d551e461b9425d5" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "str_indices" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d08889ec5408683408db66ad89e0e1f93dff55c73a4ccc71c427d5b277ee47e6" + +[[package]] +name = "string_enum" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae36a4951ca7bd1cfd991c241584a9824a70f6aff1e7d4f693fb3f2465e4030e" +dependencies = [ + "quote", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "sugar_path" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8230d5b8a65a6d4d4a7e5ee8dbdd9312ba447a8b8329689a390a0945d69b57ce" + +[[package]] +name = "supports-color" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c64fc7232dd8d2e4ac5ce4ef302b1d81e0b80d055b9d77c7c4f51f6aa4c867d6" +dependencies = [ + "is_ci", +] + +[[package]] +name = "supports-hyperlinks" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "804f44ed3c63152de6a9f90acbea1a110441de43006ea51bcce8f436196a288b" + +[[package]] +name = "supports-unicode" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7401a30af6cb5818bb64852270bb722533397edcfc7344954a38f420819ece2" + +[[package]] +name = "swc" +version = "32.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0311ddcb8726567da5e22e919b546cd61e385803f6212a0eaf759cc7757368a" +dependencies = [ + "anyhow", + "base64", + "bytes-str", + "dashmap 5.5.3", + "either", + "indexmap 2.10.0", + "jsonc-parser", + "once_cell", + "par-core", + "par-iter", + "parking_lot", + "regex", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "swc_compiler_base", + "swc_config", + "swc_ecma_ast", + "swc_ecma_codegen", + "swc_ecma_ext_transforms", + "swc_ecma_loader", + "swc_ecma_minifier", + "swc_ecma_parser", + "swc_ecma_preset_env", + "swc_ecma_transforms", + "swc_ecma_transforms_base", + "swc_ecma_transforms_compat", + "swc_ecma_transforms_optimization", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_error_reporters", + "swc_node_comments", + "swc_plugin_proxy", + "swc_plugin_runner", + "swc_sourcemap", + "swc_timer", + "swc_transform_common", + "swc_visit", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "swc_allocator" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d7eefd2c8b228a8c73056482b2ae4b3a1071fbe07638e3b55ceca8570cc48bb" +dependencies = [ + "allocator-api2", + "bumpalo", + "hashbrown 0.14.5", + "rustc-hash 2.1.1", +] + +[[package]] +name = "swc_atoms" +version = "7.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3500dcf04c84606b38464561edc5e46f5132201cb3e23cf9613ed4033d6b1bb2" +dependencies = [ + "bytecheck 0.8.1", + "hstr", + "once_cell", + "rancor", + "rkyv 0.8.8", + "serde", +] + +[[package]] +name = "swc_common" +version = "14.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7e510ae120281a9daee0b9246b6740b509b99bd78f88b2a7210c87ec78572a7" +dependencies = [ + "anyhow", + "ast_node", + "better_scoped_tls", + "bytecheck 0.8.1", + "bytes-str", + "either", + "from_variant", + "new_debug_unreachable", + "num-bigint", + "once_cell", + "parking_lot", + "rancor", + "rkyv 0.8.8", + "rustc-hash 2.1.1", + "serde", + "siphasher 0.3.11", + "swc_atoms", + "swc_eq_ignore_macros", + "swc_sourcemap", + "swc_visit", + "tracing", + "unicode-width 0.1.14", + "url", +] + +[[package]] +name = "swc_compiler_base" +version = "29.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75f24bb94005654b388f6090e14d54e90b3cf7af4bf130bf7656d72dc5e7ba12" +dependencies = [ + "anyhow", + "base64", + "bytes-str", + "once_cell", + "pathdiff", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_codegen", + "swc_ecma_minifier", + "swc_ecma_parser", + "swc_ecma_visit", + "swc_sourcemap", + "swc_timer", +] + +[[package]] +name = "swc_config" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d94f41e0f3c4c119a06af5e164674b63ae7eb6d7c1c60e46036c4a548f9fbe44" +dependencies = [ + "anyhow", + "bytes-str", + "dashmap 5.5.3", + "globset", + "indexmap 2.10.0", + "once_cell", + "regex", + "regress", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_config_macro", + "swc_sourcemap", +] + +[[package]] +name = "swc_config_macro" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b416e8ce6de17dc5ea496e10c7012b35bbc0e3fef38d2e065eed936490db0b3" +dependencies = [ + "proc-macro2", + "quote", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "swc_core" +version = "33.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61b42861aa730e028c7abb7d42b53b32e4c98f131cec2c590c7f13e60d7d5d82" +dependencies = [ + "par-core", + "swc", + "swc_allocator", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_codegen", + "swc_ecma_parser", + "swc_ecma_preset_env", + "swc_ecma_quote_macros", + "swc_ecma_transforms_base", + "swc_ecma_transforms_compat", + "swc_ecma_transforms_module", + "swc_ecma_transforms_optimization", + "swc_ecma_transforms_react", + "swc_ecma_transforms_typescript", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_plugin_proxy", + "swc_plugin_runner", + "vergen", +] + +[[package]] +name = "swc_ecma_ast" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5d8d26e697ce58654f0816890af7a28efd8660c154b613acefa2d3727e8ec93" +dependencies = [ + "bitflags 2.9.1", + "bytecheck 0.8.1", + "is-macro", + "num-bigint", + "once_cell", + "phf", + "rancor", + "rkyv 0.8.8", + "rustc-hash 2.1.1", + "serde", + "string_enum", + "swc_atoms", + "swc_common", + "swc_visit", + "unicode-id-start", +] + +[[package]] +name = "swc_ecma_codegen" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b3a46868f249b86a74f91774c8faf12340abb86ba7c3ff152bdc7a8f94011b6" +dependencies = [ + "ascii", + "compact_str", + "memchr", + "num-bigint", + "once_cell", + "regex", + "rustc-hash 2.1.1", + "ryu-js", + "serde", + "swc_allocator", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_codegen_macros", + "swc_sourcemap", + "tracing", +] + +[[package]] +name = "swc_ecma_codegen_macros" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e276dc62c0a2625a560397827989c82a93fd545fcf6f7faec0935a82cc4ddbb8" +dependencies = [ + "proc-macro2", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "swc_ecma_compat_bugfixes" +version = "23.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "633805babcc2a3f0ce3496867b6cffb01bc11a2d53d55b573b207fb94b3299bf" +dependencies = [ + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_compat_es2015", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_common" +version = "19.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f573f45c9756d0b40788bcf4456ffdd8432785f57a5b9c24bcc2c93078f3280d" +dependencies = [ + "swc_common", + "swc_ecma_ast", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_compat_es2015" +version = "23.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "821b58933011407cbc401ff065d1d834cefee9080a2ea4ae0197acac837d8f4f" +dependencies = [ + "arrayvec", + "indexmap 2.10.0", + "is-macro", + "rustc-hash 2.1.1", + "serde", + "serde_derive", + "smallvec", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_compat_common", + "swc_ecma_transforms_base", + "swc_ecma_transforms_classes", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2016" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c4d770d806f9aa57790f8ff74afe69c3096d38f1605d976ce2d2ab48170003b" +dependencies = [ + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2017" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d063bbdac4a41d086fb325c2fd8b95255d903593b27f3014f8aac1f2671728d7" +dependencies = [ + "serde", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2018" +version = "22.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ebb25802340f4aecdc7a62abdc2ed9228013aa53f3708c35ee63cb97ff42d6b" +dependencies = [ + "serde", + "swc_common", + "swc_ecma_ast", + "swc_ecma_compat_common", + "swc_ecma_transforms_base", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2019" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e757495ff2196e431882e6e82ae912a5d56fbe34c803a2352d23bda8e9c6d61" +dependencies = [ + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2020" +version = "23.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b27c49b94cf71d353452f3cfe6b89726013d2eb3d156912e7da80a4e4724158" +dependencies = [ + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_compat_es2022", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2021" +version = "22.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a338aaf9fe353b736868cde2b820bbfb642d5cbbed83534c2dbf9487bca7ad70" +dependencies = [ + "swc_ecma_ast", + "swc_ecma_compiler", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es2022" +version = "23.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39f5d4599882a0de78d399437af341e5ff3641ac91ac7a87b2394f794ea15c17" +dependencies = [ + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_compat_common", + "swc_ecma_compiler", + "swc_ecma_transforms_base", + "swc_ecma_transforms_classes", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compat_es3" +version = "20.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5ea46821c0b5c8f8f55935b21957fbb4668a12f5101a28ed8038ef1ccf05b8e" +dependencies = [ + "swc_common", + "swc_ecma_ast", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_compiler" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0928edc46514760ce655c3b7f28dba9b1e6406490d36a52df00d91a6c643d880" +dependencies = [ + "bitflags 2.9.1", + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_ecma_ext_transforms" +version = "19.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2f85f84aa5b1116bac920f548be87b7c45d936002ca2654c455a148751826be" +dependencies = [ + "phf", + "swc_common", + "swc_ecma_ast", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_lexer" +version = "21.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5606f09fead1e1824ae7a7129b6fa376b20d5e811b822d9ba7bd3b05ef3bb024" +dependencies = [ + "arrayvec", + "bitflags 2.9.1", + "either", + "new_debug_unreachable", + "num-bigint", + "phf", + "rustc-hash 2.1.1", + "seq-macro", + "serde", + "smallvec", + "smartstring", + "stacker", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "tracing", +] + +[[package]] +name = "swc_ecma_loader" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c675d14700c92f12585049b22b02356f1e142f4b0c32a4d0eb4b7a968a4c0c1e" +dependencies = [ + "anyhow", + "dashmap 5.5.3", + "lru", + "normpath", + "once_cell", + "parking_lot", + "path-clean 0.1.0", + "pathdiff", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "tracing", +] + +[[package]] +name = "swc_ecma_minifier" +version = "27.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7bbd82682a05972b9333ba4842d6153da88acab73280b13f516c74d7e87d090" +dependencies = [ + "arrayvec", + "bitflags 2.9.1", + "indexmap 2.10.0", + "num-bigint", + "num_cpus", + "once_cell", + "par-core", + "par-iter", + "parking_lot", + "phf", + "radix_fmt", + "rustc-hash 2.1.1", + "ryu-js", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_codegen", + "swc_ecma_parser", + "swc_ecma_transforms_base", + "swc_ecma_transforms_optimization", + "swc_ecma_usage_analyzer", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_timer", + "tracing", +] + +[[package]] +name = "swc_ecma_parser" +version = "21.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "482bce3a5a199befa9420e2b094fd7fb4e1d9d71a02f0ee1bf24e610ad066311" +dependencies = [ + "either", + "num-bigint", + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_lexer", + "tracing", +] + +[[package]] +name = "swc_ecma_preset_env" +version = "27.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "994b30cf27c462a26f3a4876cc586aac0d304ea0c6d77e7d28eecf2c1d7b5b10" +dependencies = [ + "anyhow", + "foldhash", + "indexmap 2.10.0", + "once_cell", + "precomputed-map", + "preset_env_base", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "string_enum", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_quote_macros" +version = "21.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a77d5e2977534efaa91d395b049dcc4c33eadb3d95e61a679d74ded598b862a" +dependencies = [ + "anyhow", + "proc-macro2", + "quote", + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "swc_ecma_transforms" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e301b8059d199363c2daea42923e375123180e16a3442cf328c958e8be6a758" +dependencies = [ + "par-core", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_transforms_compat", + "swc_ecma_transforms_module", + "swc_ecma_transforms_optimization", + "swc_ecma_transforms_proposal", + "swc_ecma_transforms_react", + "swc_ecma_transforms_typescript", + "swc_ecma_utils", +] + +[[package]] +name = "swc_ecma_transforms_base" +version = "22.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cb04f42a6761960e818d85b7b47204422541c83955ea6f38751b23745bbf291" +dependencies = [ + "better_scoped_tls", + "indexmap 2.10.0", + "once_cell", + "par-core", + "par-iter", + "phf", + "rustc-hash 2.1.1", + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_utils", + "swc_ecma_visit", + "tracing", +] + +[[package]] +name = "swc_ecma_transforms_classes" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cba423851a99e8583995ed5cbeb704103540c0e60bde654eb07749e1a9b8dc2" +dependencies = [ + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_compat" +version = "24.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3863a98e3b91419fe5b17beb14cd5673b2cc9024a4f14a8b833f5dd30239630f" +dependencies = [ + "indexmap 2.10.0", + "par-core", + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_compat_bugfixes", + "swc_ecma_compat_common", + "swc_ecma_compat_es2015", + "swc_ecma_compat_es2016", + "swc_ecma_compat_es2017", + "swc_ecma_compat_es2018", + "swc_ecma_compat_es2019", + "swc_ecma_compat_es2020", + "swc_ecma_compat_es2021", + "swc_ecma_compat_es2022", + "swc_ecma_compat_es3", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "tracing", +] + +[[package]] +name = "swc_ecma_transforms_macros" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc777288799bf6786e5200325a56e4fbabba590264a4a48a0c70b16ad0cf5cd8" +dependencies = [ + "proc-macro2", + "quote", + "swc_macros_common", + "syn 2.0.104", +] + +[[package]] +name = "swc_ecma_transforms_module" +version = "24.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8ca8f0bdb97c7749d8d4f79ddf53cb43cfe15e358416f75352c218a1695d012" +dependencies = [ + "Inflector", + "anyhow", + "bitflags 2.9.1", + "indexmap 2.10.0", + "is-macro", + "path-clean 1.0.1", + "pathdiff", + "regex", + "rustc-hash 2.1.1", + "serde", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_loader", + "swc_ecma_parser", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "tracing", +] + +[[package]] +name = "swc_ecma_transforms_optimization" +version = "23.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68bd07e1d548d2a7c7e798b858432aa6f714a6691f69bb6bb0d585609241e57a" +dependencies = [ + "bytes-str", + "dashmap 5.5.3", + "indexmap 2.10.0", + "once_cell", + "par-core", + "petgraph", + "rustc-hash 2.1.1", + "serde_json", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", + "tracing", +] + +[[package]] +name = "swc_ecma_transforms_proposal" +version = "22.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64239d3aa4795c9656e40775e85b7926698ef2bf73c85e72da953d25e916b0fc" +dependencies = [ + "either", + "rustc-hash 2.1.1", + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_transforms_classes", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_react" +version = "24.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fc8e7810dc246c3ee54323719cce2ed8104ebdccd25456315bc2189e885e64f" +dependencies = [ + "base64", + "bytes-str", + "indexmap 2.10.0", + "once_cell", + "rustc-hash 2.1.1", + "serde", + "sha1", + "string_enum", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_transforms_base", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_typescript" +version = "24.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81b3d8a18fbc3182849a84a126afa20c033f8e9dd6bc804fbb17c2180d5e658e" +dependencies = [ + "bytes-str", + "rustc-hash 2.1.1", + "serde", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base", + "swc_ecma_transforms_react", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_usage_analyzer" +version = "20.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7437f5e07a880092bd50a599faa15f7f4a28cc017d7702dea46eb60d321430ad" +dependencies = [ + "bitflags 2.9.1", + "indexmap 2.10.0", + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_utils", + "swc_ecma_visit", + "swc_timer", + "tracing", +] + +[[package]] +name = "swc_ecma_utils" +version = "19.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b34cc429270ae5d908574f3cf531fcb9dc52d43f689c5e8ca9598ebc117a32" +dependencies = [ + "indexmap 2.10.0", + "num_cpus", + "once_cell", + "par-core", + "rustc-hash 2.1.1", + "ryu-js", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_visit", + "tracing", +] + +[[package]] +name = "swc_ecma_visit" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d187b3440f20dac5d5a61aaedff585aefac9c75c1a6650abb7f25936a4f0e67" +dependencies = [ + "new_debug_unreachable", + "num-bigint", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_visit", + "tracing", +] + +[[package]] +name = "swc_eq_ignore_macros" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c16ce73424a6316e95e09065ba6a207eba7765496fed113702278b7711d4b632" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "swc_error_reporters" +version = "16.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7a16e3c08fd820735631820a7c220d5ce39bdc08b83eddbc73a645ef744511e" +dependencies = [ + "anyhow", + "miette", + "once_cell", + "serde", + "swc_common", +] + +[[package]] +name = "swc_html" +version = "25.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd6a6d6e639f33de93b0e4c103f688db5379b9a126b4dcf06f550f67bbc3eeec" +dependencies = [ + "swc_html_ast", + "swc_html_codegen", + "swc_html_parser", + "swc_html_visit", +] + +[[package]] +name = "swc_html_ast" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aaac81d52eca99cb457287b459e599ae0a09f73b6914b5c327fca86aace3e7f" +dependencies = [ + "is-macro", + "string_enum", + "swc_atoms", + "swc_common", +] + +[[package]] +name = "swc_html_codegen" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4eb8fc6c275fb77887f35b28ef7db5b94843d4991a28ed2b488f884bf21ea4f" +dependencies = [ + "auto_impl", + "bitflags 2.9.1", + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_html_ast", + "swc_html_codegen_macros", + "swc_html_utils", +] + +[[package]] +name = "swc_html_codegen_macros" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f98ef1f87379c816ba7d22351c9fc993af38b034bce4da3286cfe4b17e7ec9e2" +dependencies = [ + "quote", + "syn 2.0.104", +] + +[[package]] +name = "swc_html_minifier" +version = "27.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1693dd498224866cd627387a4aff03ec74431f0eaf8479a6ef6d1912b1869ba" +dependencies = [ + "once_cell", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "swc_config", + "swc_ecma_ast", + "swc_ecma_codegen", + "swc_ecma_minifier", + "swc_ecma_parser", + "swc_ecma_transforms_base", + "swc_ecma_visit", + "swc_html_ast", + "swc_html_codegen", + "swc_html_parser", + "swc_html_utils", + "swc_html_visit", +] + +[[package]] +name = "swc_html_parser" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca81cb496fb3aa9457073f9a4c4f0a767cd0c4ea567353b9524a8365cd257bd" +dependencies = [ + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", + "swc_html_ast", + "swc_html_utils", +] + +[[package]] +name = "swc_html_utils" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de231a2c4d35e68dc8df22a96445b1750737fabac1daac3021c7eca35c9a42b1" +dependencies = [ + "once_cell", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", +] + +[[package]] +name = "swc_html_visit" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab34925086a107b8ae24ef8fd3a064ea2c9d99a7f80c005b1c164379d6eb17a4" +dependencies = [ + "serde", + "swc_atoms", + "swc_common", + "swc_html_ast", + "swc_visit", +] + +[[package]] +name = "swc_macros_common" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1efbaa74943dc5ad2a2fb16cbd78b77d7e4d63188f3c5b4df2b4dcd2faaae" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "swc_node_comments" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bf07db306bc7e19b8fc46702e8298419d12f587bd4724858bc9889fef8f3e72" +dependencies = [ + "dashmap 5.5.3", + "rustc-hash 2.1.1", + "swc_atoms", + "swc_common", +] + +[[package]] +name = "swc_plugin_proxy" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb61022f33eb711aa1644788a76b854a795e0de89c38af3c7cd6071da34bbb58" +dependencies = [ + "better_scoped_tls", + "bytecheck 0.8.1", + "rancor", + "rkyv 0.8.8", + "rustc-hash 2.1.1", + "swc_common", + "swc_ecma_ast", + "swc_trace_macro", + "tracing", +] + +[[package]] +name = "swc_plugin_runner" +version = "17.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8adca7d5808e574f53bfbe2ee149056c1dffbbd56bdce1d9bbdaa411673856c6" +dependencies = [ + "anyhow", + "enumset", + "futures", + "parking_lot", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_plugin_proxy", + "swc_transform_common", + "tokio", + "tracing", + "vergen", + "wasmer", + "wasmer-cache", + "wasmer-compiler-cranelift", + "wasmer-wasix", +] + +[[package]] +name = "swc_sourcemap" +version = "9.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9755c673c6a83c461e98fa018f681adb8394a3f44f89a06f27e80fd4fe4fa1e4" +dependencies = [ + "base64-simd 0.8.0", + "bitvec", + "bytes-str", + "data-encoding", + "debugid", + "if_chain", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "unicode-id-start", + "url", +] + +[[package]] +name = "swc_timer" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4db06b46cc832f7cf83c2ce21905fc465d01443a2bdccf63644383e1f5847532" +dependencies = [ + "tracing", +] + +[[package]] +name = "swc_trace_macro" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfd2b4b0adb82e36f2ac688d00a6a67132c7f4170c772617516793a701be89e8" +dependencies = [ + "quote", + "syn 2.0.104", +] + +[[package]] +name = "swc_transform_common" +version = "8.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca33f282df60eefee05511c9aaf557696d2f9f0e22f4a5abca318da10c22f1cc" +dependencies = [ + "better_scoped_tls", + "rustc-hash 2.1.1", + "serde", + "swc_common", +] + +[[package]] +name = "swc_visit" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62fb71484b486c185e34d2172f0eabe7f4722742aad700f426a494bb2de232a2" +dependencies = [ + "either", + "new_debug_unreachable", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.104" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "synstructure" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tar" +version = "0.4.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" +dependencies = [ + "filetime", + "libc", + "xattr", +] + +[[package]] +name = "target-lexicon" +version = "0.12.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" + +[[package]] +name = "tempfile" +version = "3.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +dependencies = [ + "fastrand", + "getrandom 0.3.3", + "once_cell", + "rustix 1.0.7", + "windows-sys 0.59.0", +] + +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "terminal_size" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" +dependencies = [ + "rustix 0.38.44", + "windows-sys 0.48.0", +] + +[[package]] +name = "terminal_size" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed" +dependencies = [ + "rustix 1.0.7", + "windows-sys 0.59.0", +] + +[[package]] +name = "termios" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b" +dependencies = [ + "libc", +] + +[[package]] +name = "textwrap" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" +dependencies = [ + "unicode-linebreak", + "unicode-width 0.2.1", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +dependencies = [ + "thiserror-impl 2.0.12", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "thread_local" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "time" +version = "0.3.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +dependencies = [ + "deranged", + "itoa", + "libc", + "num-conv", + "num_threads", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" + +[[package]] +name = "time-macros" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinystr" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinyvec" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.46.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17" +dependencies = [ + "backtrace", + "bytes", + "io-uring", + "libc", + "mio", + "parking_lot", + "pin-project-lite", + "slab", + "tokio-macros", + "tracing", +] + +[[package]] +name = "tokio-macros" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "tokio-stream" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", + "tokio-util", +] + +[[package]] +name = "tokio-util" +version = "0.7.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" +dependencies = [ + "indexmap 2.10.0", + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.22.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" +dependencies = [ + "indexmap 2.10.0", + "serde", + "serde_spanned", + "toml_datetime", + "toml_write", + "winnow", +] + +[[package]] +name = "toml_write" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" + +[[package]] +name = "tracing" +version = "0.1.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +dependencies = [ + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "tracing-core" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-serde" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" +dependencies = [ + "matchers", + "once_cell", + "regex", + "serde", + "serde_json", + "sharded-slab", + "thread_local", + "tracing", + "tracing-core", + "tracing-serde", +] + +[[package]] +name = "triomphe" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef8f7726da4807b58ea5c96fdc122f80702030edc33b35aff9190a51148ccc85" +dependencies = [ + "serde", + "stable_deref_trait", +] + +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "static_assertions", +] + +[[package]] +name = "twox-hash" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b907da542cbced5261bd3256de1b3a1bf340a3d37f93425a07362a1d687de56" + +[[package]] +name = "typenum" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" + +[[package]] +name = "ucd-trie" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" + +[[package]] +name = "unicase" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" + +[[package]] +name = "unicode-id-start" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f322b60f6b9736017344fa0635d64be2f458fbc04eef65f6be22976dd1ffd5b" + +[[package]] +name = "unicode-ident" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" + +[[package]] +name = "unicode-linebreak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" + +[[package]] +name = "unicode-normalization" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + +[[package]] +name = "unicode-width" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" + +[[package]] +name = "unicode-xid" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" + +[[package]] +name = "url" +version = "2.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", +] + +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + +[[package]] +name = "ustr-fxhash" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4d2224cabd887261556e0d3a483a7e9f87dcbaab3b820df7d748305a8d5cbc8" +dependencies = [ + "byteorder", + "lazy_static", + "parking_lot", + "rustc-hash 2.1.1", + "serde", +] + +[[package]] +name = "utf8-width" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "uuid" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cf4199d1e5d15ddd86a694e4d0dffa9c323ce759fea589f00fef9d81cc1931d" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "valuable" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" + +[[package]] +name = "value-trait" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9170e001f458781e92711d2ad666110f153e4e50bfd5cbd02db6547625714187" +dependencies = [ + "float-cmp", + "halfbrown", + "itoa", + "ryu", +] + +[[package]] +name = "vergen" +version = "9.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777" +dependencies = [ + "anyhow", + "cargo_metadata", + "derive_builder 0.20.2", + "regex", + "rustversion", + "time", + "vergen-lib", +] + +[[package]] +name = "vergen-lib" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" +dependencies = [ + "anyhow", + "derive_builder 0.20.2", + "rustversion", +] + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "virtual-fs" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1f92037e6dbdd2bb77fca33dbb8bb9f490ecfd88c236c9aefefa2f047285938" +dependencies = [ + "anyhow", + "async-trait", + "bytes", + "dashmap 6.1.0", + "derive_more 2.0.1", + "dunce", + "filetime", + "fs_extra", + "futures", + "getrandom 0.2.16", + "indexmap 2.10.0", + "libc", + "pin-project-lite", + "replace_with", + "shared-buffer", + "slab", + "thiserror 1.0.69", + "tokio", + "tracing", + "wasmer-package", + "webc", +] + +[[package]] +name = "virtual-mio" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63b503138c2d32137c8c1049a8043d75628ee29b8f467eabc6023886ae76f15a" +dependencies = [ + "async-trait", + "bytes", + "futures", + "serde", + "thiserror 1.0.69", + "tracing", +] + +[[package]] +name = "virtual-net" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea9b5162d7c9f2bef643370e711ec7fa04e7804098edd3f95117115aa9068320" +dependencies = [ + "anyhow", + "async-trait", + "base64", + "bincode", + "bytecheck 0.6.12", + "bytes", + "derive_more 2.0.1", + "futures-util", + "ipnet", + "iprange", + "pin-project-lite", + "rkyv 0.8.8", + "serde", + "smoltcp", + "thiserror 1.0.69", + "tokio", + "tracing", + "virtual-mio", +] + +[[package]] +name = "vlq" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65dd7eed29412da847b0f78bcec0ac98588165988a8cfe41d4ea1d429f8ccfff" + +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + +[[package]] +name = "wai-bindgen-gen-core" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aa3dc41b510811122b3088197234c27e08fcad63ef936306dd8e11e2803876c" +dependencies = [ + "anyhow", + "wai-parser", +] + +[[package]] +name = "wai-bindgen-gen-rust" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19bc05e8380515c4337c40ef03b2ff233e391315b178a320de8640703d522efe" +dependencies = [ + "heck 0.3.3", + "wai-bindgen-gen-core", +] + +[[package]] +name = "wai-bindgen-gen-rust-wasm" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6f35ce5e74086fac87f3a7bd50f643f00fe3559adb75c88521ecaa01c8a6199" +dependencies = [ + "heck 0.3.3", + "wai-bindgen-gen-core", + "wai-bindgen-gen-rust", +] + +[[package]] +name = "wai-bindgen-rust" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e5601c6f448c063e83a5e931b8fefcdf7e01ada424ad42372c948d2e3d67741" +dependencies = [ + "bitflags 1.3.2", + "wai-bindgen-rust-impl", +] + +[[package]] +name = "wai-bindgen-rust-impl" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdeeb5c1170246de8425a3e123e7ef260dc05ba2b522a1d369fe2315376efea4" +dependencies = [ + "proc-macro2", + "syn 1.0.109", + "wai-bindgen-gen-core", + "wai-bindgen-gen-rust-wasm", +] + +[[package]] +name = "wai-parser" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9bd0acb6d70885ea0c343749019ba74f015f64a9d30542e66db69b49b7e28186" +dependencies = [ + "anyhow", + "id-arena", + "pulldown-cmark", + "unicode-normalization", + "unicode-xid", +] + +[[package]] +name = "waker-fn" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasi" +version = "0.14.2+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +dependencies = [ + "wit-bindgen-rt", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +dependencies = [ + "bumpalo", + "log", + "proc-macro2", + "quote", + "syn 2.0.104", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "wasm-encoder" +version = "0.235.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3bc393c395cb621367ff02d854179882b9a351b4e0c93d1397e6090b53a5c2a" +dependencies = [ + "leb128fmt", + "wasmparser 0.235.0", +] + +[[package]] +name = "wasmer" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf786c12924b21a9b62b2f16f5c71985f9a7c478ad043e9337ceb18d08869ce4" +dependencies = [ + "bindgen", + "bytes", + "cfg-if", + "cmake", + "derive_more 2.0.1", + "indexmap 2.10.0", + "js-sys", + "more-asserts", + "paste", + "rustc-demangle", + "serde", + "serde-wasm-bindgen", + "shared-buffer", + "tar", + "target-lexicon", + "thiserror 1.0.69", + "tracing", + "wasm-bindgen", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", + "wasmparser 0.224.1", + "wat", + "windows-sys 0.59.0", +] + +[[package]] +name = "wasmer-cache" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69c453f91ba2a6983db25b54f562da91019050dd10a7127d67be1b2f2ecf778f" +dependencies = [ + "blake3", + "hex", + "thiserror 1.0.69", + "wasmer", +] + +[[package]] +name = "wasmer-compiler" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c676b2eeebcf3525cd7a4a394a3e800397931b14c36c59bbdaa673d1e3538736" +dependencies = [ + "backtrace", + "bytes", + "cfg-if", + "enum-iterator", + "enumset", + "leb128", + "libc", + "macho-unwind-info", + "memmap2", + "more-asserts", + "object 0.32.2", + "region", + "rkyv 0.8.8", + "self_cell", + "shared-buffer", + "smallvec", + "target-lexicon", + "thiserror 1.0.69", + "wasmer-types", + "wasmer-vm", + "wasmparser 0.224.1", + "windows-sys 0.59.0", + "xxhash-rust", +] + +[[package]] +name = "wasmer-compiler-cranelift" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3a3f6b9620a296686578867a2eb52ebbba54f690e35d0f0b88ac2a07eba4b2f" +dependencies = [ + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", + "gimli 0.28.1", + "itertools 0.12.1", + "more-asserts", + "rayon", + "smallvec", + "target-lexicon", + "tracing", + "wasmer-compiler", + "wasmer-types", +] + +[[package]] +name = "wasmer-config" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4f9f97f7c76a9865fa7c6c003b2d1a9fa24da5f4ac8f07898b4a7697bc014ec" +dependencies = [ + "anyhow", + "bytesize", + "ciborium", + "derive_builder 0.12.0", + "hex", + "indexmap 2.10.0", + "saffron", + "schemars 0.8.22", + "semver", + "serde", + "serde_json", + "serde_yml", + "thiserror 1.0.69", + "toml", + "url", +] + +[[package]] +name = "wasmer-derive" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f28138e1071544778713c49a402f9f37c47aa9f05cf4023c4563cef8c138301" +dependencies = [ + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "wasmer-journal" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "187d41a08883b25205e16592e581d8f114e8cd4b0cc06bf06227ef1dceea5bed" +dependencies = [ + "anyhow", + "async-trait", + "base64", + "bincode", + "bytecheck 0.6.12", + "bytes", + "derive_more 2.0.1", + "lz4_flex", + "num_enum", + "rkyv 0.8.8", + "serde", + "serde_json", + "thiserror 1.0.69", + "tracing", + "virtual-fs", + "virtual-net", + "wasmer", + "wasmer-config", + "wasmer-wasix-types", +] + +[[package]] +name = "wasmer-package" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67c892d772b032804990ae6df8225cec238e1fa5c1ab63e3a433fbc0eb3da498" +dependencies = [ + "anyhow", + "bytes", + "cfg-if", + "ciborium", + "flate2", + "ignore", + "insta", + "libc", + "semver", + "serde", + "serde_json", + "sha2", + "shared-buffer", + "tar", + "tempfile", + "thiserror 1.0.69", + "toml", + "url", + "wasmer-config", + "wasmer-types", + "webc", +] + +[[package]] +name = "wasmer-types" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d329d3e5c425c0ff98035a685d93c6f7129789dde2a67ed60f4f07bf16d689ca" +dependencies = [ + "bytecheck 0.6.12", + "enum-iterator", + "enumset", + "getrandom 0.2.16", + "hex", + "indexmap 2.10.0", + "more-asserts", + "rkyv 0.8.8", + "serde", + "sha2", + "target-lexicon", + "thiserror 1.0.69", + "wasmparser 0.224.1", + "xxhash-rust", +] + +[[package]] +name = "wasmer-vm" +version = "6.1.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a58deb62862e662c27acd359764740c944028627ee74777790d01c87dc98edf" +dependencies = [ + "backtrace", + "cc", + "cfg-if", + "corosensei", + "crossbeam-queue", + "dashmap 6.1.0", + "enum-iterator", + "fnv", + "indexmap 2.10.0", + "libc", + "libunwind", + "mach2", + "memoffset", + "more-asserts", + "region", + "scopeguard", + "thiserror 1.0.69", + "wasmer-types", + "windows-sys 0.59.0", +] + +[[package]] +name = "wasmer-wasix" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df0b2f10a6eda882a8618bde7b50c5ad0277da298ff683765d8a22b8c1d75409" +dependencies = [ + "anyhow", + "async-trait", + "base64", + "bincode", + "blake3", + "bus", + "bytecheck 0.6.12", + "bytes", + "cfg-if", + "cooked-waker", + "crossbeam-channel", + "dashmap 6.1.0", + "derive_more 2.0.1", + "futures", + "getrandom 0.2.16", + "heapless", + "hex", + "http", + "libc", + "linked_hash_set", + "lz4_flex", + "num_enum", + "once_cell", + "petgraph", + "pin-project", + "pin-utils", + "rand", + "rkyv 0.8.8", + "rusty_pool", + "semver", + "serde", + "serde_derive", + "serde_json", + "serde_yml", + "sha2", + "shared-buffer", + "tempfile", + "terminal_size 0.3.0", + "termios", + "thiserror 1.0.69", + "tokio", + "tokio-stream", + "toml", + "tracing", + "url", + "urlencoding", + "virtual-fs", + "virtual-mio", + "virtual-net", + "waker-fn", + "wasm-encoder", + "wasmer", + "wasmer-config", + "wasmer-journal", + "wasmer-package", + "wasmer-types", + "wasmer-wasix-types", + "wasmparser 0.224.1", + "webc", + "weezl", + "windows-sys 0.59.0", + "xxhash-rust", +] + +[[package]] +name = "wasmer-wasix-types" +version = "0.601.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ec56583da2e60c78c0eae1082dec81bc75f10e4fc62fcebb5ee92fb96e6bf97" +dependencies = [ + "anyhow", + "bitflags 1.3.2", + "byteorder", + "cfg-if", + "num_enum", + "serde", + "time", + "tracing", + "wai-bindgen-gen-core", + "wai-bindgen-gen-rust", + "wai-bindgen-gen-rust-wasm", + "wai-bindgen-rust", + "wai-parser", + "wasmer", + "wasmer-derive", + "wasmer-types", +] + +[[package]] +name = "wasmparser" +version = "0.222.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa210fd1788e6b37a1d1930f3389c48e1d6ebd1a013d34fa4b7f9e3e3bf03146" +dependencies = [ + "bitflags 2.9.1", +] + +[[package]] +name = "wasmparser" +version = "0.224.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04f17a5917c2ddd3819e84c661fae0d6ba29d7b9c1f0e96c708c65a9c4188e11" +dependencies = [ + "bitflags 2.9.1", +] + +[[package]] +name = "wasmparser" +version = "0.235.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" +dependencies = [ + "bitflags 2.9.1", + "indexmap 2.10.0", + "semver", +] + +[[package]] +name = "wast" +version = "235.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1eda4293f626c99021bb3a6fbe4fbbe90c0e31a5ace89b5f620af8925de72e13" +dependencies = [ + "bumpalo", + "leb128fmt", + "memchr", + "unicode-width 0.2.1", + "wasm-encoder", +] + +[[package]] +name = "wat" +version = "1.235.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e777e0327115793cb96ab220b98f85327ec3d11f34ec9e8d723264522ef206aa" +dependencies = [ + "wast", +] + +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webc" +version = "9.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38544ae3a351279fa913b4dee9c548f0aa3b27ca05756531c3f2e6bc4e22c27d" +dependencies = [ + "anyhow", + "base64", + "bytes", + "cfg-if", + "ciborium", + "document-features", + "ignore", + "indexmap 2.10.0", + "leb128", + "lexical-sort", + "libc", + "once_cell", + "path-clean 1.0.1", + "rand", + "serde", + "serde_json", + "sha2", + "shared-buffer", + "thiserror 1.0.69", + "url", +] + +[[package]] +name = "weezl" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a751b3277700db47d3e574514de2eced5e54dc8a5436a3bf7a0b248b2cee16f3" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "windows-interface" +version = "0.59.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" +dependencies = [ + "windows_aarch64_gnullvm 0.53.0", + "windows_aarch64_msvc 0.53.0", + "windows_i686_gnu 0.53.0", + "windows_i686_gnullvm 0.53.0", + "windows_i686_msvc 0.53.0", + "windows_x86_64_gnu 0.53.0", + "windows_x86_64_gnullvm 0.53.0", + "windows_x86_64_msvc 0.53.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" + +[[package]] +name = "winnow" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" +dependencies = [ + "memchr", +] + +[[package]] +name = "wit-bindgen-rt" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +dependencies = [ + "bitflags 2.9.1", +] + +[[package]] +name = "writeable" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "xattr" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af3a19837351dc82ba89f8a125e22a3c475f05aba604acc023d62b2739ae2909" +dependencies = [ + "libc", + "rustix 1.0.7", +] + +[[package]] +name = "xxhash-rust" +version = "0.8.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" + +[[package]] +name = "yoke" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.8.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "zerofrom" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", + "synstructure", +] + +[[package]] +name = "zerotrie" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", +] + +[[package]] +name = "zerovec" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml index 751dace3777eb..f26f1a840146b 100644 --- a/crates/next-rspack/Cargo.toml +++ b/crates/next-rspack/Cargo.toml @@ -7,27 +7,45 @@ edition = "2021" crate-type = ["cdylib"] [dependencies] -rspack_binding_builder = { version = "=0.4.11" } -rspack_binding_builder_macros = { version = "=0.4.11" } +rspack_binding_builder = { version = "=0.4.10" } +rspack_binding_builder_macros = { version = "=0.4.10" } -rspack_core = { version = "=0.4.11" } -rspack_error = { version = "=0.4.11" } -rspack_hook = { version = "=0.4.11" } -rspack_plugin_externals = { version = "=0.4.11" } +rspack_core = { version = "=0.4.10" } +rspack_error = { version = "=0.4.10" } +rspack_hook = { version = "=0.4.10" } +rspack_plugin_externals = { version = "=0.4.10" } rspack_sources = { version = "=0.4.8" } -once_cell = { version = "1.17.1" } -regex = { version = "1.10.6" } -rspack_regex = { version = "=0.4.11" } +once_cell = { version = "1.20.2" } +regex = { version = "1.11.1" } +rspack_regex = { version = "=0.4.10" } rustc-hash = { version = "2.1.1" } -napi = { version = "3.1.2" } -napi-derive = { version = "3.1.2" } +napi = { version = "=3.1.2" } +napi-derive = { version = "=3.1.1" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf [target.'cfg(not(any(target_arch = "wasm32", target_arch = "arm", all(target_os = "windows", target_arch = "x86"), all(target_os = "windows", target_arch = "aarch64"))))'.dependencies] -rspack_binding_builder = {version = "=0.4.11", features = ["plugin"] } +rspack_binding_builder = { version = "=0.4.10", features = ["plugin"] } [build-dependencies] -rspack_binding_build = { version = "=0.4.11" } +rspack_binding_build = { version = "=0.4.10" } + +# Copied from https://github.com/web-infra-dev/rspack/blob/main/Cargo.toml + +[profile.dev] +codegen-units = 16 +debug = 2 +incremental = true +panic = "abort" + +[profile.release] +codegen-units = 1 +debug = false +# Performs “fat” LTO which attempts to perform optimizations across all crates within the dependency graph. +lto = "fat" +opt-level = 3 +panic = "abort" +strip = true + diff --git a/crates/next-rspack/build.rs b/crates/next-rspack/build.rs new file mode 100644 index 0000000000000..4d2c8891e0450 --- /dev/null +++ b/crates/next-rspack/build.rs @@ -0,0 +1,3 @@ +fn main() { + rspack_binding_build::setup(); +} diff --git a/crates/next-rspack/index.d.ts b/crates/next-rspack/index.d.ts new file mode 100644 index 0000000000000..0ac89fc550b30 --- /dev/null +++ b/crates/next-rspack/index.d.ts @@ -0,0 +1,22 @@ +/* auto-generated by NAPI-RS */ +/* eslint-disable */ +export interface NapiExperimentalConfig { + esmExternals?: string | boolean +} + +export interface NapiNextConfigComplete { + experimental: NapiExperimentalConfig + bundlePagesRouterDependencies?: boolean +} + +export interface NapiNextExternalsPluginOptions { + compilerType: string + config: NapiNextConfigComplete + builtinModules: Array + optOutBundlingPackageRegex: RegExp + finalTranspilePackages: Array + dir: string + defaultOverrides: Record +} + +export declare function registerNextExternalsPlugin(): void diff --git a/crates/next-rspack/index.js b/crates/next-rspack/index.js new file mode 100644 index 0000000000000..ee7034b79a6d2 --- /dev/null +++ b/crates/next-rspack/index.js @@ -0,0 +1,396 @@ +// prettier-ignore +/* eslint-disable */ +// @ts-nocheck +/* auto-generated by NAPI-RS */ + +const { createRequire } = require('node:module') +require = createRequire(__filename) + +const { readFileSync } = require('node:fs') +let nativeBinding = null +const loadErrors = [] + +const isMusl = () => { + let musl = false + if (process.platform === 'linux') { + musl = isMuslFromFilesystem() + if (musl === null) { + musl = isMuslFromReport() + } + if (musl === null) { + musl = isMuslFromChildProcess() + } + } + return musl +} + +const isFileMusl = (f) => f.includes('libc.musl-') || f.includes('ld-musl-') + +const isMuslFromFilesystem = () => { + try { + return readFileSync('/usr/bin/ldd', 'utf-8').includes('musl') + } catch { + return null + } +} + +const isMuslFromReport = () => { + let report = null + if (typeof process.report?.getReport === 'function') { + process.report.excludeNetwork = true + report = process.report.getReport() + } + if (!report) { + return null + } + if (report.header && report.header.glibcVersionRuntime) { + return false + } + if (Array.isArray(report.sharedObjects)) { + if (report.sharedObjects.some(isFileMusl)) { + return true + } + } + return false +} + +const isMuslFromChildProcess = () => { + try { + return require('child_process').execSync('ldd --version', { encoding: 'utf8' }).includes('musl') + } catch (e) { + // If we reach this case, we don't know if the system is musl or not, so is better to just fallback to false + return false + } +} + +function requireNative() { + if (process.env.NAPI_RS_NATIVE_LIBRARY_PATH) { + try { + nativeBinding = require(process.env.NAPI_RS_NATIVE_LIBRARY_PATH); + } catch (err) { + loadErrors.push(err) + } + } else if (process.platform === 'android') { + if (process.arch === 'arm64') { + try { + return require('./binding.android-arm64.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-android-arm64') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'arm') { + try { + return require('./binding.android-arm-eabi.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-android-arm-eabi') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on Android ${process.arch}`)) + } + } else if (process.platform === 'win32') { + if (process.arch === 'x64') { + try { + return require('./binding.win32-x64-msvc.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-win32-x64-msvc') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'ia32') { + try { + return require('./binding.win32-ia32-msvc.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-win32-ia32-msvc') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'arm64') { + try { + return require('./binding.win32-arm64-msvc.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-win32-arm64-msvc') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on Windows: ${process.arch}`)) + } + } else if (process.platform === 'darwin') { + try { + return require('./binding.darwin-universal.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-darwin-universal') + } catch (e) { + loadErrors.push(e) + } + if (process.arch === 'x64') { + try { + return require('./binding.darwin-x64.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-darwin-x64') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'arm64') { + try { + return require('./binding.darwin-arm64.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-darwin-arm64') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on macOS: ${process.arch}`)) + } + } else if (process.platform === 'freebsd') { + if (process.arch === 'x64') { + try { + return require('./binding.freebsd-x64.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-freebsd-x64') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'arm64') { + try { + return require('./binding.freebsd-arm64.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-freebsd-arm64') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on FreeBSD: ${process.arch}`)) + } + } else if (process.platform === 'linux') { + if (process.arch === 'x64') { + if (isMusl()) { + try { + return require('./binding.linux-x64-musl.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-x64-musl') + } catch (e) { + loadErrors.push(e) + } + } else { + try { + return require('./binding.linux-x64-gnu.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-x64-gnu') + } catch (e) { + loadErrors.push(e) + } + } + } else if (process.arch === 'arm64') { + if (isMusl()) { + try { + return require('./binding.linux-arm64-musl.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm64-musl') + } catch (e) { + loadErrors.push(e) + } + } else { + try { + return require('./binding.linux-arm64-gnu.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm64-gnu') + } catch (e) { + loadErrors.push(e) + } + } + } else if (process.arch === 'arm') { + if (isMusl()) { + try { + return require('./binding.linux-arm-musleabihf.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm-musleabihf') + } catch (e) { + loadErrors.push(e) + } + } else { + try { + return require('./binding.linux-arm-gnueabihf.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm-gnueabihf') + } catch (e) { + loadErrors.push(e) + } + } + } else if (process.arch === 'riscv64') { + if (isMusl()) { + try { + return require('./binding.linux-riscv64-musl.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-riscv64-musl') + } catch (e) { + loadErrors.push(e) + } + } else { + try { + return require('./binding.linux-riscv64-gnu.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-riscv64-gnu') + } catch (e) { + loadErrors.push(e) + } + } + } else if (process.arch === 'ppc64') { + try { + return require('./binding.linux-ppc64-gnu.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-ppc64-gnu') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 's390x') { + try { + return require('./binding.linux-s390x-gnu.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-s390x-gnu') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on Linux: ${process.arch}`)) + } + } else if (process.platform === 'openharmony') { + if (process.arch === 'arm64') { + try { + return require('./binding.linux-arm64-ohos.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm64-ohos') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'x64') { + try { + return require('./binding.linux-x64-ohos.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-x64-ohos') + } catch (e) { + loadErrors.push(e) + } + } else if (process.arch === 'arm') { + try { + return require('./binding.linux-arm-ohos.node') + } catch (e) { + loadErrors.push(e) + } + try { + return require('@next-rspack/binding-linux-arm-ohos') + } catch (e) { + loadErrors.push(e) + } + } else { + loadErrors.push(new Error(`Unsupported architecture on OpenHarmony: ${process.arch}`)) + } + } else { + loadErrors.push(new Error(`Unsupported OS: ${process.platform}, architecture: ${process.arch}`)) + } +} + +nativeBinding = requireNative() + +if (!nativeBinding || process.env.NAPI_RS_FORCE_WASI) { + try { + nativeBinding = require('./binding.wasi.cjs') + } catch (err) { + if (process.env.NAPI_RS_FORCE_WASI) { + loadErrors.push(err) + } + } + if (!nativeBinding) { + try { + nativeBinding = require('@next-rspack/binding-wasm32-wasi') + } catch (err) { + if (process.env.NAPI_RS_FORCE_WASI) { + loadErrors.push(err) + } + } + } +} + +if (!nativeBinding) { + if (loadErrors.length > 0) { + throw new Error( + `Cannot find native binding. ` + + `npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). ` + + 'Please try `npm i` again after removing both package-lock.json and node_modules directory.', + { cause: loadErrors } + ) + } + throw new Error(`Failed to load native binding`) +} + +module.exports = nativeBinding +module.exports.registerNextExternalsPlugin = nativeBinding.registerNextExternalsPlugin diff --git a/crates/next-rspack/package.json b/crates/next-rspack/package.json new file mode 100644 index 0000000000000..d83c08328bb83 --- /dev/null +++ b/crates/next-rspack/package.json @@ -0,0 +1,52 @@ +{ + "name": "@next-rspack/binding", + "version": "0.0.1-canary.2", + "homepage": "https://github.com/SyMind/next-rspack-binding", + "bugs": { + "url": "https://github.com/SyMind/next-rspack-binding/issues" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/SyMind/next-rspack-binding.git", + "directory": "crates/binding" + }, + "main": "index.js", + "types": "index.d.ts", + "exports": { + ".": { + "types": "./index.d.ts", + "default": "./index.js" + }, + "./package.json": "./package.json" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "scripts": { + "build": "napi build --platform --release", + "build:debug": "napi build --platform" + }, + "devDependencies": { + "@napi-rs/cli": "3.0.1", + "@types/node": "^24.0.12", + "typescript": "^5.8.3" + }, + "napi": { + "binaryName": "binding", + "targets": [ + "x86_64-apple-darwin", + "x86_64-pc-windows-msvc", + "x86_64-unknown-linux-gnu", + "x86_64-unknown-linux-musl", + "i686-pc-windows-msvc", + "aarch64-unknown-linux-gnu", + "aarch64-apple-darwin", + "aarch64-unknown-linux-musl", + "aarch64-pc-windows-msvc", + "armv7-linux-androideabi", + "armv7-unknown-linux-gnueabihf", + "aarch64-linux-android" + ] + } +} diff --git a/crates/next-rspack/pnpm-lock.yaml b/crates/next-rspack/pnpm-lock.yaml new file mode 100644 index 0000000000000..90efa83a52d5f --- /dev/null +++ b/crates/next-rspack/pnpm-lock.yaml @@ -0,0 +1,1279 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + '@napi-rs/cli': + specifier: 3.0.1 + version: 3.0.1(@emnapi/runtime@1.4.5)(@types/node@24.3.0) + '@types/node': + specifier: ^24.0.12 + version: 24.3.0 + typescript: + specifier: ^5.8.3 + version: 5.9.2 + +packages: + + '@emnapi/core@1.4.5': + resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==} + + '@emnapi/runtime@1.4.5': + resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==} + + '@emnapi/wasi-threads@1.0.4': + resolution: {integrity: sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g==} + + '@inquirer/checkbox@4.2.2': + resolution: {integrity: sha512-E+KExNurKcUJJdxmjglTl141EwxWyAHplvsYJQgSwXf8qiNWkTxTuCCqmhFEmbIXd4zLaGMfQFJ6WrZ7fSeV3g==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/confirm@5.1.16': + resolution: {integrity: sha512-j1a5VstaK5KQy8Mu8cHmuQvN1Zc62TbLhjJxwHvKPPKEoowSF6h/0UdOpA9DNdWZ+9Inq73+puRq1df6OJ8Sag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.2.0': + resolution: {integrity: sha512-NyDSjPqhSvpZEMZrLCYUquWNl+XC/moEcVFqS55IEYIYsY0a1cUCevSqk7ctOlnm/RaSBU5psFryNlxcmGrjaA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/editor@4.2.18': + resolution: {integrity: sha512-yeQN3AXjCm7+Hmq5L6Dm2wEDeBRdAZuyZ4I7tWSSanbxDzqM0KqzoDbKM7p4ebllAYdoQuPJS6N71/3L281i6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/expand@4.0.18': + resolution: {integrity: sha512-xUjteYtavH7HwDMzq4Cn2X4Qsh5NozoDHCJTdoXg9HfZ4w3R6mxV1B9tL7DGJX2eq/zqtsFjhm0/RJIMGlh3ag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/external-editor@1.0.1': + resolution: {integrity: sha512-Oau4yL24d2B5IL4ma4UpbQigkVhzPDXLoqy1ggK4gnHg/stmkffJE4oOXHXF3uz0UEpywG68KcyXsyYpA1Re/Q==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/figures@1.0.13': + resolution: {integrity: sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw==} + engines: {node: '>=18'} + + '@inquirer/input@4.2.2': + resolution: {integrity: sha512-hqOvBZj/MhQCpHUuD3MVq18SSoDNHy7wEnQ8mtvs71K8OPZVXJinOzcvQna33dNYLYE4LkA9BlhAhK6MJcsVbw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/number@3.0.18': + resolution: {integrity: sha512-7exgBm52WXZRczsydCVftozFTrrwbG5ySE0GqUd2zLNSBXyIucs2Wnm7ZKLe/aUu6NUg9dg7Q80QIHCdZJiY4A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/password@4.0.18': + resolution: {integrity: sha512-zXvzAGxPQTNk/SbT3carAD4Iqi6A2JS2qtcqQjsL22uvD+JfQzUrDEtPjLL7PLn8zlSNyPdY02IiQjzoL9TStA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/prompts@7.8.4': + resolution: {integrity: sha512-MuxVZ1en1g5oGamXV3DWP89GEkdD54alcfhHd7InUW5BifAdKQEK9SLFa/5hlWbvuhMPlobF0WAx7Okq988Jxg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/rawlist@4.1.6': + resolution: {integrity: sha512-KOZqa3QNr3f0pMnufzL7K+nweFFCCBs6LCXZzXDrVGTyssjLeudn5ySktZYv1XiSqobyHRYYK0c6QsOxJEhXKA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/search@3.1.1': + resolution: {integrity: sha512-TkMUY+A2p2EYVY3GCTItYGvqT6LiLzHBnqsU1rJbrpXUijFfM6zvUx0R4civofVwFCmJZcKqOVwwWAjplKkhxA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/select@4.3.2': + resolution: {integrity: sha512-nwous24r31M+WyDEHV+qckXkepvihxhnyIaod2MG7eCE6G0Zm/HUF6jgN8GXgf4U7AU6SLseKdanY195cwvU6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/type@3.0.8': + resolution: {integrity: sha512-lg9Whz8onIHRthWaN1Q9EGLa/0LFJjyM8mEUbL1eTi6yMGvBf8gvyDLtxSXztQsxMvhxxNpJYrwa1YHdq+w4Jw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@napi-rs/cli@3.0.1': + resolution: {integrity: sha512-rO2aDZRzqs0bCPUpfaExKjK0L999FvT3iQK3f1NfnKa1njlaHqO7XK/mUzxn9pnrTglfyFixU4+S3SzzTaaKNA==} + engines: {node: '>= 16'} + hasBin: true + peerDependencies: + '@emnapi/runtime': ^1.1.0 + emnapi: ^1.1.0 + peerDependenciesMeta: + '@emnapi/runtime': + optional: true + emnapi: + optional: true + + '@napi-rs/cross-toolchain@0.0.19': + resolution: {integrity: sha512-StHXqYANdTaMFqJJ3JXHqKQMylOzOJPcrOCd9Nt2NIGfvfaXK3SzpmNfkJimkOAYfTsfpfuRERsML0bUZCpHBQ==} + peerDependencies: + '@napi-rs/cross-toolchain-arm64-target-aarch64': ^0.0.19 + '@napi-rs/cross-toolchain-arm64-target-armv7': ^0.0.19 + '@napi-rs/cross-toolchain-arm64-target-x86_64': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-aarch64': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-armv7': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-x86_64': ^0.0.19 + peerDependenciesMeta: + '@napi-rs/cross-toolchain-arm64-target-aarch64': + optional: true + '@napi-rs/cross-toolchain-arm64-target-armv7': + optional: true + '@napi-rs/cross-toolchain-arm64-target-x86_64': + optional: true + '@napi-rs/cross-toolchain-x64-target-aarch64': + optional: true + '@napi-rs/cross-toolchain-x64-target-armv7': + optional: true + '@napi-rs/cross-toolchain-x64-target-x86_64': + optional: true + + '@napi-rs/lzma-android-arm-eabi@1.4.5': + resolution: {integrity: sha512-Up4gpyw2SacmyKWWEib06GhiDdF+H+CCU0LAV8pnM4aJIDqKKd5LHSlBht83Jut6frkB0vwEPmAkv4NjQ5u//Q==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/lzma-android-arm64@1.4.5': + resolution: {integrity: sha512-uwa8sLlWEzkAM0MWyoZJg0JTD3BkPknvejAFG2acUA1raXM8jLrqujWCdOStisXhqQjZ2nDMp3FV6cs//zjfuQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/lzma-darwin-arm64@1.4.5': + resolution: {integrity: sha512-0Y0TQLQ2xAjVabrMDem1NhIssOZzF/y/dqetc6OT8mD3xMTDtF8u5BqZoX3MyPc9FzpsZw4ksol+w7DsxHrpMA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/lzma-darwin-x64@1.4.5': + resolution: {integrity: sha512-vR2IUyJY3En+V1wJkwmbGWcYiT8pHloTAWdW4pG24+51GIq+intst6Uf6D/r46citObGZrlX0QvMarOkQeHWpw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/lzma-freebsd-x64@1.4.5': + resolution: {integrity: sha512-XpnYQC5SVovO35tF0xGkbHYjsS6kqyNCjuaLQ2dbEblFRr5cAZVvsJ/9h7zj/5FluJPJRDojVNxGyRhTp4z2lw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/lzma-linux-arm-gnueabihf@1.4.5': + resolution: {integrity: sha512-ic1ZZMoRfRMwtSwxkyw4zIlbDZGC6davC9r+2oX6x9QiF247BRqqT94qGeL5ZP4Vtz0Hyy7TEViWhx5j6Bpzvw==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/lzma-linux-arm64-gnu@1.4.5': + resolution: {integrity: sha512-asEp7FPd7C1Yi6DQb45a3KPHKOFBSfGuJWXcAd4/bL2Fjetb2n/KK2z14yfW8YC/Fv6x3rBM0VAZKmJuz4tysg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/lzma-linux-arm64-musl@1.4.5': + resolution: {integrity: sha512-yWjcPDgJ2nIL3KNvi4536dlT/CcCWO0DUyEOlBs/SacG7BeD6IjGh6yYzd3/X1Y3JItCbZoDoLUH8iB1lTXo3w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/lzma-linux-ppc64-gnu@1.4.5': + resolution: {integrity: sha512-0XRhKuIU/9ZjT4WDIG/qnX7Xz7mSQHYZo9Gb3MP2gcvBgr6BA4zywQ9k3gmQaPn9ECE+CZg2V7DV7kT+x2pUMQ==} + engines: {node: '>= 10'} + cpu: [ppc64] + os: [linux] + + '@napi-rs/lzma-linux-riscv64-gnu@1.4.5': + resolution: {integrity: sha512-QrqDIPEUUB23GCpyQj/QFyMlr8SGxxyExeZz9OWFnHfb70kXdTLWrHS/hEI1Ru+lSbQ/6xRqeoGyQ4Aqdg+/RA==} + engines: {node: '>= 10'} + cpu: [riscv64] + os: [linux] + + '@napi-rs/lzma-linux-s390x-gnu@1.4.5': + resolution: {integrity: sha512-k8RVM5aMhW86E9H0QXdquwojew4H3SwPxbRVbl49/COJQWCUjGi79X6mYruMnMPEznZinUiT1jgKbFo2A00NdA==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + + '@napi-rs/lzma-linux-x64-gnu@1.4.5': + resolution: {integrity: sha512-6rMtBgnIq2Wcl1rQdZsnM+rtCcVCbws1nF8S2NzaUsVaZv8bjrPiAa0lwg4Eqnn1d9lgwqT+cZgm5m+//K08Kw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/lzma-linux-x64-musl@1.4.5': + resolution: {integrity: sha512-eiadGBKi7Vd0bCArBUOO/qqRYPHt/VQVvGyYvDFt6C2ZSIjlD+HuOl+2oS1sjf4CFjK4eDIog6EdXnL0NE6iyQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/lzma-wasm32-wasi@1.4.5': + resolution: {integrity: sha512-+VyHHlr68dvey6fXc2hehw9gHVFIW3TtGF1XkcbAu65qVXsA9D/T+uuoRVqhE+JCyFHFrO0ixRbZDRK1XJt1sA==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/lzma-win32-arm64-msvc@1.4.5': + resolution: {integrity: sha512-eewnqvIyyhHi3KaZtBOJXohLvwwN27gfS2G/YDWdfHlbz1jrmfeHAmzMsP5qv8vGB+T80TMHNkro4kYjeh6Deg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/lzma-win32-ia32-msvc@1.4.5': + resolution: {integrity: sha512-OeacFVRCJOKNU/a0ephUfYZ2Yt+NvaHze/4TgOwJ0J0P4P7X1mHzN+ig9Iyd74aQDXYqc7kaCXA2dpAOcH87Cg==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/lzma-win32-x64-msvc@1.4.5': + resolution: {integrity: sha512-T4I1SamdSmtyZgDXGAGP+y5LEK5vxHUFwe8mz6D4R7Sa5/WCxTcCIgPJ9BD7RkpO17lzhlaM2vmVvMy96Lvk9Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/lzma@1.4.5': + resolution: {integrity: sha512-zS5LuN1OBPAyZpda2ZZgYOEDC+xecUdAGnrvbYzjnLXkrq/OBC3B9qcRvlxbDR3k5H/gVfvef1/jyUqPknqjbg==} + engines: {node: '>= 10'} + + '@napi-rs/tar-android-arm-eabi@0.1.5': + resolution: {integrity: sha512-FM2qNG3ELeYibnZC8dfsCV4i/pql1nlLKVINfRC7TSwqFfgj5gbezZ0rT8gRPHbLyslVt6m4MPZfRE8Uj/MuCA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/tar-android-arm64@0.1.5': + resolution: {integrity: sha512-OpP0QyD+K0a68nqyko793lLWiC2BN1wWF/Doatus1OCKxgj61vtrUPVO2cQGQS5i07I/+YGRF8lD0tQDrk4JDQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/tar-darwin-arm64@0.1.5': + resolution: {integrity: sha512-sfyM/9gxFabdMTFt4quvLJuKbXS6StGIUf7Cp3l8aV2WqCURJevdpN6wW8XtGBo/iSnAP52ERwMRdyIavPYruw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/tar-darwin-x64@0.1.5': + resolution: {integrity: sha512-NtY8bADKE/3ODBM3hW/RgPeeERJpI6/jgipT3eLJ/CQWY1VJ6t9GHR7anJKhx1oxVdmSfqfCGMolM8WPV9x9bw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/tar-freebsd-x64@0.1.5': + resolution: {integrity: sha512-azl0nWrDJAGg25cGVKEY7UtU5ABGz4sQASKvemDLwGbzMDtkJgCoPb+OunI1pezijRAyhiuZEQ4jK8S1qNAWCg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/tar-linux-arm-gnueabihf@0.1.5': + resolution: {integrity: sha512-OjGdKjaW7b0m96rAvsLthMBhwYSSgpTM/WkHqRJo91HCYQ6tHXDBnq4VIQx2FpwT1PoetvRsbSgy0tOc95iYjA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/tar-linux-arm64-gnu@0.1.5': + resolution: {integrity: sha512-o3b2VE5c7+NFb6XRcXrdXgur1yhpx+XNItFoeJUMBE8z0AGAISf2DJSbcJawmefUvrGtr+iLr61hsr6f2hw+5Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/tar-linux-arm64-musl@0.1.5': + resolution: {integrity: sha512-5xTxsoPVqovnZ197CqTc+q3psRM4i+ErdiyfDgkG4nP045jh50gp22WKZuE24dc7/iS+IyUrM3+PRbmj2mzR8g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/tar-linux-ppc64-gnu@0.1.5': + resolution: {integrity: sha512-7FF1u8EkDpCEPCgU0/kvuzsO+opB7eIbsGfKRIbOqrDT7c1DYxDetNTtukPvNoT2kvwfxxThgTfcPADPxdOE/w==} + engines: {node: '>= 10'} + cpu: [ppc64] + os: [linux] + + '@napi-rs/tar-linux-s390x-gnu@0.1.5': + resolution: {integrity: sha512-uyIZ7OLCLHtVBpogoJUD0GSAF1IUa3d5c5AVUemTLIwYkVgzdEB+khh3i2+/oKObf79ZKfQ8mYxOryHqfx+ulw==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + + '@napi-rs/tar-linux-x64-gnu@0.1.5': + resolution: {integrity: sha512-y8pFyVTU6lSYiW2lse6i1Ns9yt9mBkAqPbcJnIjqC7ZqRd61T6g3XZDSrKmsM6ycTfsAqoE5WyyFxBjQN29AOA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/tar-linux-x64-musl@0.1.5': + resolution: {integrity: sha512-8phLYc0QX+tqvp34PQHUulZUi4sy/fdg1KgFHiyYExTRRleBB01vM7KSn7Bk9dwH7lannO5D7j4O8OY46Xcr/A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/tar-wasm32-wasi@0.1.5': + resolution: {integrity: sha512-OpVWC/bwY0zb6nbQDg6koxeZGb441gXwPkaYVjaK4O0TJjNpRKbokLAMlGFtcc/sVSPjghFL0+enfnLDt/P7og==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/tar-win32-arm64-msvc@0.1.5': + resolution: {integrity: sha512-FXwQA2Ib55q98szshvDsitgo2iLW2lTD1Q53e8dPMGobPa2yL5e8IjJDCcMI7XJwBZPl9YjJk7nAb8y20DXF+Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/tar-win32-ia32-msvc@0.1.5': + resolution: {integrity: sha512-XEt58yFslNkwf2yJ+uX5nDNmPAk15Metkx2hVPeH29mOpuG2H8nuS8/42hZ+dQfZf3xABRjyurVMMH9JcgLZIQ==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/tar-win32-x64-msvc@0.1.5': + resolution: {integrity: sha512-9Rq0Ob4S5NGFwNL3kGQkgrYlObqQgw19QMSZdVuhzZ9sSxn9OSF5cWgZ/n1oMEPWK+u6n9GSN2XbPn4DI7pm7Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/tar@0.1.5': + resolution: {integrity: sha512-skgWKcpjtUqJUk1jwhVl8vXYCXQlFC532KiryU3hQBr6ZIJk0E0qD9FG99hUqtPko8mIMS5HDPO+uSnvHfgRVg==} + engines: {node: '>= 10'} + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@napi-rs/wasm-runtime@1.0.3': + resolution: {integrity: sha512-rZxtMsLwjdXkMUGC3WwsPwLNVqVqnTJT6MNIB6e+5fhMcSCPP0AOsNWuMQ5mdCq6HNjs/ZeWAEchpqeprqBD2Q==} + + '@napi-rs/wasm-tools-android-arm-eabi@0.0.3': + resolution: {integrity: sha512-T2tme8w5jZ/ZCjJurqNtKCxYtGoDjW9v2rn1bfI60ewCfkYXNpxrTURdkOib85sz+BcwmOfXn0enbg5W9KohoQ==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/wasm-tools-android-arm64@0.0.3': + resolution: {integrity: sha512-siHTjrxxBrvsVty5X2jI5waAyzJpr756GqGVUqxqS2eoTuqYRfgaFNvX8asp9LAagFtOojfD0fZfuvxK7dc4Rw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/wasm-tools-darwin-arm64@0.0.3': + resolution: {integrity: sha512-0MqsSOYJ4jXcLv/nAInS8nwU+/hL0rSEJo7JXKj3dhkT9UNSj4zfidcOaIb05O9VskJBPmV040+edtWPHXNt2Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/wasm-tools-darwin-x64@0.0.3': + resolution: {integrity: sha512-yXAK2mrlBMZZYK/59JRHZu/c683HFpr5ork1cn++fy8gqUBRLbjuq47VDjA7oyLW5SmWqNDhmhjFTDGvfIvcUg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/wasm-tools-freebsd-x64@0.0.3': + resolution: {integrity: sha512-K1rne814utBd9Zo9LCggQ5h0TSnzGPzA+sG78Qr7KfFz8XQxEGDRH5wpzXyF1KaKav2RmO6wGMXlasDgIcq7GA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/wasm-tools-linux-arm64-gnu@0.0.3': + resolution: {integrity: sha512-Yu3gtpvGc2+hcay3SU5MK7EMrGPBq/V4i8mpw/MEYUCzOb7Vd9aL8CryElzlk0SIbktG08VYMdhFFFoJAjlYtg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/wasm-tools-linux-arm64-musl@0.0.3': + resolution: {integrity: sha512-XN+sPgEwFw3P47wDvtcQyOoZNghIL8gaiRjEGzprB+kE9N21GkuMbk3kdjiBBJkjqKF25f4fbOvNAY0jQEAO3A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/wasm-tools-linux-x64-gnu@0.0.3': + resolution: {integrity: sha512-mfMvMEqn33YtEjIyLPguZ6yDsNtF5zV7mqc99620YDyj2SLa0aI35TNTc7Dm+/hlgqHRKhdudsWGfYc4dBND2Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/wasm-tools-linux-x64-musl@0.0.3': + resolution: {integrity: sha512-KXMsXWGELoN5xgPCoRHbgt5TScSx8BK2GcCHKJ9OPZ2HMfsXbLgS/SNi6vz1CbLMZMLPBY2G6HAk0gzLGyS0mQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/wasm-tools-wasm32-wasi@0.0.3': + resolution: {integrity: sha512-v3iMHnAfMteogpbqHTFeLXPeAzL5AhpDJLvZvLXbuRiMsMRL0dn8CbcEnYja2P/Ui6Xlyky6PcaUsepOUTNb7A==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/wasm-tools-win32-arm64-msvc@0.0.3': + resolution: {integrity: sha512-HWrg9cW+u+rQKL9XCQILaGGs6mDYdwX9nwcTIvJAjrpGWu8Dp4wz6i66w6YKHqVng1suGYjjr+LH4/1e0tDaAg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/wasm-tools-win32-ia32-msvc@0.0.3': + resolution: {integrity: sha512-h99hAWvQKhcloyPfPi0IjrvKRToTE9Z4UVXoXZhcjpCGmr3o1qW+1FAupRy/TcVdMjUJNLE/aenml3UPqzQEQw==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/wasm-tools-win32-x64-msvc@0.0.3': + resolution: {integrity: sha512-7/6IpzMi9VGYxLcc9SJyu9ZIdbDwyyb09glVF/2SFEgke9F5H46XzRrAdSoRnjfcq/tdLyHKJbnpCIB257qVYg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/wasm-tools@0.0.3': + resolution: {integrity: sha512-p7NT5wnOIwmP0f3KbXlMabeld5dPFsADpHMWJaBodTSmnPE8P4msguxKJLKWquqAS1FY2dsjBZ62K0/hfiqAUg==} + engines: {node: '>= 10'} + + '@octokit/auth-token@6.0.0': + resolution: {integrity: sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w==} + engines: {node: '>= 20'} + + '@octokit/core@7.0.3': + resolution: {integrity: sha512-oNXsh2ywth5aowwIa7RKtawnkdH6LgU1ztfP9AIUCQCvzysB+WeU8o2kyyosDPwBZutPpjZDKPQGIzzrfTWweQ==} + engines: {node: '>= 20'} + + '@octokit/endpoint@11.0.0': + resolution: {integrity: sha512-hoYicJZaqISMAI3JfaDr1qMNi48OctWuOih1m80bkYow/ayPw6Jj52tqWJ6GEoFTk1gBqfanSoI1iY99Z5+ekQ==} + engines: {node: '>= 20'} + + '@octokit/graphql@9.0.1': + resolution: {integrity: sha512-j1nQNU1ZxNFx2ZtKmL4sMrs4egy5h65OMDmSbVyuCzjOcwsHq6EaYjOTGXPQxgfiN8dJ4CriYHk6zF050WEULg==} + engines: {node: '>= 20'} + + '@octokit/openapi-types@25.1.0': + resolution: {integrity: sha512-idsIggNXUKkk0+BExUn1dQ92sfysJrje03Q0bv0e+KPLrvyqZF8MnBpFz8UNfYDwB3Ie7Z0TByjWfzxt7vseaA==} + + '@octokit/plugin-paginate-rest@13.1.1': + resolution: {integrity: sha512-q9iQGlZlxAVNRN2jDNskJW/Cafy7/XE52wjZ5TTvyhyOD904Cvx//DNyoO3J/MXJ0ve3rPoNWKEg5iZrisQSuw==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/plugin-request-log@6.0.0': + resolution: {integrity: sha512-UkOzeEN3W91/eBq9sPZNQ7sUBvYCqYbrrD8gTbBuGtHEuycE4/awMXcYvx6sVYo7LypPhmQwwpUe4Yyu4QZN5Q==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/plugin-rest-endpoint-methods@16.0.0': + resolution: {integrity: sha512-kJVUQk6/dx/gRNLWUnAWKFs1kVPn5O5CYZyssyEoNYaFedqZxsfYs7DwI3d67hGz4qOwaJ1dpm07hOAD1BXx6g==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/request-error@7.0.0': + resolution: {integrity: sha512-KRA7VTGdVyJlh0cP5Tf94hTiYVVqmt2f3I6mnimmaVz4UG3gQV/k4mDJlJv3X67iX6rmN7gSHCF8ssqeMnmhZg==} + engines: {node: '>= 20'} + + '@octokit/request@10.0.3': + resolution: {integrity: sha512-V6jhKokg35vk098iBqp2FBKunk3kMTXlmq+PtbV9Gl3TfskWlebSofU9uunVKhUN7xl+0+i5vt0TGTG8/p/7HA==} + engines: {node: '>= 20'} + + '@octokit/rest@22.0.0': + resolution: {integrity: sha512-z6tmTu9BTnw51jYGulxrlernpsQYXpui1RK21vmXn8yF5bp6iX16yfTtJYGK5Mh1qDkvDOmp2n8sRMcQmR8jiA==} + engines: {node: '>= 20'} + + '@octokit/types@14.1.0': + resolution: {integrity: sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g==} + + '@tybys/wasm-util@0.10.0': + resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} + + '@types/node@24.3.0': + resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + before-after-hook@4.0.0: + resolution: {integrity: sha512-q6tR3RPqIB1pMiTRMFcZwuG5T8vwp+vUvEG0vuI6B+Rikh5BfPp2fQ82c925FOs+b0lcFQ8CFrL+KbilfZFhOQ==} + + chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + + clipanion@4.0.0-rc.4: + resolution: {integrity: sha512-CXkMQxU6s9GklO/1f714dkKBMu1lopS1WFF0B8o4AxPykR1hpozxSiUZ5ZUeBjfPgCWqbcNOtZVFhB8Lkfp1+Q==} + peerDependencies: + typanion: '*' + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + fast-content-type-parse@3.0.0: + resolution: {integrity: sha512-ZvLdcY8P+N8mGQJahJV5G4U88CSvT1rP8ApL6uETe88MBXrBHAkZlSEySdUlyztF7ccb+Znos3TFqaepHxdhBg==} + + find-up@7.0.0: + resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} + engines: {node: '>=18'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + + p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + typanion@3.14.0: + resolution: {integrity: sha512-ZW/lVMRabETuYCd9O9ZvMhAh8GslSqaUjxmK/JLPCh6l73CvLBiuXswj/+7LdnWOgYsQ130FqLzFz5aGT4I3Ug==} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + typescript@5.9.2: + resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@7.10.0: + resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} + + unicorn-magic@0.1.0: + resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} + engines: {node: '>=18'} + + universal-user-agent@7.0.3: + resolution: {integrity: sha512-TmnEAEAsBJVZM/AADELsK76llnwcf9vMKuPz8JflO1frO8Lchitr0fNaN9d+Ap0BjKtqWqd/J17qeDnXh8CL2A==} + + wasm-sjlj@1.0.6: + resolution: {integrity: sha512-pjaKtLJejlWm6+okPV2X1A6nIsRDD4qeK97eCh8DP8KXi3Nzn/HY01vpHhZHlhDri12eZqipjm8HhdTVw+ATxw==} + + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + + yocto-queue@1.2.1: + resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==} + engines: {node: '>=12.20'} + + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + +snapshots: + + '@emnapi/core@1.4.5': + dependencies: + '@emnapi/wasi-threads': 1.0.4 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.4.5': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.0.4': + dependencies: + tslib: 2.8.1 + optional: true + + '@inquirer/checkbox@4.2.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/confirm@5.1.16(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/core@10.2.0(@types/node@24.3.0)': + dependencies: + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/editor@4.2.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/external-editor': 1.0.1(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/expand@4.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/external-editor@1.0.1(@types/node@24.3.0)': + dependencies: + chardet: 2.1.0 + iconv-lite: 0.6.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/figures@1.0.13': {} + + '@inquirer/input@4.2.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/number@3.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/password@4.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/prompts@7.8.4(@types/node@24.3.0)': + dependencies: + '@inquirer/checkbox': 4.2.2(@types/node@24.3.0) + '@inquirer/confirm': 5.1.16(@types/node@24.3.0) + '@inquirer/editor': 4.2.18(@types/node@24.3.0) + '@inquirer/expand': 4.0.18(@types/node@24.3.0) + '@inquirer/input': 4.2.2(@types/node@24.3.0) + '@inquirer/number': 3.0.18(@types/node@24.3.0) + '@inquirer/password': 4.0.18(@types/node@24.3.0) + '@inquirer/rawlist': 4.1.6(@types/node@24.3.0) + '@inquirer/search': 3.1.1(@types/node@24.3.0) + '@inquirer/select': 4.3.2(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/rawlist@4.1.6(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/search@3.1.1(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/select@4.3.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/type@3.0.8(@types/node@24.3.0)': + optionalDependencies: + '@types/node': 24.3.0 + + '@napi-rs/cli@3.0.1(@emnapi/runtime@1.4.5)(@types/node@24.3.0)': + dependencies: + '@inquirer/prompts': 7.8.4(@types/node@24.3.0) + '@napi-rs/cross-toolchain': 0.0.19 + '@napi-rs/wasm-tools': 0.0.3 + '@octokit/rest': 22.0.0 + clipanion: 4.0.0-rc.4(typanion@3.14.0) + colorette: 2.0.20 + debug: 4.4.1 + find-up: 7.0.0 + js-yaml: 4.1.0 + lodash-es: 4.17.21 + semver: 7.7.2 + typanion: 3.14.0 + wasm-sjlj: 1.0.6 + optionalDependencies: + '@emnapi/runtime': 1.4.5 + transitivePeerDependencies: + - '@napi-rs/cross-toolchain-arm64-target-aarch64' + - '@napi-rs/cross-toolchain-arm64-target-armv7' + - '@napi-rs/cross-toolchain-arm64-target-x86_64' + - '@napi-rs/cross-toolchain-x64-target-aarch64' + - '@napi-rs/cross-toolchain-x64-target-armv7' + - '@napi-rs/cross-toolchain-x64-target-x86_64' + - '@types/node' + - supports-color + + '@napi-rs/cross-toolchain@0.0.19': + dependencies: + '@napi-rs/lzma': 1.4.5 + '@napi-rs/tar': 0.1.5 + debug: 4.4.1 + transitivePeerDependencies: + - supports-color + + '@napi-rs/lzma-android-arm-eabi@1.4.5': + optional: true + + '@napi-rs/lzma-android-arm64@1.4.5': + optional: true + + '@napi-rs/lzma-darwin-arm64@1.4.5': + optional: true + + '@napi-rs/lzma-darwin-x64@1.4.5': + optional: true + + '@napi-rs/lzma-freebsd-x64@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm-gnueabihf@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm64-musl@1.4.5': + optional: true + + '@napi-rs/lzma-linux-ppc64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-riscv64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-s390x-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-x64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-x64-musl@1.4.5': + optional: true + + '@napi-rs/lzma-wasm32-wasi@1.4.5': + dependencies: + '@napi-rs/wasm-runtime': 1.0.3 + optional: true + + '@napi-rs/lzma-win32-arm64-msvc@1.4.5': + optional: true + + '@napi-rs/lzma-win32-ia32-msvc@1.4.5': + optional: true + + '@napi-rs/lzma-win32-x64-msvc@1.4.5': + optional: true + + '@napi-rs/lzma@1.4.5': + optionalDependencies: + '@napi-rs/lzma-android-arm-eabi': 1.4.5 + '@napi-rs/lzma-android-arm64': 1.4.5 + '@napi-rs/lzma-darwin-arm64': 1.4.5 + '@napi-rs/lzma-darwin-x64': 1.4.5 + '@napi-rs/lzma-freebsd-x64': 1.4.5 + '@napi-rs/lzma-linux-arm-gnueabihf': 1.4.5 + '@napi-rs/lzma-linux-arm64-gnu': 1.4.5 + '@napi-rs/lzma-linux-arm64-musl': 1.4.5 + '@napi-rs/lzma-linux-ppc64-gnu': 1.4.5 + '@napi-rs/lzma-linux-riscv64-gnu': 1.4.5 + '@napi-rs/lzma-linux-s390x-gnu': 1.4.5 + '@napi-rs/lzma-linux-x64-gnu': 1.4.5 + '@napi-rs/lzma-linux-x64-musl': 1.4.5 + '@napi-rs/lzma-wasm32-wasi': 1.4.5 + '@napi-rs/lzma-win32-arm64-msvc': 1.4.5 + '@napi-rs/lzma-win32-ia32-msvc': 1.4.5 + '@napi-rs/lzma-win32-x64-msvc': 1.4.5 + + '@napi-rs/tar-android-arm-eabi@0.1.5': + optional: true + + '@napi-rs/tar-android-arm64@0.1.5': + optional: true + + '@napi-rs/tar-darwin-arm64@0.1.5': + optional: true + + '@napi-rs/tar-darwin-x64@0.1.5': + optional: true + + '@napi-rs/tar-freebsd-x64@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm-gnueabihf@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm64-musl@0.1.5': + optional: true + + '@napi-rs/tar-linux-ppc64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-s390x-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-x64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-x64-musl@0.1.5': + optional: true + + '@napi-rs/tar-wasm32-wasi@0.1.5': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@napi-rs/tar-win32-arm64-msvc@0.1.5': + optional: true + + '@napi-rs/tar-win32-ia32-msvc@0.1.5': + optional: true + + '@napi-rs/tar-win32-x64-msvc@0.1.5': + optional: true + + '@napi-rs/tar@0.1.5': + optionalDependencies: + '@napi-rs/tar-android-arm-eabi': 0.1.5 + '@napi-rs/tar-android-arm64': 0.1.5 + '@napi-rs/tar-darwin-arm64': 0.1.5 + '@napi-rs/tar-darwin-x64': 0.1.5 + '@napi-rs/tar-freebsd-x64': 0.1.5 + '@napi-rs/tar-linux-arm-gnueabihf': 0.1.5 + '@napi-rs/tar-linux-arm64-gnu': 0.1.5 + '@napi-rs/tar-linux-arm64-musl': 0.1.5 + '@napi-rs/tar-linux-ppc64-gnu': 0.1.5 + '@napi-rs/tar-linux-s390x-gnu': 0.1.5 + '@napi-rs/tar-linux-x64-gnu': 0.1.5 + '@napi-rs/tar-linux-x64-musl': 0.1.5 + '@napi-rs/tar-wasm32-wasi': 0.1.5 + '@napi-rs/tar-win32-arm64-msvc': 0.1.5 + '@napi-rs/tar-win32-ia32-msvc': 0.1.5 + '@napi-rs/tar-win32-x64-msvc': 0.1.5 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.4.5 + '@emnapi/runtime': 1.4.5 + '@tybys/wasm-util': 0.10.0 + optional: true + + '@napi-rs/wasm-runtime@1.0.3': + dependencies: + '@emnapi/core': 1.4.5 + '@emnapi/runtime': 1.4.5 + '@tybys/wasm-util': 0.10.0 + optional: true + + '@napi-rs/wasm-tools-android-arm-eabi@0.0.3': + optional: true + + '@napi-rs/wasm-tools-android-arm64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-darwin-arm64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-darwin-x64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-freebsd-x64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-arm64-gnu@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-arm64-musl@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-x64-gnu@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-x64-musl@0.0.3': + optional: true + + '@napi-rs/wasm-tools-wasm32-wasi@0.0.3': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@napi-rs/wasm-tools-win32-arm64-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools-win32-ia32-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools-win32-x64-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools@0.0.3': + optionalDependencies: + '@napi-rs/wasm-tools-android-arm-eabi': 0.0.3 + '@napi-rs/wasm-tools-android-arm64': 0.0.3 + '@napi-rs/wasm-tools-darwin-arm64': 0.0.3 + '@napi-rs/wasm-tools-darwin-x64': 0.0.3 + '@napi-rs/wasm-tools-freebsd-x64': 0.0.3 + '@napi-rs/wasm-tools-linux-arm64-gnu': 0.0.3 + '@napi-rs/wasm-tools-linux-arm64-musl': 0.0.3 + '@napi-rs/wasm-tools-linux-x64-gnu': 0.0.3 + '@napi-rs/wasm-tools-linux-x64-musl': 0.0.3 + '@napi-rs/wasm-tools-wasm32-wasi': 0.0.3 + '@napi-rs/wasm-tools-win32-arm64-msvc': 0.0.3 + '@napi-rs/wasm-tools-win32-ia32-msvc': 0.0.3 + '@napi-rs/wasm-tools-win32-x64-msvc': 0.0.3 + + '@octokit/auth-token@6.0.0': {} + + '@octokit/core@7.0.3': + dependencies: + '@octokit/auth-token': 6.0.0 + '@octokit/graphql': 9.0.1 + '@octokit/request': 10.0.3 + '@octokit/request-error': 7.0.0 + '@octokit/types': 14.1.0 + before-after-hook: 4.0.0 + universal-user-agent: 7.0.3 + + '@octokit/endpoint@11.0.0': + dependencies: + '@octokit/types': 14.1.0 + universal-user-agent: 7.0.3 + + '@octokit/graphql@9.0.1': + dependencies: + '@octokit/request': 10.0.3 + '@octokit/types': 14.1.0 + universal-user-agent: 7.0.3 + + '@octokit/openapi-types@25.1.0': {} + + '@octokit/plugin-paginate-rest@13.1.1(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/types': 14.1.0 + + '@octokit/plugin-request-log@6.0.0(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + + '@octokit/plugin-rest-endpoint-methods@16.0.0(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/types': 14.1.0 + + '@octokit/request-error@7.0.0': + dependencies: + '@octokit/types': 14.1.0 + + '@octokit/request@10.0.3': + dependencies: + '@octokit/endpoint': 11.0.0 + '@octokit/request-error': 7.0.0 + '@octokit/types': 14.1.0 + fast-content-type-parse: 3.0.0 + universal-user-agent: 7.0.3 + + '@octokit/rest@22.0.0': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/plugin-paginate-rest': 13.1.1(@octokit/core@7.0.3) + '@octokit/plugin-request-log': 6.0.0(@octokit/core@7.0.3) + '@octokit/plugin-rest-endpoint-methods': 16.0.0(@octokit/core@7.0.3) + + '@octokit/types@14.1.0': + dependencies: + '@octokit/openapi-types': 25.1.0 + + '@tybys/wasm-util@0.10.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/node@24.3.0': + dependencies: + undici-types: 7.10.0 + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + before-after-hook@4.0.0: {} + + chardet@2.1.0: {} + + cli-width@4.1.0: {} + + clipanion@4.0.0-rc.4(typanion@3.14.0): + dependencies: + typanion: 3.14.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + colorette@2.0.20: {} + + debug@4.4.1: + dependencies: + ms: 2.1.3 + + emoji-regex@8.0.0: {} + + fast-content-type-parse@3.0.0: {} + + find-up@7.0.0: + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + unicorn-magic: 0.1.0 + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + + is-fullwidth-code-point@3.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + locate-path@7.2.0: + dependencies: + p-locate: 6.0.0 + + lodash-es@4.17.21: {} + + ms@2.1.3: {} + + mute-stream@2.0.0: {} + + p-limit@4.0.0: + dependencies: + yocto-queue: 1.2.1 + + p-locate@6.0.0: + dependencies: + p-limit: 4.0.0 + + path-exists@5.0.0: {} + + safer-buffer@2.1.2: {} + + semver@7.7.2: {} + + signal-exit@4.1.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + tslib@2.8.1: + optional: true + + typanion@3.14.0: {} + + type-fest@0.21.3: {} + + typescript@5.9.2: {} + + undici-types@7.10.0: {} + + unicorn-magic@0.1.0: {} + + universal-user-agent@7.0.3: {} + + wasm-sjlj@1.0.6: {} + + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + yocto-queue@1.2.1: {} + + yoctocolors-cjs@2.1.3: {} diff --git a/crates/next-rspack/pnpm-workspace.yaml b/crates/next-rspack/pnpm-workspace.yaml new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/crates/next-rspack/tsconfig.json b/crates/next-rspack/tsconfig.json new file mode 100644 index 0000000000000..29d55f235b8a9 --- /dev/null +++ b/crates/next-rspack/tsconfig.json @@ -0,0 +1,7 @@ +{ + "copmilerOptions": { + "module": "NodeNext", + "allowJs": true, + "strict": true + } +} From e3083fb101965d6c16ae8764675dd5308bd0c27c Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:02:39 +0800 Subject: [PATCH 04/38] share NEVER_EXTERNAL_RE --- Cargo.lock | 1 + crates/next-core/src/next_server/resolve.rs | 9 +-- crates/next-rspack/.gitignore | 1 + crates/next-rspack/Cargo.lock | 15 ++++ crates/next-rspack/Cargo.toml | 2 + crates/next-rspack/src/handle_externals.rs | 9 +-- crates/next-taskless/src/constants.rs | 79 +++++++++++++++++++ crates/next-taskless/src/lib.rs | 5 ++ crates/next-taskless/src/patterns.rs | 8 ++ turbopack/crates/turbopack-resolve/Cargo.toml | 1 + .../crates/turbopack-resolve/src/resolve.rs | 79 +------------------ 11 files changed, 116 insertions(+), 93 deletions(-) create mode 100644 crates/next-rspack/.gitignore create mode 100644 crates/next-taskless/src/constants.rs create mode 100644 crates/next-taskless/src/patterns.rs diff --git a/Cargo.lock b/Cargo.lock index 10f26d1af0781..7f5ecb93619c0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9956,6 +9956,7 @@ name = "turbopack-resolve" version = "0.1.0" dependencies = [ "anyhow", + "next-taskless", "regex", "serde", "serde_json", diff --git a/crates/next-core/src/next_server/resolve.rs b/crates/next-core/src/next_server/resolve.rs index c6f8ed108c87f..a6a7aa3ada761 100644 --- a/crates/next-core/src/next_server/resolve.rs +++ b/crates/next-core/src/next_server/resolve.rs @@ -1,7 +1,5 @@ -use std::sync::LazyLock; - use anyhow::Result; -use regex::Regex; +use next_taskless::NEVER_EXTERNAL_RE; use serde::{Deserialize, Serialize}; use turbo_rcstr::{RcStr, rcstr}; use turbo_tasks::{NonLocalValue, ResolvedVc, Vc, trace::TraceRawVcs}; @@ -95,11 +93,6 @@ impl AfterResolvePlugin for ExternalCjsModulesResolvePlugin { return Ok(ResolveResultOption::none()); }; - // from https://github.com/vercel/next.js/blob/8d1c619ad650f5d147207f267441caf12acd91d1/packages/next/src/build/handle-externals.ts#L188 - static NEVER_EXTERNAL_RE: LazyLock = LazyLock::new(|| { - Regex::new("^(?:private-next-pages\\/|next\\/(?:dist\\/pages\\/|(?:app|cache|document|link|form|head|image|legacy\\/image|constants|dynamic|script|navigation|headers|router|compat\\/router|server)$)|string-hash|private-next-rsc-action-validate|private-next-rsc-action-client-wrapper|private-next-rsc-server-reference|private-next-rsc-cache-wrapper$)").unwrap() - }); - let (Pattern::Constant(package), Pattern::Constant(package_subpath)) = (package, package_subpath) else { diff --git a/crates/next-rspack/.gitignore b/crates/next-rspack/.gitignore new file mode 100644 index 0000000000000..1d0124e875319 --- /dev/null +++ b/crates/next-rspack/.gitignore @@ -0,0 +1 @@ +*.node diff --git a/crates/next-rspack/Cargo.lock b/crates/next-rspack/Cargo.lock index 40fc029001c1e..8099d1ca39233 100644 --- a/crates/next-rspack/Cargo.lock +++ b/crates/next-rspack/Cargo.lock @@ -2638,6 +2638,7 @@ version = "0.0.0" dependencies = [ "napi", "napi-derive", + "next-taskless", "once_cell", "regex", "rspack_binding_build", @@ -2652,6 +2653,16 @@ dependencies = [ "rustc-hash 2.1.1", ] +[[package]] +name = "next-taskless" +version = "0.0.1" +dependencies = [ + "anyhow", + "regex", + "serde_json", + "turbo-unix-path", +] + [[package]] name = "nibble_vec" version = "0.1.0" @@ -7405,6 +7416,10 @@ dependencies = [ "stable_deref_trait", ] +[[package]] +name = "turbo-unix-path" +version = "0.0.1" + [[package]] name = "twox-hash" version = "1.6.3" diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml index f26f1a840146b..bd09a0c104622 100644 --- a/crates/next-rspack/Cargo.toml +++ b/crates/next-rspack/Cargo.toml @@ -24,6 +24,8 @@ rustc-hash = { version = "2.1.1" } napi = { version = "=3.1.2" } napi-derive = { version = "=3.1.1" } +next-taskless = { path = "../next-taskless" } + # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf [target.'cfg(not(any(target_arch = "wasm32", target_arch = "arm", all(target_os = "windows", target_arch = "x86"), all(target_os = "windows", target_arch = "aarch64"))))'.dependencies] diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index b1667dc1c0a28..e313cc9f29f9b 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -5,6 +5,7 @@ use std::{ sync::{Arc, LazyLock}, }; +use next_taskless::NEVER_EXTERNAL_RE; use once_cell::sync::OnceCell; use regex::Regex; use rspack_core::{Alias, DependencyCategory, Resolve, ResolveOptionsWithDependencyType}; @@ -30,12 +31,6 @@ fn is_webpack_bundled_layer(layer: Option<&str>) -> bool { static REACT_PACKAGES_REGEX: LazyLock = LazyLock::new(|| Regex::new(r"^(react|react-dom|react-server-dom-webpack)($|/)").unwrap()); -static NOT_EXTERNAL_MODULES_REGEX: LazyLock = LazyLock::new(|| { - Regex::new( - r"^(?:private-next-pages/|next/(?:dist/pages/|(?:app|cache|document|link|form|head|image|legacy/image|constants|dynamic|script|navigation|headers|router|compat/router|server)$)|string-hash|private-next-rsc-action-validate|private-next-rsc-action-client-wrapper|private-next-rsc-server-reference|private-next-rsc-cache-wrapper|private-next-rsc-track-dynamic-import$)" - ).unwrap() -}); - static NEXT_IMAGE_LOADER_REGEX: LazyLock = LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]shared[/\\]lib[/\\]image-loader").unwrap()); @@ -268,7 +263,7 @@ impl ExternalHandler { } // Skip modules that should not be external - if NOT_EXTERNAL_MODULES_REGEX.is_match(&request) { + if NEVER_EXTERNAL_RE.is_match(&request) { return Ok(None); } } diff --git a/crates/next-taskless/src/constants.rs b/crates/next-taskless/src/constants.rs new file mode 100644 index 0000000000000..f26fe0d3ba64e --- /dev/null +++ b/crates/next-taskless/src/constants.rs @@ -0,0 +1,79 @@ +pub const BARREL_OPTIMIZATION_PREFIX: &str = "__barrel_optimize__"; + +pub const NODE_EXTERNALS: [&str; 64] = [ + "assert", + "assert/strict", + "async_hooks", + "buffer", + "child_process", + "cluster", + "console", + "constants", + "crypto", + "dgram", + "diagnostics_channel", + "dns", + "dns/promises", + "domain", + "events", + "fs", + "fs/promises", + "http", + "http2", + "https", + "inspector", + "module", + "net", + "os", + "path", + "path/posix", + "path/win32", + "perf_hooks", + "process", + "punycode", + "querystring", + "readline", + "repl", + "stream", + "stream/promises", + "stream/web", + "string_decoder", + "sys", + "timers", + "timers/promises", + "tls", + "trace_events", + "tty", + "url", + "util", + "util/types", + "v8", + "vm", + "wasi", + "worker_threads", + "zlib", + "pnpapi", + "_http_agent", + "_http_client", + "_http_common", + "_http_incoming", + "_http_outgoing", + "_http_server", + "_stream_duplex", + "_stream_passthrough", + "_stream_readable", + "_stream_transform", + "_stream_wrap", + "_stream_writable", +]; + +pub const EDGE_NODE_EXTERNALS: [&str; 5] = ["buffer", "events", "assert", "util", "async_hooks"]; + +pub const BUN_EXTERNALS: [&str; 6] = [ + "bun:ffi", + "bun:jsc", + "bun:sqlite", + "bun:test", + "bun:wrap", + "bun", +]; diff --git a/crates/next-taskless/src/lib.rs b/crates/next-taskless/src/lib.rs index 8571dda9894de..92957e553df64 100644 --- a/crates/next-taskless/src/lib.rs +++ b/crates/next-taskless/src/lib.rs @@ -1,8 +1,13 @@ #![doc = include_str!("../README.md")] +mod constants; +mod patterns; + use std::sync::LazyLock; use anyhow::{Context, Result, bail}; +pub use constants::*; +pub use patterns::*; use regex::Regex; use turbo_unix_path::{get_parent_path, get_relative_path_to, join_path, normalize_path}; diff --git a/crates/next-taskless/src/patterns.rs b/crates/next-taskless/src/patterns.rs new file mode 100644 index 0000000000000..17c2e03ffbaaa --- /dev/null +++ b/crates/next-taskless/src/patterns.rs @@ -0,0 +1,8 @@ +use std::sync::LazyLock; + +use regex::Regex; + +// from https://github.com/vercel/next.js/blob/8d1c619ad650f5d147207f267441caf12acd91d1/packages/next/src/build/handle-externals.ts#L188 +pub static NEVER_EXTERNAL_RE: LazyLock = LazyLock::new(|| { + Regex::new("^(?:private-next-pages\\/|next\\/(?:dist\\/pages\\/|(?:app|cache|document|link|form|head|image|legacy\\/image|constants|dynamic|script|navigation|headers|router|compat\\/router|server)$)|string-hash|private-next-rsc-action-validate|private-next-rsc-action-client-wrapper|private-next-rsc-server-reference|private-next-rsc-cache-wrapper|private-next-rsc-track-dynamic-import$)").unwrap() +}); diff --git a/turbopack/crates/turbopack-resolve/Cargo.toml b/turbopack/crates/turbopack-resolve/Cargo.toml index 4c3e0a5b5ce34..91178de9ee810 100644 --- a/turbopack/crates/turbopack-resolve/Cargo.toml +++ b/turbopack/crates/turbopack-resolve/Cargo.toml @@ -22,6 +22,7 @@ turbo-rcstr = { workspace = true } turbo-tasks = { workspace = true } turbo-tasks-fs = { workspace = true } turbopack-core = { workspace = true } +next-taskless = { workspace = true } [build-dependencies] turbo-tasks-build = { workspace = true } diff --git a/turbopack/crates/turbopack-resolve/src/resolve.rs b/turbopack/crates/turbopack-resolve/src/resolve.rs index edb0e1502cfcd..f7b4f0cac448a 100644 --- a/turbopack/crates/turbopack-resolve/src/resolve.rs +++ b/turbopack/crates/turbopack-resolve/src/resolve.rs @@ -1,4 +1,5 @@ use anyhow::Result; +use next_taskless::{BUN_EXTERNALS, EDGE_NODE_EXTERNALS, NODE_EXTERNALS}; use turbo_rcstr::rcstr; use turbo_tasks::{ResolvedVc, Vc}; use turbo_tasks_fs::{FileSystem, FileSystemPath}; @@ -15,84 +16,6 @@ use crate::{ typescript::{apply_tsconfig_resolve_options, tsconfig, tsconfig_resolve_options}, }; -const NODE_EXTERNALS: [&str; 64] = [ - "assert", - "assert/strict", - "async_hooks", - "buffer", - "child_process", - "cluster", - "console", - "constants", - "crypto", - "dgram", - "diagnostics_channel", - "dns", - "dns/promises", - "domain", - "events", - "fs", - "fs/promises", - "http", - "http2", - "https", - "inspector", - "module", - "net", - "os", - "path", - "path/posix", - "path/win32", - "perf_hooks", - "process", - "punycode", - "querystring", - "readline", - "repl", - "stream", - "stream/promises", - "stream/web", - "string_decoder", - "sys", - "timers", - "timers/promises", - "tls", - "trace_events", - "tty", - "url", - "util", - "util/types", - "v8", - "vm", - "wasi", - "worker_threads", - "zlib", - "pnpapi", - "_http_agent", - "_http_client", - "_http_common", - "_http_incoming", - "_http_outgoing", - "_http_server", - "_stream_duplex", - "_stream_passthrough", - "_stream_readable", - "_stream_transform", - "_stream_wrap", - "_stream_writable", -]; - -const EDGE_NODE_EXTERNALS: [&str; 5] = ["buffer", "events", "assert", "util", "async_hooks"]; - -const BUN_EXTERNALS: [&str; 6] = [ - "bun:ffi", - "bun:jsc", - "bun:sqlite", - "bun:test", - "bun:wrap", - "bun", -]; - #[turbo_tasks::function] async fn base_resolve_options( fs: ResolvedVc>, From 8ef6aae9550beffe9011cadc81e88527b887deb3 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:07:44 +0800 Subject: [PATCH 05/38] reuse EDGE_NODE_EXTERNALS --- crates/next-rspack/src/next_externals_plugin.rs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs index 8a6448ff58000..e4d3c6b75d705 100644 --- a/crates/next-rspack/src/next_externals_plugin.rs +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -3,6 +3,7 @@ use std::{ sync::{Arc, LazyLock}, }; +use next_taskless::EDGE_NODE_EXTERNALS; use rspack_core::{ ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, @@ -16,14 +17,12 @@ use rustc_hash::{FxHashMap, FxHashSet}; use crate::{config_shared::NextConfigComplete, handle_externals::ExternalHandler}; -static SUPPORTED_NATIVE_MODULES: &[&str] = &["buffer", "events", "assert", "util", "async_hooks"]; - static SUPPORTED_EDGE_POLYFILLS: LazyLock> = - LazyLock::new(|| SUPPORTED_NATIVE_MODULES.iter().copied().collect()); + LazyLock::new(|| EDGE_NODE_EXTERNALS.iter().copied().collect()); fn get_edge_polyfilled_modules() -> ExternalItem { let mut externals = ExternalItemObject::default(); - for &module in SUPPORTED_NATIVE_MODULES { + for module in EDGE_NODE_EXTERNALS { externals.insert( module.to_string(), ExternalItemValue::String(format!("commonjs node:{module}")), @@ -48,7 +47,7 @@ fn is_supported_edge_polyfill(module_name: &str) -> bool { async fn handle_webpack_external_for_edge_runtime( ctx: ExternalItemFnCtx, - builtin_modules: Arc>, + builtin_modules: &[String], ) -> rspack_error::Result { let is_middleware_or_api_edge = match &ctx.context_info.issuer_layer { Some(layer) => layer == "middleware" || layer == "api-edge", @@ -169,7 +168,7 @@ impl Plugin for NextExternalsPlugin { ExternalItem::Fn(Box::new(move |ctx| { let builtin_modules = builtin_modules.clone(); Box::pin( - async move { handle_webpack_external_for_edge_runtime(ctx, builtin_modules).await }, + async move { handle_webpack_external_for_edge_runtime(ctx, &builtin_modules).await }, ) })), ] From 4aff8fc63d9065694e2784c22e660c113a17a6a0 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:12:37 +0800 Subject: [PATCH 06/38] refactor get_edge_polyfilled_modules --- .../next-rspack/src/next_externals_plugin.rs | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs index e4d3c6b75d705..62043b8b40807 100644 --- a/crates/next-rspack/src/next_externals_plugin.rs +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -21,18 +21,17 @@ static SUPPORTED_EDGE_POLYFILLS: LazyLock> = LazyLock::new(|| EDGE_NODE_EXTERNALS.iter().copied().collect()); fn get_edge_polyfilled_modules() -> ExternalItem { - let mut externals = ExternalItemObject::default(); - for module in EDGE_NODE_EXTERNALS { - externals.insert( - module.to_string(), - ExternalItemValue::String(format!("commonjs node:{module}")), - ); - externals.insert( - format!("node:{module}"), - ExternalItemValue::String(format!("commonjs node:{module}")), - ); - } - ExternalItem::Object(externals) + ExternalItem::Object( + EDGE_NODE_EXTERNALS + .iter() + .flat_map(|module| { + [ + (module.to_string(), ExternalItemValue::String(format!("commonjs node:{module}"))), + (format!("node:{module}"), ExternalItemValue::String(format!("commonjs node:{module}"))), + ] + }) + .collect::() + ) } fn is_node_js_module(module_name: &str, builtin_modules: &[String]) -> bool { From 36f687b054ddd8b14b4a73014e7a3b1938f1d507 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:16:21 +0800 Subject: [PATCH 07/38] use std::async::OnceLock --- crates/next-rspack/Cargo.lock | 1 - crates/next-rspack/Cargo.toml | 1 - crates/next-rspack/src/handle_externals.rs | 7 +++---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/crates/next-rspack/Cargo.lock b/crates/next-rspack/Cargo.lock index 8099d1ca39233..609104f40f19c 100644 --- a/crates/next-rspack/Cargo.lock +++ b/crates/next-rspack/Cargo.lock @@ -2639,7 +2639,6 @@ dependencies = [ "napi", "napi-derive", "next-taskless", - "once_cell", "regex", "rspack_binding_build", "rspack_binding_builder", diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml index bd09a0c104622..49fda1ab9ea2f 100644 --- a/crates/next-rspack/Cargo.toml +++ b/crates/next-rspack/Cargo.toml @@ -16,7 +16,6 @@ rspack_hook = { version = "=0.4.10" } rspack_plugin_externals = { version = "=0.4.10" } rspack_sources = { version = "=0.4.8" } -once_cell = { version = "1.20.2" } regex = { version = "1.11.1" } rspack_regex = { version = "=0.4.10" } rustc-hash = { version = "2.1.1" } diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index e313cc9f29f9b..84ebc34cba4a0 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -2,11 +2,10 @@ use std::{ future::Future, path::Path, pin::Pin, - sync::{Arc, LazyLock}, + sync::{Arc, LazyLock, OnceLock}, }; use next_taskless::NEVER_EXTERNAL_RE; -use once_cell::sync::OnceCell; use regex::Regex; use rspack_core::{Alias, DependencyCategory, Resolve, ResolveOptionsWithDependencyType}; use rspack_regex::RspackRegex; @@ -170,7 +169,7 @@ pub struct ExternalHandler { opt_out_bundling_package_regex: RspackRegex, transpiled_packages: Vec, dir: String, - resolved_external_package_dirs: OnceCell>, + resolved_external_package_dirs: OnceLock>, loose_esm_externals: bool, default_overrides: FxHashMap, } @@ -190,7 +189,7 @@ impl ExternalHandler { opt_out_bundling_package_regex, transpiled_packages, dir, - resolved_external_package_dirs: OnceCell::default(), + resolved_external_package_dirs: OnceLock::default(), loose_esm_externals, default_overrides, } From 5d22a7b7b9b52a25b35878985c0f26c37ad55865 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:26:37 +0800 Subject: [PATCH 08/38] cargo fmt --- crates/next-rspack/build.rs | 2 +- crates/next-rspack/src/config_shared.rs | 14 +- crates/next-rspack/src/handle_externals.rs | 1009 +++++++++-------- crates/next-rspack/src/lib.rs | 134 +-- .../next-rspack/src/next_externals_plugin.rs | 417 +++---- 5 files changed, 795 insertions(+), 781 deletions(-) diff --git a/crates/next-rspack/build.rs b/crates/next-rspack/build.rs index 4d2c8891e0450..db8b0be4a63f0 100644 --- a/crates/next-rspack/build.rs +++ b/crates/next-rspack/build.rs @@ -1,3 +1,3 @@ fn main() { - rspack_binding_build::setup(); + rspack_binding_build::setup(); } diff --git a/crates/next-rspack/src/config_shared.rs b/crates/next-rspack/src/config_shared.rs index d99589827761d..91a6aebb2338f 100644 --- a/crates/next-rspack/src/config_shared.rs +++ b/crates/next-rspack/src/config_shared.rs @@ -1,18 +1,18 @@ #[derive(Debug, Clone, PartialEq, Eq, Default)] pub enum EsmExternalsConfig { - #[default] - None, - Loose, - Strict, + #[default] + None, + Loose, + Strict, } #[derive(Debug, Clone, Default)] pub struct ExperimentalConfig { - pub esm_externals: EsmExternalsConfig, + pub esm_externals: EsmExternalsConfig, } #[derive(Debug, Clone, Default)] pub struct NextConfigComplete { - pub experimental: ExperimentalConfig, - pub bundle_pages_router_dependencies: Option, + pub experimental: ExperimentalConfig, + pub bundle_pages_router_dependencies: Option, } diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index 84ebc34cba4a0..4f02c9cec103e 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -1,8 +1,8 @@ use std::{ - future::Future, - path::Path, - pin::Pin, - sync::{Arc, LazyLock, OnceLock}, + future::Future, + path::Path, + pin::Pin, + sync::{Arc, LazyLock, OnceLock}, }; use next_taskless::NEVER_EXTERNAL_RE; @@ -14,459 +14,463 @@ use rustc_hash::FxHashMap; use crate::config_shared::{EsmExternalsConfig, NextConfigComplete}; const WEBPACK_BUNDLED_LAYERS: &[&str] = &[ - "rsc", - "action-browser", - "ssr", - "app-pages-browser", - "shared", - "instrument", - "middleware", + "rsc", + "action-browser", + "ssr", + "app-pages-browser", + "shared", + "instrument", + "middleware", ]; fn is_webpack_bundled_layer(layer: Option<&str>) -> bool { - layer.is_some_and(|layer| WEBPACK_BUNDLED_LAYERS.contains(&layer)) + layer.is_some_and(|layer| WEBPACK_BUNDLED_LAYERS.contains(&layer)) } static REACT_PACKAGES_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"^(react|react-dom|react-server-dom-webpack)($|/)").unwrap()); + LazyLock::new(|| Regex::new(r"^(react|react-dom|react-server-dom-webpack)($|/)").unwrap()); static NEXT_IMAGE_LOADER_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]shared[/\\]lib[/\\]image-loader").unwrap()); + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]shared[/\\]lib[/\\]image-loader").unwrap()); static NEXT_SERVER_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\]next-server").unwrap()); + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\]next-server").unwrap()); static NEXT_SHARED_CJS_REGEX: LazyLock = LazyLock::new(|| { - RspackRegex::new(r"^next[/\\]dist[/\\]shared[/\\](?!lib[/\\]router[/\\]router)").unwrap() + RspackRegex::new(r"^next[/\\]dist[/\\]shared[/\\](?!lib[/\\]router[/\\]router)").unwrap() }); static NEXT_COMPILED_CJS_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.c?js$").unwrap()); + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.c?js$").unwrap()); static NEXT_SHARED_ESM_REGEX: LazyLock = LazyLock::new(|| { - RspackRegex::new(r"^next[/\\]dist[/\\]esm[/\\]shared[/\\](?!lib[/\\]router[/\\]router)").unwrap() + RspackRegex::new(r"^next[/\\]dist[/\\]esm[/\\]shared[/\\](?!lib[/\\]router[/\\]router)") + .unwrap() }); static NEXT_COMPILED_MJS_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.mjs$").unwrap()); + LazyLock::new(|| Regex::new(r"^next[/\\]dist[/\\]compiled[/\\].*\.mjs$").unwrap()); static BABEL_RUNTIME_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"node_modules[/\\]@babel[/\\]runtime[/\\]").unwrap()); + LazyLock::new(|| Regex::new(r"node_modules[/\\]@babel[/\\]runtime[/\\]").unwrap()); static WEBPACK_CSS_LOADER_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"node_modules[/\\]webpack|node_modules[/\\]css-loader").unwrap()); + LazyLock::new(|| Regex::new(r"node_modules[/\\]webpack|node_modules[/\\]css-loader").unwrap()); const BARREL_OPTIMIZATION_PREFIX: &str = "__barrel_optimize__"; const WEBPACK_SERVER_ONLY_LAYERS: &[&str] = &["rsc", "action-browser", "instrument", "middleware"]; fn should_use_react_server_condition(layer: Option<&str>) -> bool { - layer.is_some_and(|layer| WEBPACK_SERVER_ONLY_LAYERS.contains(&layer)) + layer.is_some_and(|layer| WEBPACK_SERVER_ONLY_LAYERS.contains(&layer)) } static NODE_RESOLVE_OPTIONS: LazyLock = - LazyLock::new(|| ResolveOptionsWithDependencyType { - resolve_options: Some(Box::new(Resolve { - extensions: Some(vec![ - ".js".to_string(), - ".json".to_string(), - ".node".to_string(), - ]), - alias: None, - prefer_relative: Some(false), - prefer_absolute: Some(false), - symlinks: Some(true), - main_files: Some(vec!["index".to_string()]), - main_fields: Some(vec!["main".to_string()]), - condition_names: Some(vec!["node".to_string(), "require".to_string()]), - tsconfig: None, - modules: None, - fallback: Some(Alias::OverwriteToNoAlias), - fully_specified: Some(false), - exports_fields: Some(vec![vec!["exports".to_string()]]), - extension_alias: None, - alias_fields: None, - roots: Some(vec![]), - restrictions: Some(vec![]), - imports_fields: Some(vec![vec!["imports".to_string()]]), - by_dependency: None, - description_files: Some(vec!["package.json".to_string()]), - enforce_extension: Some(false), - pnp: None, - })), - resolve_to_context: false, - dependency_category: DependencyCategory::CommonJS, - }); + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: Some(Box::new(Resolve { + extensions: Some(vec![ + ".js".to_string(), + ".json".to_string(), + ".node".to_string(), + ]), + alias: None, + prefer_relative: Some(false), + prefer_absolute: Some(false), + symlinks: Some(true), + main_files: Some(vec!["index".to_string()]), + main_fields: Some(vec!["main".to_string()]), + condition_names: Some(vec!["node".to_string(), "require".to_string()]), + tsconfig: None, + modules: None, + fallback: Some(Alias::OverwriteToNoAlias), + fully_specified: Some(false), + exports_fields: Some(vec![vec!["exports".to_string()]]), + extension_alias: None, + alias_fields: None, + roots: Some(vec![]), + restrictions: Some(vec![]), + imports_fields: Some(vec![vec!["imports".to_string()]]), + by_dependency: None, + description_files: Some(vec!["package.json".to_string()]), + enforce_extension: Some(false), + pnp: None, + })), + resolve_to_context: false, + dependency_category: DependencyCategory::CommonJS, + }); static NODE_BASE_RESOLVE_OPTIONS: LazyLock = - LazyLock::new(|| ResolveOptionsWithDependencyType { - resolve_options: NODE_RESOLVE_OPTIONS - .resolve_options - .clone() - .map(|mut options| { - options.alias = Some(Alias::OverwriteToNoAlias); - options - }), - resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, - dependency_category: NODE_RESOLVE_OPTIONS.dependency_category, - }); + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options + }), + resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: NODE_RESOLVE_OPTIONS.dependency_category, + }); static NODE_ESM_RESOLVE_OPTIONS: LazyLock = - LazyLock::new(|| ResolveOptionsWithDependencyType { - resolve_options: NODE_RESOLVE_OPTIONS - .resolve_options - .clone() - .map(|mut options| { - options.alias = Some(Alias::OverwriteToNoAlias); - options.condition_names = Some(vec!["node".to_string(), "import".to_string()]); - options.fully_specified = Some(true); - options - }), - resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, - dependency_category: DependencyCategory::Esm, - }); + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options.condition_names = Some(vec!["node".to_string(), "import".to_string()]); + options.fully_specified = Some(true); + options + }), + resolve_to_context: NODE_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: DependencyCategory::Esm, + }); static NODE_BASE_ESM_RESOLVE_OPTIONS: LazyLock = - LazyLock::new(|| ResolveOptionsWithDependencyType { - resolve_options: NODE_ESM_RESOLVE_OPTIONS - .resolve_options - .clone() - .map(|mut options| { - options.alias = Some(Alias::OverwriteToNoAlias); - options - }), - resolve_to_context: NODE_ESM_RESOLVE_OPTIONS.resolve_to_context, - dependency_category: NODE_ESM_RESOLVE_OPTIONS.dependency_category, - }); + LazyLock::new(|| ResolveOptionsWithDependencyType { + resolve_options: NODE_ESM_RESOLVE_OPTIONS + .resolve_options + .clone() + .map(|mut options| { + options.alias = Some(Alias::OverwriteToNoAlias); + options + }), + resolve_to_context: NODE_ESM_RESOLVE_OPTIONS.resolve_to_context, + dependency_category: NODE_ESM_RESOLVE_OPTIONS.dependency_category, + }); static NODE_MODULES_REGEX: LazyLock = - LazyLock::new(|| Regex::new(r"node_modules[/\\].*\.[mc]?js$").unwrap()); + LazyLock::new(|| Regex::new(r"node_modules[/\\].*\.[mc]?js$").unwrap()); fn is_resource_in_packages( - resource: &str, - package_names: &[String], - package_dir_mapping: Option<&FxHashMap>, + resource: &str, + package_names: &[String], + package_dir_mapping: Option<&FxHashMap>, ) -> bool { - if package_names.is_empty() { - return false; - } - package_names.iter().any(|pkg| { - if let Some(dirs) = package_dir_mapping { - if let Some(dir) = dirs.get(pkg) { - return resource.starts_with(&format!("{dir}/")); - } + if package_names.is_empty() { + return false; } - resource.contains(&format!( - "/node_modules/{}/", - pkg.replace('/', std::path::MAIN_SEPARATOR_STR) - )) - }) + package_names.iter().any(|pkg| { + if let Some(dirs) = package_dir_mapping { + if let Some(dir) = dirs.get(pkg) { + return resource.starts_with(&format!("{dir}/")); + } + } + resource.contains(&format!( + "/node_modules/{}/", + pkg.replace('/', std::path::MAIN_SEPARATOR_STR) + )) + }) } #[derive(Debug)] pub struct ExternalHandler { - config: NextConfigComplete, - opt_out_bundling_package_regex: RspackRegex, - transpiled_packages: Vec, - dir: String, - resolved_external_package_dirs: OnceLock>, - loose_esm_externals: bool, - default_overrides: FxHashMap, -} - -impl ExternalHandler { - pub fn new( config: NextConfigComplete, opt_out_bundling_package_regex: RspackRegex, transpiled_packages: Vec, dir: String, + resolved_external_package_dirs: OnceLock>, + loose_esm_externals: bool, default_overrides: FxHashMap, - ) -> Self { - let loose_esm_externals = config.experimental.esm_externals == EsmExternalsConfig::Loose; - - Self { - config, - opt_out_bundling_package_regex, - transpiled_packages, - dir, - resolved_external_package_dirs: OnceLock::default(), - loose_esm_externals, - default_overrides, - } - } - - fn resolve_bundling_opt_out_packages( - &self, - resolved_res: &str, - is_app_layer: bool, - external_type: &str, - is_opt_out_bundling: bool, - request: &str, - ) -> Option { - if NODE_MODULES_REGEX.is_match(resolved_res) { - let should_bundle_pages = !is_app_layer - && self - .config - .bundle_pages_router_dependencies - .unwrap_or(false) - && !is_opt_out_bundling; - - let should_be_bundled = should_bundle_pages - || is_resource_in_packages( - resolved_res, - &self.transpiled_packages, - self.resolved_external_package_dirs.get(), - ); - - if !should_be_bundled { - return Some(format!("{external_type} {request}")); - } - } - None - } +} - pub async fn handle_externals( - &self, - context: String, - request: String, - dependency_type: &str, - layer: Option<&str>, - get_resolve: GetResolveFn, - ) -> rspack_error::Result> { - // We need to externalize internal requests for files intended to - // not be bundled. - let is_local = request.starts_with('.') || Path::new(&request).is_absolute(); - - // make sure import "next" shows a warning when imported - // in pages/components - if request == "next" { - return Ok(Some( - "commonjs next/dist/lib/import-next-warning".to_string(), - )); +impl ExternalHandler { + pub fn new( + config: NextConfigComplete, + opt_out_bundling_package_regex: RspackRegex, + transpiled_packages: Vec, + dir: String, + default_overrides: FxHashMap, + ) -> Self { + let loose_esm_externals = config.experimental.esm_externals == EsmExternalsConfig::Loose; + + Self { + config, + opt_out_bundling_package_regex, + transpiled_packages, + dir, + resolved_external_package_dirs: OnceLock::default(), + loose_esm_externals, + default_overrides, + } } - let is_app_layer = is_webpack_bundled_layer(layer); - - // Relative requires don't need custom resolution, because they - // are relative to requests we've already resolved here. - // Absolute requires (require('/foo')) are extremely uncommon, but - // also have no need for customization as they're already resolved. - if !is_local { - if request == "next" { - return Ok(Some(format!("commonjs {request}"))); - } - - // Handle React packages - if REACT_PACKAGES_REGEX.is_match(&request) && !is_app_layer { - return Ok(Some(format!("commonjs {request}"))); - } - - // Skip modules that should not be external - if NEVER_EXTERNAL_RE.is_match(&request) { - return Ok(None); - } + fn resolve_bundling_opt_out_packages( + &self, + resolved_res: &str, + is_app_layer: bool, + external_type: &str, + is_opt_out_bundling: bool, + request: &str, + ) -> Option { + if NODE_MODULES_REGEX.is_match(resolved_res) { + let should_bundle_pages = !is_app_layer + && self + .config + .bundle_pages_router_dependencies + .unwrap_or(false) + && !is_opt_out_bundling; + + let should_be_bundled = should_bundle_pages + || is_resource_in_packages( + resolved_res, + &self.transpiled_packages, + self.resolved_external_package_dirs.get(), + ); + + if !should_be_bundled { + return Some(format!("{external_type} {request}")); + } + } + None } - // @swc/helpers should not be external as it would - // require hoisting the package which we can't rely on - if request.contains("@swc/helpers") { - return Ok(None); - } + pub async fn handle_externals( + &self, + context: String, + request: String, + dependency_type: &str, + layer: Option<&str>, + get_resolve: GetResolveFn, + ) -> rspack_error::Result> { + // We need to externalize internal requests for files intended to + // not be bundled. + let is_local = request.starts_with('.') || Path::new(&request).is_absolute(); + + // make sure import "next" shows a warning when imported + // in pages/components + if request == "next" { + return Ok(Some( + "commonjs next/dist/lib/import-next-warning".to_string(), + )); + } - // BARREL_OPTIMIZATION_PREFIX is a special marker that tells Next.js to - // optimize the import by removing unused exports. This has to be compiled. - if request.starts_with(BARREL_OPTIMIZATION_PREFIX) { - return Ok(None); - } + let is_app_layer = is_webpack_bundled_layer(layer); + + // Relative requires don't need custom resolution, because they + // are relative to requests we've already resolved here. + // Absolute requires (require('/foo')) are extremely uncommon, but + // also have no need for customization as they're already resolved. + if !is_local { + if request == "next" { + return Ok(Some(format!("commonjs {request}"))); + } + + // Handle React packages + if REACT_PACKAGES_REGEX.is_match(&request) && !is_app_layer { + return Ok(Some(format!("commonjs {request}"))); + } + + // Skip modules that should not be external + if NEVER_EXTERNAL_RE.is_match(&request) { + return Ok(None); + } + } - // When in esm externals mode, and using import, we resolve with - // ESM resolving options. - // Also disable esm request when appDir is enabled - let is_esm_requested = dependency_type == "esm"; - - // Don't bundle @vercel/og nodejs bundle for nodejs runtime. - // TODO-APP: bundle route.js with different layer that externals common node_module deps. - // Make sure @vercel/og is loaded as ESM for Node.js runtime - if should_use_react_server_condition(layer) - && request == "next/dist/compiled/@vercel/og/index.node.js" - { - return Ok(Some(format!("module {request}"))); - } + // @swc/helpers should not be external as it would + // require hoisting the package which we can't rely on + if request.contains("@swc/helpers") { + return Ok(None); + } - // Specific Next.js imports that should remain external - // TODO-APP: Investigate if we can remove this. - if request.starts_with("next/dist/") { - // Non external that needs to be transpiled - // Image loader needs to be transpiled - if NEXT_IMAGE_LOADER_REGEX.is_match(&request) { - return Ok(None); - } + // BARREL_OPTIMIZATION_PREFIX is a special marker that tells Next.js to + // optimize the import by removing unused exports. This has to be compiled. + if request.starts_with(BARREL_OPTIMIZATION_PREFIX) { + return Ok(None); + } - if NEXT_SERVER_REGEX.is_match(&request) { - return Ok(Some(format!("commonjs {request}"))); - } + // When in esm externals mode, and using import, we resolve with + // ESM resolving options. + // Also disable esm request when appDir is enabled + let is_esm_requested = dependency_type == "esm"; + + // Don't bundle @vercel/og nodejs bundle for nodejs runtime. + // TODO-APP: bundle route.js with different layer that externals common node_module deps. + // Make sure @vercel/og is loaded as ESM for Node.js runtime + if should_use_react_server_condition(layer) + && request == "next/dist/compiled/@vercel/og/index.node.js" + { + return Ok(Some(format!("module {request}"))); + } - if NEXT_SHARED_CJS_REGEX.test(&request) || NEXT_COMPILED_CJS_REGEX.is_match(&request) { - return Ok(Some(format!("commonjs {request}"))); - } + // Specific Next.js imports that should remain external + // TODO-APP: Investigate if we can remove this. + if request.starts_with("next/dist/") { + // Non external that needs to be transpiled + // Image loader needs to be transpiled + if NEXT_IMAGE_LOADER_REGEX.is_match(&request) { + return Ok(None); + } - if NEXT_SHARED_ESM_REGEX.test(&request) || NEXT_COMPILED_MJS_REGEX.is_match(&request) { - return Ok(Some(format!("module {request}"))); - } + if NEXT_SERVER_REGEX.is_match(&request) { + return Ok(Some(format!("commonjs {request}"))); + } - return Ok(resolve_next_external(&request)); - } + if NEXT_SHARED_CJS_REGEX.test(&request) || NEXT_COMPILED_CJS_REGEX.is_match(&request) { + return Ok(Some(format!("commonjs {request}"))); + } - // TODO-APP: Let's avoid this resolve call as much as possible, and eventually get rid of it. - let resolve_result = resolve_external( - self.dir.to_string(), - &self.config.experimental.esm_externals, - context.to_string(), - request.to_string(), - is_esm_requested, - get_resolve.clone(), - if is_local { - Some(Box::new(resolve_next_external)) - } else { - None - }, - None, - None, - None, - None, - None, - ) - .await?; - - if let Some(local_res) = resolve_result.local_res { - return Ok(Some(local_res)); - } + if NEXT_SHARED_ESM_REGEX.test(&request) || NEXT_COMPILED_MJS_REGEX.is_match(&request) { + return Ok(Some(format!("module {request}"))); + } - // Forcedly resolve the styled-jsx installed by next.js, - // since `resolveExternal` cannot find the styled-jsx dep with pnpm - let (res, is_esm) = if request == "styled-jsx/style" { - ( - self - .default_overrides - .get("styled-jsx/style") - .map(|s| s.to_string()), - resolve_result.is_esm, - ) - } else { - (resolve_result.res, resolve_result.is_esm) - }; + return Ok(resolve_next_external(&request)); + } - let Some(res) = res else { - // If the request cannot be resolved we need to have - // webpack "bundle" it so it surfaces the not found error. - return Ok(None); - }; + // TODO-APP: Let's avoid this resolve call as much as possible, and eventually get rid of + // it. + let resolve_result = resolve_external( + self.dir.to_string(), + &self.config.experimental.esm_externals, + context.to_string(), + request.to_string(), + is_esm_requested, + get_resolve.clone(), + if is_local { + Some(resolve_next_external) + } else { + None + }, + None, + None, + None, + None, + None, + ) + .await?; - let is_opt_out_bundling = self.opt_out_bundling_package_regex.test(&res); + if let Some(local_res) = resolve_result.local_res { + return Ok(Some(local_res)); + } - // Apply bundling rules to all app layers. - // Since handleExternals only handle the server layers, we don't need to exclude client here - if !is_opt_out_bundling && is_app_layer { - return Ok(None); - } + // Forcedly resolve the styled-jsx installed by next.js, + // since `resolveExternal` cannot find the styled-jsx dep with pnpm + let (res, is_esm) = if request == "styled-jsx/style" { + ( + self.default_overrides + .get("styled-jsx/style") + .map(|s| s.to_string()), + resolve_result.is_esm, + ) + } else { + (resolve_result.res, resolve_result.is_esm) + }; + + let Some(res) = res else { + // If the request cannot be resolved we need to have + // webpack "bundle" it so it surfaces the not found error. + return Ok(None); + }; + + let is_opt_out_bundling = self.opt_out_bundling_package_regex.test(&res); + + // Apply bundling rules to all app layers. + // Since handleExternals only handle the server layers, we don't need to exclude client here + if !is_opt_out_bundling && is_app_layer { + return Ok(None); + } - // ESM externals can only be imported (and not required). - // Make an exception in loose mode. - if !is_esm_requested && is_esm && !self.loose_esm_externals && !is_local { - return Err(rspack_error::error!( + // ESM externals can only be imported (and not required). + // Make an exception in loose mode. + if !is_esm_requested && is_esm && !self.loose_esm_externals && !is_local { + return Err(rspack_error::error!( "ESM packages ({}) need to be imported. Use 'import' to reference the package instead. https://nextjs.org/docs/messages/import-esm-externals", request )); - } - - let external_type = if is_esm { "module" } else { "commonjs" }; + } - // Default pages have to be transpiled - // This is the @babel/plugin-transform-runtime "helpers: true" option - if BABEL_RUNTIME_REGEX.is_match(&res) { - return Ok(None); - } + let external_type = if is_esm { "module" } else { "commonjs" }; - // Webpack itself has to be compiled because it doesn't always use module relative paths - if WEBPACK_CSS_LOADER_REGEX.is_match(&res) { - return Ok(None); - } + // Default pages have to be transpiled + // This is the @babel/plugin-transform-runtime "helpers: true" option + if BABEL_RUNTIME_REGEX.is_match(&res) { + return Ok(None); + } - // If a package should be transpiled by Next.js, we skip making it external. - // It doesn't matter what the extension is, as we'll transpile it anyway. - if !self.transpiled_packages.is_empty() && self.resolved_external_package_dirs.get().is_none() { - let mut resolved_dirs = FxHashMap::default(); - - // We need to resolve all the external package dirs initially. - for pkg in &self.transpiled_packages { - let pkg_request = format!("{pkg}/package.json"); - let pkg_res = resolve_external( - self.dir.to_string(), - &self.config.experimental.esm_externals, - context.to_string(), - pkg_request, - is_esm_requested, - get_resolve.clone(), - if is_local { - Some(Box::new(resolve_next_external)) - } else { - None - }, - None, - None, - None, - None, - None, - ) - .await?; + // Webpack itself has to be compiled because it doesn't always use module relative paths + if WEBPACK_CSS_LOADER_REGEX.is_match(&res) { + return Ok(None); + } - if let Some(res) = pkg_res.res { - if let Some(parent) = Path::new(&res).parent() { - resolved_dirs.insert(pkg.clone(), parent.to_string_lossy().to_string()); - } + // If a package should be transpiled by Next.js, we skip making it external. + // It doesn't matter what the extension is, as we'll transpile it anyway. + if !self.transpiled_packages.is_empty() + && self.resolved_external_package_dirs.get().is_none() + { + let mut resolved_dirs = FxHashMap::default(); + + // We need to resolve all the external package dirs initially. + for pkg in &self.transpiled_packages { + let pkg_request = format!("{pkg}/package.json"); + let pkg_res = resolve_external( + self.dir.to_string(), + &self.config.experimental.esm_externals, + context.to_string(), + pkg_request, + is_esm_requested, + get_resolve.clone(), + if is_local { + Some(Box::new(resolve_next_external)) + } else { + None + }, + None, + None, + None, + None, + None, + ) + .await?; + + if let Some(res) = pkg_res.res { + if let Some(parent) = Path::new(&res).parent() { + resolved_dirs.insert(pkg.clone(), parent.to_string_lossy().to_string()); + } + } + } + + self.resolved_external_package_dirs + .get_or_init(move || resolved_dirs); } - } - self - .resolved_external_package_dirs - .get_or_init(move || resolved_dirs); - } + let resolved_bundling_opt_out_res = self.resolve_bundling_opt_out_packages( + &res, + is_app_layer, + external_type, + is_opt_out_bundling, + &request, + ); - let resolved_bundling_opt_out_res = self.resolve_bundling_opt_out_packages( - &res, - is_app_layer, - external_type, - is_opt_out_bundling, - &request, - ); + if resolved_bundling_opt_out_res.is_some() { + return Ok(resolved_bundling_opt_out_res); + } - if resolved_bundling_opt_out_res.is_some() { - return Ok(resolved_bundling_opt_out_res); + // if here, we default to bundling the file + Ok(None) } - - // if here, we default to bundling the file - Ok(None) - } } static EXTERNAL_PATTERN: LazyLock = LazyLock::new(|| { - let path_separators = r"[/\\]"; - let optional_esm_part = format!(r"(({path_separators})esm)?{path_separators}",); - let external_file_end = r"(\.external(\.js)?)$"; - let next_dist = format!(r"next{path_separators}dist"); - - Regex::new(&format!( - r"{next_dist}{optional_esm_part}.*{external_file_end}" - )) - .unwrap() + let path_separators = r"[/\\]"; + let optional_esm_part = format!(r"(({path_separators})esm)?{path_separators}",); + let external_file_end = r"(\.external(\.js)?)$"; + let next_dist = format!(r"next{path_separators}dist"); + + Regex::new(&format!( + r"{next_dist}{optional_esm_part}.*{external_file_end}" + )) + .unwrap() }); static NEXT_DIST_REPLACE_PATTERN: LazyLock = - LazyLock::new(|| Regex::new(r".*?next[/\\]dist").unwrap()); + LazyLock::new(|| Regex::new(r".*?next[/\\]dist").unwrap()); -/// Returns an externalized path if the file is a Next.js file and ends with either `.shared-runtime.js` or `.external.js` -/// This is used to ensure that files used across the rendering runtime(s) and the user code are one and the same. -/// The logic in this function will rewrite the require to the correct bundle location depending on the layer at which the file is being used. +/// Returns an externalized path if the file is a Next.js file and ends with either +/// `.shared-runtime.js` or `.external.js` This is used to ensure that files used across the +/// rendering runtime(s) and the user code are one and the same. The logic in this function will +/// rewrite the require to the correct bundle location depending on the layer at which the file is +/// being used. /// /// # Arguments /// * `local_res` - the full path to the file @@ -474,166 +478,171 @@ static NEXT_DIST_REPLACE_PATTERN: LazyLock = /// # Returns /// * `Option` - the externalized path, or None if not external pub fn resolve_next_external(local_res: &str) -> Option { - let is_external = EXTERNAL_PATTERN.is_match(local_res); - - // If the file ends with .external, we need to make it a commonjs require in all cases - // This is used mainly to share the async local storage across the routing, rendering and user layers. - if is_external { - // It's important we return the path that starts with `next/dist/` here instead of the absolute path - // otherwise NFT will get tripped up - let normalized_path = NEXT_DIST_REPLACE_PATTERN.replace(local_res, "next/dist"); - let normalized_path = normalize_path_sep(&normalized_path); - - Some(format!("commonjs {normalized_path}")) - } else { - None - } + let is_external = EXTERNAL_PATTERN.is_match(local_res); + + // If the file ends with .external, we need to make it a commonjs require in all cases + // This is used mainly to share the async local storage across the routing, rendering and user + // layers. + if is_external { + // It's important we return the path that starts with `next/dist/` here instead of the + // absolute path otherwise NFT will get tripped up + let normalized_path = NEXT_DIST_REPLACE_PATTERN.replace(local_res, "next/dist"); + let normalized_path = normalize_path_sep(&normalized_path); + + Some(format!("commonjs {normalized_path}")) + } else { + None + } } /// Normalize path separators to forward slashes fn normalize_path_sep(path: &str) -> String { - path.replace('\\', "/") + path.replace('\\', "/") } #[derive(Debug)] pub struct ResolveResult { - pub res: Option, - pub is_esm: bool, - pub local_res: Option, + pub res: Option, + pub is_esm: bool, + pub local_res: Option, } impl EsmExternalsConfig { - pub fn is_enabled(&self) -> bool { - !matches!(self, EsmExternalsConfig::None) - } + pub fn is_enabled(&self) -> bool { + !matches!(self, EsmExternalsConfig::None) + } - pub fn is_loose(&self) -> bool { - matches!(self, EsmExternalsConfig::Loose) - } + pub fn is_loose(&self) -> bool { + matches!(self, EsmExternalsConfig::Loose) + } } type ResolveFn = Box< - dyn Fn( - String, - String, - ) -> Pin< - Box, bool)>> + Send + 'static>, - > + Send - + 'static, + dyn Fn( + String, + String, + ) -> Pin< + Box, bool)>> + Send + 'static>, + > + Send + + 'static, >; type GetResolveFn = - Arc) -> ResolveFn + Send + Sync + 'static>; -type IsLocalCallbackFn = Box Option + Send + Sync + 'static>; + Arc) -> ResolveFn + Send + Sync + 'static>; #[allow(clippy::too_many_arguments)] -pub async fn resolve_external( - dir: String, - esm_externals_config: &EsmExternalsConfig, - context: String, - request: String, - is_esm_requested: bool, - get_resolve: GetResolveFn, - is_local_callback: Option, - base_resolve_check: Option, - esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, - node_resolve_options: Option<&ResolveOptionsWithDependencyType>, - base_esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, - base_resolve_options: Option<&ResolveOptionsWithDependencyType>, -) -> rspack_error::Result { - let esm_externals = esm_externals_config.is_enabled(); - let loose_esm_externals = esm_externals_config.is_loose(); - - let mut res: Option = None; - let mut is_esm = false; - - let prefer_esm_options = if esm_externals && is_esm_requested { - vec![true, false] - } else { - vec![false] - }; - - let base_resolve_check = base_resolve_check.unwrap_or(true); - let esm_resolve_options = esm_resolve_options.unwrap_or(&NODE_ESM_RESOLVE_OPTIONS); - let node_resolve_options = node_resolve_options.unwrap_or(&NODE_RESOLVE_OPTIONS); - let base_esm_resolve_options = base_esm_resolve_options.unwrap_or(&NODE_BASE_ESM_RESOLVE_OPTIONS); - let base_resolve_options = base_resolve_options.unwrap_or(&NODE_BASE_RESOLVE_OPTIONS); - - for prefer_esm in prefer_esm_options { - let resolve_options = if prefer_esm { - esm_resolve_options +pub async fn resolve_external( + dir: String, + esm_externals_config: &EsmExternalsConfig, + context: String, + request: String, + is_esm_requested: bool, + get_resolve: GetResolveFn, + is_local_callback: Option, + base_resolve_check: Option, + esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, + node_resolve_options: Option<&ResolveOptionsWithDependencyType>, + base_esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, + base_resolve_options: Option<&ResolveOptionsWithDependencyType>, +) -> rspack_error::Result +where + IsLocalCallbackFn: Fn(&str) -> Option + Send + Sync + 'static, +{ + let esm_externals = esm_externals_config.is_enabled(); + let loose_esm_externals = esm_externals_config.is_loose(); + + let mut res: Option = None; + let mut is_esm = false; + + let prefer_esm_options = if esm_externals && is_esm_requested { + vec![true, false] } else { - node_resolve_options + vec![false] }; - let resolve = get_resolve(Some(resolve_options.clone())); - - // Resolve the import with the webpack provided context, this - // ensures we're resolving the correct version when multiple exist. - match resolve(context.to_string(), request.to_string()).await { - Ok((resolved_path, resolved_is_esm)) => { - res = resolved_path; - is_esm = resolved_is_esm; - } - Err(_) => { - res = None; - } - } + let base_resolve_check = base_resolve_check.unwrap_or(true); + let esm_resolve_options = esm_resolve_options.unwrap_or(&NODE_ESM_RESOLVE_OPTIONS); + let node_resolve_options = node_resolve_options.unwrap_or(&NODE_RESOLVE_OPTIONS); + let base_esm_resolve_options = + base_esm_resolve_options.unwrap_or(&NODE_BASE_ESM_RESOLVE_OPTIONS); + let base_resolve_options = base_resolve_options.unwrap_or(&NODE_BASE_RESOLVE_OPTIONS); + + for prefer_esm in prefer_esm_options { + let resolve_options = if prefer_esm { + esm_resolve_options + } else { + node_resolve_options + }; + + let resolve = get_resolve(Some(resolve_options.clone())); + + // Resolve the import with the webpack provided context, this + // ensures we're resolving the correct version when multiple exist. + match resolve(context.to_string(), request.to_string()).await { + Ok((resolved_path, resolved_is_esm)) => { + res = resolved_path; + is_esm = resolved_is_esm; + } + Err(_) => { + res = None; + } + } - if res.is_none() { - continue; - } + if res.is_none() { + continue; + } - // ESM externals can only be imported (and not required). - // Make an exception in loose mode. - if !is_esm_requested && is_esm && !loose_esm_externals { - continue; - } + // ESM externals can only be imported (and not required). + // Make an exception in loose mode. + if !is_esm_requested && is_esm && !loose_esm_externals { + continue; + } - if let Some(is_local_callback) = &is_local_callback { - if let Some(ref resolved) = res { - return Ok(ResolveResult { - res: None, - is_esm: false, - local_res: is_local_callback(resolved), - }); - } - } + if let Some(is_local_callback) = &is_local_callback { + if let Some(ref resolved) = res { + return Ok(ResolveResult { + res: None, + is_esm: false, + local_res: is_local_callback(resolved), + }); + } + } - // Bundled Node.js code is relocated without its node_modules tree. - // This means we need to make sure its request resolves to the same - // package that'll be available at runtime. If it's not identical, - // we need to bundle the code (even if it _should_ be external). - if base_resolve_check { - let resolve_options = if is_esm { - base_esm_resolve_options - } else { - base_resolve_options - }; - - let base_resolve = get_resolve(Some(resolve_options.clone())); - - let (base_res, base_is_esm) = match base_resolve(dir.to_string(), request.to_string()).await { - Ok((resolved_path, resolved_is_esm)) => (resolved_path, resolved_is_esm), - Err(_) => (None, false), - }; - - // Same as above: if the package, when required from the root, - // would be different from what the real resolution would use, we - // cannot externalize it. - // If request is pointing to a symlink it could point to the same file, - // the resolver will resolve symlinks so this is handled - if base_res != res || is_esm != base_is_esm { - res = None; - continue; - } - } + // Bundled Node.js code is relocated without its node_modules tree. + // This means we need to make sure its request resolves to the same + // package that'll be available at runtime. If it's not identical, + // we need to bundle the code (even if it _should_ be external). + if base_resolve_check { + let resolve_options = if is_esm { + base_esm_resolve_options + } else { + base_resolve_options + }; + + let base_resolve = get_resolve(Some(resolve_options.clone())); + + let (base_res, base_is_esm) = + match base_resolve(dir.to_string(), request.to_string()).await { + Ok((resolved_path, resolved_is_esm)) => (resolved_path, resolved_is_esm), + Err(_) => (None, false), + }; + + // Same as above: if the package, when required from the root, + // would be different from what the real resolution would use, we + // cannot externalize it. + // If request is pointing to a symlink it could point to the same file, + // the resolver will resolve symlinks so this is handled + if base_res != res || is_esm != base_is_esm { + res = None; + continue; + } + } - break; - } + break; + } - Ok(ResolveResult { - res, - is_esm, - local_res: None, - }) + Ok(ResolveResult { + res, + is_esm, + local_res: None, + }) } diff --git a/crates/next-rspack/src/lib.rs b/crates/next-rspack/src/lib.rs index 95448c73b5d81..ee295f14b46e7 100644 --- a/crates/next-rspack/src/lib.rs +++ b/crates/next-rspack/src/lib.rs @@ -9,8 +9,8 @@ use rspack_regex::RspackRegex; use rustc_hash::FxHashMap; use crate::{ - config_shared::{EsmExternalsConfig, ExperimentalConfig, NextConfigComplete}, - next_externals_plugin::{NextExternalsPlugin, NextExternalsPluginOptions}, + config_shared::{EsmExternalsConfig, ExperimentalConfig, NextConfigComplete}, + next_externals_plugin::{NextExternalsPlugin, NextExternalsPluginOptions}, }; #[macro_use] @@ -20,94 +20,94 @@ extern crate rspack_binding_builder; #[derive(Debug)] #[napi(object, object_to_js = false)] pub struct NapiExperimentalConfig { - pub esm_externals: Option>, + pub esm_externals: Option>, } impl From for ExperimentalConfig { - fn from(value: NapiExperimentalConfig) -> Self { - ExperimentalConfig { - esm_externals: match value.esm_externals { - Some(esm_externals) => match esm_externals { - Either::A(s) => { - if s == "loose" { - EsmExternalsConfig::Loose - } else { - EsmExternalsConfig::Strict - } - } - Either::B(b) => { - if b { - EsmExternalsConfig::Strict - } else { - EsmExternalsConfig::None - } - } - }, - None => EsmExternalsConfig::None, - }, + fn from(value: NapiExperimentalConfig) -> Self { + ExperimentalConfig { + esm_externals: match value.esm_externals { + Some(esm_externals) => match esm_externals { + Either::A(s) => { + if s == "loose" { + EsmExternalsConfig::Loose + } else { + EsmExternalsConfig::Strict + } + } + Either::B(b) => { + if b { + EsmExternalsConfig::Strict + } else { + EsmExternalsConfig::None + } + } + }, + None => EsmExternalsConfig::None, + }, + } } - } } #[derive(Debug)] #[napi(object, object_to_js = false)] pub struct NapiNextConfigComplete { - pub experimental: NapiExperimentalConfig, - pub bundle_pages_router_dependencies: Option, + pub experimental: NapiExperimentalConfig, + pub bundle_pages_router_dependencies: Option, } impl From for NextConfigComplete { - fn from(value: NapiNextConfigComplete) -> Self { - let NapiNextConfigComplete { - experimental, - bundle_pages_router_dependencies, - } = value; - NextConfigComplete { - experimental: experimental.into(), - bundle_pages_router_dependencies, + fn from(value: NapiNextConfigComplete) -> Self { + let NapiNextConfigComplete { + experimental, + bundle_pages_router_dependencies, + } = value; + NextConfigComplete { + experimental: experimental.into(), + bundle_pages_router_dependencies, + } } - } } #[derive(Debug)] #[napi(object, object_to_js = false)] pub struct NapiNextExternalsPluginOptions { - pub compiler_type: String, - pub config: NapiNextConfigComplete, - pub builtin_modules: Vec, - #[napi(ts_type = "RegExp")] - pub opt_out_bundling_package_regex: RspackRegex, - pub final_transpile_packages: Vec, - pub dir: String, - #[napi(ts_type = "Record")] - pub default_overrides: FxHashMap, + pub compiler_type: String, + pub config: NapiNextConfigComplete, + pub builtin_modules: Vec, + #[napi(ts_type = "RegExp")] + pub opt_out_bundling_package_regex: RspackRegex, + pub final_transpile_packages: Vec, + pub dir: String, + #[napi(ts_type = "Record")] + pub default_overrides: FxHashMap, } impl From for NextExternalsPluginOptions { - fn from(value: NapiNextExternalsPluginOptions) -> Self { - let NapiNextExternalsPluginOptions { - compiler_type, - config, - builtin_modules, - opt_out_bundling_package_regex, - final_transpile_packages, - dir, - default_overrides, - } = value; - NextExternalsPluginOptions { - compiler_type, - config: config.into(), - builtin_modules, - opt_out_bundling_package_regex, - final_transpile_packages, - dir, - default_overrides, + fn from(value: NapiNextExternalsPluginOptions) -> Self { + let NapiNextExternalsPluginOptions { + compiler_type, + config, + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } = value; + NextExternalsPluginOptions { + compiler_type, + config: config.into(), + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } } - } } register_plugin!("NextExternalsPlugin", |env: Env, object: Unknown<'_>| { - let napi_options: NapiNextExternalsPluginOptions = - unsafe { FromNapiValue::from_napi_value(env.raw(), object.raw())? }; - Ok(Box::new(NextExternalsPlugin::new(napi_options.into())) as BoxPlugin) + let napi_options: NapiNextExternalsPluginOptions = + unsafe { FromNapiValue::from_napi_value(env.raw(), object.raw())? }; + Ok(Box::new(NextExternalsPlugin::new(napi_options.into())) as BoxPlugin) }); diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs index 62043b8b40807..521b953a8f4aa 100644 --- a/crates/next-rspack/src/next_externals_plugin.rs +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -1,13 +1,13 @@ use std::{ - path::Path, - sync::{Arc, LazyLock}, + path::Path, + sync::{Arc, LazyLock}, }; use next_taskless::EDGE_NODE_EXTERNALS; use rspack_core::{ - ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, - ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, - ResolveOptionsWithDependencyType, ResolveResult, + ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, + ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, + ResolveOptionsWithDependencyType, ResolveResult, }; use rspack_error::ToStringResultToRspackResultExt; use rspack_hook::plugin; @@ -18,245 +18,250 @@ use rustc_hash::{FxHashMap, FxHashSet}; use crate::{config_shared::NextConfigComplete, handle_externals::ExternalHandler}; static SUPPORTED_EDGE_POLYFILLS: LazyLock> = - LazyLock::new(|| EDGE_NODE_EXTERNALS.iter().copied().collect()); + LazyLock::new(|| EDGE_NODE_EXTERNALS.iter().copied().collect()); fn get_edge_polyfilled_modules() -> ExternalItem { - ExternalItem::Object( - EDGE_NODE_EXTERNALS - .iter() - .flat_map(|module| { - [ - (module.to_string(), ExternalItemValue::String(format!("commonjs node:{module}"))), - (format!("node:{module}"), ExternalItemValue::String(format!("commonjs node:{module}"))), - ] - }) - .collect::() - ) + ExternalItem::Object( + EDGE_NODE_EXTERNALS + .iter() + .flat_map(|module| { + [ + ( + module.to_string(), + ExternalItemValue::String(format!("commonjs node:{module}")), + ), + ( + format!("node:{module}"), + ExternalItemValue::String(format!("commonjs node:{module}")), + ), + ] + }) + .collect::(), + ) } fn is_node_js_module(module_name: &str, builtin_modules: &[String]) -> bool { - builtin_modules - .iter() - .any(|builtin_module| builtin_module == module_name) + builtin_modules + .iter() + .any(|builtin_module| builtin_module == module_name) } fn is_supported_edge_polyfill(module_name: &str) -> bool { - SUPPORTED_EDGE_POLYFILLS.contains(module_name) + SUPPORTED_EDGE_POLYFILLS.contains(module_name) } async fn handle_webpack_external_for_edge_runtime( - ctx: ExternalItemFnCtx, - builtin_modules: &[String], + ctx: ExternalItemFnCtx, + builtin_modules: &[String], ) -> rspack_error::Result { - let is_middleware_or_api_edge = match &ctx.context_info.issuer_layer { - Some(layer) => layer == "middleware" || layer == "api-edge", - None => false, - }; + let is_middleware_or_api_edge = match &ctx.context_info.issuer_layer { + Some(layer) => layer == "middleware" || layer == "api-edge", + None => false, + }; - let result = if is_middleware_or_api_edge - && is_node_js_module(&ctx.request, &builtin_modules) - && !is_supported_edge_polyfill(&ctx.request) - { - let resolver = ctx - .resolver_factory - .get(ctx.resolve_options_with_dependency_type); - // Allow user to provide and use their polyfills, as we do with buffer. - match resolver - .resolve(Path::new(&ctx.context), &ctx.request) - .await + let result = if is_middleware_or_api_edge + && is_node_js_module(&ctx.request, &builtin_modules) + && !is_supported_edge_polyfill(&ctx.request) { - Ok(_) => None, - Err(_) => Some(ExternalItemValue::String(format!( - "root globalThis.__import_unsupported('{}')", - ctx.request - ))), - } - } else { - None - }; + let resolver = ctx + .resolver_factory + .get(ctx.resolve_options_with_dependency_type); + // Allow user to provide and use their polyfills, as we do with buffer. + match resolver + .resolve(Path::new(&ctx.context), &ctx.request) + .await + { + Ok(_) => None, + Err(_) => Some(ExternalItemValue::String(format!( + "root globalThis.__import_unsupported('{}')", + ctx.request + ))), + } + } else { + None + }; - Ok(ExternalItemFnResult { - external_type: None, - result, - }) + Ok(ExternalItemFnResult { + external_type: None, + result, + }) } #[derive(Debug)] pub struct NextExternalsPluginOptions { - pub compiler_type: String, - pub config: NextConfigComplete, - pub builtin_modules: Vec, - pub opt_out_bundling_package_regex: RspackRegex, - pub final_transpile_packages: Vec, - pub dir: String, - pub default_overrides: FxHashMap, + pub compiler_type: String, + pub config: NextConfigComplete, + pub builtin_modules: Vec, + pub opt_out_bundling_package_regex: RspackRegex, + pub final_transpile_packages: Vec, + pub dir: String, + pub default_overrides: FxHashMap, } #[derive(Debug)] #[plugin] pub struct NextExternalsPlugin { - compiler_type: String, - builtin_modules: Arc>, - external_handler: Arc, + compiler_type: String, + builtin_modules: Arc>, + external_handler: Arc, } impl NextExternalsPlugin { - #[allow(dead_code)] - pub fn new(options: NextExternalsPluginOptions) -> Self { - let NextExternalsPluginOptions { - compiler_type, - config, - builtin_modules, - opt_out_bundling_package_regex, - final_transpile_packages, - dir, - default_overrides, - } = options; + #[allow(dead_code)] + pub fn new(options: NextExternalsPluginOptions) -> Self { + let NextExternalsPluginOptions { + compiler_type, + config, + builtin_modules, + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + } = options; - let external_handler = ExternalHandler::new( - config.clone(), - opt_out_bundling_package_regex, - final_transpile_packages, - dir, - default_overrides, - ); + let external_handler = ExternalHandler::new( + config.clone(), + opt_out_bundling_package_regex, + final_transpile_packages, + dir, + default_overrides, + ); - Self::new_inner( - compiler_type, - Arc::new(builtin_modules), - Arc::new(external_handler), - ) - } + Self::new_inner( + compiler_type, + Arc::new(builtin_modules), + Arc::new(external_handler), + ) + } } impl Plugin for NextExternalsPlugin { - fn name(&self) -> &'static str { - "NextExternalsPlugin" - } + fn name(&self) -> &'static str { + "NextExternalsPlugin" + } - fn apply( - &self, - ctx: PluginContext<&mut ApplyContext>, - options: &CompilerOptions, - ) -> rspack_error::Result<()> { - let is_client = self.compiler_type == "client"; - let is_edge_server = self.compiler_type == "edge-server"; + fn apply( + &self, + ctx: PluginContext<&mut ApplyContext>, + options: &CompilerOptions, + ) -> rspack_error::Result<()> { + let is_client = self.compiler_type == "client"; + let is_edge_server = self.compiler_type == "edge-server"; - let external_type = if is_client || is_edge_server { - "assign".to_string() - } else { - "commonjs2".to_string() - }; + let external_type = if is_client || is_edge_server { + "assign".to_string() + } else { + "commonjs2".to_string() + }; - let builtin_modules = self.builtin_modules.clone(); - let externals = if is_client || is_edge_server { - if is_edge_server { - vec![ - ExternalItem::String("next".to_string()), - ExternalItem::Object(FxHashMap::from_iter([ - ( - "@builder.io/partytown".to_string(), - ExternalItemValue::String("{}".to_string()), - ), - ( - "next/dist/compiled/etag".to_string(), - ExternalItemValue::String("{}".to_string()), - ), - ])), - get_edge_polyfilled_modules(), - ExternalItem::Fn(Box::new(move |ctx| { - let builtin_modules = builtin_modules.clone(); - Box::pin( - async move { handle_webpack_external_for_edge_runtime(ctx, &builtin_modules).await }, - ) - })), - ] - } else { - vec![ExternalItem::String("next".to_string())] - } - } else { - let external_handler = self.external_handler.clone(); - self - .builtin_modules - .iter() - .map(|module| ExternalItem::String(module.to_string())) - .chain([ExternalItem::Fn(Box::new(move |ctx| { - let external_handler = external_handler.clone(); - let result = Box::pin(async move { - let external_result = external_handler - .handle_externals( - ctx.context, - ctx.request, - &ctx.dependency_type, - ctx.context_info.issuer_layer.as_deref(), - Arc::new(move |options: Option| { - let first = ctx.resolve_options_with_dependency_type.clone(); - let second = options.unwrap_or(ResolveOptionsWithDependencyType { - resolve_options: None, - resolve_to_context: false, - dependency_category: DependencyCategory::Unknown, - }); + let builtin_modules = self.builtin_modules.clone(); + let externals = if is_client || is_edge_server { + if is_edge_server { + vec![ + ExternalItem::String("next".to_string()), + ExternalItem::Object(FxHashMap::from_iter([ + ( + "@builder.io/partytown".to_string(), + ExternalItemValue::String("{}".to_string()), + ), + ( + "next/dist/compiled/etag".to_string(), + ExternalItemValue::String("{}".to_string()), + ), + ])), + get_edge_polyfilled_modules(), + ExternalItem::Fn(Box::new(move |ctx| { + let builtin_modules = builtin_modules.clone(); + Box::pin(async move { + handle_webpack_external_for_edge_runtime(ctx, &builtin_modules).await + }) + })), + ] + } else { + vec![ExternalItem::String("next".to_string())] + } + } else { + let external_handler = self.external_handler.clone(); + self.builtin_modules + .iter() + .map(|module| ExternalItem::String(module.to_string())) + .chain([ExternalItem::Fn(Box::new(move |ctx| { + let external_handler = external_handler.clone(); + let result = Box::pin(async move { + let external_result = external_handler + .handle_externals( + ctx.context, + ctx.request, + &ctx.dependency_type, + ctx.context_info.issuer_layer.as_deref(), + Arc::new(move |options: Option| { + let first = ctx.resolve_options_with_dependency_type.clone(); + let second = options.unwrap_or(ResolveOptionsWithDependencyType { + resolve_options: None, + resolve_to_context: false, + dependency_category: DependencyCategory::Unknown, + }); - let merged_resolve_options = match second.resolve_options.as_ref() { - Some(second_resolve_options) => match first.resolve_options.as_ref() { - Some(first_resolve_options) => Some(Box::new( - first_resolve_options - .clone() - .merge(*second_resolve_options.clone()), - )), - None => Some(second_resolve_options.clone()), - }, - None => first.resolve_options.clone(), - }; - let merged_options = ResolveOptionsWithDependencyType { - resolve_options: merged_resolve_options, - resolve_to_context: first.resolve_to_context, - dependency_category: first.dependency_category, - }; - let resolver = ctx.resolver_factory.get(merged_options); + let merged_resolve_options = match second.resolve_options.as_ref() { + Some(second_resolve_options) => match first.resolve_options.as_ref() { + Some(first_resolve_options) => Some(Box::new( + first_resolve_options + .clone() + .merge(*second_resolve_options.clone()), + )), + None => Some(second_resolve_options.clone()), + }, + None => first.resolve_options.clone(), + }; + let merged_options = ResolveOptionsWithDependencyType { + resolve_options: merged_resolve_options, + resolve_to_context: first.resolve_to_context, + dependency_category: first.dependency_category, + }; + let resolver = ctx.resolver_factory.get(merged_options); - Box::new(move |resolve_context: String, request_to_resolve: String| { - let resolver = resolver.clone(); - Box::pin(async move { - let resolve_result = resolver - .resolve(Path::new(&resolve_context), &request_to_resolve) - .await - .to_rspack_result()?; - Ok(match resolve_result { - ResolveResult::Resource(resource) => { - let is_esm = if resource.path.as_str().ends_with(".js") { - resource.description_data.as_ref().is_some_and(|description_data| { - if let Some(object) = description_data.json().as_object() { - object.get("type").is_some_and(|v| v.as_str() == Some("module")) - } else { - false - } + Box::new(move |resolve_context: String, request_to_resolve: String| { + let resolver = resolver.clone(); + Box::pin(async move { + let resolve_result = resolver + .resolve(Path::new(&resolve_context), &request_to_resolve) + .await + .to_rspack_result()?; + Ok(match resolve_result { + ResolveResult::Resource(resource) => { + let is_esm = if resource.path.as_str().ends_with(".js") { + resource.description_data.as_ref().is_some_and(|description_data| { + if let Some(object) = description_data.json().as_object() { + object.get("type").is_some_and(|v| v.as_str() == Some("module")) + } else { + false + } + }) + } else { + resource.path.as_str().ends_with(".mjs") + }; + (Some(resource.full_path()), is_esm) + } + ResolveResult::Ignored => (None, false), + }) + }) }) - } else { - resource.path.as_str().ends_with(".mjs") - }; - (Some(resource.full_path()), is_esm) - } - ResolveResult::Ignored => (None, false), - }) - }) - }) - }), - ) - .await?; - Ok(ExternalItemFnResult { - external_type: None, - result: external_result.map(ExternalItemValue::String), - }) - }); - result - }))]) - .collect::>() - }; + }), + ) + .await?; + Ok(ExternalItemFnResult { + external_type: None, + result: external_result.map(ExternalItemValue::String), + }) + }); + result + }))]) + .collect::>() + }; - ExternalsPlugin::new(external_type, externals) - .apply(PluginContext::with_context(ctx.context), options)?; + ExternalsPlugin::new(external_type, externals) + .apply(PluginContext::with_context(ctx.context), options)?; - Ok(()) - } + Ok(()) + } } From e09194dd420970ec7ed50816f520ecda57e626a1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 11:40:12 +0800 Subject: [PATCH 09/38] refactor code --- crates/next-rspack/src/handle_externals.rs | 40 +++--- crates/next-rspack/src/lib.rs | 2 + .../next-rspack/src/next_externals_plugin.rs | 129 ++++++++++-------- crates/next-rspack/tsconfig.json | 2 +- 4 files changed, 96 insertions(+), 77 deletions(-) diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index 4f02c9cec103e..cdc8c838009eb 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -2,7 +2,7 @@ use std::{ future::Future, path::Path, pin::Pin, - sync::{Arc, LazyLock, OnceLock}, + sync::{LazyLock, OnceLock}, }; use next_taskless::NEVER_EXTERNAL_RE; @@ -226,14 +226,17 @@ impl ExternalHandler { None } - pub async fn handle_externals( + pub async fn handle_externals( &self, context: String, request: String, dependency_type: &str, layer: Option<&str>, - get_resolve: GetResolveFn, - ) -> rspack_error::Result> { + get_resolve: &GetResolveFn, + ) -> rspack_error::Result> + where + GetResolveFn: Fn(Option) -> ResolveFn, + { // We need to externalize internal requests for files intended to // not be bundled. let is_local = request.starts_with('.') || Path::new(&request).is_absolute(); @@ -326,9 +329,9 @@ impl ExternalHandler { context.to_string(), request.to_string(), is_esm_requested, - get_resolve.clone(), + get_resolve, if is_local { - Some(resolve_next_external) + Some(&resolve_next_external) } else { None }, @@ -409,9 +412,9 @@ impl ExternalHandler { context.to_string(), pkg_request, is_esm_requested, - get_resolve.clone(), + get_resolve, if is_local { - Some(Box::new(resolve_next_external)) + Some(&resolve_next_external) } else { None }, @@ -517,7 +520,7 @@ impl EsmExternalsConfig { } } -type ResolveFn = Box< +pub type ResolveFn = Box< dyn Fn( String, String, @@ -526,25 +529,24 @@ type ResolveFn = Box< > + Send + 'static, >; -type GetResolveFn = - Arc) -> ResolveFn + Send + Sync + 'static>; #[allow(clippy::too_many_arguments)] -pub async fn resolve_external( +pub async fn resolve_external<'a, GetResolveFn, IsLocalCallbackFn>( dir: String, - esm_externals_config: &EsmExternalsConfig, + esm_externals_config: &'a EsmExternalsConfig, context: String, request: String, is_esm_requested: bool, - get_resolve: GetResolveFn, - is_local_callback: Option, + get_resolve: &'a GetResolveFn, + is_local_callback: Option<&'a IsLocalCallbackFn>, base_resolve_check: Option, - esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, - node_resolve_options: Option<&ResolveOptionsWithDependencyType>, - base_esm_resolve_options: Option<&ResolveOptionsWithDependencyType>, - base_resolve_options: Option<&ResolveOptionsWithDependencyType>, + esm_resolve_options: Option<&'a ResolveOptionsWithDependencyType>, + node_resolve_options: Option<&'a ResolveOptionsWithDependencyType>, + base_esm_resolve_options: Option<&'a ResolveOptionsWithDependencyType>, + base_resolve_options: Option<&'a ResolveOptionsWithDependencyType>, ) -> rspack_error::Result where + GetResolveFn: Fn(Option) -> ResolveFn, IsLocalCallbackFn: Fn(&str) -> Option + Send + Sync + 'static, { let esm_externals = esm_externals_config.is_enabled(); diff --git a/crates/next-rspack/src/lib.rs b/crates/next-rspack/src/lib.rs index ee295f14b46e7..148ea73f74439 100644 --- a/crates/next-rspack/src/lib.rs +++ b/crates/next-rspack/src/lib.rs @@ -1,3 +1,5 @@ +#![feature(impl_trait_in_bindings)] + mod config_shared; mod handle_externals; mod next_externals_plugin; diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs index 521b953a8f4aa..4e36c9bcc826b 100644 --- a/crates/next-rspack/src/next_externals_plugin.rs +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -15,7 +15,10 @@ use rspack_plugin_externals::ExternalsPlugin; use rspack_regex::RspackRegex; use rustc_hash::{FxHashMap, FxHashSet}; -use crate::{config_shared::NextConfigComplete, handle_externals::ExternalHandler}; +use crate::{ + config_shared::NextConfigComplete, + handle_externals::{ExternalHandler, ResolveFn}, +}; static SUPPORTED_EDGE_POLYFILLS: LazyLock> = LazyLock::new(|| EDGE_NODE_EXTERNALS.iter().copied().collect()); @@ -60,7 +63,7 @@ async fn handle_webpack_external_for_edge_runtime( }; let result = if is_middleware_or_api_edge - && is_node_js_module(&ctx.request, &builtin_modules) + && is_node_js_module(&ctx.request, builtin_modules) && !is_supported_edge_polyfill(&ctx.request) { let resolver = ctx @@ -182,80 +185,92 @@ impl Plugin for NextExternalsPlugin { } } else { let external_handler = self.external_handler.clone(); - self.builtin_modules - .iter() - .map(|module| ExternalItem::String(module.to_string())) - .chain([ExternalItem::Fn(Box::new(move |ctx| { - let external_handler = external_handler.clone(); - let result = Box::pin(async move { - let external_result = external_handler - .handle_externals( - ctx.context, - ctx.request, - &ctx.dependency_type, - ctx.context_info.issuer_layer.as_deref(), - Arc::new(move |options: Option| { - let first = ctx.resolve_options_with_dependency_type.clone(); - let second = options.unwrap_or(ResolveOptionsWithDependencyType { - resolve_options: None, - resolve_to_context: false, - dependency_category: DependencyCategory::Unknown, - }); - let merged_resolve_options = match second.resolve_options.as_ref() { - Some(second_resolve_options) => match first.resolve_options.as_ref() { + let external_fn = ExternalItem::Fn(Box::new(move |ctx| { + let external_handler = external_handler.clone(); + + let get_resolve: impl Fn(Option) -> ResolveFn = + move |options: Option| { + let first = ctx.resolve_options_with_dependency_type.clone(); + let second = options.unwrap_or(ResolveOptionsWithDependencyType { + resolve_options: None, + resolve_to_context: false, + dependency_category: DependencyCategory::Unknown, + }); + + let merged_resolve_options = match second.resolve_options.as_ref() { + Some(second_resolve_options) => match first.resolve_options.as_ref() { Some(first_resolve_options) => Some(Box::new( first_resolve_options - .clone() - .merge(*second_resolve_options.clone()), + .clone() + .merge(*second_resolve_options.clone()), )), None => Some(second_resolve_options.clone()), - }, - None => first.resolve_options.clone(), - }; - let merged_options = ResolveOptionsWithDependencyType { - resolve_options: merged_resolve_options, - resolve_to_context: first.resolve_to_context, - dependency_category: first.dependency_category, - }; - let resolver = ctx.resolver_factory.get(merged_options); + }, + None => first.resolve_options.clone(), + }; + let merged_options = ResolveOptionsWithDependencyType { + resolve_options: merged_resolve_options, + resolve_to_context: first.resolve_to_context, + dependency_category: first.dependency_category, + }; + let resolver = ctx.resolver_factory.get(merged_options); - Box::new(move |resolve_context: String, request_to_resolve: String| { - let resolver = resolver.clone(); - Box::pin(async move { + Box::new(move |resolve_context: String, request_to_resolve: String| { + let resolver = resolver.clone(); + Box::pin(async move { let resolve_result = resolver .resolve(Path::new(&resolve_context), &request_to_resolve) .await .to_rspack_result()?; Ok(match resolve_result { ResolveResult::Resource(resource) => { - let is_esm = if resource.path.as_str().ends_with(".js") { - resource.description_data.as_ref().is_some_and(|description_data| { - if let Some(object) = description_data.json().as_object() { - object.get("type").is_some_and(|v| v.as_str() == Some("module")) + let is_esm = if resource.path.as_str().ends_with(".js") { + resource.description_data.as_ref().is_some_and( + |description_data| { + if let Some(object) = + description_data.json().as_object() + { + object.get("type").is_some_and(|v| { + v.as_str() == Some("module") + }) + } else { + false + } + }, + ) } else { - false - } - }) - } else { - resource.path.as_str().ends_with(".mjs") - }; - (Some(resource.full_path()), is_esm) + resource.path.as_str().ends_with(".mjs") + }; + (Some(resource.full_path()), is_esm) } ResolveResult::Ignored => (None, false), }) - }) }) - }), + }) + }; + + Box::pin(async move { + let external_result = external_handler + .handle_externals( + ctx.context, + ctx.request, + &ctx.dependency_type, + ctx.context_info.issuer_layer.as_deref(), + &get_resolve, ) .await?; - Ok(ExternalItemFnResult { - external_type: None, - result: external_result.map(ExternalItemValue::String), - }) - }); - result - }))]) + Ok(ExternalItemFnResult { + external_type: None, + result: external_result.map(ExternalItemValue::String), + }) + }) + })); + + self.builtin_modules + .iter() + .map(|module| ExternalItem::String(module.to_string())) + .chain([external_fn]) .collect::>() }; diff --git a/crates/next-rspack/tsconfig.json b/crates/next-rspack/tsconfig.json index 29d55f235b8a9..3b5b8681e76c8 100644 --- a/crates/next-rspack/tsconfig.json +++ b/crates/next-rspack/tsconfig.json @@ -1,5 +1,5 @@ { - "copmilerOptions": { + "compilerOptions": { "module": "NodeNext", "allowJs": true, "strict": true From 132f0ef7b215f1b5d8ef9ec35577e9c5987aafc4 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 14:48:07 +0800 Subject: [PATCH 10/38] reuse NODE_EXTERNALS and BUN_EXTERNALS --- crates/next-rspack/src/lib.rs | 3 -- .../next-rspack/src/next_externals_plugin.rs | 32 +++++++------------ 2 files changed, 12 insertions(+), 23 deletions(-) diff --git a/crates/next-rspack/src/lib.rs b/crates/next-rspack/src/lib.rs index 148ea73f74439..aab8bc436a75d 100644 --- a/crates/next-rspack/src/lib.rs +++ b/crates/next-rspack/src/lib.rs @@ -76,7 +76,6 @@ impl From for NextConfigComplete { pub struct NapiNextExternalsPluginOptions { pub compiler_type: String, pub config: NapiNextConfigComplete, - pub builtin_modules: Vec, #[napi(ts_type = "RegExp")] pub opt_out_bundling_package_regex: RspackRegex, pub final_transpile_packages: Vec, @@ -90,7 +89,6 @@ impl From for NextExternalsPluginOptions { let NapiNextExternalsPluginOptions { compiler_type, config, - builtin_modules, opt_out_bundling_package_regex, final_transpile_packages, dir, @@ -99,7 +97,6 @@ impl From for NextExternalsPluginOptions { NextExternalsPluginOptions { compiler_type, config: config.into(), - builtin_modules, opt_out_bundling_package_regex, final_transpile_packages, dir, diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/crates/next-rspack/src/next_externals_plugin.rs index 4e36c9bcc826b..96890cd53da72 100644 --- a/crates/next-rspack/src/next_externals_plugin.rs +++ b/crates/next-rspack/src/next_externals_plugin.rs @@ -3,7 +3,7 @@ use std::{ sync::{Arc, LazyLock}, }; -use next_taskless::EDGE_NODE_EXTERNALS; +use next_taskless::{BUN_EXTERNALS, EDGE_NODE_EXTERNALS, NODE_EXTERNALS}; use rspack_core::{ ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, @@ -43,10 +43,13 @@ fn get_edge_polyfilled_modules() -> ExternalItem { ) } -fn is_node_js_module(module_name: &str, builtin_modules: &[String]) -> bool { - builtin_modules +fn is_node_js_module(module_name: &str) -> bool { + NODE_EXTERNALS .iter() - .any(|builtin_module| builtin_module == module_name) + .any(|builtin_module| *builtin_module == module_name) + || BUN_EXTERNALS + .iter() + .any(|builtin_module| *builtin_module == module_name) } fn is_supported_edge_polyfill(module_name: &str) -> bool { @@ -55,7 +58,6 @@ fn is_supported_edge_polyfill(module_name: &str) -> bool { async fn handle_webpack_external_for_edge_runtime( ctx: ExternalItemFnCtx, - builtin_modules: &[String], ) -> rspack_error::Result { let is_middleware_or_api_edge = match &ctx.context_info.issuer_layer { Some(layer) => layer == "middleware" || layer == "api-edge", @@ -63,7 +65,7 @@ async fn handle_webpack_external_for_edge_runtime( }; let result = if is_middleware_or_api_edge - && is_node_js_module(&ctx.request, builtin_modules) + && is_node_js_module(&ctx.request) && !is_supported_edge_polyfill(&ctx.request) { let resolver = ctx @@ -94,7 +96,6 @@ async fn handle_webpack_external_for_edge_runtime( pub struct NextExternalsPluginOptions { pub compiler_type: String, pub config: NextConfigComplete, - pub builtin_modules: Vec, pub opt_out_bundling_package_regex: RspackRegex, pub final_transpile_packages: Vec, pub dir: String, @@ -105,7 +106,6 @@ pub struct NextExternalsPluginOptions { #[plugin] pub struct NextExternalsPlugin { compiler_type: String, - builtin_modules: Arc>, external_handler: Arc, } @@ -115,7 +115,6 @@ impl NextExternalsPlugin { let NextExternalsPluginOptions { compiler_type, config, - builtin_modules, opt_out_bundling_package_regex, final_transpile_packages, dir, @@ -130,11 +129,7 @@ impl NextExternalsPlugin { default_overrides, ); - Self::new_inner( - compiler_type, - Arc::new(builtin_modules), - Arc::new(external_handler), - ) + Self::new_inner(compiler_type, Arc::new(external_handler)) } } @@ -157,7 +152,6 @@ impl Plugin for NextExternalsPlugin { "commonjs2".to_string() }; - let builtin_modules = self.builtin_modules.clone(); let externals = if is_client || is_edge_server { if is_edge_server { vec![ @@ -174,10 +168,7 @@ impl Plugin for NextExternalsPlugin { ])), get_edge_polyfilled_modules(), ExternalItem::Fn(Box::new(move |ctx| { - let builtin_modules = builtin_modules.clone(); - Box::pin(async move { - handle_webpack_external_for_edge_runtime(ctx, &builtin_modules).await - }) + Box::pin(async move { handle_webpack_external_for_edge_runtime(ctx).await }) })), ] } else { @@ -267,8 +258,9 @@ impl Plugin for NextExternalsPlugin { }) })); - self.builtin_modules + NODE_EXTERNALS .iter() + .chain(BUN_EXTERNALS.iter()) .map(|module| ExternalItem::String(module.to_string())) .chain([external_fn]) .collect::>() From 0d2b27d4eb45744b6c2f6dc439e68d57fbf20f1a Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 14:50:10 +0800 Subject: [PATCH 11/38] rm BARREL_OPTIMIZATION_PREFIX --- crates/next-taskless/src/constants.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/crates/next-taskless/src/constants.rs b/crates/next-taskless/src/constants.rs index f26fe0d3ba64e..6ea3aecd3ae7d 100644 --- a/crates/next-taskless/src/constants.rs +++ b/crates/next-taskless/src/constants.rs @@ -1,5 +1,3 @@ -pub const BARREL_OPTIMIZATION_PREFIX: &str = "__barrel_optimize__"; - pub const NODE_EXTERNALS: [&str; 64] = [ "assert", "assert/strict", From 586775204af65d67d7f524aa13db087f53665390 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 14:52:18 +0800 Subject: [PATCH 12/38] fix: rm dead code --- crates/next-rspack/src/handle_externals.rs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index cdc8c838009eb..ebd47b3536751 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -256,10 +256,6 @@ impl ExternalHandler { // Absolute requires (require('/foo')) are extremely uncommon, but // also have no need for customization as they're already resolved. if !is_local { - if request == "next" { - return Ok(Some(format!("commonjs {request}"))); - } - // Handle React packages if REACT_PACKAGES_REGEX.is_match(&request) && !is_app_layer { return Ok(Some(format!("commonjs {request}"))); From 69d9435392a7a1ef4256683b300a71a03191db49 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 14:54:16 +0800 Subject: [PATCH 13/38] fix --- crates/next-rspack/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/next-rspack/Cargo.toml b/crates/next-rspack/Cargo.toml index 49fda1ab9ea2f..133d9acd42403 100644 --- a/crates/next-rspack/Cargo.toml +++ b/crates/next-rspack/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "next-rspack-binding" publish = false -edition = "2021" +edition = "2024" [lib] crate-type = ["cdylib"] From 9869699b403e5210c5e10870d35b61d9f43c1dfd Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 14:56:28 +0800 Subject: [PATCH 14/38] fix ast-grep --- crates/next-rspack/src/handle_externals.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/crates/next-rspack/src/handle_externals.rs b/crates/next-rspack/src/handle_externals.rs index ebd47b3536751..fd7f5edfdc181 100644 --- a/crates/next-rspack/src/handle_externals.rs +++ b/crates/next-rspack/src/handle_externals.rs @@ -228,7 +228,7 @@ impl ExternalHandler { pub async fn handle_externals( &self, - context: String, + ctx: String, request: String, dependency_type: &str, layer: Option<&str>, @@ -322,7 +322,7 @@ impl ExternalHandler { let resolve_result = resolve_external( self.dir.to_string(), &self.config.experimental.esm_externals, - context.to_string(), + ctx.to_string(), request.to_string(), is_esm_requested, get_resolve, @@ -405,7 +405,7 @@ impl ExternalHandler { let pkg_res = resolve_external( self.dir.to_string(), &self.config.experimental.esm_externals, - context.to_string(), + ctx.to_string(), pkg_request, is_esm_requested, get_resolve, @@ -530,7 +530,7 @@ pub type ResolveFn = Box< pub async fn resolve_external<'a, GetResolveFn, IsLocalCallbackFn>( dir: String, esm_externals_config: &'a EsmExternalsConfig, - context: String, + ctx: String, request: String, is_esm_requested: bool, get_resolve: &'a GetResolveFn, @@ -575,7 +575,7 @@ where // Resolve the import with the webpack provided context, this // ensures we're resolving the correct version when multiple exist. - match resolve(context.to_string(), request.to_string()).await { + match resolve(ctx.to_string(), request.to_string()).await { Ok((resolved_path, resolved_is_esm)) => { res = resolved_path; is_esm = resolved_is_esm; From 0bbfa5b29a3b78de104a0d844175232b6a0932f0 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:05:14 +0800 Subject: [PATCH 15/38] prettier --- crates/next-rspack/index.js | 39 +++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/crates/next-rspack/index.js b/crates/next-rspack/index.js index ee7034b79a6d2..ae9bc6bc1efab 100644 --- a/crates/next-rspack/index.js +++ b/crates/next-rspack/index.js @@ -56,7 +56,9 @@ const isMuslFromReport = () => { const isMuslFromChildProcess = () => { try { - return require('child_process').execSync('ldd --version', { encoding: 'utf8' }).includes('musl') + return require('child_process') + .execSync('ldd --version', { encoding: 'utf8' }) + .includes('musl') } catch (e) { // If we reach this case, we don't know if the system is musl or not, so is better to just fallback to false return false @@ -66,7 +68,7 @@ const isMuslFromChildProcess = () => { function requireNative() { if (process.env.NAPI_RS_NATIVE_LIBRARY_PATH) { try { - nativeBinding = require(process.env.NAPI_RS_NATIVE_LIBRARY_PATH); + nativeBinding = require(process.env.NAPI_RS_NATIVE_LIBRARY_PATH) } catch (err) { loadErrors.push(err) } @@ -94,7 +96,9 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on Android ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on Android ${process.arch}`) + ) } } else if (process.platform === 'win32') { if (process.arch === 'x64') { @@ -131,7 +135,9 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on Windows: ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on Windows: ${process.arch}`) + ) } } else if (process.platform === 'darwin') { try { @@ -167,7 +173,9 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on macOS: ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on macOS: ${process.arch}`) + ) } } else if (process.platform === 'freebsd') { if (process.arch === 'x64') { @@ -193,7 +201,9 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on FreeBSD: ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on FreeBSD: ${process.arch}`) + ) } } else if (process.platform === 'linux') { if (process.arch === 'x64') { @@ -315,7 +325,9 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on Linux: ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on Linux: ${process.arch}`) + ) } } else if (process.platform === 'openharmony') { if (process.arch === 'arm64') { @@ -352,10 +364,16 @@ function requireNative() { loadErrors.push(e) } } else { - loadErrors.push(new Error(`Unsupported architecture on OpenHarmony: ${process.arch}`)) + loadErrors.push( + new Error(`Unsupported architecture on OpenHarmony: ${process.arch}`) + ) } } else { - loadErrors.push(new Error(`Unsupported OS: ${process.platform}, architecture: ${process.arch}`)) + loadErrors.push( + new Error( + `Unsupported OS: ${process.platform}, architecture: ${process.arch}` + ) + ) } } @@ -393,4 +411,5 @@ if (!nativeBinding) { } module.exports = nativeBinding -module.exports.registerNextExternalsPlugin = nativeBinding.registerNextExternalsPlugin +module.exports.registerNextExternalsPlugin = + nativeBinding.registerNextExternalsPlugin From c617f9c57b6938946428186316a765122f86f85f Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:27:53 +0800 Subject: [PATCH 16/38] change dir --- .github/workflows/release-rspack-binding.yml | 122 ++++++++++++++++++ Cargo.toml | 2 +- crates/next-rspack/.npmrc | 1 - crates/next-rspack/pnpm-workspace.yaml | 0 {crates/next-rspack => rspack}/.gitignore | 0 .../crates/binding}/Cargo.lock | 0 .../crates/binding}/Cargo.toml | 0 .../crates/binding}/build.rs | 0 .../crates/binding}/index.d.ts | 0 .../crates/binding}/index.js | 0 .../crates/binding}/package.json | 0 .../crates/binding}/pnpm-lock.yaml | 0 .../crates/binding}/rust-toolchain.toml | 0 .../crates/binding}/src/config_shared.rs | 0 .../crates/binding}/src/handle_externals.rs | 0 .../crates/binding}/src/lib.rs | 0 .../binding}/src/next_externals_plugin.rs | 0 .../crates/binding}/tsconfig.json | 0 rspack/lib/index.d.ts | 15 +++ rspack/lib/index.js | 23 ++++ rspack/package.json | 32 +++++ rspack/pnpm-workspace.yaml | 3 + 22 files changed, 196 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/release-rspack-binding.yml delete mode 100644 crates/next-rspack/.npmrc delete mode 100644 crates/next-rspack/pnpm-workspace.yaml rename {crates/next-rspack => rspack}/.gitignore (100%) rename {crates/next-rspack => rspack/crates/binding}/Cargo.lock (100%) rename {crates/next-rspack => rspack/crates/binding}/Cargo.toml (100%) rename {crates/next-rspack => rspack/crates/binding}/build.rs (100%) rename {crates/next-rspack => rspack/crates/binding}/index.d.ts (100%) rename {crates/next-rspack => rspack/crates/binding}/index.js (100%) rename {crates/next-rspack => rspack/crates/binding}/package.json (100%) rename {crates/next-rspack => rspack/crates/binding}/pnpm-lock.yaml (100%) rename {crates/next-rspack => rspack/crates/binding}/rust-toolchain.toml (100%) rename {crates/next-rspack => rspack/crates/binding}/src/config_shared.rs (100%) rename {crates/next-rspack => rspack/crates/binding}/src/handle_externals.rs (100%) rename {crates/next-rspack => rspack/crates/binding}/src/lib.rs (100%) rename {crates/next-rspack => rspack/crates/binding}/src/next_externals_plugin.rs (100%) rename {crates/next-rspack => rspack/crates/binding}/tsconfig.json (100%) create mode 100644 rspack/lib/index.d.ts create mode 100644 rspack/lib/index.js create mode 100644 rspack/package.json create mode 100644 rspack/pnpm-workspace.yaml diff --git a/.github/workflows/release-rspack-binding.yml b/.github/workflows/release-rspack-binding.yml new file mode 100644 index 0000000000000..d70c0d8562a38 --- /dev/null +++ b/.github/workflows/release-rspack-binding.yml @@ -0,0 +1,122 @@ +name: Release + +on: + workflow_dispatch: + inputs: + dry-run: + description: 'Run in dry-run mode (no actual publishing)' + required: false + default: false + type: boolean + npm-tag: + description: 'NPM tag for publishing' + required: false + default: 'latest' + type: choice + options: + - latest + - alpha + - beta + - canary + +env: + DEBUG: napi:* + +jobs: + build: + name: Build + uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@v1 + with: + napi-build-command: pnpm build --release + + release: + runs-on: ubuntu-latest + environment: npm + name: Release + permissions: + contents: write + id-token: write + needs: [build, test] + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Display release mode + run: | + echo "🚀 Release Configuration:" + echo " - Dry-run mode: ${{ inputs.dry-run }}" + echo " - NPM tag: ${{ inputs.npm-tag || 'latest' }}" + if [ "${{ inputs.dry-run }}" == "true" ]; then + echo " - ⚠️ This is a DRY RUN - no packages will be published" + else + echo " - 📦 This will PUBLISH packages to npm" + fi + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + + - name: Enable corepack + run: corepack enable + + - name: Setup pnpm + run: corepack prepare + + - name: Cache pnpm dependencies + uses: actions/cache@v3 + with: + path: ~/.pnpm-store + key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm- + + - name: Install dependencies + run: pnpm install + + - name: Get NAPI info + id: napi-info + uses: rspack-contrib/rspack-toolchain/get-napi-info@v1 + + - name: Download rspack binding + uses: rspack-contrib/rspack-toolchain/download-rspack-binding@v1 + with: + path: ${{ steps.napi-info.outputs.binding-directory }}/artifacts + + - name: List artifacts + run: ls -R artifacts + working-directory: ${{ steps.napi-info.outputs.binding-directory }} + + - name: Create npm dirs + run: pnpm napi create-npm-dirs + working-directory: ${{ steps.napi-info.outputs.binding-directory }} + + - name: Move artifacts + run: pnpm napi artifacts + working-directory: ${{ steps.napi-info.outputs.binding-directory }} + + - name: List npm dirs + run: ls -R npm + working-directory: ${{ steps.napi-info.outputs.binding-directory }} + + - name: Create npm token + run: | + echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + + - name: Release npm binding packages + run: | + npm config set access public + npm config set provenance true + pnpm napi pre-publish --no-gh-release -t npm + working-directory: ${{ steps.napi-info.outputs.binding-directory }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Release npm packages + run: | + pnpm publish -r --tag ${{ inputs.npm-tag }} --no-git-checks --provenance --access public ${{ inputs.dry-run && '--dry-run' || '' }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/Cargo.toml b/Cargo.toml index 3c108a1443f6f..03932b49f7fcc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,7 @@ members = [ exclude = [ "crates/next-error-code-swc-plugin", - "crates/next-rspack" + "rspack/crates/*" ] [workspace.lints.clippy] diff --git a/crates/next-rspack/.npmrc b/crates/next-rspack/.npmrc deleted file mode 100644 index ea5c45db3c8d5..0000000000000 --- a/crates/next-rspack/.npmrc +++ /dev/null @@ -1 +0,0 @@ -workspace-root=false diff --git a/crates/next-rspack/pnpm-workspace.yaml b/crates/next-rspack/pnpm-workspace.yaml deleted file mode 100644 index e69de29bb2d1d..0000000000000 diff --git a/crates/next-rspack/.gitignore b/rspack/.gitignore similarity index 100% rename from crates/next-rspack/.gitignore rename to rspack/.gitignore diff --git a/crates/next-rspack/Cargo.lock b/rspack/crates/binding/Cargo.lock similarity index 100% rename from crates/next-rspack/Cargo.lock rename to rspack/crates/binding/Cargo.lock diff --git a/crates/next-rspack/Cargo.toml b/rspack/crates/binding/Cargo.toml similarity index 100% rename from crates/next-rspack/Cargo.toml rename to rspack/crates/binding/Cargo.toml diff --git a/crates/next-rspack/build.rs b/rspack/crates/binding/build.rs similarity index 100% rename from crates/next-rspack/build.rs rename to rspack/crates/binding/build.rs diff --git a/crates/next-rspack/index.d.ts b/rspack/crates/binding/index.d.ts similarity index 100% rename from crates/next-rspack/index.d.ts rename to rspack/crates/binding/index.d.ts diff --git a/crates/next-rspack/index.js b/rspack/crates/binding/index.js similarity index 100% rename from crates/next-rspack/index.js rename to rspack/crates/binding/index.js diff --git a/crates/next-rspack/package.json b/rspack/crates/binding/package.json similarity index 100% rename from crates/next-rspack/package.json rename to rspack/crates/binding/package.json diff --git a/crates/next-rspack/pnpm-lock.yaml b/rspack/crates/binding/pnpm-lock.yaml similarity index 100% rename from crates/next-rspack/pnpm-lock.yaml rename to rspack/crates/binding/pnpm-lock.yaml diff --git a/crates/next-rspack/rust-toolchain.toml b/rspack/crates/binding/rust-toolchain.toml similarity index 100% rename from crates/next-rspack/rust-toolchain.toml rename to rspack/crates/binding/rust-toolchain.toml diff --git a/crates/next-rspack/src/config_shared.rs b/rspack/crates/binding/src/config_shared.rs similarity index 100% rename from crates/next-rspack/src/config_shared.rs rename to rspack/crates/binding/src/config_shared.rs diff --git a/crates/next-rspack/src/handle_externals.rs b/rspack/crates/binding/src/handle_externals.rs similarity index 100% rename from crates/next-rspack/src/handle_externals.rs rename to rspack/crates/binding/src/handle_externals.rs diff --git a/crates/next-rspack/src/lib.rs b/rspack/crates/binding/src/lib.rs similarity index 100% rename from crates/next-rspack/src/lib.rs rename to rspack/crates/binding/src/lib.rs diff --git a/crates/next-rspack/src/next_externals_plugin.rs b/rspack/crates/binding/src/next_externals_plugin.rs similarity index 100% rename from crates/next-rspack/src/next_externals_plugin.rs rename to rspack/crates/binding/src/next_externals_plugin.rs diff --git a/crates/next-rspack/tsconfig.json b/rspack/crates/binding/tsconfig.json similarity index 100% rename from crates/next-rspack/tsconfig.json rename to rspack/crates/binding/tsconfig.json diff --git a/rspack/lib/index.d.ts b/rspack/lib/index.d.ts new file mode 100644 index 0000000000000..b79e9aec5d7d8 --- /dev/null +++ b/rspack/lib/index.d.ts @@ -0,0 +1,15 @@ +import * as RspackCore from '@rspack/core'; +import { NapiNextExternalsPluginOptions } from '@next-rspack/binding'; + +declare class NextExternalsPlugin { + /** + * The banner text to be added to the output file. + */ + constructor(options: NapiNextExternalsPluginOptions); +} + +declare const core: typeof RspackCore & { + NextExternalsPlugin: typeof NextExternalsPlugin; +}; + +export = core; diff --git a/rspack/lib/index.js b/rspack/lib/index.js new file mode 100644 index 0000000000000..3d66776de2d04 --- /dev/null +++ b/rspack/lib/index.js @@ -0,0 +1,23 @@ +process.env.RSPACK_BINDING = require('node:path').dirname( + require.resolve('@next-rspack/binding') +); + +const binding = require('@next-rspack/binding'); + +// Register the plugin `NextExternalsPlugin` exported by `crates/binding/src/lib.rs`. +binding.registerNextExternalsPlugin(); + +const core = require('@rspack/core'); + +const NextExternalsPlugin = core.experiments.createNativePlugin( + 'NextExternalsPlugin', + function (options) { + return options; + } +); + +Object.defineProperty(core, 'NextExternalsPlugin', { + value: NextExternalsPlugin, +}); + +module.exports = core; diff --git a/rspack/package.json b/rspack/package.json new file mode 100644 index 0000000000000..b224fd59f6e5d --- /dev/null +++ b/rspack/package.json @@ -0,0 +1,32 @@ +{ + "name": "@next-rspack/core", + "version": "0.0.1-canary.2", + "homepage": "https://github.com/SyMind/next-rspack-binding", + "bugs": { + "url": "https://github.com/SyMind/next-rspack-binding/issues" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/SyMind/next-rspack-binding.git" + }, + "packageManager": "pnpm@10.13.1", + "main": "lib/index.js", + "types": "lib/index.d.ts", + "exports": { + ".": { + "types": "./lib/index.d.ts", + "default": "./lib/index.js" + }, + "./package.json": "./package.json" + }, + "files": [ + "lib" + ], + "scripts": { + "build": "pnpm run --filter @next-rspack/binding build" + }, + "dependencies": { + "@rspack/core": "1.4.10", + "@next-rspack/binding": "workspace:*" + } +} diff --git a/rspack/pnpm-workspace.yaml b/rspack/pnpm-workspace.yaml new file mode 100644 index 0000000000000..4f73cb2c254b0 --- /dev/null +++ b/rspack/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - 'crates/binding' + - '.' From d2b39c7fff686f209c3582be0d336b39229aee5c Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:31:13 +0800 Subject: [PATCH 17/38] change package json --- rspack/crates/binding/package.json | 7 +++---- rspack/package.json | 6 +++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/rspack/crates/binding/package.json b/rspack/crates/binding/package.json index d83c08328bb83..7c8d1239f368f 100644 --- a/rspack/crates/binding/package.json +++ b/rspack/crates/binding/package.json @@ -1,14 +1,13 @@ { "name": "@next-rspack/binding", "version": "0.0.1-canary.2", - "homepage": "https://github.com/SyMind/next-rspack-binding", + "homepage": "https://nextjs.org", "bugs": { - "url": "https://github.com/SyMind/next-rspack-binding/issues" + "url": "https://github.com/vercel/next.js/issues" }, "repository": { "type": "git", - "url": "git+https://github.com/SyMind/next-rspack-binding.git", - "directory": "crates/binding" + "url": "git+https://github.com/vercel/next.js.git" }, "main": "index.js", "types": "index.d.ts", diff --git a/rspack/package.json b/rspack/package.json index b224fd59f6e5d..b819cab6c679d 100644 --- a/rspack/package.json +++ b/rspack/package.json @@ -1,13 +1,13 @@ { "name": "@next-rspack/core", "version": "0.0.1-canary.2", - "homepage": "https://github.com/SyMind/next-rspack-binding", + "homepage": "https://nextjs.org", "bugs": { - "url": "https://github.com/SyMind/next-rspack-binding/issues" + "url": "https://github.com/vercel/next.js/issues" }, "repository": { "type": "git", - "url": "git+https://github.com/SyMind/next-rspack-binding.git" + "url": "git+https://github.com/vercel/next.js.git" }, "packageManager": "pnpm@10.13.1", "main": "lib/index.js", From 635c8dd0d87967b919d56e19605d390c32aba246 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:36:12 +0800 Subject: [PATCH 18/38] rename workflow --- .../{release-rspack-binding.yml => release-next-rspack.yml} | 1 + 1 file changed, 1 insertion(+) rename .github/workflows/{release-rspack-binding.yml => release-next-rspack.yml} (98%) diff --git a/.github/workflows/release-rspack-binding.yml b/.github/workflows/release-next-rspack.yml similarity index 98% rename from .github/workflows/release-rspack-binding.yml rename to .github/workflows/release-next-rspack.yml index d70c0d8562a38..0aafbbb6270d4 100644 --- a/.github/workflows/release-rspack-binding.yml +++ b/.github/workflows/release-next-rspack.yml @@ -27,6 +27,7 @@ jobs: name: Build uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@v1 with: + package-json-path: rspack/crates/binding/package.json napi-build-command: pnpm build --release release: From d3624efbd4c8ba2d784cad82e4c7174b4ac6b8a1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:47:33 +0800 Subject: [PATCH 19/38] fix: crago exclude --- Cargo.toml | 2 +- rspack/crates/binding/Cargo.toml | 2 +- rspack/pnpm-lock.yaml | 1449 ++++++++++++++++++++++++++++++ 3 files changed, 1451 insertions(+), 2 deletions(-) create mode 100644 rspack/pnpm-lock.yaml diff --git a/Cargo.toml b/Cargo.toml index 03932b49f7fcc..44369ac0a3981 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,7 @@ members = [ exclude = [ "crates/next-error-code-swc-plugin", - "rspack/crates/*" + "rspack/crates/binding" ] [workspace.lints.clippy] diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index 133d9acd42403..630efe73519a8 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -23,7 +23,7 @@ rustc-hash = { version = "2.1.1" } napi = { version = "=3.1.2" } napi-derive = { version = "=3.1.1" } -next-taskless = { path = "../next-taskless" } +next-taskless = { path = "../../../crates/next-taskless" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf diff --git a/rspack/pnpm-lock.yaml b/rspack/pnpm-lock.yaml new file mode 100644 index 0000000000000..88b9658cbd9aa --- /dev/null +++ b/rspack/pnpm-lock.yaml @@ -0,0 +1,1449 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@next-rspack/binding': + specifier: workspace:* + version: link:crates/binding + '@rspack/core': + specifier: 1.4.10 + version: 1.4.10 + + crates/binding: + devDependencies: + '@napi-rs/cli': + specifier: 3.0.1 + version: 3.0.1(@emnapi/runtime@1.4.5)(@types/node@24.3.0) + '@types/node': + specifier: ^24.0.12 + version: 24.3.0 + typescript: + specifier: ^5.8.3 + version: 5.9.2 + +packages: + + '@emnapi/core@1.4.5': + resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==} + + '@emnapi/runtime@1.4.5': + resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==} + + '@emnapi/wasi-threads@1.0.4': + resolution: {integrity: sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g==} + + '@inquirer/checkbox@4.2.2': + resolution: {integrity: sha512-E+KExNurKcUJJdxmjglTl141EwxWyAHplvsYJQgSwXf8qiNWkTxTuCCqmhFEmbIXd4zLaGMfQFJ6WrZ7fSeV3g==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/confirm@5.1.16': + resolution: {integrity: sha512-j1a5VstaK5KQy8Mu8cHmuQvN1Zc62TbLhjJxwHvKPPKEoowSF6h/0UdOpA9DNdWZ+9Inq73+puRq1df6OJ8Sag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.2.0': + resolution: {integrity: sha512-NyDSjPqhSvpZEMZrLCYUquWNl+XC/moEcVFqS55IEYIYsY0a1cUCevSqk7ctOlnm/RaSBU5psFryNlxcmGrjaA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/editor@4.2.18': + resolution: {integrity: sha512-yeQN3AXjCm7+Hmq5L6Dm2wEDeBRdAZuyZ4I7tWSSanbxDzqM0KqzoDbKM7p4ebllAYdoQuPJS6N71/3L281i6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/expand@4.0.18': + resolution: {integrity: sha512-xUjteYtavH7HwDMzq4Cn2X4Qsh5NozoDHCJTdoXg9HfZ4w3R6mxV1B9tL7DGJX2eq/zqtsFjhm0/RJIMGlh3ag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/external-editor@1.0.1': + resolution: {integrity: sha512-Oau4yL24d2B5IL4ma4UpbQigkVhzPDXLoqy1ggK4gnHg/stmkffJE4oOXHXF3uz0UEpywG68KcyXsyYpA1Re/Q==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/figures@1.0.13': + resolution: {integrity: sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw==} + engines: {node: '>=18'} + + '@inquirer/input@4.2.2': + resolution: {integrity: sha512-hqOvBZj/MhQCpHUuD3MVq18SSoDNHy7wEnQ8mtvs71K8OPZVXJinOzcvQna33dNYLYE4LkA9BlhAhK6MJcsVbw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/number@3.0.18': + resolution: {integrity: sha512-7exgBm52WXZRczsydCVftozFTrrwbG5ySE0GqUd2zLNSBXyIucs2Wnm7ZKLe/aUu6NUg9dg7Q80QIHCdZJiY4A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/password@4.0.18': + resolution: {integrity: sha512-zXvzAGxPQTNk/SbT3carAD4Iqi6A2JS2qtcqQjsL22uvD+JfQzUrDEtPjLL7PLn8zlSNyPdY02IiQjzoL9TStA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/prompts@7.8.4': + resolution: {integrity: sha512-MuxVZ1en1g5oGamXV3DWP89GEkdD54alcfhHd7InUW5BifAdKQEK9SLFa/5hlWbvuhMPlobF0WAx7Okq988Jxg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/rawlist@4.1.6': + resolution: {integrity: sha512-KOZqa3QNr3f0pMnufzL7K+nweFFCCBs6LCXZzXDrVGTyssjLeudn5ySktZYv1XiSqobyHRYYK0c6QsOxJEhXKA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/search@3.1.1': + resolution: {integrity: sha512-TkMUY+A2p2EYVY3GCTItYGvqT6LiLzHBnqsU1rJbrpXUijFfM6zvUx0R4civofVwFCmJZcKqOVwwWAjplKkhxA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/select@4.3.2': + resolution: {integrity: sha512-nwous24r31M+WyDEHV+qckXkepvihxhnyIaod2MG7eCE6G0Zm/HUF6jgN8GXgf4U7AU6SLseKdanY195cwvU6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/type@3.0.8': + resolution: {integrity: sha512-lg9Whz8onIHRthWaN1Q9EGLa/0LFJjyM8mEUbL1eTi6yMGvBf8gvyDLtxSXztQsxMvhxxNpJYrwa1YHdq+w4Jw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@module-federation/error-codes@0.17.0': + resolution: {integrity: sha512-+pZ12frhaDqh4Xs/MQj4Vu4CAjnJTiEb8Z6fqPfn/TLHh4YLWMOzpzxGuMFDHqXwMb3o8FRAUhNB0eX2ZmhwTA==} + + '@module-federation/runtime-core@0.17.0': + resolution: {integrity: sha512-MYwDDevYnBB9gXFfNOmJVIX5XZcbCHd0dral7gT7yVmlwOhbuGOLlm2dh2icwwdCYHA9AFDCfU9l1nJR4ex/ng==} + + '@module-federation/runtime-tools@0.17.0': + resolution: {integrity: sha512-t4QcKfhmwOHedwByDKUlTQVw4+gPotySYPyNa8GFrBSr1F6wcGdGyOhzP+PdgpiJLIM03cB6V+IKGGHE28SfDQ==} + + '@module-federation/runtime@0.17.0': + resolution: {integrity: sha512-eMtrtCSSV6neJpMmQ8WdFpYv93raSgsG5RiAPsKUuSCXfZ5D+yzvleZ+gPcEpFT9HokmloxAn0jep50/1upTQw==} + + '@module-federation/sdk@0.17.0': + resolution: {integrity: sha512-tjrNaYdDocHZsWu5iXlm83lwEK8A64r4PQB3/kY1cW1iOvggR2RESLAWPxRJXC2cLF8fg8LDKOBdgERZW1HPFA==} + + '@module-federation/webpack-bundler-runtime@0.17.0': + resolution: {integrity: sha512-o8XtXwqTDlqLgcALOfObcCbqXvUcSDHIEXrkcb4W+I8GJY7IqV0+x6rX4mJ3f59tca9qOF8zsZsOA6BU93Pvgw==} + + '@napi-rs/cli@3.0.1': + resolution: {integrity: sha512-rO2aDZRzqs0bCPUpfaExKjK0L999FvT3iQK3f1NfnKa1njlaHqO7XK/mUzxn9pnrTglfyFixU4+S3SzzTaaKNA==} + engines: {node: '>= 16'} + hasBin: true + peerDependencies: + '@emnapi/runtime': ^1.1.0 + emnapi: ^1.1.0 + peerDependenciesMeta: + '@emnapi/runtime': + optional: true + emnapi: + optional: true + + '@napi-rs/cross-toolchain@0.0.19': + resolution: {integrity: sha512-StHXqYANdTaMFqJJ3JXHqKQMylOzOJPcrOCd9Nt2NIGfvfaXK3SzpmNfkJimkOAYfTsfpfuRERsML0bUZCpHBQ==} + peerDependencies: + '@napi-rs/cross-toolchain-arm64-target-aarch64': ^0.0.19 + '@napi-rs/cross-toolchain-arm64-target-armv7': ^0.0.19 + '@napi-rs/cross-toolchain-arm64-target-x86_64': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-aarch64': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-armv7': ^0.0.19 + '@napi-rs/cross-toolchain-x64-target-x86_64': ^0.0.19 + peerDependenciesMeta: + '@napi-rs/cross-toolchain-arm64-target-aarch64': + optional: true + '@napi-rs/cross-toolchain-arm64-target-armv7': + optional: true + '@napi-rs/cross-toolchain-arm64-target-x86_64': + optional: true + '@napi-rs/cross-toolchain-x64-target-aarch64': + optional: true + '@napi-rs/cross-toolchain-x64-target-armv7': + optional: true + '@napi-rs/cross-toolchain-x64-target-x86_64': + optional: true + + '@napi-rs/lzma-android-arm-eabi@1.4.5': + resolution: {integrity: sha512-Up4gpyw2SacmyKWWEib06GhiDdF+H+CCU0LAV8pnM4aJIDqKKd5LHSlBht83Jut6frkB0vwEPmAkv4NjQ5u//Q==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/lzma-android-arm64@1.4.5': + resolution: {integrity: sha512-uwa8sLlWEzkAM0MWyoZJg0JTD3BkPknvejAFG2acUA1raXM8jLrqujWCdOStisXhqQjZ2nDMp3FV6cs//zjfuQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/lzma-darwin-arm64@1.4.5': + resolution: {integrity: sha512-0Y0TQLQ2xAjVabrMDem1NhIssOZzF/y/dqetc6OT8mD3xMTDtF8u5BqZoX3MyPc9FzpsZw4ksol+w7DsxHrpMA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/lzma-darwin-x64@1.4.5': + resolution: {integrity: sha512-vR2IUyJY3En+V1wJkwmbGWcYiT8pHloTAWdW4pG24+51GIq+intst6Uf6D/r46citObGZrlX0QvMarOkQeHWpw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/lzma-freebsd-x64@1.4.5': + resolution: {integrity: sha512-XpnYQC5SVovO35tF0xGkbHYjsS6kqyNCjuaLQ2dbEblFRr5cAZVvsJ/9h7zj/5FluJPJRDojVNxGyRhTp4z2lw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/lzma-linux-arm-gnueabihf@1.4.5': + resolution: {integrity: sha512-ic1ZZMoRfRMwtSwxkyw4zIlbDZGC6davC9r+2oX6x9QiF247BRqqT94qGeL5ZP4Vtz0Hyy7TEViWhx5j6Bpzvw==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/lzma-linux-arm64-gnu@1.4.5': + resolution: {integrity: sha512-asEp7FPd7C1Yi6DQb45a3KPHKOFBSfGuJWXcAd4/bL2Fjetb2n/KK2z14yfW8YC/Fv6x3rBM0VAZKmJuz4tysg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/lzma-linux-arm64-musl@1.4.5': + resolution: {integrity: sha512-yWjcPDgJ2nIL3KNvi4536dlT/CcCWO0DUyEOlBs/SacG7BeD6IjGh6yYzd3/X1Y3JItCbZoDoLUH8iB1lTXo3w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/lzma-linux-ppc64-gnu@1.4.5': + resolution: {integrity: sha512-0XRhKuIU/9ZjT4WDIG/qnX7Xz7mSQHYZo9Gb3MP2gcvBgr6BA4zywQ9k3gmQaPn9ECE+CZg2V7DV7kT+x2pUMQ==} + engines: {node: '>= 10'} + cpu: [ppc64] + os: [linux] + + '@napi-rs/lzma-linux-riscv64-gnu@1.4.5': + resolution: {integrity: sha512-QrqDIPEUUB23GCpyQj/QFyMlr8SGxxyExeZz9OWFnHfb70kXdTLWrHS/hEI1Ru+lSbQ/6xRqeoGyQ4Aqdg+/RA==} + engines: {node: '>= 10'} + cpu: [riscv64] + os: [linux] + + '@napi-rs/lzma-linux-s390x-gnu@1.4.5': + resolution: {integrity: sha512-k8RVM5aMhW86E9H0QXdquwojew4H3SwPxbRVbl49/COJQWCUjGi79X6mYruMnMPEznZinUiT1jgKbFo2A00NdA==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + + '@napi-rs/lzma-linux-x64-gnu@1.4.5': + resolution: {integrity: sha512-6rMtBgnIq2Wcl1rQdZsnM+rtCcVCbws1nF8S2NzaUsVaZv8bjrPiAa0lwg4Eqnn1d9lgwqT+cZgm5m+//K08Kw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/lzma-linux-x64-musl@1.4.5': + resolution: {integrity: sha512-eiadGBKi7Vd0bCArBUOO/qqRYPHt/VQVvGyYvDFt6C2ZSIjlD+HuOl+2oS1sjf4CFjK4eDIog6EdXnL0NE6iyQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/lzma-wasm32-wasi@1.4.5': + resolution: {integrity: sha512-+VyHHlr68dvey6fXc2hehw9gHVFIW3TtGF1XkcbAu65qVXsA9D/T+uuoRVqhE+JCyFHFrO0ixRbZDRK1XJt1sA==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/lzma-win32-arm64-msvc@1.4.5': + resolution: {integrity: sha512-eewnqvIyyhHi3KaZtBOJXohLvwwN27gfS2G/YDWdfHlbz1jrmfeHAmzMsP5qv8vGB+T80TMHNkro4kYjeh6Deg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/lzma-win32-ia32-msvc@1.4.5': + resolution: {integrity: sha512-OeacFVRCJOKNU/a0ephUfYZ2Yt+NvaHze/4TgOwJ0J0P4P7X1mHzN+ig9Iyd74aQDXYqc7kaCXA2dpAOcH87Cg==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/lzma-win32-x64-msvc@1.4.5': + resolution: {integrity: sha512-T4I1SamdSmtyZgDXGAGP+y5LEK5vxHUFwe8mz6D4R7Sa5/WCxTcCIgPJ9BD7RkpO17lzhlaM2vmVvMy96Lvk9Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/lzma@1.4.5': + resolution: {integrity: sha512-zS5LuN1OBPAyZpda2ZZgYOEDC+xecUdAGnrvbYzjnLXkrq/OBC3B9qcRvlxbDR3k5H/gVfvef1/jyUqPknqjbg==} + engines: {node: '>= 10'} + + '@napi-rs/tar-android-arm-eabi@0.1.5': + resolution: {integrity: sha512-FM2qNG3ELeYibnZC8dfsCV4i/pql1nlLKVINfRC7TSwqFfgj5gbezZ0rT8gRPHbLyslVt6m4MPZfRE8Uj/MuCA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/tar-android-arm64@0.1.5': + resolution: {integrity: sha512-OpP0QyD+K0a68nqyko793lLWiC2BN1wWF/Doatus1OCKxgj61vtrUPVO2cQGQS5i07I/+YGRF8lD0tQDrk4JDQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/tar-darwin-arm64@0.1.5': + resolution: {integrity: sha512-sfyM/9gxFabdMTFt4quvLJuKbXS6StGIUf7Cp3l8aV2WqCURJevdpN6wW8XtGBo/iSnAP52ERwMRdyIavPYruw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/tar-darwin-x64@0.1.5': + resolution: {integrity: sha512-NtY8bADKE/3ODBM3hW/RgPeeERJpI6/jgipT3eLJ/CQWY1VJ6t9GHR7anJKhx1oxVdmSfqfCGMolM8WPV9x9bw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/tar-freebsd-x64@0.1.5': + resolution: {integrity: sha512-azl0nWrDJAGg25cGVKEY7UtU5ABGz4sQASKvemDLwGbzMDtkJgCoPb+OunI1pezijRAyhiuZEQ4jK8S1qNAWCg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/tar-linux-arm-gnueabihf@0.1.5': + resolution: {integrity: sha512-OjGdKjaW7b0m96rAvsLthMBhwYSSgpTM/WkHqRJo91HCYQ6tHXDBnq4VIQx2FpwT1PoetvRsbSgy0tOc95iYjA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/tar-linux-arm64-gnu@0.1.5': + resolution: {integrity: sha512-o3b2VE5c7+NFb6XRcXrdXgur1yhpx+XNItFoeJUMBE8z0AGAISf2DJSbcJawmefUvrGtr+iLr61hsr6f2hw+5Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/tar-linux-arm64-musl@0.1.5': + resolution: {integrity: sha512-5xTxsoPVqovnZ197CqTc+q3psRM4i+ErdiyfDgkG4nP045jh50gp22WKZuE24dc7/iS+IyUrM3+PRbmj2mzR8g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/tar-linux-ppc64-gnu@0.1.5': + resolution: {integrity: sha512-7FF1u8EkDpCEPCgU0/kvuzsO+opB7eIbsGfKRIbOqrDT7c1DYxDetNTtukPvNoT2kvwfxxThgTfcPADPxdOE/w==} + engines: {node: '>= 10'} + cpu: [ppc64] + os: [linux] + + '@napi-rs/tar-linux-s390x-gnu@0.1.5': + resolution: {integrity: sha512-uyIZ7OLCLHtVBpogoJUD0GSAF1IUa3d5c5AVUemTLIwYkVgzdEB+khh3i2+/oKObf79ZKfQ8mYxOryHqfx+ulw==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + + '@napi-rs/tar-linux-x64-gnu@0.1.5': + resolution: {integrity: sha512-y8pFyVTU6lSYiW2lse6i1Ns9yt9mBkAqPbcJnIjqC7ZqRd61T6g3XZDSrKmsM6ycTfsAqoE5WyyFxBjQN29AOA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/tar-linux-x64-musl@0.1.5': + resolution: {integrity: sha512-8phLYc0QX+tqvp34PQHUulZUi4sy/fdg1KgFHiyYExTRRleBB01vM7KSn7Bk9dwH7lannO5D7j4O8OY46Xcr/A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/tar-wasm32-wasi@0.1.5': + resolution: {integrity: sha512-OpVWC/bwY0zb6nbQDg6koxeZGb441gXwPkaYVjaK4O0TJjNpRKbokLAMlGFtcc/sVSPjghFL0+enfnLDt/P7og==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/tar-win32-arm64-msvc@0.1.5': + resolution: {integrity: sha512-FXwQA2Ib55q98szshvDsitgo2iLW2lTD1Q53e8dPMGobPa2yL5e8IjJDCcMI7XJwBZPl9YjJk7nAb8y20DXF+Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/tar-win32-ia32-msvc@0.1.5': + resolution: {integrity: sha512-XEt58yFslNkwf2yJ+uX5nDNmPAk15Metkx2hVPeH29mOpuG2H8nuS8/42hZ+dQfZf3xABRjyurVMMH9JcgLZIQ==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/tar-win32-x64-msvc@0.1.5': + resolution: {integrity: sha512-9Rq0Ob4S5NGFwNL3kGQkgrYlObqQgw19QMSZdVuhzZ9sSxn9OSF5cWgZ/n1oMEPWK+u6n9GSN2XbPn4DI7pm7Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/tar@0.1.5': + resolution: {integrity: sha512-skgWKcpjtUqJUk1jwhVl8vXYCXQlFC532KiryU3hQBr6ZIJk0E0qD9FG99hUqtPko8mIMS5HDPO+uSnvHfgRVg==} + engines: {node: '>= 10'} + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@napi-rs/wasm-runtime@1.0.3': + resolution: {integrity: sha512-rZxtMsLwjdXkMUGC3WwsPwLNVqVqnTJT6MNIB6e+5fhMcSCPP0AOsNWuMQ5mdCq6HNjs/ZeWAEchpqeprqBD2Q==} + + '@napi-rs/wasm-tools-android-arm-eabi@0.0.3': + resolution: {integrity: sha512-T2tme8w5jZ/ZCjJurqNtKCxYtGoDjW9v2rn1bfI60ewCfkYXNpxrTURdkOib85sz+BcwmOfXn0enbg5W9KohoQ==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/wasm-tools-android-arm64@0.0.3': + resolution: {integrity: sha512-siHTjrxxBrvsVty5X2jI5waAyzJpr756GqGVUqxqS2eoTuqYRfgaFNvX8asp9LAagFtOojfD0fZfuvxK7dc4Rw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/wasm-tools-darwin-arm64@0.0.3': + resolution: {integrity: sha512-0MqsSOYJ4jXcLv/nAInS8nwU+/hL0rSEJo7JXKj3dhkT9UNSj4zfidcOaIb05O9VskJBPmV040+edtWPHXNt2Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/wasm-tools-darwin-x64@0.0.3': + resolution: {integrity: sha512-yXAK2mrlBMZZYK/59JRHZu/c683HFpr5ork1cn++fy8gqUBRLbjuq47VDjA7oyLW5SmWqNDhmhjFTDGvfIvcUg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/wasm-tools-freebsd-x64@0.0.3': + resolution: {integrity: sha512-K1rne814utBd9Zo9LCggQ5h0TSnzGPzA+sG78Qr7KfFz8XQxEGDRH5wpzXyF1KaKav2RmO6wGMXlasDgIcq7GA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/wasm-tools-linux-arm64-gnu@0.0.3': + resolution: {integrity: sha512-Yu3gtpvGc2+hcay3SU5MK7EMrGPBq/V4i8mpw/MEYUCzOb7Vd9aL8CryElzlk0SIbktG08VYMdhFFFoJAjlYtg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/wasm-tools-linux-arm64-musl@0.0.3': + resolution: {integrity: sha512-XN+sPgEwFw3P47wDvtcQyOoZNghIL8gaiRjEGzprB+kE9N21GkuMbk3kdjiBBJkjqKF25f4fbOvNAY0jQEAO3A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/wasm-tools-linux-x64-gnu@0.0.3': + resolution: {integrity: sha512-mfMvMEqn33YtEjIyLPguZ6yDsNtF5zV7mqc99620YDyj2SLa0aI35TNTc7Dm+/hlgqHRKhdudsWGfYc4dBND2Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/wasm-tools-linux-x64-musl@0.0.3': + resolution: {integrity: sha512-KXMsXWGELoN5xgPCoRHbgt5TScSx8BK2GcCHKJ9OPZ2HMfsXbLgS/SNi6vz1CbLMZMLPBY2G6HAk0gzLGyS0mQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/wasm-tools-wasm32-wasi@0.0.3': + resolution: {integrity: sha512-v3iMHnAfMteogpbqHTFeLXPeAzL5AhpDJLvZvLXbuRiMsMRL0dn8CbcEnYja2P/Ui6Xlyky6PcaUsepOUTNb7A==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/wasm-tools-win32-arm64-msvc@0.0.3': + resolution: {integrity: sha512-HWrg9cW+u+rQKL9XCQILaGGs6mDYdwX9nwcTIvJAjrpGWu8Dp4wz6i66w6YKHqVng1suGYjjr+LH4/1e0tDaAg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/wasm-tools-win32-ia32-msvc@0.0.3': + resolution: {integrity: sha512-h99hAWvQKhcloyPfPi0IjrvKRToTE9Z4UVXoXZhcjpCGmr3o1qW+1FAupRy/TcVdMjUJNLE/aenml3UPqzQEQw==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/wasm-tools-win32-x64-msvc@0.0.3': + resolution: {integrity: sha512-7/6IpzMi9VGYxLcc9SJyu9ZIdbDwyyb09glVF/2SFEgke9F5H46XzRrAdSoRnjfcq/tdLyHKJbnpCIB257qVYg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/wasm-tools@0.0.3': + resolution: {integrity: sha512-p7NT5wnOIwmP0f3KbXlMabeld5dPFsADpHMWJaBodTSmnPE8P4msguxKJLKWquqAS1FY2dsjBZ62K0/hfiqAUg==} + engines: {node: '>= 10'} + + '@octokit/auth-token@6.0.0': + resolution: {integrity: sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w==} + engines: {node: '>= 20'} + + '@octokit/core@7.0.3': + resolution: {integrity: sha512-oNXsh2ywth5aowwIa7RKtawnkdH6LgU1ztfP9AIUCQCvzysB+WeU8o2kyyosDPwBZutPpjZDKPQGIzzrfTWweQ==} + engines: {node: '>= 20'} + + '@octokit/endpoint@11.0.0': + resolution: {integrity: sha512-hoYicJZaqISMAI3JfaDr1qMNi48OctWuOih1m80bkYow/ayPw6Jj52tqWJ6GEoFTk1gBqfanSoI1iY99Z5+ekQ==} + engines: {node: '>= 20'} + + '@octokit/graphql@9.0.1': + resolution: {integrity: sha512-j1nQNU1ZxNFx2ZtKmL4sMrs4egy5h65OMDmSbVyuCzjOcwsHq6EaYjOTGXPQxgfiN8dJ4CriYHk6zF050WEULg==} + engines: {node: '>= 20'} + + '@octokit/openapi-types@25.1.0': + resolution: {integrity: sha512-idsIggNXUKkk0+BExUn1dQ92sfysJrje03Q0bv0e+KPLrvyqZF8MnBpFz8UNfYDwB3Ie7Z0TByjWfzxt7vseaA==} + + '@octokit/plugin-paginate-rest@13.1.1': + resolution: {integrity: sha512-q9iQGlZlxAVNRN2jDNskJW/Cafy7/XE52wjZ5TTvyhyOD904Cvx//DNyoO3J/MXJ0ve3rPoNWKEg5iZrisQSuw==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/plugin-request-log@6.0.0': + resolution: {integrity: sha512-UkOzeEN3W91/eBq9sPZNQ7sUBvYCqYbrrD8gTbBuGtHEuycE4/awMXcYvx6sVYo7LypPhmQwwpUe4Yyu4QZN5Q==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/plugin-rest-endpoint-methods@16.0.0': + resolution: {integrity: sha512-kJVUQk6/dx/gRNLWUnAWKFs1kVPn5O5CYZyssyEoNYaFedqZxsfYs7DwI3d67hGz4qOwaJ1dpm07hOAD1BXx6g==} + engines: {node: '>= 20'} + peerDependencies: + '@octokit/core': '>=6' + + '@octokit/request-error@7.0.0': + resolution: {integrity: sha512-KRA7VTGdVyJlh0cP5Tf94hTiYVVqmt2f3I6mnimmaVz4UG3gQV/k4mDJlJv3X67iX6rmN7gSHCF8ssqeMnmhZg==} + engines: {node: '>= 20'} + + '@octokit/request@10.0.3': + resolution: {integrity: sha512-V6jhKokg35vk098iBqp2FBKunk3kMTXlmq+PtbV9Gl3TfskWlebSofU9uunVKhUN7xl+0+i5vt0TGTG8/p/7HA==} + engines: {node: '>= 20'} + + '@octokit/rest@22.0.0': + resolution: {integrity: sha512-z6tmTu9BTnw51jYGulxrlernpsQYXpui1RK21vmXn8yF5bp6iX16yfTtJYGK5Mh1qDkvDOmp2n8sRMcQmR8jiA==} + engines: {node: '>= 20'} + + '@octokit/types@14.1.0': + resolution: {integrity: sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g==} + + '@rspack/binding-darwin-arm64@1.4.10': + resolution: {integrity: sha512-PraYGuVSzvEwdoYC8T70qI/8j1QeUe2sysiWmjSdxUpxJsDfw35hK9TfxULeAJULlAUAiiXs03hdZk29DBc3ow==} + cpu: [arm64] + os: [darwin] + + '@rspack/binding-darwin-x64@1.4.10': + resolution: {integrity: sha512-rWTSJ08TE0uqUjqAHkTmWqJu+FLSJ70A199Fk9k/FLZTS8UtHjuzZW7rv4qIN2nwJJLherxFUnP6y69cHuaGNw==} + cpu: [x64] + os: [darwin] + + '@rspack/binding-linux-arm64-gnu@1.4.10': + resolution: {integrity: sha512-cs6yu250FzRU1hl+02VLoJRdzbAveTOqvREeHgqL5AiTc6q1dQo1IZ16/Qt4+g0DMjnvM66pELRIO2nphXL8aA==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-arm64-musl@1.4.10': + resolution: {integrity: sha512-NnOAoWkpZvOa+xM7NAJg25O+tSKt6xCXoga+gOw5XPni1NxHDc3PNh5bU6fAmc2Z29YLLdxeVqPmIDfdk1EkDg==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-x64-gnu@1.4.10': + resolution: {integrity: sha512-FcaBqMclADWiqX+Mez15kggwaVYZkoEqDiQwYRpYDbBMsiJEtfp41GnNRstTWxYxFbcmuWoZl2cYy+LepR21ag==} + cpu: [x64] + os: [linux] + + '@rspack/binding-linux-x64-musl@1.4.10': + resolution: {integrity: sha512-vgRQhCw+C/Nxv6MZVNUkPzSXs6kIWHIrGKUvOM1ceeAkT+jNFEQdukkQ5LsYgEqEwP9ezWubxN3IGrMxyimlPw==} + cpu: [x64] + os: [linux] + + '@rspack/binding-wasm32-wasi@1.4.10': + resolution: {integrity: sha512-lk647+Ob3yvVS2FgW0vCfo/gz9h0Q7v9HGBFcsD1uW0/tSqXMa2s9ZvIn+B7S9tRgIoosXEAuq8NeCXKGWVj5Q==} + cpu: [wasm32] + + '@rspack/binding-win32-arm64-msvc@1.4.10': + resolution: {integrity: sha512-9mB3kh4pKaY4wFosZwuxb5EUtt7vv/uKW3OF4TJDC35bH7r54s+YYpHyXROT304r6URl4b6HNHlysL2m7BLihg==} + cpu: [arm64] + os: [win32] + + '@rspack/binding-win32-ia32-msvc@1.4.10': + resolution: {integrity: sha512-DPlyLZDUWkNcFI7zp1BQVVnihd4j/hCIbxqvIKvUt7whIVYMP52i8lCsa52uNGBSj7BcbcKAFElXC9dHVvoQGA==} + cpu: [ia32] + os: [win32] + + '@rspack/binding-win32-x64-msvc@1.4.10': + resolution: {integrity: sha512-FEE6OM0Wh7nj90+1ARXojT0Dnqox9UlIUIj7MQmX09yeMtckR+HITeq75F8y0l7HUvKOl2zQovmenk1KgyJV8Q==} + cpu: [x64] + os: [win32] + + '@rspack/binding@1.4.10': + resolution: {integrity: sha512-awiXN7qTTTLWFThbJFL+M4k1if4sb17xKA5TaHbbxs0qKSlpe3adwNrNHaNU2WOQz+PbuF++OMyd+4gUusKuVg==} + + '@rspack/core@1.4.10': + resolution: {integrity: sha512-eK3H328pihiM1323OlaClKJ9WlqgGBZpcR5AqFoWsG0KD01tKCJOeZEgtCY6paRLrsQrEJwBrLntkG0fE7WNGg==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@swc/helpers': '>=0.5.1' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@rspack/lite-tapable@1.0.1': + resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} + engines: {node: '>=16.0.0'} + + '@tybys/wasm-util@0.10.0': + resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} + + '@types/node@24.3.0': + resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + before-after-hook@4.0.0: + resolution: {integrity: sha512-q6tR3RPqIB1pMiTRMFcZwuG5T8vwp+vUvEG0vuI6B+Rikh5BfPp2fQ82c925FOs+b0lcFQ8CFrL+KbilfZFhOQ==} + + chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + + clipanion@4.0.0-rc.4: + resolution: {integrity: sha512-CXkMQxU6s9GklO/1f714dkKBMu1lopS1WFF0B8o4AxPykR1hpozxSiUZ5ZUeBjfPgCWqbcNOtZVFhB8Lkfp1+Q==} + peerDependencies: + typanion: '*' + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + fast-content-type-parse@3.0.0: + resolution: {integrity: sha512-ZvLdcY8P+N8mGQJahJV5G4U88CSvT1rP8ApL6uETe88MBXrBHAkZlSEySdUlyztF7ccb+Znos3TFqaepHxdhBg==} + + find-up@7.0.0: + resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} + engines: {node: '>=18'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + + p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + typanion@3.14.0: + resolution: {integrity: sha512-ZW/lVMRabETuYCd9O9ZvMhAh8GslSqaUjxmK/JLPCh6l73CvLBiuXswj/+7LdnWOgYsQ130FqLzFz5aGT4I3Ug==} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + typescript@5.9.2: + resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@7.10.0: + resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} + + unicorn-magic@0.1.0: + resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} + engines: {node: '>=18'} + + universal-user-agent@7.0.3: + resolution: {integrity: sha512-TmnEAEAsBJVZM/AADELsK76llnwcf9vMKuPz8JflO1frO8Lchitr0fNaN9d+Ap0BjKtqWqd/J17qeDnXh8CL2A==} + + wasm-sjlj@1.0.6: + resolution: {integrity: sha512-pjaKtLJejlWm6+okPV2X1A6nIsRDD4qeK97eCh8DP8KXi3Nzn/HY01vpHhZHlhDri12eZqipjm8HhdTVw+ATxw==} + + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + + yocto-queue@1.2.1: + resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==} + engines: {node: '>=12.20'} + + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + +snapshots: + + '@emnapi/core@1.4.5': + dependencies: + '@emnapi/wasi-threads': 1.0.4 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.4.5': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.0.4': + dependencies: + tslib: 2.8.1 + optional: true + + '@inquirer/checkbox@4.2.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/confirm@5.1.16(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/core@10.2.0(@types/node@24.3.0)': + dependencies: + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/editor@4.2.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/external-editor': 1.0.1(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/expand@4.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/external-editor@1.0.1(@types/node@24.3.0)': + dependencies: + chardet: 2.1.0 + iconv-lite: 0.6.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/figures@1.0.13': {} + + '@inquirer/input@4.2.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/number@3.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/password@4.0.18(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/prompts@7.8.4(@types/node@24.3.0)': + dependencies: + '@inquirer/checkbox': 4.2.2(@types/node@24.3.0) + '@inquirer/confirm': 5.1.16(@types/node@24.3.0) + '@inquirer/editor': 4.2.18(@types/node@24.3.0) + '@inquirer/expand': 4.0.18(@types/node@24.3.0) + '@inquirer/input': 4.2.2(@types/node@24.3.0) + '@inquirer/number': 3.0.18(@types/node@24.3.0) + '@inquirer/password': 4.0.18(@types/node@24.3.0) + '@inquirer/rawlist': 4.1.6(@types/node@24.3.0) + '@inquirer/search': 3.1.1(@types/node@24.3.0) + '@inquirer/select': 4.3.2(@types/node@24.3.0) + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/rawlist@4.1.6(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/search@3.1.1(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/select@4.3.2(@types/node@24.3.0)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@24.3.0) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 24.3.0 + + '@inquirer/type@3.0.8(@types/node@24.3.0)': + optionalDependencies: + '@types/node': 24.3.0 + + '@module-federation/error-codes@0.17.0': {} + + '@module-federation/runtime-core@0.17.0': + dependencies: + '@module-federation/error-codes': 0.17.0 + '@module-federation/sdk': 0.17.0 + + '@module-federation/runtime-tools@0.17.0': + dependencies: + '@module-federation/runtime': 0.17.0 + '@module-federation/webpack-bundler-runtime': 0.17.0 + + '@module-federation/runtime@0.17.0': + dependencies: + '@module-federation/error-codes': 0.17.0 + '@module-federation/runtime-core': 0.17.0 + '@module-federation/sdk': 0.17.0 + + '@module-federation/sdk@0.17.0': {} + + '@module-federation/webpack-bundler-runtime@0.17.0': + dependencies: + '@module-federation/runtime': 0.17.0 + '@module-federation/sdk': 0.17.0 + + '@napi-rs/cli@3.0.1(@emnapi/runtime@1.4.5)(@types/node@24.3.0)': + dependencies: + '@inquirer/prompts': 7.8.4(@types/node@24.3.0) + '@napi-rs/cross-toolchain': 0.0.19 + '@napi-rs/wasm-tools': 0.0.3 + '@octokit/rest': 22.0.0 + clipanion: 4.0.0-rc.4(typanion@3.14.0) + colorette: 2.0.20 + debug: 4.4.1 + find-up: 7.0.0 + js-yaml: 4.1.0 + lodash-es: 4.17.21 + semver: 7.7.2 + typanion: 3.14.0 + wasm-sjlj: 1.0.6 + optionalDependencies: + '@emnapi/runtime': 1.4.5 + transitivePeerDependencies: + - '@napi-rs/cross-toolchain-arm64-target-aarch64' + - '@napi-rs/cross-toolchain-arm64-target-armv7' + - '@napi-rs/cross-toolchain-arm64-target-x86_64' + - '@napi-rs/cross-toolchain-x64-target-aarch64' + - '@napi-rs/cross-toolchain-x64-target-armv7' + - '@napi-rs/cross-toolchain-x64-target-x86_64' + - '@types/node' + - supports-color + + '@napi-rs/cross-toolchain@0.0.19': + dependencies: + '@napi-rs/lzma': 1.4.5 + '@napi-rs/tar': 0.1.5 + debug: 4.4.1 + transitivePeerDependencies: + - supports-color + + '@napi-rs/lzma-android-arm-eabi@1.4.5': + optional: true + + '@napi-rs/lzma-android-arm64@1.4.5': + optional: true + + '@napi-rs/lzma-darwin-arm64@1.4.5': + optional: true + + '@napi-rs/lzma-darwin-x64@1.4.5': + optional: true + + '@napi-rs/lzma-freebsd-x64@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm-gnueabihf@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-arm64-musl@1.4.5': + optional: true + + '@napi-rs/lzma-linux-ppc64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-riscv64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-s390x-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-x64-gnu@1.4.5': + optional: true + + '@napi-rs/lzma-linux-x64-musl@1.4.5': + optional: true + + '@napi-rs/lzma-wasm32-wasi@1.4.5': + dependencies: + '@napi-rs/wasm-runtime': 1.0.3 + optional: true + + '@napi-rs/lzma-win32-arm64-msvc@1.4.5': + optional: true + + '@napi-rs/lzma-win32-ia32-msvc@1.4.5': + optional: true + + '@napi-rs/lzma-win32-x64-msvc@1.4.5': + optional: true + + '@napi-rs/lzma@1.4.5': + optionalDependencies: + '@napi-rs/lzma-android-arm-eabi': 1.4.5 + '@napi-rs/lzma-android-arm64': 1.4.5 + '@napi-rs/lzma-darwin-arm64': 1.4.5 + '@napi-rs/lzma-darwin-x64': 1.4.5 + '@napi-rs/lzma-freebsd-x64': 1.4.5 + '@napi-rs/lzma-linux-arm-gnueabihf': 1.4.5 + '@napi-rs/lzma-linux-arm64-gnu': 1.4.5 + '@napi-rs/lzma-linux-arm64-musl': 1.4.5 + '@napi-rs/lzma-linux-ppc64-gnu': 1.4.5 + '@napi-rs/lzma-linux-riscv64-gnu': 1.4.5 + '@napi-rs/lzma-linux-s390x-gnu': 1.4.5 + '@napi-rs/lzma-linux-x64-gnu': 1.4.5 + '@napi-rs/lzma-linux-x64-musl': 1.4.5 + '@napi-rs/lzma-wasm32-wasi': 1.4.5 + '@napi-rs/lzma-win32-arm64-msvc': 1.4.5 + '@napi-rs/lzma-win32-ia32-msvc': 1.4.5 + '@napi-rs/lzma-win32-x64-msvc': 1.4.5 + + '@napi-rs/tar-android-arm-eabi@0.1.5': + optional: true + + '@napi-rs/tar-android-arm64@0.1.5': + optional: true + + '@napi-rs/tar-darwin-arm64@0.1.5': + optional: true + + '@napi-rs/tar-darwin-x64@0.1.5': + optional: true + + '@napi-rs/tar-freebsd-x64@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm-gnueabihf@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-arm64-musl@0.1.5': + optional: true + + '@napi-rs/tar-linux-ppc64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-s390x-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-x64-gnu@0.1.5': + optional: true + + '@napi-rs/tar-linux-x64-musl@0.1.5': + optional: true + + '@napi-rs/tar-wasm32-wasi@0.1.5': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@napi-rs/tar-win32-arm64-msvc@0.1.5': + optional: true + + '@napi-rs/tar-win32-ia32-msvc@0.1.5': + optional: true + + '@napi-rs/tar-win32-x64-msvc@0.1.5': + optional: true + + '@napi-rs/tar@0.1.5': + optionalDependencies: + '@napi-rs/tar-android-arm-eabi': 0.1.5 + '@napi-rs/tar-android-arm64': 0.1.5 + '@napi-rs/tar-darwin-arm64': 0.1.5 + '@napi-rs/tar-darwin-x64': 0.1.5 + '@napi-rs/tar-freebsd-x64': 0.1.5 + '@napi-rs/tar-linux-arm-gnueabihf': 0.1.5 + '@napi-rs/tar-linux-arm64-gnu': 0.1.5 + '@napi-rs/tar-linux-arm64-musl': 0.1.5 + '@napi-rs/tar-linux-ppc64-gnu': 0.1.5 + '@napi-rs/tar-linux-s390x-gnu': 0.1.5 + '@napi-rs/tar-linux-x64-gnu': 0.1.5 + '@napi-rs/tar-linux-x64-musl': 0.1.5 + '@napi-rs/tar-wasm32-wasi': 0.1.5 + '@napi-rs/tar-win32-arm64-msvc': 0.1.5 + '@napi-rs/tar-win32-ia32-msvc': 0.1.5 + '@napi-rs/tar-win32-x64-msvc': 0.1.5 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.4.5 + '@emnapi/runtime': 1.4.5 + '@tybys/wasm-util': 0.10.0 + optional: true + + '@napi-rs/wasm-runtime@1.0.3': + dependencies: + '@emnapi/core': 1.4.5 + '@emnapi/runtime': 1.4.5 + '@tybys/wasm-util': 0.10.0 + optional: true + + '@napi-rs/wasm-tools-android-arm-eabi@0.0.3': + optional: true + + '@napi-rs/wasm-tools-android-arm64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-darwin-arm64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-darwin-x64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-freebsd-x64@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-arm64-gnu@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-arm64-musl@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-x64-gnu@0.0.3': + optional: true + + '@napi-rs/wasm-tools-linux-x64-musl@0.0.3': + optional: true + + '@napi-rs/wasm-tools-wasm32-wasi@0.0.3': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@napi-rs/wasm-tools-win32-arm64-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools-win32-ia32-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools-win32-x64-msvc@0.0.3': + optional: true + + '@napi-rs/wasm-tools@0.0.3': + optionalDependencies: + '@napi-rs/wasm-tools-android-arm-eabi': 0.0.3 + '@napi-rs/wasm-tools-android-arm64': 0.0.3 + '@napi-rs/wasm-tools-darwin-arm64': 0.0.3 + '@napi-rs/wasm-tools-darwin-x64': 0.0.3 + '@napi-rs/wasm-tools-freebsd-x64': 0.0.3 + '@napi-rs/wasm-tools-linux-arm64-gnu': 0.0.3 + '@napi-rs/wasm-tools-linux-arm64-musl': 0.0.3 + '@napi-rs/wasm-tools-linux-x64-gnu': 0.0.3 + '@napi-rs/wasm-tools-linux-x64-musl': 0.0.3 + '@napi-rs/wasm-tools-wasm32-wasi': 0.0.3 + '@napi-rs/wasm-tools-win32-arm64-msvc': 0.0.3 + '@napi-rs/wasm-tools-win32-ia32-msvc': 0.0.3 + '@napi-rs/wasm-tools-win32-x64-msvc': 0.0.3 + + '@octokit/auth-token@6.0.0': {} + + '@octokit/core@7.0.3': + dependencies: + '@octokit/auth-token': 6.0.0 + '@octokit/graphql': 9.0.1 + '@octokit/request': 10.0.3 + '@octokit/request-error': 7.0.0 + '@octokit/types': 14.1.0 + before-after-hook: 4.0.0 + universal-user-agent: 7.0.3 + + '@octokit/endpoint@11.0.0': + dependencies: + '@octokit/types': 14.1.0 + universal-user-agent: 7.0.3 + + '@octokit/graphql@9.0.1': + dependencies: + '@octokit/request': 10.0.3 + '@octokit/types': 14.1.0 + universal-user-agent: 7.0.3 + + '@octokit/openapi-types@25.1.0': {} + + '@octokit/plugin-paginate-rest@13.1.1(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/types': 14.1.0 + + '@octokit/plugin-request-log@6.0.0(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + + '@octokit/plugin-rest-endpoint-methods@16.0.0(@octokit/core@7.0.3)': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/types': 14.1.0 + + '@octokit/request-error@7.0.0': + dependencies: + '@octokit/types': 14.1.0 + + '@octokit/request@10.0.3': + dependencies: + '@octokit/endpoint': 11.0.0 + '@octokit/request-error': 7.0.0 + '@octokit/types': 14.1.0 + fast-content-type-parse: 3.0.0 + universal-user-agent: 7.0.3 + + '@octokit/rest@22.0.0': + dependencies: + '@octokit/core': 7.0.3 + '@octokit/plugin-paginate-rest': 13.1.1(@octokit/core@7.0.3) + '@octokit/plugin-request-log': 6.0.0(@octokit/core@7.0.3) + '@octokit/plugin-rest-endpoint-methods': 16.0.0(@octokit/core@7.0.3) + + '@octokit/types@14.1.0': + dependencies: + '@octokit/openapi-types': 25.1.0 + + '@rspack/binding-darwin-arm64@1.4.10': + optional: true + + '@rspack/binding-darwin-x64@1.4.10': + optional: true + + '@rspack/binding-linux-arm64-gnu@1.4.10': + optional: true + + '@rspack/binding-linux-arm64-musl@1.4.10': + optional: true + + '@rspack/binding-linux-x64-gnu@1.4.10': + optional: true + + '@rspack/binding-linux-x64-musl@1.4.10': + optional: true + + '@rspack/binding-wasm32-wasi@1.4.10': + dependencies: + '@napi-rs/wasm-runtime': 1.0.3 + optional: true + + '@rspack/binding-win32-arm64-msvc@1.4.10': + optional: true + + '@rspack/binding-win32-ia32-msvc@1.4.10': + optional: true + + '@rspack/binding-win32-x64-msvc@1.4.10': + optional: true + + '@rspack/binding@1.4.10': + optionalDependencies: + '@rspack/binding-darwin-arm64': 1.4.10 + '@rspack/binding-darwin-x64': 1.4.10 + '@rspack/binding-linux-arm64-gnu': 1.4.10 + '@rspack/binding-linux-arm64-musl': 1.4.10 + '@rspack/binding-linux-x64-gnu': 1.4.10 + '@rspack/binding-linux-x64-musl': 1.4.10 + '@rspack/binding-wasm32-wasi': 1.4.10 + '@rspack/binding-win32-arm64-msvc': 1.4.10 + '@rspack/binding-win32-ia32-msvc': 1.4.10 + '@rspack/binding-win32-x64-msvc': 1.4.10 + + '@rspack/core@1.4.10': + dependencies: + '@module-federation/runtime-tools': 0.17.0 + '@rspack/binding': 1.4.10 + '@rspack/lite-tapable': 1.0.1 + + '@rspack/lite-tapable@1.0.1': {} + + '@tybys/wasm-util@0.10.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/node@24.3.0': + dependencies: + undici-types: 7.10.0 + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + before-after-hook@4.0.0: {} + + chardet@2.1.0: {} + + cli-width@4.1.0: {} + + clipanion@4.0.0-rc.4(typanion@3.14.0): + dependencies: + typanion: 3.14.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + colorette@2.0.20: {} + + debug@4.4.1: + dependencies: + ms: 2.1.3 + + emoji-regex@8.0.0: {} + + fast-content-type-parse@3.0.0: {} + + find-up@7.0.0: + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + unicorn-magic: 0.1.0 + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + + is-fullwidth-code-point@3.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + locate-path@7.2.0: + dependencies: + p-locate: 6.0.0 + + lodash-es@4.17.21: {} + + ms@2.1.3: {} + + mute-stream@2.0.0: {} + + p-limit@4.0.0: + dependencies: + yocto-queue: 1.2.1 + + p-locate@6.0.0: + dependencies: + p-limit: 4.0.0 + + path-exists@5.0.0: {} + + safer-buffer@2.1.2: {} + + semver@7.7.2: {} + + signal-exit@4.1.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + tslib@2.8.1: + optional: true + + typanion@3.14.0: {} + + type-fest@0.21.3: {} + + typescript@5.9.2: {} + + undici-types@7.10.0: {} + + unicorn-magic@0.1.0: {} + + universal-user-agent@7.0.3: {} + + wasm-sjlj@1.0.6: {} + + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + yocto-queue@1.2.1: {} + + yoctocolors-cjs@2.1.3: {} From 01b62668f7b80b7a8ede1d556b4db2227f41db3e Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 28 Aug 2025 15:51:18 +0800 Subject: [PATCH 20/38] fix ci --- .github/workflows/release-next-rspack.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 0aafbbb6270d4..1e3164bdae4be 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -37,7 +37,7 @@ jobs: permissions: contents: write id-token: write - needs: [build, test] + needs: [build] steps: - name: Checkout code From 291e1eac3b7a3936eb57634d817476c24f9260e9 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Mon, 1 Sep 2025 10:59:12 +0800 Subject: [PATCH 21/38] prettier --- rspack/lib/index.d.ts | 13 +++++++------ rspack/lib/index.js | 16 ++++++++-------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/rspack/lib/index.d.ts b/rspack/lib/index.d.ts index b79e9aec5d7d8..1660e9f31e2d6 100644 --- a/rspack/lib/index.d.ts +++ b/rspack/lib/index.d.ts @@ -1,15 +1,16 @@ -import * as RspackCore from '@rspack/core'; -import { NapiNextExternalsPluginOptions } from '@next-rspack/binding'; +import * as RspackCore from '@rspack/core' +import { NapiNextExternalsPluginOptions } from '@next-rspack/binding' +// eslint-disable-next-line @typescript-eslint/no-unused-vars declare class NextExternalsPlugin { /** * The banner text to be added to the output file. */ - constructor(options: NapiNextExternalsPluginOptions); + constructor(options: NapiNextExternalsPluginOptions) } declare const core: typeof RspackCore & { - NextExternalsPlugin: typeof NextExternalsPlugin; -}; + NextExternalsPlugin: typeof NextExternalsPlugin +} -export = core; +export = core diff --git a/rspack/lib/index.js b/rspack/lib/index.js index 3d66776de2d04..011a903e59780 100644 --- a/rspack/lib/index.js +++ b/rspack/lib/index.js @@ -1,23 +1,23 @@ process.env.RSPACK_BINDING = require('node:path').dirname( require.resolve('@next-rspack/binding') -); +) -const binding = require('@next-rspack/binding'); +const binding = require('@next-rspack/binding') // Register the plugin `NextExternalsPlugin` exported by `crates/binding/src/lib.rs`. -binding.registerNextExternalsPlugin(); +binding.registerNextExternalsPlugin() -const core = require('@rspack/core'); +const core = require('@rspack/core') const NextExternalsPlugin = core.experiments.createNativePlugin( 'NextExternalsPlugin', function (options) { - return options; + return options } -); +) Object.defineProperty(core, 'NextExternalsPlugin', { value: NextExternalsPlugin, -}); +}) -module.exports = core; +module.exports = core From 7bfce07c33ee8b09fb3f6b843f4565bb7f9b963d Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Tue, 16 Sep 2025 09:52:11 +0800 Subject: [PATCH 22/38] fix: the github ci --- .github/workflows/release-next-rspack.yml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 1e3164bdae4be..0ec4160492b57 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -1,4 +1,4 @@ -name: Release +name: Release next-rspack bindings on: workflow_dispatch: @@ -69,9 +69,9 @@ jobs: uses: actions/cache@v3 with: path: ~/.pnpm-store - key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }} + key: ${{ runner.os }}-${{ runner.arch }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | - ${{ runner.os }}-pnpm- + ${{ runner.os }}-${{ runner.arch }}-pnpm- - name: Install dependencies run: pnpm install @@ -79,6 +79,8 @@ jobs: - name: Get NAPI info id: napi-info uses: rspack-contrib/rspack-toolchain/get-napi-info@v1 + with: + package-json-path: rspack/crates/binding/package.json - name: Download rspack binding uses: rspack-contrib/rspack-toolchain/download-rspack-binding@v1 @@ -113,11 +115,8 @@ jobs: npm config set provenance true pnpm napi pre-publish --no-gh-release -t npm working-directory: ${{ steps.napi-info.outputs.binding-directory }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Release npm packages run: | pnpm publish -r --tag ${{ inputs.npm-tag }} --no-git-checks --provenance --access public ${{ inputs.dry-run && '--dry-run' || '' }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + From 189064589177250dddd536e26b02df47d2241682 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 17:27:45 +0800 Subject: [PATCH 23/38] change @next-rspack scope --- rspack/crates/binding/index.js | 48 +++++++++++++++--------------- rspack/crates/binding/package.json | 2 +- rspack/lib/index.d.ts | 2 +- rspack/lib/index.js | 4 +-- rspack/package.json | 6 ++-- rspack/pnpm-lock.yaml | 2 +- 6 files changed, 32 insertions(+), 32 deletions(-) diff --git a/rspack/crates/binding/index.js b/rspack/crates/binding/index.js index ae9bc6bc1efab..09ca28cf7c7dd 100644 --- a/rspack/crates/binding/index.js +++ b/rspack/crates/binding/index.js @@ -80,7 +80,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-android-arm64') + return require('@next/rspack-binding-android-arm64') } catch (e) { loadErrors.push(e) } @@ -91,7 +91,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-android-arm-eabi') + return require('@next/rspack-binding-android-arm-eabi') } catch (e) { loadErrors.push(e) } @@ -108,7 +108,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-win32-x64-msvc') + return require('@next/rspack-binding-win32-x64-msvc') } catch (e) { loadErrors.push(e) } @@ -119,7 +119,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-win32-ia32-msvc') + return require('@next/rspack-binding-win32-ia32-msvc') } catch (e) { loadErrors.push(e) } @@ -130,7 +130,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-win32-arm64-msvc') + return require('@next/rspack-binding-win32-arm64-msvc') } catch (e) { loadErrors.push(e) } @@ -146,7 +146,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-darwin-universal') + return require('@next/rspack-binding-darwin-universal') } catch (e) { loadErrors.push(e) } @@ -157,7 +157,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-darwin-x64') + return require('@next/rspack-binding-darwin-x64') } catch (e) { loadErrors.push(e) } @@ -168,7 +168,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-darwin-arm64') + return require('@next/rspack-binding-darwin-arm64') } catch (e) { loadErrors.push(e) } @@ -185,7 +185,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-freebsd-x64') + return require('@next/rspack-binding-freebsd-x64') } catch (e) { loadErrors.push(e) } @@ -196,7 +196,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-freebsd-arm64') + return require('@next/rspack-binding-freebsd-arm64') } catch (e) { loadErrors.push(e) } @@ -214,7 +214,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-x64-musl') + return require('@next/rspack-binding-linux-x64-musl') } catch (e) { loadErrors.push(e) } @@ -225,7 +225,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-x64-gnu') + return require('@next/rspack-binding-linux-x64-gnu') } catch (e) { loadErrors.push(e) } @@ -238,7 +238,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm64-musl') + return require('@next/rspack-binding-linux-arm64-musl') } catch (e) { loadErrors.push(e) } @@ -249,7 +249,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm64-gnu') + return require('@next/rspack-binding-linux-arm64-gnu') } catch (e) { loadErrors.push(e) } @@ -262,7 +262,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm-musleabihf') + return require('@next/rspack-binding-linux-arm-musleabihf') } catch (e) { loadErrors.push(e) } @@ -273,7 +273,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm-gnueabihf') + return require('@next/rspack-binding-linux-arm-gnueabihf') } catch (e) { loadErrors.push(e) } @@ -286,7 +286,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-riscv64-musl') + return require('@next/rspack-binding-linux-riscv64-musl') } catch (e) { loadErrors.push(e) } @@ -297,7 +297,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-riscv64-gnu') + return require('@next/rspack-binding-linux-riscv64-gnu') } catch (e) { loadErrors.push(e) } @@ -309,7 +309,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-ppc64-gnu') + return require('@next/rspack-binding-linux-ppc64-gnu') } catch (e) { loadErrors.push(e) } @@ -320,7 +320,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-s390x-gnu') + return require('@next/rspack-binding-linux-s390x-gnu') } catch (e) { loadErrors.push(e) } @@ -337,7 +337,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm64-ohos') + return require('@next/rspack-binding-linux-arm64-ohos') } catch (e) { loadErrors.push(e) } @@ -348,7 +348,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-x64-ohos') + return require('@next/rspack-binding-linux-x64-ohos') } catch (e) { loadErrors.push(e) } @@ -359,7 +359,7 @@ function requireNative() { loadErrors.push(e) } try { - return require('@next-rspack/binding-linux-arm-ohos') + return require('@next/rspack-binding-linux-arm-ohos') } catch (e) { loadErrors.push(e) } @@ -389,7 +389,7 @@ if (!nativeBinding || process.env.NAPI_RS_FORCE_WASI) { } if (!nativeBinding) { try { - nativeBinding = require('@next-rspack/binding-wasm32-wasi') + nativeBinding = require('@next/rspack-binding-wasm32-wasi') } catch (err) { if (process.env.NAPI_RS_FORCE_WASI) { loadErrors.push(err) diff --git a/rspack/crates/binding/package.json b/rspack/crates/binding/package.json index 7c8d1239f368f..b8632325c23de 100644 --- a/rspack/crates/binding/package.json +++ b/rspack/crates/binding/package.json @@ -1,5 +1,5 @@ { - "name": "@next-rspack/binding", + "name": "@next/rspack-binding", "version": "0.0.1-canary.2", "homepage": "https://nextjs.org", "bugs": { diff --git a/rspack/lib/index.d.ts b/rspack/lib/index.d.ts index 1660e9f31e2d6..334f405c6a370 100644 --- a/rspack/lib/index.d.ts +++ b/rspack/lib/index.d.ts @@ -1,5 +1,5 @@ import * as RspackCore from '@rspack/core' -import { NapiNextExternalsPluginOptions } from '@next-rspack/binding' +import { NapiNextExternalsPluginOptions } from '@next/rspack-binding' // eslint-disable-next-line @typescript-eslint/no-unused-vars declare class NextExternalsPlugin { diff --git a/rspack/lib/index.js b/rspack/lib/index.js index 011a903e59780..e936f03321193 100644 --- a/rspack/lib/index.js +++ b/rspack/lib/index.js @@ -1,8 +1,8 @@ process.env.RSPACK_BINDING = require('node:path').dirname( - require.resolve('@next-rspack/binding') + require.resolve('@next/rspack-binding') ) -const binding = require('@next-rspack/binding') +const binding = require('@next/rspack-binding') // Register the plugin `NextExternalsPlugin` exported by `crates/binding/src/lib.rs`. binding.registerNextExternalsPlugin() diff --git a/rspack/package.json b/rspack/package.json index b819cab6c679d..b9794bce3baf7 100644 --- a/rspack/package.json +++ b/rspack/package.json @@ -1,5 +1,5 @@ { - "name": "@next-rspack/core", + "name": "@next/rspack-core", "version": "0.0.1-canary.2", "homepage": "https://nextjs.org", "bugs": { @@ -23,10 +23,10 @@ "lib" ], "scripts": { - "build": "pnpm run --filter @next-rspack/binding build" + "build": "pnpm run --filter @next/rspack-binding build" }, "dependencies": { "@rspack/core": "1.4.10", - "@next-rspack/binding": "workspace:*" + "@next/rspack-core": "workspace:*" } } diff --git a/rspack/pnpm-lock.yaml b/rspack/pnpm-lock.yaml index 88b9658cbd9aa..23a07aa044f43 100644 --- a/rspack/pnpm-lock.yaml +++ b/rspack/pnpm-lock.yaml @@ -8,7 +8,7 @@ importers: .: dependencies: - '@next-rspack/binding': + '@next/rspack-binding': specifier: workspace:* version: link:crates/binding '@rspack/core': From ae782d28e4361249e8bcec051cb9cd871bcf88d1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 17:37:41 +0800 Subject: [PATCH 24/38] update uses action --- .github/workflows/release-next-rspack.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 0ec4160492b57..541e1210e03b6 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -25,7 +25,7 @@ env: jobs: build: name: Build - uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@v1 + uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@v1.0.3 with: package-json-path: rspack/crates/binding/package.json napi-build-command: pnpm build --release @@ -78,12 +78,12 @@ jobs: - name: Get NAPI info id: napi-info - uses: rspack-contrib/rspack-toolchain/get-napi-info@v1 + uses: rspack-contrib/rspack-toolchain/get-napi-info@v1.0.3 with: package-json-path: rspack/crates/binding/package.json - name: Download rspack binding - uses: rspack-contrib/rspack-toolchain/download-rspack-binding@v1 + uses: rspack-contrib/rspack-toolchain/download-rspack-binding@v1.0.3 with: path: ${{ steps.napi-info.outputs.binding-directory }}/artifacts @@ -113,7 +113,7 @@ jobs: run: | npm config set access public npm config set provenance true - pnpm napi pre-publish --no-gh-release -t npm + pnpm napi pre-publish --no-gh-release -t npm ${{ inputs.dry-run && '--dry-run' || '' }} working-directory: ${{ steps.napi-info.outputs.binding-directory }} - name: Release npm packages From 0cbedf7926284003dcb796d91700a2fb3938f2a1 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 17:58:33 +0800 Subject: [PATCH 25/38] fix: working-directory --- .github/workflows/release-next-rspack.yml | 2 ++ rspack/package.json | 2 +- rspack/pnpm-lock.yaml | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 541e1210e03b6..19dcb9a6c0f14 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -75,6 +75,7 @@ jobs: - name: Install dependencies run: pnpm install + working-directory: ./rspack - name: Get NAPI info id: napi-info @@ -119,4 +120,5 @@ jobs: - name: Release npm packages run: | pnpm publish -r --tag ${{ inputs.npm-tag }} --no-git-checks --provenance --access public ${{ inputs.dry-run && '--dry-run' || '' }} + working-directory: ./rspack diff --git a/rspack/package.json b/rspack/package.json index b9794bce3baf7..4b2dd213ade82 100644 --- a/rspack/package.json +++ b/rspack/package.json @@ -27,6 +27,6 @@ }, "dependencies": { "@rspack/core": "1.4.10", - "@next/rspack-core": "workspace:*" + "@next/rspack-binding": "workspace:*" } } diff --git a/rspack/pnpm-lock.yaml b/rspack/pnpm-lock.yaml index 23a07aa044f43..815bb0295be79 100644 --- a/rspack/pnpm-lock.yaml +++ b/rspack/pnpm-lock.yaml @@ -8,9 +8,9 @@ importers: .: dependencies: - '@next/rspack-binding': + '@next/rspack-core': specifier: workspace:* - version: link:crates/binding + version: 'link:' '@rspack/core': specifier: 1.4.10 version: 1.4.10 From 5295b0a13f299cd7a41b06ecf3fe00a1ce706be6 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 21:37:08 +0800 Subject: [PATCH 26/38] update dependency --- rspack/crates/binding/Cargo.lock | 3073 ++++++++++-------------------- rspack/crates/binding/Cargo.toml | 22 +- rspack/package.json | 3 +- rspack/pnpm-lock.yaml | 4 +- 4 files changed, 996 insertions(+), 2106 deletions(-) diff --git a/rspack/crates/binding/Cargo.lock b/rspack/crates/binding/Cargo.lock index 609104f40f19c..64b7892dfd17e 100644 --- a/rspack/crates/binding/Cargo.lock +++ b/rspack/crates/binding/Cargo.lock @@ -18,15 +18,9 @@ version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" dependencies = [ - "gimli 0.31.1", + "gimli", ] -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - [[package]] name = "adler2" version = "2.0.1" @@ -73,6 +67,12 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" +[[package]] +name = "ambient-authority" +version = "0.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" + [[package]] name = "android-tzdata" version = "0.1.1" @@ -88,12 +88,6 @@ dependencies = [ "libc", ] -[[package]] -name = "any_ascii" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70033777eb8b5124a81a1889416543dddef2de240019b674c81285a2635a7e1e" - [[package]] name = "anyhow" version = "1.0.98" @@ -115,17 +109,6 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -[[package]] -name = "arca" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f915ddd863ef73f11c10c75170e86db1d4f539689bc6bfb9ce25d6528d6fe83" -dependencies = [ - "clean-path", - "path-slash", - "radix_trie", -] - [[package]] name = "arrayref" version = "0.3.9" @@ -146,9 +129,9 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" [[package]] name = "ast_node" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e2cddd48eafd883890770673b1971faceaf80a185445671abc3ea0c00593ee" +checksum = "0a184645bcc6f52d69d8e7639720699c6a99efb711f886e251ed1d16db8dd90e" dependencies = [ "quote", "swc_macros_common", @@ -177,6 +160,12 @@ dependencies = [ "syn 2.0.104", ] +[[package]] +name = "atomic_refcell" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c" + [[package]] name = "auto_impl" version = "1.3.0" @@ -203,8 +192,8 @@ dependencies = [ "addr2line", "cfg-if", "libc", - "miniz_oxide 0.8.9", - "object 0.36.7", + "miniz_oxide", + "object", "rustc-demangle", "windows-targets 0.52.6", ] @@ -252,59 +241,15 @@ dependencies = [ "scoped-tls", ] -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.9.1", - "cexpr", - "clang-sys", - "itertools 0.13.0", - "log", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.104", -] - -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec 0.6.3", -] - [[package]] name = "bit-set" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "bit-vec 0.8.0", + "bit-vec", ] -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - [[package]] name = "bit-vec" version = "0.8.0" @@ -322,6 +267,9 @@ name = "bitflags" version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +dependencies = [ + "serde", +] [[package]] name = "bitvec" @@ -378,7 +326,7 @@ dependencies = [ "chrono", "either", "itertools 0.13.0", - "nom 7.1.3", + "nom", "serde", "serde_json", "thiserror 1.0.69", @@ -403,17 +351,6 @@ dependencies = [ "allocator-api2", ] -[[package]] -name = "bus" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b7118d0221d84fada881b657c2ddb7cd55108db79c8764c9ee212c0c259b783" -dependencies = [ - "crossbeam-channel", - "num_cpus", - "parking_lot_core", -] - [[package]] name = "bytecheck" version = "0.6.12" @@ -470,9 +407,6 @@ name = "bytes" version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" -dependencies = [ - "serde", -] [[package]] name = "bytes-str" @@ -486,21 +420,78 @@ dependencies = [ ] [[package]] -name = "bytesize" -version = "1.3.3" +name = "camino" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e93abca9e28e0a1b9877922aacb20576e05d4679ffa78c3d6dc22a26a216659" +checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" dependencies = [ "serde", ] [[package]] -name = "camino" -version = "1.1.10" +name = "cap-fs-ext" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" +checksum = "e41cc18551193fe8fa6f15c1e3c799bc5ec9e2cfbfaa8ed46f37013e3e6c173c" dependencies = [ - "serde", + "cap-primitives", + "cap-std", + "io-lifetimes", + "windows-sys 0.59.0", +] + +[[package]] +name = "cap-primitives" +version = "3.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a1e394ed14f39f8bc26f59d4c0c010dbe7f0a1b9bafff451b1f98b67c8af62a" +dependencies = [ + "ambient-authority", + "fs-set-times", + "io-extras", + "io-lifetimes", + "ipnet", + "maybe-owned", + "rustix 1.0.7", + "rustix-linux-procfs", + "windows-sys 0.59.0", + "winx", +] + +[[package]] +name = "cap-rand" +version = "3.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0acb89ccf798a28683f00089d0630dfaceec087234eae0d308c05ddeaa941b40" +dependencies = [ + "ambient-authority", + "rand", +] + +[[package]] +name = "cap-std" +version = "3.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07c0355ca583dd58f176c3c12489d684163861ede3c9efa6fd8bba314c984189" +dependencies = [ + "cap-primitives", + "io-extras", + "io-lifetimes", + "rustix 1.0.7", +] + +[[package]] +name = "cap-time-ext" +version = "3.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "491af520b8770085daa0466978c75db90368c71896523f2464214e38359b1a5b" +dependencies = [ + "ambient-authority", + "cap-primitives", + "iana-time-zone", + "once_cell", + "rustix 1.0.7", + "winx", ] [[package]] @@ -544,15 +535,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom 7.1.3", -] - [[package]] name = "cfg-if" version = "1.0.1" @@ -568,48 +550,9 @@ dependencies = [ "android-tzdata", "iana-time-zone", "num-traits", - "serde", "windows-link", ] -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - -[[package]] -name = "clang-sys" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading", -] - [[package]] name = "clean-path" version = "0.2.1" @@ -617,12 +560,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aaa6b4b263a5d737e9bf6b7c09b72c41a5480aec4d7219af827f6564e950b6a5" [[package]] -name = "cmake" -version = "0.1.54" +name = "cobs" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +checksum = "0fa961b519f0b462e3a3b4a34b64d119eeaca1d59af726fe450bbba07a9fc0a1" dependencies = [ - "cc", + "thiserror 2.0.12", ] [[package]] @@ -710,31 +653,12 @@ dependencies = [ "unicode-segmentation", ] -[[package]] -name = "cooked-waker" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147be55d677052dabc6b22252d5dd0fd4c29c8c27aa4f2fbef0f94aa003b406f" - [[package]] name = "core-foundation-sys" version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" -[[package]] -name = "corosensei" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d1ea1c2a2f898d2a6ff149587b8a04f41ee708d248c723f01ac2f0f01edc0b3" -dependencies = [ - "autocfg", - "cfg-if", - "libc", - "scopeguard", - "windows-sys 0.59.0", -] - [[package]] name = "cow-utils" version = "0.1.3" @@ -750,28 +674,51 @@ dependencies = [ "libc", ] +[[package]] +name = "cranelift-assembler-x64" +version = "0.122.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ae7b60ec3fd7162427d3b3801520a1908bef7c035b52983cd3ca11b8e7deb51" +dependencies = [ + "cranelift-assembler-x64-meta", +] + +[[package]] +name = "cranelift-assembler-x64-meta" +version = "0.122.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6511c200fed36452697b4b6b161eae57d917a2044e6333b1c1389ed63ccadeee" +dependencies = [ + "cranelift-srcgen", +] + [[package]] name = "cranelift-bforest" -version = "0.110.2" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "305d51c180ebdc46ef61bc60c54ae6512db3bc9a05842a1f1e762e45977019ab" +checksum = "5f7086a645aa58bae979312f64e3029ac760ac1b577f5cd2417844842a2ca07f" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-bitset" -version = "0.110.3" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "690d8ae6c73748e5ce3d8fe59034dceadb8823e6c8994ba324141c5eae909b0e" +checksum = "5225b4dec45f3f3dbf383f12560fac5ce8d780f399893607e21406e12e77f491" +dependencies = [ + "serde", + "serde_derive", +] [[package]] name = "cranelift-codegen" -version = "0.110.2" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd7ca95e831c18d1356da783765c344207cbdffea91e13e47fa9327dbb2e0719" +checksum = "858fb3331e53492a95979378d6df5208dd1d0d315f19c052be8115f4efc888e0" dependencies = [ "bumpalo", + "cranelift-assembler-x64", "cranelift-bforest", "cranelift-bitset", "cranelift-codegen-meta", @@ -779,53 +726,61 @@ dependencies = [ "cranelift-control", "cranelift-entity", "cranelift-isle", - "gimli 0.28.1", - "hashbrown 0.14.5", + "gimli", + "hashbrown 0.15.4", "log", + "pulley-interpreter", "regalloc2", - "rustc-hash 1.1.0", + "rustc-hash", + "serde", "smallvec", "target-lexicon", + "wasmtime-internal-math", ] [[package]] name = "cranelift-codegen-meta" -version = "0.110.3" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0a2d2ab65e6cbf91f81781d8da65ec2005510f18300eff21a99526ed6785863" +checksum = "456715b9d5f12398f156d5081096e7b5d039f01b9ecc49790a011c8e43e65b5f" dependencies = [ + "cranelift-assembler-x64-meta", "cranelift-codegen-shared", + "cranelift-srcgen", + "pulley-interpreter", ] [[package]] name = "cranelift-codegen-shared" -version = "0.110.3" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efcff860573cf3db9ae98fbd949240d78b319df686cc306872e7fab60e9c84d7" +checksum = "0306041099499833f167a0ddb707e1e54100f1a84eab5631bc3dad249708f482" [[package]] name = "cranelift-control" -version = "0.110.3" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d70e5b75c2d5541ef80a99966ccd97aaa54d2a6af19ea31759a28538e1685a" +checksum = "1672945e1f9afc2297f49c92623f5eabc64398e2cb0d824f8f72a2db2df5af23" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.110.2" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a48cb0a194c9ba82fec35a1e492055388d89b2e3c03dee9dcf2488892be8004d" +checksum = "aa3cd55eb5f3825b9ae5de1530887907360a6334caccdc124c52f6d75246c98a" dependencies = [ "cranelift-bitset", + "serde", + "serde_derive", ] [[package]] name = "cranelift-frontend" -version = "0.110.2" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8327afc6c1c05f4be62fefce5b439fa83521c65363a322e86ea32c85e7ceaf64" +checksum = "781f9905f8139b8de22987b66b522b416fe63eb76d823f0b3a8c02c8fd9500c7" dependencies = [ "cranelift-codegen", "log", @@ -835,26 +790,34 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.110.2" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b08621c00321efcfa3eee6a3179adc009e21ea8d24ca7adc3c326184bc3f48" +checksum = "a05337a2b02c3df00b4dd9a263a027a07b3dff49f61f7da3b5d195c21eaa633d" [[package]] -name = "crc32fast" -version = "1.5.0" +name = "cranelift-native" +version = "0.122.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +checksum = "2eee7a496dd66380082c9c5b6f2d5fa149cec0ec383feec5caf079ca2b3671c2" dependencies = [ - "cfg-if", + "cranelift-codegen", + "libc", + "target-lexicon", ] [[package]] -name = "crossbeam-channel" -version = "0.5.15" +name = "cranelift-srcgen" +version = "0.122.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b530783809a55cb68d070e0de60cfbb3db0dc94c8850dd5725411422bedcf6bb" + +[[package]] +name = "crc32fast" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" dependencies = [ - "crossbeam-utils", + "cfg-if", ] [[package]] @@ -876,27 +839,12 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "crossbeam-queue" -version = "0.3.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-utils" version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" -[[package]] -name = "crunchy" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" - [[package]] name = "crypto-common" version = "0.1.6" @@ -965,38 +913,14 @@ version = "0.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f211af61d8efdd104f96e57adf5e426ba1bc3ed7a4ead616e15e5881fd79c4d" -[[package]] -name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core 0.14.4", - "darling_macro 0.14.4", -] - [[package]] name = "darling" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core 0.20.11", - "darling_macro 0.20.11", -] - -[[package]] -name = "darling_core" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", + "darling_core", + "darling_macro", ] [[package]] @@ -1009,28 +933,17 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim 0.11.1", + "strsim", "syn 2.0.104", ] -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core 0.14.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "darling_macro" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core 0.20.11", + "darling_core", "quote", "syn 2.0.104", ] @@ -1095,16 +1008,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" dependencies = [ "powerfmt", - "serde", -] - -[[package]] -name = "derive_builder" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" -dependencies = [ - "derive_builder_macro 0.12.0", ] [[package]] @@ -1113,19 +1016,7 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" dependencies = [ - "derive_builder_macro 0.20.2", -] - -[[package]] -name = "derive_builder_core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" -dependencies = [ - "darling 0.14.4", - "proc-macro2", - "quote", - "syn 1.0.109", + "derive_builder_macro", ] [[package]] @@ -1134,40 +1025,19 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling 0.20.11", + "darling", "proc-macro2", "quote", "syn 2.0.104", ] -[[package]] -name = "derive_builder_macro" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" -dependencies = [ - "derive_builder_core 0.12.0", - "syn 1.0.109", -] - [[package]] name = "derive_builder_macro" version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ - "derive_builder_core 0.20.2", - "syn 2.0.104", -] - -[[package]] -name = "derive_more" -version = "0.99.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" -dependencies = [ - "proc-macro2", - "quote", + "derive_builder_core", "syn 2.0.104", ] @@ -1214,17 +1084,8 @@ dependencies = [ ] [[package]] -name = "document-features" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" -dependencies = [ - "litrs", -] - -[[package]] -name = "dtoa" -version = "1.0.10" +name = "dtoa" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" @@ -1271,57 +1132,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] -name = "encode_unicode" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" - -[[package]] -name = "endian-type" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" - -[[package]] -name = "enum-iterator" -version = "0.7.0" +name = "embedded-io" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eeac5c5edb79e4e39fe8439ef35207780a11f69c52cbe424ce3dfad4cb78de6" -dependencies = [ - "enum-iterator-derive", -] +checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" [[package]] -name = "enum-iterator-derive" -version = "0.7.0" +name = "embedded-io" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c134c37760b27a871ba422106eedbb8247da973a09e82558bf26d619c882b159" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] +checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d" [[package]] -name = "enumset" -version = "1.1.7" +name = "encode_unicode" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6ee17054f550fd7400e1906e2f9356c7672643ed34008a9e8abe147ccd2d821" -dependencies = [ - "enumset_derive", -] +checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] -name = "enumset_derive" -version = "0.12.0" +name = "endian-type" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d07902c93376f1e96c34abc4d507c0911df3816cef50b01f5a2ff3ad8c370d" -dependencies = [ - "darling 0.20.11", - "proc-macro2", - "quote", - "syn 2.0.104", -] +checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" [[package]] name = "equivalent" @@ -1345,24 +1177,13 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" -[[package]] -name = "fancy-regex" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2" -dependencies = [ - "bit-set 0.5.3", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - [[package]] name = "fancy-regex" version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf04c5ec15464ace8355a7b440a33aece288993475556d461154d7a62ad9947c" dependencies = [ - "bit-set 0.8.0", + "bit-set", "regex-automata 0.4.9", "regex-syntax 0.8.5", ] @@ -1377,20 +1198,13 @@ dependencies = [ ] [[package]] -name = "fastrand" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" - -[[package]] -name = "filetime" -version = "0.2.25" +name = "fd-lock" +version = "4.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +checksum = "0ce92ff622d6dadf7349484f42c93271a0d49b7cc4d466a936405bacbe10aa78" dependencies = [ "cfg-if", - "libc", - "libredox", + "rustix 1.0.7", "windows-sys 0.59.0", ] @@ -1400,16 +1214,6 @@ version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" -[[package]] -name = "flate2" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" -dependencies = [ - "crc32fast", - "miniz_oxide 0.8.9", -] - [[package]] name = "float-cmp" version = "0.10.0" @@ -1451,10 +1255,15 @@ dependencies = [ ] [[package]] -name = "fs_extra" -version = "1.3.0" +name = "fs-set-times" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" +checksum = "94e7099f6313ecacbe1256e8ff9d617b75d1bcb16a6fddef94866d225a01a14a" +dependencies = [ + "io-lifetimes", + "rustix 1.0.7", + "windows-sys 0.59.0", +] [[package]] name = "fsevent-sys" @@ -1597,21 +1406,15 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" dependencies = [ "fallible-iterator", - "indexmap 2.10.0", + "indexmap", "stable_deref_trait", ] -[[package]] -name = "gimli" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" - [[package]] name = "glob" version = "0.3.2" @@ -1626,21 +1429,10 @@ checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" dependencies = [ "aho-corasick", "bstr", - "log", "regex-automata 0.4.9", "regex-syntax 0.8.5", ] -[[package]] -name = "half" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" -dependencies = [ - "cfg-if", - "crunchy", -] - [[package]] name = "halfbrown" version = "0.2.5" @@ -1657,7 +1449,7 @@ version = "6.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "759e2d5aea3287cb1190c8ec394f42866cb5bf74fcbf213f354e3c856ea26098" dependencies = [ - "derive_builder 0.20.2", + "derive_builder", "log", "num-order", "pest", @@ -1667,15 +1459,6 @@ dependencies = [ "thiserror 2.0.12", ] -[[package]] -name = "hash32" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" -dependencies = [ - "byteorder", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -1713,6 +1496,7 @@ dependencies = [ "allocator-api2", "equivalent", "foldhash", + "serde", ] [[package]] @@ -1724,25 +1508,6 @@ dependencies = [ "hashbrown 0.15.4", ] -[[package]] -name = "heapless" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" -dependencies = [ - "hash32", - "stable_deref_trait", -] - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "heck" version = "0.5.0" @@ -1770,7 +1535,7 @@ dependencies = [ "hashbrown 0.14.5", "new_debug_unreachable", "once_cell", - "rustc-hash 2.1.1", + "rustc-hash", "triomphe", ] @@ -1783,17 +1548,6 @@ dependencies = [ "utf8-width", ] -[[package]] -name = "http" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - [[package]] name = "iana-time-zone" version = "0.1.63" @@ -1904,12 +1658,6 @@ dependencies = [ "zerovec", ] -[[package]] -name = "id-arena" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" - [[package]] name = "ident_case" version = "1.0.1" @@ -1943,33 +1691,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" -[[package]] -name = "ignore" -version = "0.4.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" -dependencies = [ - "crossbeam-deque", - "globset", - "log", - "memchr", - "regex-automata 0.4.9", - "same-file", - "walkdir", - "winapi-util", -] - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - [[package]] name = "indexmap" version = "2.10.0" @@ -2022,27 +1743,30 @@ dependencies = [ ] [[package]] -name = "insta" -version = "1.43.1" +name = "inventory" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "154934ea70c58054b556dd430b99a98c2a7ff5309ac9891597e339b5c28f4371" +checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" dependencies = [ - "console", - "once_cell", - "regex", - "serde", - "similar", + "rustversion", ] [[package]] -name = "inventory" -version = "0.3.20" +name = "io-extras" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" +checksum = "2285ddfe3054097ef4b2fe909ef8c3bcd1ea52a8f0d274416caebeef39f04a65" dependencies = [ - "rustversion", + "io-lifetimes", + "windows-sys 0.59.0", ] +[[package]] +name = "io-lifetimes" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06432fb54d3be7964ecd3649233cddf80db2832f47fec34c01f65b3d9d774983" + [[package]] name = "io-uring" version = "0.7.8" @@ -2060,22 +1784,13 @@ version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" -[[package]] -name = "iprange" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37209be0ad225457e63814401415e748e2453a5297f9b637338f5fb8afa4ec00" -dependencies = [ - "ipnet", -] - [[package]] name = "is-macro" version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d57a3e447e24c22647738e4607f1df1e0ec6f72e16182c4cd199f647cdfb0e4" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", "syn 2.0.104", @@ -2096,15 +1811,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.13.0" @@ -2201,15 +1907,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" -[[package]] -name = "lexical-sort" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c09e4591611e231daf4d4c685a66cb0410cc1e502027a20ae55f2bb9e997207a" -dependencies = [ - "any_ascii", -] - [[package]] name = "libc" version = "0.2.174" @@ -2227,37 +1924,16 @@ dependencies = [ ] [[package]] -name = "libredox" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4488594b9328dee448adb906d8b126d9b7deb7cf5c22161ee591610bb1be83c0" -dependencies = [ - "bitflags 2.9.1", - "libc", - "redox_syscall", -] - -[[package]] -name = "libunwind" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c6639b70a7ce854b79c70d7e83f16b5dc0137cc914f3d7d03803b513ecc67ac" - -[[package]] -name = "libyml" -version = "0.0.5" +name = "libm" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3302702afa434ffa30847a83305f0a69d6abd74293b6554c18ec85c7ef30c980" -dependencies = [ - "anyhow", - "version_check", -] +checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "lightningcss" -version = "1.0.0-alpha.65" +version = "1.0.0-alpha.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c84f971730745f4aaac013b6cf4328baf1548efc973c0d95cfd843a3c1ca07af" +checksum = "798fba4e1205eed356b8ed7754cc3f7f04914e27855ca641409f4a532e992149" dependencies = [ "ahash 0.8.12", "bitflags 2.9.1", @@ -2266,7 +1942,7 @@ dependencies = [ "cssparser-color", "data-encoding", "getrandom 0.2.16", - "indexmap 2.10.0", + "indexmap", "itertools 0.10.5", "lazy_static", "lightningcss-derive", @@ -2324,12 +2000,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" -[[package]] -name = "litrs" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" - [[package]] name = "lock_api" version = "0.4.13" @@ -2355,15 +2025,6 @@ dependencies = [ "hashbrown 0.13.2", ] -[[package]] -name = "lz4_flex" -version = "0.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08ab2867e3eeeca90e844d1940eab391c9dc5228783db2ed999acbc0a9ed375a" -dependencies = [ - "twox-hash 2.1.1", -] - [[package]] name = "mach2" version = "0.4.3" @@ -2373,23 +2034,6 @@ dependencies = [ "libc", ] -[[package]] -name = "macho-unwind-info" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb4bdc8b0ce69932332cf76d24af69c3a155242af95c226b2ab6c2e371ed1149" -dependencies = [ - "thiserror 2.0.12", - "zerocopy", - "zerocopy-derive", -] - -[[package]] -name = "managed" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d" - [[package]] name = "matchers" version = "0.1.0" @@ -2405,6 +2049,12 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" +[[package]] +name = "maybe-owned" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" + [[package]] name = "md4" version = "0.10.2" @@ -2421,21 +2071,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] -name = "memmap2" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d28bba84adfe6646737845bc5ebbfa2c08424eb1c37e94a1fd2a82adb56a872" -dependencies = [ - "libc", -] - -[[package]] -name = "memoffset" -version = "0.9.1" +name = "memfd" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227" dependencies = [ - "autocfg", + "rustix 1.0.7", ] [[package]] @@ -2463,7 +2104,7 @@ dependencies = [ "supports-color", "supports-hyperlinks", "supports-unicode", - "terminal_size 0.4.2", + "terminal_size", "textwrap", "unicode-width 0.1.14", ] @@ -2510,15 +2151,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" -[[package]] -name = "miniz_oxide" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" -dependencies = [ - "adler", -] - [[package]] name = "miniz_oxide" version = "0.8.9" @@ -2540,12 +2172,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "more-asserts" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" - [[package]] name = "munge" version = "0.4.5" @@ -2568,9 +2194,9 @@ dependencies = [ [[package]] name = "napi" -version = "3.1.2" +version = "3.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82f391d2bc1f67f5f52ebd895fabe526d7ef9381dc499a2be90780d6f246eb79" +checksum = "ef68062665fc682e32a4f4c492e0f18c1a11bfdc63628a5e16ae9f1f7a9d660a" dependencies = [ "anyhow", "bitflags 2.9.1", @@ -2578,7 +2204,7 @@ dependencies = [ "napi-build", "napi-sys", "nohash-hasher", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "tokio", @@ -2586,15 +2212,15 @@ dependencies = [ [[package]] name = "napi-build" -version = "2.2.2" +version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff539e61c5e3dd4d7d283610662f5d672c2aea0f158df78af694f13dbb3287b" +checksum = "dcae8ad5609d14afb3a3b91dee88c757016261b151e9dcecabf1b2a31a6cab14" [[package]] name = "napi-derive" -version = "3.1.1" +version = "3.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43e61844e0c0bb81e711f2084abe7cff187b03ca21ff8b000cb59bbda61e15a9" +checksum = "dd086ffe0174e091069fdd793c77b49e26fdd578cf497b11e906423942e354d4" dependencies = [ "convert_case 0.8.0", "ctor", @@ -2606,9 +2232,9 @@ dependencies = [ [[package]] name = "napi-derive-backend" -version = "2.0.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7ab19e9b98efb13895f492a2e367ca50c955ac3c4723613af73fdda4011afcc" +checksum = "5f6a81ac7486b70f2532a289603340862c06eea5a1e650c1ffeda2ce1238516a" dependencies = [ "convert_case 0.8.0", "proc-macro2", @@ -2649,7 +2275,7 @@ dependencies = [ "rspack_plugin_externals", "rspack_regex", "rspack_sources", - "rustc-hash 2.1.1", + "rustc-hash", ] [[package]] @@ -2677,16 +2303,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" -[[package]] -name = "nom" -version = "5.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08959a387a676302eebf4ddbcbc611da04285579f76f88ee0506c63b1a61dd4b" -dependencies = [ - "memchr", - "version_check", -] - [[package]] name = "nom" version = "7.1.3" @@ -2791,62 +2407,29 @@ dependencies = [ ] [[package]] -name = "num_enum" -version = "0.7.4" +name = "num_threads" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" dependencies = [ - "num_enum_derive", - "rustversion", + "libc", ] [[package]] -name = "num_enum_derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "num_threads" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" -dependencies = [ - "libc", -] - -[[package]] -name = "number_prefix" -version = "0.4.0" +name = "number_prefix" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" -[[package]] -name = "object" -version = "0.32.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" -dependencies = [ - "crc32fast", - "flate2", - "hashbrown 0.14.5", - "indexmap 2.10.0", - "memchr", - "ruzstd", -] - [[package]] name = "object" version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ + "crc32fast", + "hashbrown 0.15.4", + "indexmap", "memchr", ] @@ -2912,7 +2495,7 @@ dependencies = [ "phf", "phf_codegen", "precomputed-hash", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "smallvec", "static-self", @@ -3045,7 +2628,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset", - "indexmap 2.10.0", + "indexmap", ] [[package]] @@ -3100,26 +2683,6 @@ dependencies = [ "siphasher 1.0.1", ] -[[package]] -name = "pin-project" -version = "1.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", -] - [[package]] name = "pin-project-lite" version = "0.2.16" @@ -3132,30 +2695,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" -[[package]] -name = "pnp" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6add7fe3063e1c9b9a2b9780fba7047187617a37823a6541a62160f4e972cc91" -dependencies = [ - "arca", - "byteorder", - "clean-path", - "concurrent_lru", - "fancy-regex 0.13.0", - "indexmap 2.10.0", - "lazy_static", - "miniz_oxide 0.7.4", - "path-slash", - "pathdiff", - "radix_trie", - "regex", - "serde", - "serde_json", - "serde_with", - "thiserror 2.0.12", -] - [[package]] name = "pnp" version = "0.12.2" @@ -3165,12 +2704,12 @@ dependencies = [ "byteorder", "clean-path", "concurrent_lru", - "fancy-regex 0.16.1", - "miniz_oxide 0.8.9", + "fancy-regex", + "miniz_oxide", "path-slash", "pathdiff", "radix_trie", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "thiserror 2.0.12", @@ -3182,6 +2721,18 @@ version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" +[[package]] +name = "postcard" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6764c3b5dd454e283a30e6dfe78e9b31096d9e32036b5d1eaac7a6119ccb9a24" +dependencies = [ + "cobs", + "embedded-io 0.4.0", + "embedded-io 0.6.1", + "serde", +] + [[package]] name = "potential_utf" version = "0.1.2" @@ -3229,54 +2780,13 @@ dependencies = [ "dashmap 5.5.3", "from_variant", "once_cell", - "rustc-hash 2.1.1", + "rustc-hash", "semver", "serde", "st-map", "tracing", ] -[[package]] -name = "prettyplease" -version = "0.2.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061c1221631e079b26479d25bbf2275bfe5917ae8419cd7e34f13bfc2aa7539a" -dependencies = [ - "proc-macro2", - "syn 2.0.104", -] - -[[package]] -name = "proc-macro-crate" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" -dependencies = [ - "toml_edit", -] - -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.104", -] - [[package]] name = "proc-macro2" version = "1.0.95" @@ -3359,14 +2869,26 @@ dependencies = [ ] [[package]] -name = "pulldown-cmark" -version = "0.8.0" +name = "pulley-interpreter" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffade02495f22453cd593159ea2f59827aae7f53fa8323f756799b670881dcf8" +checksum = "b89c4319786b16c1a6a38ee04788d32c669b61ba4b69da2162c868c18be99c1b" dependencies = [ - "bitflags 1.3.2", - "memchr", - "unicase", + "cranelift-bitset", + "log", + "pulley-macros", + "wasmtime-internal-math", +] + +[[package]] +name = "pulley-macros" +version = "35.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "938543690519c20c3a480d20a8efcc8e69abeb44093ab1df4e7c1f81f26c677a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", ] [[package]] @@ -3496,14 +3018,15 @@ dependencies = [ [[package]] name = "regalloc2" -version = "0.9.3" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad156d539c879b7a24a363a2016d77961786e71f48f2e2fc8302a92abd2429a6" +checksum = "5216b1837de2149f8bc8e6d5f88a9326b63b8c836ed58ce4a0a29ec736a59734" dependencies = [ - "hashbrown 0.13.2", + "allocator-api2", + "bumpalo", + "hashbrown 0.15.4", "log", - "rustc-hash 1.1.0", - "slice-group-by", + "rustc-hash", "smallvec", ] @@ -3551,18 +3074,6 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" -[[package]] -name = "region" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b6ebd13bc009aef9cd476c1310d49ac354d36e240cf1bd753290f3dc7199a7" -dependencies = [ - "bitflags 1.3.2", - "libc", - "mach2", - "windows-sys 0.52.0", -] - [[package]] name = "regress" version = "0.10.4" @@ -3591,12 +3102,6 @@ dependencies = [ "bytecheck 0.8.1", ] -[[package]] -name = "replace_with" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51743d3e274e2b18df81c4dc6caf8a5b8e15dbe799e0dca05c7617380094e884" - [[package]] name = "rkyv" version = "0.7.45" @@ -3624,7 +3129,7 @@ dependencies = [ "bytecheck 0.8.1", "bytes", "hashbrown 0.14.5", - "indexmap 2.10.0", + "indexmap", "munge", "ptr_meta 0.3.0", "rancor", @@ -3678,18 +3183,18 @@ dependencies = [ [[package]] name = "rspack_allocator" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa88e63457ac0506093cd69866cc03e867813713b8baf2f344416938e9baaccd" +checksum = "30800f88172190f11d1d6594d94f6c3bfb6317202b7737d2a9822b782fdb5362" dependencies = [ "mimalloc-rspack", ] [[package]] name = "rspack_base64" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6757eddfb933fe4d217287b1ea51ae0d19d203c9e0663fd7b30cd94b91928c55" +checksum = "d4d580cfe01acf24883cce483a1d7c8d5f6874656855e98d739b50a0aad23849" dependencies = [ "base64-simd 0.8.0", "regex", @@ -3697,23 +3202,23 @@ dependencies = [ [[package]] name = "rspack_binding_api" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "633433b9aa019c62307e74db5dab5310907373a2eeee0f7ed860a35663a4a945" +checksum = "582e82ce16257b63c8d27c0b24e7180bfba051f2d773801a97aaeaace0fe1175" dependencies = [ "anyhow", "async-trait", - "browserslist-rs", "cow-utils", - "derive_more 2.0.1", + "derive_more", "futures", "glob", - "heck 0.5.0", + "heck", "napi", "napi-derive", "once_cell", "parking_lot", "rayon", + "regex", "ropey", "rspack_allocator", "rspack_browserslist", @@ -3738,7 +3243,6 @@ dependencies = [ "rspack_plugin_asset", "rspack_plugin_banner", "rspack_plugin_circular_dependencies", - "rspack_plugin_context_replacement", "rspack_plugin_copy", "rspack_plugin_css", "rspack_plugin_css_chunking", @@ -3761,6 +3265,7 @@ dependencies = [ "rspack_plugin_merge_duplicate_chunks", "rspack_plugin_mf", "rspack_plugin_module_info_header", + "rspack_plugin_module_replacement", "rspack_plugin_no_emit_on_errors", "rspack_plugin_progress", "rspack_plugin_real_content_hash", @@ -3781,11 +3286,12 @@ dependencies = [ "rspack_plugin_web_worker_template", "rspack_plugin_worker", "rspack_regex", + "rspack_resolver", "rspack_tasks", "rspack_tracing", "rspack_util", "rspack_workspace", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_core", @@ -3797,27 +3303,27 @@ dependencies = [ [[package]] name = "rspack_binding_build" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a867e432cc8e8861d2ee5730bfd41ba858826f046f2a061c248ba5376c225443" +checksum = "4abf5c9c48e69c371ecb0e05707dc7f27d6a639e194a1e4b240146483704e325" dependencies = [ "napi-build", ] [[package]] name = "rspack_binding_builder" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32abfac3741a0b68c843ae9909ada330f52125fad4f784723019c8ce917d281b" +checksum = "9803f14b9e646effdd7a65464ad04cb33e2ed907516115bde7dab652d18d7150" dependencies = [ "rspack_binding_api", ] [[package]] name = "rspack_binding_builder_macros" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612bec1490452c3f597741e37a5484843a5c201b771b42e1006a9c2848c27b6c" +checksum = "364d99b8a7ca1ff8f740195d01c087420a31edbbf68009f4291a845d4cafc9fd" dependencies = [ "proc-macro2", "quote", @@ -3827,9 +3333,9 @@ dependencies = [ [[package]] name = "rspack_browserslist" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7dd657a1a0b5e9defcb485cfd60dccd8f0e00f813b79c7698e46a7f34c5593" +checksum = "0dd1e4fd8c207987bea82200d3e32e7a48e2ac7e4bf37b7c060dbc4f3558a6a0" dependencies = [ "browserslist-rs", "lightningcss", @@ -3838,14 +3344,14 @@ dependencies = [ [[package]] name = "rspack_cacheable" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "015f2308a81c661ca409ad93cf5fede4a8f035d877aa6edd210b134728c93eaf" +checksum = "ce721b6143503c89c350e806c0ac076cb7290a3e07df4702657209532d4d863e" dependencies = [ "camino", "dashmap 6.1.0", "hashlink", - "indexmap 2.10.0", + "indexmap", "inventory", "json", "lightningcss", @@ -3863,13 +3369,13 @@ dependencies = [ [[package]] name = "rspack_collections" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d146c501b9e3503e0e98ed70c82239410cbe9b16a46ff76403a16655e939fe0e" +checksum = "210c9c02ddb39b8e7a85df69f29b67b9c931b16374028d6ebd7c0cfc13b3a3fe" dependencies = [ "dashmap 6.1.0", "hashlink", - "indexmap 2.10.0", + "indexmap", "rayon", "rspack_cacheable", "serde", @@ -3878,9 +3384,9 @@ dependencies = [ [[package]] name = "rspack_core" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f37e1edd43075515bf1907761dca472e4ef03a45c823e27ff9cb63063c5d9d" +checksum = "c666da8f5940d7ca5e5b04b669999097bd2ab729bd2d535549841cbe49f92c94" dependencies = [ "anymap3", "async-recursion", @@ -3888,13 +3394,13 @@ dependencies = [ "bitflags 2.9.1", "cow-utils", "dashmap 6.1.0", - "derive_more 2.0.1", + "derive_more", "dyn-clone", "either", "futures", "hashlink", "hex", - "indexmap 2.10.0", + "indexmap", "indoc", "itertools 0.14.0", "json", @@ -3929,7 +3435,7 @@ dependencies = [ "rspack_tasks", "rspack_util", "rspack_workspace", - "rustc-hash 2.1.1", + "rustc-hash", "scopeguard", "serde", "serde_json", @@ -3939,6 +3445,7 @@ dependencies = [ "tokio", "tracing", "ustr-fxhash", + "winnow", ] [[package]] @@ -3953,43 +3460,40 @@ dependencies = [ [[package]] name = "rspack_error" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eed5d2301c7d4f3e863a56639c7b7328591b2349a8ce3aeaa10d40952a95f41" +checksum = "68e8299d59ca480cb3f608fd9293e7bf63cf4ae577b0c93e3a8a1550e12fc158" dependencies = [ "anyhow", - "cow-utils", - "derive_more 2.0.1", - "futures", "miette", - "once_cell", "owo-colors", "rspack_cacheable", "rspack_collections", "rspack_location", "rspack_paths", "serde_json", - "swc_core", "termcolor", "textwrap", - "thiserror 1.0.69", "unicode-width 0.2.1", ] [[package]] name = "rspack_fs" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e8c3a3048f15ca00041c6e03d6c2ff4767ec97c01a92f4c9202ef9b4ce2003" +checksum = "3a11c6b678609a71183b83d978658b964617833808762172c1123f7c94babdb0" dependencies = [ "async-trait", "cfg-if", + "cow-utils", "dashmap 6.1.0", "dunce", + "fast-glob", "notify", - "pnp 0.9.4", + "pnp", "rspack_error", "rspack_paths", + "rspack_regex", "rspack_util", "tokio", "tracing", @@ -3997,9 +3501,9 @@ dependencies = [ [[package]] name = "rspack_futures" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed166cdaa1d1e32908370caac06460f0e2f98c6be8ea887fab8d2d11f6fd22f2" +checksum = "9e139fb3f5df91c4550d500b7c6b651715cc471f6a788bcb7c86f58b5684cf4e" dependencies = [ "rspack_tasks", "tokio", @@ -4007,9 +3511,9 @@ dependencies = [ [[package]] name = "rspack_hash" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad5c85eeccfd376381bd53e75e2c55d726e4958b44f1db9dbb4362e24882d691" +checksum = "a5eeb3785ff3c58f1f67420bb279a17d0f075678a0bc2ff9ffd965c0ce1ffdb6" dependencies = [ "md4", "rspack_cacheable", @@ -4020,22 +3524,22 @@ dependencies = [ [[package]] name = "rspack_hook" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee0602ae21e4b1957ea854c71d14badcd3e126873274dbcc85a9a392b3cc766" +checksum = "fa4bef4fc47d551fc8a1333b124efa0f37c298ed11dc80e14e1251e4c4536c54" dependencies = [ "async-trait", "rspack_error", "rspack_macros", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_ids" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e526478b685cbc3d889919e07a8c7fc6dce4cae8eead442418156fd4be761c8" +checksum = "a6a31d79adee675bbb6ae15b5745c803bc642b1e96d3f7f0c4759ece0d4128cb" dependencies = [ "itertools 0.14.0", "rayon", @@ -4045,31 +3549,31 @@ dependencies = [ "rspack_error", "rspack_hook", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_javascript_compiler" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0214c53d0c708b306da908324cd98313420324869e4e7d795f09e04de3680ff2" +checksum = "6ef8b8c70aafe0c7b97e95dac5ebc1a3a9c880b0592542e4b1ae6db481edbce1" dependencies = [ "anyhow", "base64", "indoc", "jsonc-parser", - "rspack_cacheable", "rspack_error", "rspack_sources", "rspack_util", "rspack_workspace", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "stacker", "swc_config", "swc_core", + "swc_ecma_lexer", "swc_ecma_minifier", "swc_error_reporters", "swc_node_comments", @@ -4078,12 +3582,12 @@ dependencies = [ [[package]] name = "rspack_loader_lightningcss" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f554eb812c46d1ef8a4db5501d60e604f4e218a579171a135e77260da038f7" +checksum = "e1ab6922f4783eb28e3411db277083076dcccabd74ac8bdabcf86ba4956709af" dependencies = [ "async-trait", - "derive_more 2.0.1", + "derive_more", "lightningcss", "parcel_sourcemap", "rspack_browserslist", @@ -4100,9 +3604,9 @@ dependencies = [ [[package]] name = "rspack_loader_preact_refresh" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90b4da1de00dd8403075f5c5f86ee0676c4a534e49e5eacfe11d2230816aba74" +checksum = "4666f790256f6fa1f5b6a826f81f4a39f269cd8812f33e1e25bd72ccc4cbce8b" dependencies = [ "async-trait", "rspack_cacheable", @@ -4115,9 +3619,9 @@ dependencies = [ [[package]] name = "rspack_loader_react_refresh" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea772f629b00f5c9c3838d50f667db59e7c2b9f0856a686be1e5a0f8a1c14ebf" +checksum = "fba6e3a9bc9d1b28e6d5d658c1bf58bbe86a8c6110a96c0797ff1cc81ea4a27d" dependencies = [ "async-trait", "rspack_cacheable", @@ -4130,15 +3634,15 @@ dependencies = [ [[package]] name = "rspack_loader_runner" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c55a622d4f471613f28d1fab984cb570b924d474aea658f0aeab0c936c378c5e" +checksum = "3d6e0d50eca2ba39feee5f0757b51c42c2f9e9e26085b85c4fe3798c3e504421" dependencies = [ "anymap3", "async-trait", - "derive_more 2.0.1", + "derive_more", + "memchr", "once_cell", - "regex", "rspack_cacheable", "rspack_collections", "rspack_error", @@ -4146,17 +3650,18 @@ dependencies = [ "rspack_paths", "rspack_sources", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "tokio", "tracing", + "winnow", ] [[package]] name = "rspack_loader_swc" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7672e35e4fd495dec9c00031bc83027a6148bc0bc52a90cf0b69c10cddd877a" +checksum = "642a1392c8538ea29bdb8c136a5caa287bdc1810396f44155041f28a61179da7" dependencies = [ "async-trait", "either", @@ -4168,11 +3673,13 @@ dependencies = [ "rspack_loader_runner", "rspack_swc_plugin_import", "rspack_swc_plugin_ts_collector", + "rspack_util", "rspack_workspace", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "stacker", + "sugar_path", "swc", "swc_config", "swc_core", @@ -4182,9 +3689,9 @@ dependencies = [ [[package]] name = "rspack_loader_testing" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15f93556bd19da088b167ca2916c1629d4c3219fb7042869890ae48cbd12d25e" +checksum = "fc2101034e4566c0459efcf5ccec277860aee008418f39958357c4a41f8ffecb" dependencies = [ "async-trait", "rspack_cacheable", @@ -4196,9 +3703,9 @@ dependencies = [ [[package]] name = "rspack_location" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8dd370e51e426d45c67d96a7988cc17d44f82b214fdb9d2b7a8535b77cab425" +checksum = "af22daca28ec45373f58b3409839911a93542023e0371916d223b8582305c35b" dependencies = [ "itoa", "rspack_cacheable", @@ -4207,9 +3714,9 @@ dependencies = [ [[package]] name = "rspack_macros" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3ffdcf2a4627cd364b8ad4745be427ed5e3d9d805cc2c55b03580c0164011c" +checksum = "8517a2bf3f8c90ab2875606f49c1dc0d47120be55ed4c39f200e9e2812e49ccf" dependencies = [ "proc-macro2", "quote", @@ -4218,9 +3725,9 @@ dependencies = [ [[package]] name = "rspack_napi" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc238605490cb71b0bc98467409e8bed981178ce2c6e6c6ea55d3205eea2db2c" +checksum = "1c299be189e85fb840ffe3c589a9dd721a293775baa454ea0e8d8613a3b55e4b" dependencies = [ "napi", "oneshot", @@ -4231,9 +3738,9 @@ dependencies = [ [[package]] name = "rspack_napi_macros" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad1ab72929cc98a4cbcacf5c66c73174dc31ed733770fb5bb26b04eb1172ba78" +checksum = "1c3da7a6ffee9338e72b4a56b1246304c227962be3f1294e5c627d41c01b882b" dependencies = [ "proc-macro2", "quote", @@ -4242,19 +3749,22 @@ dependencies = [ [[package]] name = "rspack_paths" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9914a0c8332ca7e32864b9a7deadb4238c587576118d003ccccad8f482044d0d" +checksum = "6959717cf8bbb14270b8116085b173900aec85d8b8d8f27ee3cf357cd32705ec" dependencies = [ "camino", + "dashmap 6.1.0", "rspack_cacheable", + "rustc-hash", + "ustr-fxhash", ] [[package]] name = "rspack_plugin_asset" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20ca96bd67b7d9c71a0ac6a0ed836c2a28d8c07a8cf75e74ac1f98d663ceba3d" +checksum = "794bef111a2370ec89a507a488baabfe568c31dd9f5b0888ad1116e58cac549c" dependencies = [ "async-trait", "mime_guess", @@ -4273,9 +3783,9 @@ dependencies = [ [[package]] name = "rspack_plugin_banner" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d81517000007da03d39dbdca9058f982dd5d560045604ebfe45bb1566008612a" +checksum = "c3e3a25dc9aa5b281a3569e64d933a68f429bb0d4a0c873cd5f175159ae945c0" dependencies = [ "cow-utils", "futures", @@ -4289,12 +3799,12 @@ dependencies = [ [[package]] name = "rspack_plugin_circular_dependencies" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d803e268b36b4dc4ec829c41ed46c2652d9e7e0ad4dd97dae6259bf4229453d" +checksum = "9323b143b4569e9abf9ffb8bf37320d553ade49fe8eb2fbd2cdc7a1d2b70c9e1" dependencies = [ "cow-utils", - "derive_more 2.0.1", + "derive_more", "futures", "itertools 0.14.0", "rspack_collections", @@ -4302,33 +3812,18 @@ dependencies = [ "rspack_error", "rspack_hook", "rspack_regex", - "rustc-hash 2.1.1", - "tracing", -] - -[[package]] -name = "rspack_plugin_context_replacement" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e32cc814e714d2d9dc2149623a15187a979bea5004fbb55192793840489acace" -dependencies = [ - "rspack_core", - "rspack_error", - "rspack_hook", - "rspack_paths", - "rspack_regex", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_copy" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d65af926c32578f929096378da32842b418cf045810bacb322619154529c0e3" +checksum = "b3a88dcd433bdc1feecd13046aaca1365e1dcd418fd6b955146f3a1a8c4dde93" dependencies = [ "dashmap 6.1.0", - "derive_more 2.0.1", + "derive_more", "futures", "glob", "pathdiff", @@ -4338,22 +3833,23 @@ dependencies = [ "rspack_hash", "rspack_hook", "rspack_paths", - "rustc-hash 2.1.1", + "rustc-hash", "sugar_path", "tracing", ] [[package]] name = "rspack_plugin_css" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fc5ad7568ef56e401c71551c5ae63d0c278d1e6dce5eb7f7a4ec2f623e5ef" +checksum = "60673f647d95862b12d0547c15f713b0b8b260e128563a1cf5c34562b43b137f" dependencies = [ "async-trait", + "atomic_refcell", "cow-utils", "css-module-lexer", - "heck 0.5.0", - "indexmap 2.10.0", + "heck", + "indexmap", "once_cell", "regex", "rspack_cacheable", @@ -4365,7 +3861,7 @@ dependencies = [ "rspack_hook", "rspack_plugin_runtime", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "tokio", "tracing", @@ -4374,11 +3870,11 @@ dependencies = [ [[package]] name = "rspack_plugin_css_chunking" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25e40ad8452f76f560bd339019d803975887293b8b065d6651d962086f33b27e" +checksum = "fb9b05cb57de7cfa55c584fc257ad65e77d08fe832e2727eb23af2c94bbc8a95" dependencies = [ - "indexmap 2.10.0", + "indexmap", "rspack_collections", "rspack_core", "rspack_error", @@ -4391,16 +3887,16 @@ dependencies = [ [[package]] name = "rspack_plugin_devtool" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daa8f054479e4aee040a971a4a3245c960aa8f4db1b2be109c04f81d99e5ef3c" +checksum = "825727d53bc77292acd0e1e90c95c6fb913011bd00e070707fcb46c61477fcce" dependencies = [ - "async-trait", "cow-utils", "dashmap 6.1.0", - "derive_more 2.0.1", + "derive_more", "futures", "itertools 0.14.0", + "memchr", "rayon", "regex", "rspack_base64", @@ -4412,7 +3908,7 @@ dependencies = [ "rspack_hook", "rspack_plugin_javascript", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "simd-json", "sugar_path", "tracing", @@ -4420,9 +3916,9 @@ dependencies = [ [[package]] name = "rspack_plugin_dll" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c8572996117fd53717614b693d16a3020fd80be6c34029cc9d9817400a8db7" +checksum = "90d86daea3db60c055cc43436ebf044a609038be2cba2963e5d9dd1b541bbb52" dependencies = [ "async-trait", "rspack_cacheable", @@ -4434,7 +3930,7 @@ dependencies = [ "rspack_paths", "rspack_plugin_externals", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "tracing", @@ -4442,12 +3938,11 @@ dependencies = [ [[package]] name = "rspack_plugin_dynamic_entry" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c1d773c40d13f48a4e9b3c239cd07d9fda7d904ca68a3ad85d7570791120111" +checksum = "bc1ea2063bc2f17b7c8ca5e5be4872abb80230aedfc500ee6b97dd91c3c90328" dependencies = [ - "async-trait", - "derive_more 2.0.1", + "derive_more", "futures", "rspack_core", "rspack_error", @@ -4458,24 +3953,23 @@ dependencies = [ [[package]] name = "rspack_plugin_ensure_chunk_conditions" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d06ec662650c7c4bc035640da49b6be382d4600820080cb296c961f51a4db61a" +checksum = "2d484e45e0de34273091a4fa19699e1a3adda6885953759226a9f0f893b7b93b" dependencies = [ "rspack_core", "rspack_error", "rspack_hook", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_entry" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a450edce29c3089383a77bff69dfdb3b40e1bc8e847b261e3a38ea5b1910b3d9" +checksum = "168f2f1e69cfac53059d0645cea336493205b86c2ba362f231cded298227d6c1" dependencies = [ - "async-trait", "rspack_core", "rspack_error", "rspack_hook", @@ -4484,9 +3978,9 @@ dependencies = [ [[package]] name = "rspack_plugin_externals" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63d24f995d1656413fbcea98882a1aff2adef5b2a81f8f98b6cde125ed8d05a2" +checksum = "c5612f54dcaa64c6a63a464e00b60a3a09b60c36fa80f6d671bc3160b5e8a8d0" dependencies = [ "regex", "rspack_core", @@ -4499,9 +3993,9 @@ dependencies = [ [[package]] name = "rspack_plugin_extract_css" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cffe5dc60ec7adfa8b28b13cbbe4ff4593685634c48cb1afc0ebe3a5317bacb" +checksum = "9ebe86adb70a510af20798dbc0e9435c286b53dd694c5a8690711a84d767a586" dependencies = [ "async-trait", "cow-utils", @@ -4516,7 +4010,7 @@ dependencies = [ "rspack_plugin_javascript", "rspack_plugin_runtime", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "tokio", @@ -4526,9 +4020,9 @@ dependencies = [ [[package]] name = "rspack_plugin_hmr" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0933a000985b927dda4588dac349b8a2850370dbb8478ac1f49014578120b68" +checksum = "83da3c8089e659a02913b0d98c02c3bbf73469fda1c706c11c07d7bb45fc5201" dependencies = [ "async-trait", "cow-utils", @@ -4541,7 +4035,7 @@ dependencies = [ "rspack_plugin_css", "rspack_plugin_javascript", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "tokio", "tracing", @@ -4549,11 +4043,12 @@ dependencies = [ [[package]] name = "rspack_plugin_html" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d8a04c11ab1b63df4a691f176b7dab71cfd6d1e64cea439ce0c35d3a417f57c" +checksum = "76f3c8ceb0476b5ca90235b244944007783dddef1980408d333de3f14fc048e9" dependencies = [ "anyhow", + "atomic_refcell", "cow-utils", "futures", "itertools 0.14.0", @@ -4573,18 +4068,17 @@ dependencies = [ "swc_core", "swc_html", "swc_html_minifier", - "tokio", "tracing", "urlencoding", ] [[package]] name = "rspack_plugin_ignore" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "def748adc05a7f546b0fc1202ab8434ea346aa656f05689438937f482ab29b54" +checksum = "d1c7d61767a309630890ef702444ed5a661cecfc304a90778863262c85aae09d" dependencies = [ - "derive_more 2.0.1", + "derive_more", "futures", "rspack_core", "rspack_error", @@ -4595,9 +4089,9 @@ dependencies = [ [[package]] name = "rspack_plugin_javascript" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22882ef84d7cadf876604364c6f46faad23806eb20c928538319e815f2c31515" +checksum = "9c180f77ba99f23cdeb40f526248281e8f35fd0f388dd014c8c254ef41d83c94" dependencies = [ "anymap3", "async-trait", @@ -4605,7 +4099,7 @@ dependencies = [ "cow-utils", "either", "fast-glob", - "indexmap 2.10.0", + "indexmap", "indoc", "itertools 0.14.0", "linked_hash_set", @@ -4627,22 +4121,22 @@ dependencies = [ "rspack_paths", "rspack_regex", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "sugar_path", "swc_core", - "swc_ecma_lexer", "swc_node_comments", "tokio", "tracing", "url", + "winnow", ] [[package]] name = "rspack_plugin_json" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6eb123c9ca7f053297e28a8015cb3c9e62d5c0fe916ac090cb9cf658d00bc1" +checksum = "4b9d386659bb3e50adf01fad33c30f0839009ba9f230b4c33be6b72ddd228081" dependencies = [ "async-trait", "cow-utils", @@ -4656,9 +4150,9 @@ dependencies = [ [[package]] name = "rspack_plugin_lazy_compilation" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4e26ac1f450c593d769f5c40486db3e0315f41553cef78e216e9ef3bb287619" +checksum = "6c840c1badbb07110ec055c1fdd1939240da3268302b3aa3655e65fe643ace0e" dependencies = [ "async-trait", "rspack_cacheable", @@ -4667,21 +4161,21 @@ dependencies = [ "rspack_error", "rspack_hash", "rspack_hook", + "rspack_paths", "rspack_plugin_javascript", "rspack_regex", "rspack_util", - "rustc-hash 2.1.1", + "serde_json", "tokio", "tracing", ] [[package]] name = "rspack_plugin_library" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16f4346dc6b86fd0b1446558fd2d0c314d729805dd0284caab0bfec82d2e0071" +checksum = "62afb658e619b96f2fce741bbc9d28aadf45fedcdcaf1fba522bb977d1333265" dependencies = [ - "async-trait", "futures", "regex", "rspack_cacheable", @@ -4691,7 +4185,7 @@ dependencies = [ "rspack_hash", "rspack_hook", "rspack_plugin_javascript", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "swc_core", "tracing", @@ -4699,9 +4193,9 @@ dependencies = [ [[package]] name = "rspack_plugin_lightning_css_minimizer" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05fefbfbface9e9061d079395975a7e5176bbc9ec84b15473f50517a8dd0908f" +checksum = "53b1753dcdc05e9f2041b58abb06c78aea951cff2cc4ddd7548e1a731a2faaa8" dependencies = [ "lightningcss", "parcel_sourcemap", @@ -4718,9 +4212,9 @@ dependencies = [ [[package]] name = "rspack_plugin_limit_chunk_count" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68c59553569d5b09b9b6af5fcf4081be2bf349b60972d0486c851f48da8367bc" +checksum = "9f63c0a5edbbcb8ca168d7a8bf9ac7bf34bf2d2b5b3ccb8c32aa9a8fd928bb09" dependencies = [ "rspack_collections", "rspack_core", @@ -4731,24 +4225,24 @@ dependencies = [ [[package]] name = "rspack_plugin_merge_duplicate_chunks" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3b06d9a2005acb0365889de02cdbdafdac26223de2f23c871bf4b87a4b5fa9c" +checksum = "a4ba72d625010957fb8bea5ddc5f6624377f4bbd14d1d8a71ac921999c858677" dependencies = [ "rayon", "rspack_collections", "rspack_core", "rspack_error", "rspack_hook", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_mf" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e23427d124b73db76279135cbcd77844d51aa3e0c279de5b86d184de7ed52e5b" +checksum = "34d1d548908dddef5297d3a39c894bedb3ad92a580659e3092a1d742902038f5" dependencies = [ "async-trait", "camino", @@ -4767,7 +4261,7 @@ dependencies = [ "rspack_plugin_runtime", "rspack_sources", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "tokio", @@ -4776,29 +4270,44 @@ dependencies = [ [[package]] name = "rspack_plugin_module_info_header" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ea0b39e78847936a9b77dfaebeb2778eacffe3ec5872aac38c82e9e0115bfb" +checksum = "d8f09f9b78a0a18b835c67f020900ae78791c7898ee9de4c234e1cdd68f64914" dependencies = [ - "async-trait", "regex", "rspack_cacheable", - "rspack_collections", "rspack_core", "rspack_error", "rspack_hash", "rspack_hook", "rspack_plugin_css", "rspack_plugin_javascript", - "rustc-hash 2.1.1", + "rustc-hash", + "tracing", +] + +[[package]] +name = "rspack_plugin_module_replacement" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4e8379cc0bfa97c3100e1846080cca632c44492dcdf26102788c685e03c39d9" +dependencies = [ + "derive_more", + "futures", + "rspack_core", + "rspack_error", + "rspack_hook", + "rspack_paths", + "rspack_regex", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_no_emit_on_errors" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08250c532394ba7398143df1d1640c0544ce29e8f6d78f81157b155a03b8658d" +checksum = "7458247eebf329d7009888a790ded3364a0648e060d904ffce8c8c80d348099c" dependencies = [ "rspack_core", "rspack_error", @@ -4808,11 +4317,10 @@ dependencies = [ [[package]] name = "rspack_plugin_progress" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f1b2e855c210a1494d34f5878a60325a2a02584ca13b482919cf27e5bf275d0" +checksum = "d5d4e48ab3a6ea0281bc2adfc8d48ab2a7308fa9de4dc0c2215c710ce1962bf9" dependencies = [ - "async-trait", "futures", "indicatif", "rspack_collections", @@ -4825,13 +4333,14 @@ dependencies = [ [[package]] name = "rspack_plugin_real_content_hash" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fd01f3322699b9565272cd8976893512dc3698b7577e4fab6c05d5b04e96669" +checksum = "369c20b9b0dc584e939e35bc694b09fe9cfc7a91c15c6cfd7163ba00f4746ba4" dependencies = [ "aho-corasick", - "derive_more 2.0.1", - "indexmap 2.10.0", + "atomic_refcell", + "derive_more", + "indexmap", "once_cell", "rayon", "regex", @@ -4841,29 +4350,28 @@ dependencies = [ "rspack_hash", "rspack_hook", "rspack_util", - "rustc-hash 2.1.1", - "tokio", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_remove_duplicate_modules" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "360bd1253932fe60932d49da5f81ddd95ec3c95f01891dd1a17d7c8253d847ad" +checksum = "89cca0ac9cd3725fcbea8ca42f45e5be8deec6150209ef05dba60270d87e2298" dependencies = [ "rspack_core", "rspack_error", "rspack_hook", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_remove_empty_chunks" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "060bfd3b260cb67390b439dfb2c3f28af5f7f20a88e1a2d573dfb3fdd913c8b8" +checksum = "347250501d74c683bc6a15868d1598315eaa086dea4a01f338486cc175159523" dependencies = [ "rspack_collections", "rspack_core", @@ -4874,47 +4382,47 @@ dependencies = [ [[package]] name = "rspack_plugin_rsdoctor" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0e88c24ce660fd8fc14c805605e875d65e3d031ea037a13141b930951cdc9d" +checksum = "3c6e76b4a83dbc0d96dc27be3a9fd6f5ec6eb5b991c944dc662c959f1eac013d" dependencies = [ - "async-trait", + "atomic_refcell", "futures", - "indexmap 2.10.0", + "indexmap", "rayon", "rspack_collections", "rspack_core", "rspack_error", "rspack_hook", "rspack_paths", + "rspack_plugin_devtool", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "tokio", "tracing", ] [[package]] name = "rspack_plugin_rslib" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08ec83bdf24e8144ecda0d82723f4a01ae2ba78e521581be1bee97f10fa4251" +checksum = "3245752f451efd3f9a444bf0a30aa01e974dde9677cbb2c4ca6c7da5ebf10b72" dependencies = [ - "async-trait", "rspack_core", "rspack_error", "rspack_hook", "rspack_plugin_javascript", + "rspack_plugin_library", "swc_core", "tracing", ] [[package]] name = "rspack_plugin_rstest" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40f57ebeae1c72bf423dc46afe1416c37678652f0539481162e9a5289aee6f1" +checksum = "ca9cd44e0caf73b765879e71fd23d291ca353fb0fc7a47808082584eba6ecb80" dependencies = [ - "async-trait", "camino", "regex", "rspack_cacheable", @@ -4929,15 +4437,16 @@ dependencies = [ [[package]] name = "rspack_plugin_runtime" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19cf7111cadae5f00a5ac3529c7c6445af2704a72924890fb0526beaf4552622" +checksum = "4a973936dfdb9487f3f0f958ff8743ce20f64faff50a2466ea992096e3b7ed6e" dependencies = [ "async-trait", + "atomic_refcell", "cow-utils", - "derive_more 2.0.1", + "derive_more", "futures", - "indexmap 2.10.0", + "indexmap", "itertools 0.14.0", "rspack_cacheable", "rspack_collections", @@ -4947,7 +4456,7 @@ dependencies = [ "rspack_hook", "rspack_plugin_javascript", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "tokio", "tracing", @@ -4955,9 +4464,9 @@ dependencies = [ [[package]] name = "rspack_plugin_runtime_chunk" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80ec602f46a848d3300fbbdeeb8e0de0a9a4f8acfd008fca3ca901cce59ab722" +checksum = "a474fb28cb96aebdfa031d9e495aef751f9c5cf174359e242c880482bc987633" dependencies = [ "futures", "rspack_core", @@ -4968,9 +4477,9 @@ dependencies = [ [[package]] name = "rspack_plugin_schemes" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bafb6aed15aea17f513a4521f0d6e9c4af6481bc923c35a6400226e252e1c9c6" +checksum = "2f5416ace0639a1f9f9dbacdd7aff45bfab4705f008161fd1b2300eea68a77eb" dependencies = [ "anyhow", "async-trait", @@ -4995,11 +4504,11 @@ dependencies = [ [[package]] name = "rspack_plugin_size_limits" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aede7128f5777dc8d974120619025fe16a673d47268f505b2aec560a12960cbe" +checksum = "b47b5f04dda4e289fc32d5f6c115dba13ebb77688501a51eb180f2cb215ff73e" dependencies = [ - "derive_more 2.0.1", + "derive_more", "futures", "rspack_core", "rspack_error", @@ -5011,13 +4520,14 @@ dependencies = [ [[package]] name = "rspack_plugin_split_chunks" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d2573038dda777c27c148aae0e4a3bfdf642ea80f4d989b957189aae96d521c" +checksum = "5a209ce65d84b5d2318372ec0f12198dcf83c619a3b574733902f0d772fca56c" dependencies = [ "dashmap 6.1.0", - "derive_more 2.0.1", + "derive_more", "futures", + "itertools 0.14.0", "rayon", "regex", "rspack_collections", @@ -5028,21 +4538,21 @@ dependencies = [ "rspack_hook", "rspack_regex", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_sri" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3953a1acf665a07487298496a6d35ab3d58a66db89dc10a077f8296d53ef37f1" +checksum = "c9f7dccccbf1eed0fae96ca02600ef3e1cf43c65cd80c7fd98991ea5aaec5943" dependencies = [ "async-trait", "cow-utils", - "derive_more 2.0.1", + "derive_more", "futures", - "indexmap 2.10.0", + "indexmap", "pathdiff", "rayon", "regex", @@ -5060,7 +4570,7 @@ dependencies = [ "rspack_plugin_real_content_hash", "rspack_plugin_runtime", "rspack_util", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "sha2", "tokio", @@ -5070,9 +4580,9 @@ dependencies = [ [[package]] name = "rspack_plugin_swc_js_minimizer" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bd7ff5d41a967644052c535043f822c2de4bc20c91e61ef8d938ef98b7811d5" +checksum = "f23ad310a83af9295876c1fcd08b72e2b4b1d202382e9cc349be1565be5f1b75" dependencies = [ "cow-utils", "once_cell", @@ -5094,29 +4604,29 @@ dependencies = [ [[package]] name = "rspack_plugin_warn_sensitive_module" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9926ccfe270ca833ecef0b062b9b592d098c6602faad9060880362dd0100ac45" +checksum = "490548771888cb6217c0b757499478ac110d8c84b0f92abc9d752b7d3b1200d3" dependencies = [ "cow-utils", "rspack_collections", "rspack_core", "rspack_error", "rspack_hook", - "rustc-hash 2.1.1", + "rustc-hash", "tracing", ] [[package]] name = "rspack_plugin_wasm" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5a8c9db4673d601749270a6323b134b2c416806b4ead66cd955bfbb61e88812" +checksum = "9265512680f3099b048ec07caa232c9b37db71283e4f3017035ff24e14c91399" dependencies = [ "async-trait", "cow-utils", "dashmap 6.1.0", - "indexmap 2.10.0", + "indexmap", "rayon", "rspack_cacheable", "rspack_collections", @@ -5134,9 +4644,9 @@ dependencies = [ [[package]] name = "rspack_plugin_web_worker_template" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003a3077366d67ccd01fc421fe02498be42737316b2052c64f6e38b27c543151" +checksum = "6e70d77de4917c45401c38e8c4052f2e6e5217089a5154bc8fa656c10f3341fb" dependencies = [ "rspack_core", "rspack_plugin_runtime", @@ -5144,9 +4654,9 @@ dependencies = [ [[package]] name = "rspack_plugin_worker" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e665887c53162a7f4e3396cfd37043af9345e73373cc53eb5d7b762ced43dad0" +checksum = "0184ede835d2d1b26414cc40f4da28d016318036fc6e19700de16ed69d52ab6d" dependencies = [ "rspack_core", "rspack_error", @@ -5156,9 +4666,9 @@ dependencies = [ [[package]] name = "rspack_regex" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9bd7d94039f3d32101584f89dbca0c8d8109f57afbd4dc1e5c7666c3a65f417" +checksum = "5a7a15965d97394f94285c8c535b8cb39dceb34f8341ce02a149a722402fa153" dependencies = [ "cow-utils", "napi", @@ -5180,10 +4690,10 @@ dependencies = [ "dashmap 6.1.0", "dunce", "futures", - "indexmap 2.10.0", + "indexmap", "json-strip-comments", - "pnp 0.12.2", - "rustc-hash 2.1.1", + "pnp", + "rustc-hash", "serde", "serde_json", "thiserror 1.0.69", @@ -5201,7 +4711,7 @@ dependencies = [ "dyn-clone", "itertools 0.13.0", "memchr", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "simd-json", @@ -5210,9 +4720,9 @@ dependencies = [ [[package]] name = "rspack_storage" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2243f9e5c79d478112d80c4bb15e8708dc7376ad3056fc8e0ab4ac9c58564308" +checksum = "a9350c0404dee89b62436d8c884e9b15688d98d975bbd210aacc851211e68586" dependencies = [ "async-trait", "cow-utils", @@ -5222,49 +4732,49 @@ dependencies = [ "rspack_error", "rspack_fs", "rspack_paths", - "rustc-hash 2.1.1", + "rustc-hash", "tokio", "tracing", ] [[package]] name = "rspack_swc_plugin_import" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c9a6e8aa861bdfcc5ed00086a25ba0499a5814bb4bb1c0db297c8d23498e26" +checksum = "2c2dce4de2077c53db37f625bcd5c0ea3463b50627db46eab4b27db9c5977c0c" dependencies = [ "cow-utils", "handlebars", - "heck 0.5.0", - "rustc-hash 2.1.1", + "heck", + "rustc-hash", "serde", "swc_core", ] [[package]] name = "rspack_swc_plugin_ts_collector" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fa569cda9035b5de068a33c4070b4a81d711ab6e92a5cf04a245b16008feaa7" +checksum = "c4a5a084abe851ed96c8150178db67e5310118c76480b08c9c673bb204f72ccf" dependencies = [ - "rustc-hash 2.1.1", + "rustc-hash", "swc_core", ] [[package]] name = "rspack_tasks" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9bf0103222ffa867b45465389e28d99e4ddd6351f75d49fde369c0e3ab99780" +checksum = "d052b079f781f49fbb8fa82692fdb64165b976987bf8fbd1d5c839ed1062fab1" dependencies = [ "tokio", ] [[package]] name = "rspack_tracing" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff9c3eebbdb4f5494de9bc9d1f7b17798036b4182d419a6c991bd7efb1c5a04b" +checksum = "50e91233982ce931e455ebd2ee6008adc621a79e69724f3ceb9370cbf15c7426" dependencies = [ "rspack_tracing_perfetto", "tracing-subscriber", @@ -5272,9 +4782,9 @@ dependencies = [ [[package]] name = "rspack_tracing_perfetto" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183a71dfe2f4c2fed1a0423a1f47211fac93ede244b22116cd456e86389e2261" +checksum = "ff116318445f15376448a5bc19ebc7aa7c8ea4a9eaccce4d062862ac1b1ff93d" dependencies = [ "bytes", "micromegas-perfetto", @@ -5285,35 +4795,41 @@ dependencies = [ [[package]] name = "rspack_util" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaeb4c610f914bbc8fa8fd0a0eac9004aae025b4e2e7ce2d21e3f90e97802a96" +checksum = "d5781120e913abbcdd06139d8ce56f04f0ad65c418cb4e8f7ebe10661159391e" dependencies = [ + "anyhow", "bitflags 2.9.1", "concat-string", "cow-utils", "dashmap 6.1.0", - "indexmap 2.10.0", + "indexmap", "itoa", + "once_cell", "regex", "ropey", "rspack_cacheable", "rspack_paths", "rspack_regex", - "rustc-hash 2.1.1", + "rustc-hash", + "ryu-js", "serde", "serde_json", "sugar_path", "swc_config", "swc_core", + "swc_plugin_runner", "unicase", + "wasi-common", + "wasmtime", ] [[package]] name = "rspack_workspace" -version = "0.4.10" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1982fd2c5f81ad7d2a73eb58c3db28cb32e39c0c3094cfd11d7c335d8ca130fb" +checksum = "2e601a80cfcfb611797d42db40c64575c67a50355d2f9ad2dff95e38c6bcc876" [[package]] name = "rustc-demangle" @@ -5321,12 +4837,6 @@ version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - [[package]] name = "rustc-hash" version = "2.1.1" @@ -5360,34 +4870,20 @@ dependencies = [ ] [[package]] -name = "rustversion" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" - -[[package]] -name = "rusty_pool" -version = "0.7.0" +name = "rustix-linux-procfs" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ed36cdb20de66d89a17ea04b8883fc7a386f2cf877aaedca5005583ce4876ff" +checksum = "2fc84bf7e9aa16c4f2c758f27412dc9841341e16aa682d9c7ac308fe3ee12056" dependencies = [ - "crossbeam-channel", - "futures", - "futures-channel", - "futures-executor", - "num_cpus", + "once_cell", + "rustix 1.0.7", ] [[package]] -name = "ruzstd" -version = "0.5.0" +name = "rustversion" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c4eb8a81997cf040a091d1f7e1938aeab6749d3a0dfa73af43cdc32393483d" -dependencies = [ - "byteorder", - "derive_more 0.99.20", - "twox-hash 1.6.3", -] +checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" [[package]] name = "ryu" @@ -5401,16 +4897,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15" -[[package]] -name = "saffron" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03fb9a628596fc7590eb7edbf7b0613287be78df107f5f97b118aad59fb2eea9" -dependencies = [ - "chrono", - "nom 5.1.3", -] - [[package]] name = "same-file" version = "1.0.6" @@ -5420,56 +4906,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "schemars" -version = "0.8.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" -dependencies = [ - "dyn-clone", - "indexmap 2.10.0", - "schemars_derive", - "serde", - "serde_json", - "url", -] - -[[package]] -name = "schemars" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "schemars" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "schemars_derive" -version = "0.8.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals", - "syn 2.0.104", -] - [[package]] name = "scoped-tls" version = "1.0.1" @@ -5488,12 +4924,6 @@ version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" -[[package]] -name = "self_cell" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749" - [[package]] name = "semver" version = "1.0.26" @@ -5511,40 +4941,28 @@ checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" [[package]] name = "serde" -version = "1.0.219" +version = "1.0.225" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d" dependencies = [ + "serde_core", "serde_derive", ] [[package]] -name = "serde-wasm-bindgen" -version = "0.6.5" +name = "serde_core" +version = "1.0.225" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" +checksum = "659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383" dependencies = [ - "js-sys", - "serde", - "wasm-bindgen", + "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "serde_derive_internals" -version = "0.29.1" +version = "1.0.225" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516" dependencies = [ "proc-macro2", "quote", @@ -5557,67 +4975,11 @@ version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ - "indexmap 2.10.0", - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_spanned" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_with" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" -dependencies = [ - "base64", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.10.0", - "schemars 0.9.0", - "schemars 1.0.4", - "serde", - "serde_derive", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" -dependencies = [ - "darling 0.20.11", - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "serde_yml" -version = "0.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59e2dd588bf1597a252c3b920e0143eb99b0f76e4e082f4c92ce34fbc9e71ddd" -dependencies = [ - "indexmap 2.10.0", + "indexmap", "itoa", - "libyml", "memchr", "ryu", "serde", - "version_check", ] [[package]] @@ -5651,16 +5013,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "shared-buffer" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6c99835bad52957e7aa241d3975ed17c1e5f8c92026377d117a606f36b84b16" -dependencies = [ - "bytes", - "memmap2", -] - [[package]] name = "shlex" version = "1.3.0" @@ -5697,12 +5049,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" -[[package]] -name = "similar" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" - [[package]] name = "siphasher" version = "0.3.11" @@ -5721,12 +5067,6 @@ version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" -[[package]] -name = "slice-group-by" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" - [[package]] name = "smallvec" version = "1.15.1" @@ -5753,17 +5093,6 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d" -[[package]] -name = "smoltcp" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee34c1e1bfc7e9206cc0fb8030a90129b4e319ab53856249bb27642cab914fb3" -dependencies = [ - "bitflags 1.3.2", - "byteorder", - "managed", -] - [[package]] name = "st-map" version = "0.2.4" @@ -5810,7 +5139,7 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6635404b73efc136af3a7956e53c53d4f34b2f16c95a15c438929add0f69412" dependencies = [ - "indexmap 2.10.0", + "indexmap", "smallvec", "static-self-derive", ] @@ -5849,12 +5178,6 @@ dependencies = [ "syn 2.0.104", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strsim" version = "0.11.1" @@ -5890,23 +5213,23 @@ checksum = "b7401a30af6cb5818bb64852270bb722533397edcfc7344954a38f420819ece2" [[package]] name = "swc" -version = "32.0.1" +version = "38.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0311ddcb8726567da5e22e919b546cd61e385803f6212a0eaf759cc7757368a" +checksum = "ab9c00873d50c358e53e06d917bc67af9f533c6db03890992336672a70af8393" dependencies = [ "anyhow", "base64", "bytes-str", "dashmap 5.5.3", "either", - "indexmap 2.10.0", + "indexmap", "jsonc-parser", "once_cell", "par-core", "par-iter", "parking_lot", "regex", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -5948,7 +5271,7 @@ dependencies = [ "allocator-api2", "bumpalo", "hashbrown 0.14.5", - "rustc-hash 2.1.1", + "rustc-hash", ] [[package]] @@ -5967,9 +5290,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "14.0.2" +version = "14.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7e510ae120281a9daee0b9246b6740b509b99bd78f88b2a7210c87ec78572a7" +checksum = "c2bb772b3a26b8b71d4e8c112ced5b5867be2266364b58517407a270328a2696" dependencies = [ "anyhow", "ast_node", @@ -5984,7 +5307,7 @@ dependencies = [ "parking_lot", "rancor", "rkyv 0.8.8", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "siphasher 0.3.11", "swc_atoms", @@ -5998,16 +5321,16 @@ dependencies = [ [[package]] name = "swc_compiler_base" -version = "29.0.1" +version = "34.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75f24bb94005654b388f6090e14d54e90b3cf7af4bf130bf7656d72dc5e7ba12" +checksum = "1099ada4b7524c4f6f7cc0c6db24d81f8dfd3163b64dd2b1015437c673057645" dependencies = [ "anyhow", "base64", "bytes-str", "once_cell", "pathdiff", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -6032,11 +5355,11 @@ dependencies = [ "bytes-str", "dashmap 5.5.3", "globset", - "indexmap 2.10.0", + "indexmap", "once_cell", "regex", "regress", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_config_macro", @@ -6057,9 +5380,9 @@ dependencies = [ [[package]] name = "swc_core" -version = "33.0.7" +version = "39.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61b42861aa730e028c7abb7d42b53b32e4c98f131cec2c590c7f13e60d7d5d82" +checksum = "56ad087b00477b9d310b5ebfa26acb867be338765558632597976ee56c898b63" dependencies = [ "par-core", "swc", @@ -6086,9 +5409,9 @@ dependencies = [ [[package]] name = "swc_ecma_ast" -version = "14.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d8d26e697ce58654f0816890af7a28efd8660c154b613acefa2d3727e8ec93" +checksum = "65c25af97d53cf8aab66a6c68f3418663313fc969ad267fc2a4d19402c329be1" dependencies = [ "bitflags 2.9.1", "bytecheck 0.8.1", @@ -6098,7 +5421,7 @@ dependencies = [ "phf", "rancor", "rkyv 0.8.8", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "string_enum", "swc_atoms", @@ -6109,9 +5432,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b3a46868f249b86a74f91774c8faf12340abb86ba7c3ff152bdc7a8f94011b6" +checksum = "bcf55c2d7555c93f4945e29f93b7529562be97ba16e60dd94c25724d746174ac" dependencies = [ "ascii", "compact_str", @@ -6119,7 +5442,7 @@ dependencies = [ "num-bigint", "once_cell", "regex", - "rustc-hash 2.1.1", + "rustc-hash", "ryu-js", "serde", "swc_allocator", @@ -6144,11 +5467,11 @@ dependencies = [ [[package]] name = "swc_ecma_compat_bugfixes" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "633805babcc2a3f0ce3496867b6cffb01bc11a2d53d55b573b207fb94b3299bf" +checksum = "825195e1c14e3e3b78823e51af52ed192e9d52ccb94a81f0449ac48e6cdd1ba2" dependencies = [ - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -6162,9 +5485,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_common" -version = "19.0.0" +version = "21.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f573f45c9756d0b40788bcf4456ffdd8432785f57a5b9c24bcc2c93078f3280d" +checksum = "2949ac4924597be747348639eadedf8e54818fb26641f050d3d78361b15d1e0d" dependencies = [ "swc_common", "swc_ecma_ast", @@ -6174,14 +5497,14 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2015" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "821b58933011407cbc401ff065d1d834cefee9080a2ea4ae0197acac837d8f4f" +checksum = "ec81d1c9807d6aaa75f9eee66a27aaa61d7dabc97b12474bbec55609c63d8f38" dependencies = [ "arrayvec", - "indexmap 2.10.0", + "indexmap", "is-macro", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_derive", "smallvec", @@ -6201,9 +5524,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2016" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c4d770d806f9aa57790f8ff74afe69c3096d38f1605d976ce2d2ab48170003b" +checksum = "26d08be3aaea9e0cb603a00b958f78c6149ce6fc98d0d9622935821a8dd2a99b" dependencies = [ "swc_common", "swc_ecma_ast", @@ -6217,9 +5540,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2017" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d063bbdac4a41d086fb325c2fd8b95255d903593b27f3014f8aac1f2671728d7" +checksum = "1b68fc5c6237cdb8bb450672443cd640c2acbc84edc3d097349db33de0051668" dependencies = [ "serde", "swc_common", @@ -6233,9 +5556,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2018" -version = "22.0.1" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ebb25802340f4aecdc7a62abdc2ed9228013aa53f3708c35ee63cb97ff42d6b" +checksum = "0de471037ff0e178a678a852d232206049578dab258b4e4abc57a677f2d8322d" dependencies = [ "serde", "swc_common", @@ -6251,9 +5574,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2019" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e757495ff2196e431882e6e82ae912a5d56fbe34c803a2352d23bda8e9c6d61" +checksum = "9e5cc26969456801ee879a9b79d69b82ddf3ac8ecd0c601d9960f867d3f91a7c" dependencies = [ "swc_common", "swc_ecma_ast", @@ -6266,26 +5589,26 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2020" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b27c49b94cf71d353452f3cfe6b89726013d2eb3d156912e7da80a4e4724158" +checksum = "6ffd86caa05bc410105d05afe0c2fda17cb85ccba82d08fa72250d686a1ad4a3" dependencies = [ "serde", - "swc_atoms", "swc_common", "swc_ecma_ast", "swc_ecma_compat_es2022", + "swc_ecma_compiler", + "swc_ecma_transforms_base", "swc_ecma_utils", "swc_ecma_visit", - "swc_trace_macro", "tracing", ] [[package]] name = "swc_ecma_compat_es2021" -version = "22.0.1" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a338aaf9fe353b736868cde2b820bbfb642d5cbbed83534c2dbf9487bca7ad70" +checksum = "41b9c2e5183b794675e84c0543fe62a3ec3353bf461dd5b1a0e9396c1ef85101" dependencies = [ "swc_ecma_ast", "swc_ecma_compiler", @@ -6296,11 +5619,11 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es2022" -version = "23.0.1" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39f5d4599882a0de78d399437af341e5ff3641ac91ac7a87b2394f794ea15c17" +checksum = "251f6791226538ac992067316e108b49c90e241e7eb33bc5632d6b0d08c20fd8" dependencies = [ - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -6317,9 +5640,9 @@ dependencies = [ [[package]] name = "swc_ecma_compat_es3" -version = "20.0.0" +version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5ea46821c0b5c8f8f55935b21957fbb4668a12f5101a28ed8038ef1ccf05b8e" +checksum = "248256b4708793bc05ddd67a3e5f5096fcb10349ffb147697bddd368311928f3" dependencies = [ "swc_common", "swc_ecma_ast", @@ -6331,15 +5654,16 @@ dependencies = [ [[package]] name = "swc_ecma_compiler" -version = "0.1.2" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0928edc46514760ce655c3b7f28dba9b1e6406490d36a52df00d91a6c643d880" +checksum = "d2e2c5abb053281fa1dd99f4ce1e4c062bb18fed4cc24a2eada80d4160212e28" dependencies = [ "bitflags 2.9.1", - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_ecma_ast", + "swc_ecma_transforms_base", "swc_ecma_utils", "swc_ecma_visit", "swc_trace_macro", @@ -6348,9 +5672,9 @@ dependencies = [ [[package]] name = "swc_ecma_ext_transforms" -version = "19.0.0" +version = "21.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2f85f84aa5b1116bac920f548be87b7c45d936002ca2654c455a148751826be" +checksum = "bf730dc1404ebc2fc6ccbb9e0aa5f25b3a89bd477f8ca79d4fe8257eb0c87742" dependencies = [ "phf", "swc_common", @@ -6361,17 +5685,16 @@ dependencies = [ [[package]] name = "swc_ecma_lexer" -version = "21.0.1" +version = "23.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5606f09fead1e1824ae7a7129b6fa376b20d5e811b822d9ba7bd3b05ef3bb024" +checksum = "67c3bd958a5a67e2cc3f74abdd41fda688e54e7a25b866569260ef7018b67972" dependencies = [ "arrayvec", "bitflags 2.9.1", "either", - "new_debug_unreachable", "num-bigint", "phf", - "rustc-hash 2.1.1", + "rustc-hash", "seq-macro", "serde", "smallvec", @@ -6397,7 +5720,7 @@ dependencies = [ "parking_lot", "path-clean 0.1.0", "pathdiff", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -6407,13 +5730,13 @@ dependencies = [ [[package]] name = "swc_ecma_minifier" -version = "27.0.4" +version = "32.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7bbd82682a05972b9333ba4842d6153da88acab73280b13f516c74d7e87d090" +checksum = "542307ff72ff381de86b815f1cceb69f6a98ee683b0635658a8ce1e07baaa703" dependencies = [ "arrayvec", "bitflags 2.9.1", - "indexmap 2.10.0", + "indexmap", "num-bigint", "num_cpus", "once_cell", @@ -6422,7 +5745,7 @@ dependencies = [ "parking_lot", "phf", "radix_fmt", - "rustc-hash 2.1.1", + "rustc-hash", "ryu-js", "serde", "serde_json", @@ -6443,9 +5766,9 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "21.0.1" +version = "24.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "482bce3a5a199befa9420e2b094fd7fb4e1d9d71a02f0ee1bf24e610ad066311" +checksum = "e8079e65c43d8f3e64e791321355f5864322425fce3a3ab7fc959bbddb531933" dependencies = [ "either", "num-bigint", @@ -6459,23 +5782,24 @@ dependencies = [ [[package]] name = "swc_ecma_preset_env" -version = "27.0.0" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "994b30cf27c462a26f3a4876cc586aac0d304ea0c6d77e7d28eecf2c1d7b5b10" +checksum = "f6c425f34110310018f20d53fff5da82da30710b1719b3c24bad87a878a77586" dependencies = [ "anyhow", "foldhash", - "indexmap 2.10.0", + "indexmap", "once_cell", "precomputed-map", "preset_env_base", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "string_enum", "swc_atoms", "swc_common", "swc_ecma_ast", + "swc_ecma_compiler", "swc_ecma_transforms", "swc_ecma_utils", "swc_ecma_visit", @@ -6483,14 +5807,14 @@ dependencies = [ [[package]] name = "swc_ecma_quote_macros" -version = "21.0.1" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a77d5e2977534efaa91d395b049dcc4c33eadb3d95e61a679d74ded598b862a" +checksum = "1c8c018ebafab9285b7e3dfd757f28c40345e2dfade4566cf3cd3da81fbd2963" dependencies = [ "anyhow", "proc-macro2", "quote", - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -6501,9 +5825,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms" -version = "26.0.0" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e301b8059d199363c2daea42923e375123180e16a3442cf328c958e8be6a758" +checksum = "ba40c41079f3e65553a693ff58abce6e90addfb99d8b2b12f7facaa9406db29b" dependencies = [ "par-core", "swc_common", @@ -6520,17 +5844,17 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "22.0.1" +version = "26.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb04f42a6761960e818d85b7b47204422541c83955ea6f38751b23745bbf291" +checksum = "a0526b4e3d6cedb7e48c5026242809387676f836d4251235fa95165218bb8ce4" dependencies = [ "better_scoped_tls", - "indexmap 2.10.0", + "indexmap", "once_cell", "par-core", "par-iter", "phf", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "swc_atoms", "swc_common", @@ -6543,9 +5867,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_classes" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cba423851a99e8583995ed5cbeb704103540c0e60bde654eb07749e1a9b8dc2" +checksum = "7ad4c8c59a000e0bd587f94afb51eb9caad6a42d07f41b75c56d8bf6276e1bae" dependencies = [ "swc_common", "swc_ecma_ast", @@ -6556,11 +5880,11 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_compat" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3863a98e3b91419fe5b17beb14cd5673b2cc9024a4f14a8b833f5dd30239630f" +checksum = "f4eeb14f20ca165416ca09afdb83376c077b113a5bad37100d2d5626ab657456" dependencies = [ - "indexmap 2.10.0", + "indexmap", "par-core", "serde", "swc_atoms", @@ -6597,19 +5921,19 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_module" -version = "24.0.1" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ca8f0bdb97c7749d8d4f79ddf53cb43cfe15e358416f75352c218a1695d012" +checksum = "ea2b562a6db48b8ce932d54227ceab243137eb5220e0455937b1032b947b4cda" dependencies = [ "Inflector", "anyhow", "bitflags 2.9.1", - "indexmap 2.10.0", + "indexmap", "is-macro", "path-clean 1.0.1", "pathdiff", "regex", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "swc_atoms", "swc_common", @@ -6625,17 +5949,17 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_optimization" -version = "23.0.1" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68bd07e1d548d2a7c7e798b858432aa6f714a6691f69bb6bb0d585609241e57a" +checksum = "8ecb86ae16f150aa4fbc46bd37d6cce44612af59861afa987ab3053f17d343b1" dependencies = [ "bytes-str", "dashmap 5.5.3", - "indexmap 2.10.0", + "indexmap", "once_cell", "par-core", "petgraph", - "rustc-hash 2.1.1", + "rustc-hash", "serde_json", "swc_atoms", "swc_common", @@ -6649,12 +5973,12 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_proposal" -version = "22.0.1" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64239d3aa4795c9656e40775e85b7926698ef2bf73c85e72da953d25e916b0fc" +checksum = "b7cd9f54f3e7b3efb0e30e80f9efeaf99cd4d66ff0b83fda6dcfcbc0e293a767" dependencies = [ "either", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "swc_atoms", "swc_common", @@ -6667,15 +5991,15 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_react" -version = "24.0.1" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fc8e7810dc246c3ee54323719cce2ed8104ebdccd25456315bc2189e885e64f" +checksum = "3c9939e0a5a23529b63ac87d7a9981dba7f7021b7cb64ecf9039f3dfb0abb48c" dependencies = [ "base64", "bytes-str", - "indexmap 2.10.0", + "indexmap", "once_cell", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "sha1", "string_enum", @@ -6691,12 +6015,12 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_typescript" -version = "24.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81b3d8a18fbc3182849a84a126afa20c033f8e9dd6bc804fbb17c2180d5e658e" +checksum = "52079079848d95fdfe3634d06b40bdb47865ffbedd9b3c2cf63a8d91dec5eebf" dependencies = [ "bytes-str", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "swc_atoms", "swc_common", @@ -6709,13 +6033,13 @@ dependencies = [ [[package]] name = "swc_ecma_usage_analyzer" -version = "20.0.0" +version = "22.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437f5e07a880092bd50a599faa15f7f4a28cc017d7702dea46eb60d321430ad" +checksum = "8031a4473e5366165f23766f5bc8361c45e8ed57f7475c0227147727cbaf3342" dependencies = [ "bitflags 2.9.1", - "indexmap 2.10.0", - "rustc-hash 2.1.1", + "indexmap", + "rustc-hash", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -6727,15 +6051,15 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "19.0.0" +version = "21.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b34cc429270ae5d908574f3cf531fcb9dc52d43f689c5e8ca9598ebc117a32" +checksum = "83259addd99ed4022aa9fc4d39428c008d3d42533769e1a005529da18cde4568" dependencies = [ - "indexmap 2.10.0", + "indexmap", "num_cpus", "once_cell", "par-core", - "rustc-hash 2.1.1", + "rustc-hash", "ryu-js", "swc_atoms", "swc_common", @@ -6746,9 +6070,9 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "14.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d187b3440f20dac5d5a61aaedff585aefac9c75c1a6650abb7f25936a4f0e67" +checksum = "75a579aa8f9e212af521588df720ccead079c09fe5c8f61007cf724324aed3a0" dependencies = [ "new_debug_unreachable", "num-bigint", @@ -6785,9 +6109,9 @@ dependencies = [ [[package]] name = "swc_html" -version = "25.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6a6d6e639f33de93b0e4c103f688db5379b9a126b4dcf06f550f67bbc3eeec" +checksum = "45354ce2319a8f8585d18bf2590b93876b962507316d7118244ae7d9ca517244" dependencies = [ "swc_html_ast", "swc_html_codegen", @@ -6809,13 +6133,13 @@ dependencies = [ [[package]] name = "swc_html_codegen" -version = "14.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4eb8fc6c275fb77887f35b28ef7db5b94843d4991a28ed2b488f884bf21ea4f" +checksum = "d321188cc1279f9981681aadb77b877fc662e83a8841903f51bd501b40ab5c31" dependencies = [ "auto_impl", "bitflags 2.9.1", - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_html_ast", @@ -6835,12 +6159,12 @@ dependencies = [ [[package]] name = "swc_html_minifier" -version = "27.0.1" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1693dd498224866cd627387a4aff03ec74431f0eaf8479a6ef6d1912b1869ba" +checksum = "3a6b428da779398d39b57ad1e11c2ef4ac6747edd37c52b6dfe50105e6a16616" dependencies = [ "once_cell", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -6865,7 +6189,7 @@ version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ca81cb496fb3aa9457073f9a4c4f0a767cd0c4ea567353b9524a8365cd257bd" dependencies = [ - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", "swc_html_ast", @@ -6879,7 +6203,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de231a2c4d35e68dc8df22a96445b1750737fabac1daac3021c7eca35c9a42b1" dependencies = [ "once_cell", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -6916,22 +6240,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6bf07db306bc7e19b8fc46702e8298419d12f587bd4724858bc9889fef8f3e72" dependencies = [ "dashmap 5.5.3", - "rustc-hash 2.1.1", + "rustc-hash", "swc_atoms", "swc_common", ] [[package]] name = "swc_plugin_proxy" -version = "14.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb61022f33eb711aa1644788a76b854a795e0de89c38af3c7cd6071da34bbb58" +checksum = "79e78029030baf942203f11eae0ea47c07367d167060ba4c55a202a1341366c5" dependencies = [ "better_scoped_tls", "bytecheck 0.8.1", "rancor", "rkyv 0.8.8", - "rustc-hash 2.1.1", + "rustc-hash", "swc_common", "swc_ecma_ast", "swc_trace_macro", @@ -6940,15 +6264,14 @@ dependencies = [ [[package]] name = "swc_plugin_runner" -version = "17.0.0" +version = "19.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8adca7d5808e574f53bfbe2ee149056c1dffbbd56bdce1d9bbdaa411673856c6" +checksum = "e4b41ddf0ac2c0386802ca7646c8ae77bbdbe65ba32d33da0f3bf9e82430abc2" dependencies = [ "anyhow", - "enumset", - "futures", + "blake3", "parking_lot", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "swc_atoms", @@ -6956,13 +6279,8 @@ dependencies = [ "swc_ecma_ast", "swc_plugin_proxy", "swc_transform_common", - "tokio", "tracing", "vergen", - "wasmer", - "wasmer-cache", - "wasmer-compiler-cranelift", - "wasmer-wasix", ] [[package]] @@ -6977,7 +6295,7 @@ dependencies = [ "data-encoding", "debugid", "if_chain", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde_json", "unicode-id-start", @@ -7010,7 +6328,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca33f282df60eefee05511c9aaf557696d2f9f0e22f4a5abca318da10c22f1cc" dependencies = [ "better_scoped_tls", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "swc_common", ] @@ -7059,40 +6377,32 @@ dependencies = [ ] [[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tar" -version = "0.4.44" +name = "system-interface" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" +checksum = "cc4592f674ce18521c2a81483873a49596655b179f71c5e05d10c1fe66c78745" dependencies = [ - "filetime", - "libc", - "xattr", + "bitflags 2.9.1", + "cap-fs-ext", + "cap-std", + "fd-lock", + "io-lifetimes", + "rustix 0.38.44", + "windows-sys 0.59.0", + "winx", ] [[package]] -name = "target-lexicon" -version = "0.12.16" +name = "tap" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] -name = "tempfile" -version = "3.20.0" +name = "target-lexicon" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" -dependencies = [ - "fastrand", - "getrandom 0.3.3", - "once_cell", - "rustix 1.0.7", - "windows-sys 0.59.0", -] +checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c" [[package]] name = "termcolor" @@ -7103,16 +6413,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "terminal_size" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" -dependencies = [ - "rustix 0.38.44", - "windows-sys 0.48.0", -] - [[package]] name = "terminal_size" version = "0.4.2" @@ -7124,19 +6424,10 @@ dependencies = [ ] [[package]] -name = "termios" -version = "0.3.3" +name = "textwrap" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b" -dependencies = [ - "libc", -] - -[[package]] -name = "textwrap" -version = "0.16.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" +checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" dependencies = [ "unicode-linebreak", "unicode-width 0.2.1", @@ -7256,7 +6547,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17" dependencies = [ "backtrace", - "bytes", "io-uring", "libc", "mio", @@ -7278,73 +6568,6 @@ dependencies = [ "syn 2.0.104", ] -[[package]] -name = "tokio-stream" -version = "0.1.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", - "tokio-util", -] - -[[package]] -name = "tokio-util" -version = "0.7.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "toml" -version = "0.8.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" -dependencies = [ - "indexmap 2.10.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - -[[package]] -name = "toml_datetime" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_edit" -version = "0.22.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" -dependencies = [ - "indexmap 2.10.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_write", - "winnow", -] - -[[package]] -name = "toml_write" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" - [[package]] name = "tracing" version = "0.1.41" @@ -7419,22 +6642,6 @@ dependencies = [ name = "turbo-unix-path" version = "0.0.1" -[[package]] -name = "twox-hash" -version = "1.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" -dependencies = [ - "cfg-if", - "static_assertions", -] - -[[package]] -name = "twox-hash" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b907da542cbced5261bd3256de1b3a1bf340a3d37f93425a07362a1d687de56" - [[package]] name = "typenum" version = "1.18.0" @@ -7471,15 +6678,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" -[[package]] -name = "unicode-normalization" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] - [[package]] name = "unicode-segmentation" version = "1.12.0" @@ -7513,7 +6711,6 @@ dependencies = [ "form_urlencoded", "idna", "percent-encoding", - "serde", ] [[package]] @@ -7531,7 +6728,7 @@ dependencies = [ "byteorder", "lazy_static", "parking_lot", - "rustc-hash 2.1.1", + "rustc-hash", "serde", ] @@ -7583,7 +6780,7 @@ checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777" dependencies = [ "anyhow", "cargo_metadata", - "derive_builder 0.20.2", + "derive_builder", "regex", "rustversion", "time", @@ -7597,7 +6794,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" dependencies = [ "anyhow", - "derive_builder 0.20.2", + "derive_builder", "rustversion", ] @@ -7607,75 +6804,6 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" -[[package]] -name = "virtual-fs" -version = "0.601.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f92037e6dbdd2bb77fca33dbb8bb9f490ecfd88c236c9aefefa2f047285938" -dependencies = [ - "anyhow", - "async-trait", - "bytes", - "dashmap 6.1.0", - "derive_more 2.0.1", - "dunce", - "filetime", - "fs_extra", - "futures", - "getrandom 0.2.16", - "indexmap 2.10.0", - "libc", - "pin-project-lite", - "replace_with", - "shared-buffer", - "slab", - "thiserror 1.0.69", - "tokio", - "tracing", - "wasmer-package", - "webc", -] - -[[package]] -name = "virtual-mio" -version = "0.601.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b503138c2d32137c8c1049a8043d75628ee29b8f467eabc6023886ae76f15a" -dependencies = [ - "async-trait", - "bytes", - "futures", - "serde", - "thiserror 1.0.69", - "tracing", -] - -[[package]] -name = "virtual-net" -version = "0.601.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea9b5162d7c9f2bef643370e711ec7fa04e7804098edd3f95117115aa9068320" -dependencies = [ - "anyhow", - "async-trait", - "base64", - "bincode", - "bytecheck 0.6.12", - "bytes", - "derive_more 2.0.1", - "futures-util", - "ipnet", - "iprange", - "pin-project-lite", - "rkyv 0.8.8", - "serde", - "smoltcp", - "thiserror 1.0.69", - "tokio", - "tracing", - "virtual-mio", -] - [[package]] name = "vlq" version = "0.5.1" @@ -7688,78 +6816,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" -[[package]] -name = "wai-bindgen-gen-core" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa3dc41b510811122b3088197234c27e08fcad63ef936306dd8e11e2803876c" -dependencies = [ - "anyhow", - "wai-parser", -] - -[[package]] -name = "wai-bindgen-gen-rust" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc05e8380515c4337c40ef03b2ff233e391315b178a320de8640703d522efe" -dependencies = [ - "heck 0.3.3", - "wai-bindgen-gen-core", -] - -[[package]] -name = "wai-bindgen-gen-rust-wasm" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6f35ce5e74086fac87f3a7bd50f643f00fe3559adb75c88521ecaa01c8a6199" -dependencies = [ - "heck 0.3.3", - "wai-bindgen-gen-core", - "wai-bindgen-gen-rust", -] - -[[package]] -name = "wai-bindgen-rust" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e5601c6f448c063e83a5e931b8fefcdf7e01ada424ad42372c948d2e3d67741" -dependencies = [ - "bitflags 1.3.2", - "wai-bindgen-rust-impl", -] - -[[package]] -name = "wai-bindgen-rust-impl" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeb5c1170246de8425a3e123e7ef260dc05ba2b522a1d369fe2315376efea4" -dependencies = [ - "proc-macro2", - "syn 1.0.109", - "wai-bindgen-gen-core", - "wai-bindgen-gen-rust-wasm", -] - -[[package]] -name = "wai-parser" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd0acb6d70885ea0c343749019ba74f015f64a9d30542e66db69b49b7e28186" -dependencies = [ - "anyhow", - "id-arena", - "pulldown-cmark", - "unicode-normalization", - "unicode-xid", -] - -[[package]] -name = "waker-fn" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" - [[package]] name = "walkdir" version = "2.5.0" @@ -7785,6 +6841,31 @@ dependencies = [ "wit-bindgen-rt", ] +[[package]] +name = "wasi-common" +version = "35.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f17747bf7f2275572f4e3ed884e8143285a711fbf25999244d61644fe212340" +dependencies = [ + "anyhow", + "bitflags 2.9.1", + "cap-fs-ext", + "cap-rand", + "cap-std", + "cap-time-ext", + "fs-set-times", + "io-extras", + "io-lifetimes", + "log", + "rustix 1.0.7", + "system-interface", + "thiserror 2.0.12", + "tracing", + "wasmtime", + "wiggle", + "windows-sys 0.59.0", +] + [[package]] name = "wasm-bindgen" version = "0.2.100" @@ -7854,385 +6935,229 @@ dependencies = [ ] [[package]] -name = "wasmer" -version = "6.1.0-rc.2" +name = "wasmparser" +version = "0.222.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf786c12924b21a9b62b2f16f5c71985f9a7c478ad043e9337ceb18d08869ce4" +checksum = "fa210fd1788e6b37a1d1930f3389c48e1d6ebd1a013d34fa4b7f9e3e3bf03146" dependencies = [ - "bindgen", - "bytes", - "cfg-if", - "cmake", - "derive_more 2.0.1", - "indexmap 2.10.0", - "js-sys", - "more-asserts", - "paste", - "rustc-demangle", - "serde", - "serde-wasm-bindgen", - "shared-buffer", - "tar", - "target-lexicon", - "thiserror 1.0.69", - "tracing", - "wasm-bindgen", - "wasmer-compiler", - "wasmer-compiler-cranelift", - "wasmer-derive", - "wasmer-types", - "wasmer-vm", - "wasmparser 0.224.1", - "wat", - "windows-sys 0.59.0", + "bitflags 2.9.1", ] [[package]] -name = "wasmer-cache" -version = "6.1.0-rc.2" +name = "wasmparser" +version = "0.235.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69c453f91ba2a6983db25b54f562da91019050dd10a7127d67be1b2f2ecf778f" +checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" dependencies = [ - "blake3", - "hex", - "thiserror 1.0.69", - "wasmer", + "bitflags 2.9.1", + "hashbrown 0.15.4", + "indexmap", + "semver", + "serde", ] [[package]] -name = "wasmer-compiler" -version = "6.1.0-rc.2" +name = "wasmprinter" +version = "0.235.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c676b2eeebcf3525cd7a4a394a3e800397931b14c36c59bbdaa673d1e3538736" +checksum = "75aa8e9076de6b9544e6dab4badada518cca0bf4966d35b131bbd057aed8fa0a" dependencies = [ - "backtrace", - "bytes", - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libc", - "macho-unwind-info", - "memmap2", - "more-asserts", - "object 0.32.2", - "region", - "rkyv 0.8.8", - "self_cell", - "shared-buffer", - "smallvec", - "target-lexicon", - "thiserror 1.0.69", - "wasmer-types", - "wasmer-vm", - "wasmparser 0.224.1", - "windows-sys 0.59.0", - "xxhash-rust", + "anyhow", + "termcolor", + "wasmparser 0.235.0", ] [[package]] -name = "wasmer-compiler-cranelift" -version = "6.1.0-rc.2" +name = "wasmtime" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a3f6b9620a296686578867a2eb52ebbba54f690e35d0f0b88ac2a07eba4b2f" +checksum = "b6fe976922a16af3b0d67172c473d1fd4f1aa5d0af9c8ba6538c741f3af686f4" dependencies = [ - "cranelift-codegen", - "cranelift-entity", - "cranelift-frontend", - "gimli 0.28.1", - "itertools 0.12.1", - "more-asserts", - "rayon", + "addr2line", + "anyhow", + "bitflags 2.9.1", + "bumpalo", + "cc", + "cfg-if", + "hashbrown 0.15.4", + "indexmap", + "libc", + "log", + "mach2", + "memfd", + "object", + "once_cell", + "postcard", + "pulley-interpreter", + "rustix 1.0.7", + "serde", + "serde_derive", "smallvec", "target-lexicon", - "tracing", - "wasmer-compiler", - "wasmer-types", + "wasmparser 0.235.0", + "wasmtime-environ", + "wasmtime-internal-asm-macros", + "wasmtime-internal-cranelift", + "wasmtime-internal-fiber", + "wasmtime-internal-jit-icache-coherence", + "wasmtime-internal-math", + "wasmtime-internal-slab", + "wasmtime-internal-unwinder", + "wasmtime-internal-versioned-export-macros", + "wasmtime-internal-winch", + "windows-sys 0.59.0", ] [[package]] -name = "wasmer-config" -version = "0.601.0-rc.2" +name = "wasmtime-environ" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4f9f97f7c76a9865fa7c6c003b2d1a9fa24da5f4ac8f07898b4a7697bc014ec" +checksum = "44b6264a78d806924abbc76bbc75eac24976bc83bdfb938e5074ae551242436f" dependencies = [ "anyhow", - "bytesize", - "ciborium", - "derive_builder 0.12.0", - "hex", - "indexmap 2.10.0", - "saffron", - "schemars 0.8.22", - "semver", + "cranelift-bitset", + "cranelift-entity", + "gimli", + "indexmap", + "log", + "object", + "postcard", "serde", - "serde_json", - "serde_yml", - "thiserror 1.0.69", - "toml", - "url", -] - -[[package]] -name = "wasmer-derive" -version = "6.1.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f28138e1071544778713c49a402f9f37c47aa9f05cf4023c4563cef8c138301" -dependencies = [ - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 1.0.109", + "serde_derive", + "smallvec", + "target-lexicon", + "wasm-encoder", + "wasmparser 0.235.0", + "wasmprinter", ] [[package]] -name = "wasmer-journal" -version = "0.601.0-rc.2" +name = "wasmtime-internal-asm-macros" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "187d41a08883b25205e16592e581d8f114e8cd4b0cc06bf06227ef1dceea5bed" +checksum = "6775a9b516559716e5710e95a8014ca0adcc81e5bf4d3ad7899d89ae40094d1a" dependencies = [ - "anyhow", - "async-trait", - "base64", - "bincode", - "bytecheck 0.6.12", - "bytes", - "derive_more 2.0.1", - "lz4_flex", - "num_enum", - "rkyv 0.8.8", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", - "virtual-fs", - "virtual-net", - "wasmer", - "wasmer-config", - "wasmer-wasix-types", + "cfg-if", ] [[package]] -name = "wasmer-package" -version = "0.601.0-rc.2" +name = "wasmtime-internal-cranelift" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c892d772b032804990ae6df8225cec238e1fa5c1ab63e3a433fbc0eb3da498" +checksum = "7ec9ad7565e6a8de7cb95484e230ff689db74a4a085219e0da0cbd637a29c01c" dependencies = [ "anyhow", - "bytes", "cfg-if", - "ciborium", - "flate2", - "ignore", - "insta", - "libc", - "semver", - "serde", - "serde_json", - "sha2", - "shared-buffer", - "tar", - "tempfile", - "thiserror 1.0.69", - "toml", - "url", - "wasmer-config", - "wasmer-types", - "webc", -] - -[[package]] -name = "wasmer-types" -version = "6.1.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d329d3e5c425c0ff98035a685d93c6f7129789dde2a67ed60f4f07bf16d689ca" -dependencies = [ - "bytecheck 0.6.12", - "enum-iterator", - "enumset", - "getrandom 0.2.16", - "hex", - "indexmap 2.10.0", - "more-asserts", - "rkyv 0.8.8", - "serde", - "sha2", + "cranelift-codegen", + "cranelift-control", + "cranelift-entity", + "cranelift-frontend", + "cranelift-native", + "gimli", + "itertools 0.14.0", + "log", + "object", + "pulley-interpreter", + "smallvec", "target-lexicon", - "thiserror 1.0.69", - "wasmparser 0.224.1", - "xxhash-rust", + "thiserror 2.0.12", + "wasmparser 0.235.0", + "wasmtime-environ", + "wasmtime-internal-math", + "wasmtime-internal-versioned-export-macros", ] [[package]] -name = "wasmer-vm" -version = "6.1.0-rc.2" +name = "wasmtime-internal-fiber" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a58deb62862e662c27acd359764740c944028627ee74777790d01c87dc98edf" +checksum = "8b636ff8b220ebaf29dfe3b23770e4b2bad317b9683e3bf7345e162387385b39" dependencies = [ - "backtrace", + "anyhow", "cc", "cfg-if", - "corosensei", - "crossbeam-queue", - "dashmap 6.1.0", - "enum-iterator", - "fnv", - "indexmap 2.10.0", "libc", - "libunwind", - "mach2", - "memoffset", - "more-asserts", - "region", - "scopeguard", - "thiserror 1.0.69", - "wasmer-types", + "rustix 1.0.7", + "wasmtime-internal-asm-macros", + "wasmtime-internal-versioned-export-macros", "windows-sys 0.59.0", ] [[package]] -name = "wasmer-wasix" -version = "0.601.0-rc.2" +name = "wasmtime-internal-jit-icache-coherence" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0b2f10a6eda882a8618bde7b50c5ad0277da298ff683765d8a22b8c1d75409" +checksum = "4417e06b7f80baff87d9770852c757a39b8d7f11d78b2620ca992b8725f16f50" dependencies = [ "anyhow", - "async-trait", - "base64", - "bincode", - "blake3", - "bus", - "bytecheck 0.6.12", - "bytes", "cfg-if", - "cooked-waker", - "crossbeam-channel", - "dashmap 6.1.0", - "derive_more 2.0.1", - "futures", - "getrandom 0.2.16", - "heapless", - "hex", - "http", "libc", - "linked_hash_set", - "lz4_flex", - "num_enum", - "once_cell", - "petgraph", - "pin-project", - "pin-utils", - "rand", - "rkyv 0.8.8", - "rusty_pool", - "semver", - "serde", - "serde_derive", - "serde_json", - "serde_yml", - "sha2", - "shared-buffer", - "tempfile", - "terminal_size 0.3.0", - "termios", - "thiserror 1.0.69", - "tokio", - "tokio-stream", - "toml", - "tracing", - "url", - "urlencoding", - "virtual-fs", - "virtual-mio", - "virtual-net", - "waker-fn", - "wasm-encoder", - "wasmer", - "wasmer-config", - "wasmer-journal", - "wasmer-package", - "wasmer-types", - "wasmer-wasix-types", - "wasmparser 0.224.1", - "webc", - "weezl", "windows-sys 0.59.0", - "xxhash-rust", ] [[package]] -name = "wasmer-wasix-types" -version = "0.601.0-rc.2" +name = "wasmtime-internal-math" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ec56583da2e60c78c0eae1082dec81bc75f10e4fc62fcebb5ee92fb96e6bf97" +checksum = "7710d5c4ecdaa772927fd11e5dc30a9a62d1fc8fe933e11ad5576ad596ab6612" dependencies = [ - "anyhow", - "bitflags 1.3.2", - "byteorder", - "cfg-if", - "num_enum", - "serde", - "time", - "tracing", - "wai-bindgen-gen-core", - "wai-bindgen-gen-rust", - "wai-bindgen-gen-rust-wasm", - "wai-bindgen-rust", - "wai-parser", - "wasmer", - "wasmer-derive", - "wasmer-types", + "libm", ] [[package]] -name = "wasmparser" -version = "0.222.1" +name = "wasmtime-internal-slab" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa210fd1788e6b37a1d1930f3389c48e1d6ebd1a013d34fa4b7f9e3e3bf03146" -dependencies = [ - "bitflags 2.9.1", -] +checksum = "e6ab22fabe1eed27ab01fd47cd89deacf43ad222ed7fd169ba6f4dd1fbddc53b" [[package]] -name = "wasmparser" -version = "0.224.1" +name = "wasmtime-internal-unwinder" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04f17a5917c2ddd3819e84c661fae0d6ba29d7b9c1f0e96c708c65a9c4188e11" +checksum = "307708f302f5dcf19c1bbbfb3d9f2cbc837dd18088a7988747b043a46ba38ecc" dependencies = [ - "bitflags 2.9.1", + "anyhow", + "cfg-if", + "cranelift-codegen", + "log", + "object", ] [[package]] -name = "wasmparser" -version = "0.235.0" +name = "wasmtime-internal-versioned-export-macros" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" +checksum = "342b0466f92b7217a4de9e114175fedee1907028567d2548bcd42f71a8b5b016" dependencies = [ - "bitflags 2.9.1", - "indexmap 2.10.0", - "semver", + "proc-macro2", + "quote", + "syn 2.0.104", ] [[package]] -name = "wast" -version = "235.0.0" +name = "wasmtime-internal-winch" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eda4293f626c99021bb3a6fbe4fbbe90c0e31a5ace89b5f620af8925de72e13" +checksum = "2012e7384c25b91aab2f1b6a1e1cbab9d0f199bbea06cc873597a3f047f05730" dependencies = [ - "bumpalo", - "leb128fmt", - "memchr", - "unicode-width 0.2.1", - "wasm-encoder", + "anyhow", + "cranelift-codegen", + "gimli", + "object", + "target-lexicon", + "wasmparser 0.235.0", + "wasmtime-environ", + "wasmtime-internal-cranelift", + "winch-codegen", ] [[package]] -name = "wat" -version = "1.235.0" +name = "wast" +version = "35.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e777e0327115793cb96ab220b98f85327ec3d11f34ec9e8d723264522ef206aa" +checksum = "2ef140f1b49946586078353a453a1d28ba90adfc54dde75710bc1931de204d68" dependencies = [ - "wast", + "leb128", ] [[package]] @@ -8246,38 +7171,45 @@ dependencies = [ ] [[package]] -name = "webc" -version = "9.0.0" +name = "wiggle" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38544ae3a351279fa913b4dee9c548f0aa3b27ca05756531c3f2e6bc4e22c27d" +checksum = "fc3ea480ce117a35b61e466e4f77422f2b29f744400e05de3ad87d73b8a1877c" dependencies = [ "anyhow", - "base64", - "bytes", - "cfg-if", - "ciborium", - "document-features", - "ignore", - "indexmap 2.10.0", - "leb128", - "lexical-sort", - "libc", - "once_cell", - "path-clean 1.0.1", - "rand", - "serde", - "serde_json", - "sha2", - "shared-buffer", - "thiserror 1.0.69", - "url", + "async-trait", + "bitflags 2.9.1", + "thiserror 2.0.12", + "tracing", + "wasmtime", + "wiggle-macro", ] [[package]] -name = "weezl" -version = "0.1.10" +name = "wiggle-generate" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a751b3277700db47d3e574514de2eced5e54dc8a5436a3bf7a0b248b2cee16f3" +checksum = "cec945b902cacd960fe5d441b60146b24639d81b887451a30bf86824a8185d79" +dependencies = [ + "anyhow", + "heck", + "proc-macro2", + "quote", + "syn 2.0.104", + "witx", +] + +[[package]] +name = "wiggle-macro" +version = "35.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5872fbe512b73acd514e7ef5bd5aee0ff951a12c1fed0293e1f7992de30df9f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", + "wiggle-generate", +] [[package]] name = "winapi" @@ -8310,6 +7242,26 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "winch-codegen" +version = "35.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "839a334ef7c62d8368dbd427e767a6fbb1ba08cc12ecce19cbb666c10613b585" +dependencies = [ + "anyhow", + "cranelift-assembler-x64", + "cranelift-codegen", + "gimli", + "regalloc2", + "smallvec", + "target-lexicon", + "thiserror 2.0.12", + "wasmparser 0.235.0", + "wasmtime-environ", + "wasmtime-internal-cranelift", + "wasmtime-internal-math", +] + [[package]] name = "windows-core" version = "0.61.2" @@ -8369,24 +7321,6 @@ dependencies = [ "windows-link", ] -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-sys" version = "0.59.0" @@ -8405,21 +7339,6 @@ dependencies = [ "windows-targets 0.53.2", ] -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - [[package]] name = "windows-targets" version = "0.52.6" @@ -8452,12 +7371,6 @@ dependencies = [ "windows_x86_64_msvc 0.53.0", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.52.6" @@ -8470,12 +7383,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - [[package]] name = "windows_aarch64_msvc" version = "0.52.6" @@ -8488,12 +7395,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - [[package]] name = "windows_i686_gnu" version = "0.52.6" @@ -8518,12 +7419,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - [[package]] name = "windows_i686_msvc" version = "0.52.6" @@ -8536,12 +7431,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - [[package]] name = "windows_x86_64_gnu" version = "0.52.6" @@ -8554,12 +7443,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" @@ -8572,12 +7455,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - [[package]] name = "windows_x86_64_msvc" version = "0.52.6" @@ -8599,6 +7476,16 @@ dependencies = [ "memchr", ] +[[package]] +name = "winx" +version = "0.36.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f3fd376f71958b862e7afb20cfe5a22830e1963462f3a17f49d82a6c1d1f42d" +dependencies = [ + "bitflags 2.9.1", + "windows-sys 0.59.0", +] + [[package]] name = "wit-bindgen-rt" version = "0.39.0" @@ -8608,6 +7495,18 @@ dependencies = [ "bitflags 2.9.1", ] +[[package]] +name = "witx" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e366f27a5cabcddb2706a78296a40b8fcc451e1a6aba2fc1d94b4a01bdaaef4b" +dependencies = [ + "anyhow", + "log", + "thiserror 1.0.69", + "wast", +] + [[package]] name = "writeable" version = "0.6.1" @@ -8623,16 +7522,6 @@ dependencies = [ "tap", ] -[[package]] -name = "xattr" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af3a19837351dc82ba89f8a125e22a3c475f05aba604acc023d62b2739ae2909" -dependencies = [ - "libc", - "rustix 1.0.7", -] - [[package]] name = "xxhash-rust" version = "0.8.15" diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index 630efe73519a8..6a7233e25f438 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -7,31 +7,31 @@ edition = "2024" crate-type = ["cdylib"] [dependencies] -rspack_binding_builder = { version = "=0.4.10" } -rspack_binding_builder_macros = { version = "=0.4.10" } +rspack_binding_builder = { version = "=0.5.4" } +rspack_binding_builder_macros = { version = "=0.5.4" } -rspack_core = { version = "=0.4.10" } -rspack_error = { version = "=0.4.10" } -rspack_hook = { version = "=0.4.10" } -rspack_plugin_externals = { version = "=0.4.10" } +rspack_core = { version = "=0.5.4" } +rspack_error = { version = "=0.5.4" } +rspack_hook = { version = "=0.5.4" } +rspack_plugin_externals = { version = "=0.5.4" } rspack_sources = { version = "=0.4.8" } regex = { version = "1.11.1" } -rspack_regex = { version = "=0.4.10" } +rspack_regex = { version = "=0.5.4" } rustc-hash = { version = "2.1.1" } -napi = { version = "=3.1.2" } -napi-derive = { version = "=3.1.1" } +napi = { version = "=3.2.2" } +napi-derive = { version = "=3.2.2" } next-taskless = { path = "../../../crates/next-taskless" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf [target.'cfg(not(any(target_arch = "wasm32", target_arch = "arm", all(target_os = "windows", target_arch = "x86"), all(target_os = "windows", target_arch = "aarch64"))))'.dependencies] -rspack_binding_builder = { version = "=0.4.10", features = ["plugin"] } +rspack_binding_builder = { version = "=0.5.4", features = ["plugin"] } [build-dependencies] -rspack_binding_build = { version = "=0.4.10" } +rspack_binding_build = { version = "=0.5.4" } # Copied from https://github.com/web-infra-dev/rspack/blob/main/Cargo.toml diff --git a/rspack/package.json b/rspack/package.json index 4b2dd213ade82..85cc396f4ea31 100644 --- a/rspack/package.json +++ b/rspack/package.json @@ -23,7 +23,8 @@ "lib" ], "scripts": { - "build": "pnpm run --filter @next/rspack-binding build" + "build": "pnpm run --filter @next/rspack-binding build", + "build:debug": "pnpm run --filter @next/rspack-binding build:debug" }, "dependencies": { "@rspack/core": "1.4.10", diff --git a/rspack/pnpm-lock.yaml b/rspack/pnpm-lock.yaml index 815bb0295be79..23a07aa044f43 100644 --- a/rspack/pnpm-lock.yaml +++ b/rspack/pnpm-lock.yaml @@ -8,9 +8,9 @@ importers: .: dependencies: - '@next/rspack-core': + '@next/rspack-binding': specifier: workspace:* - version: 'link:' + version: link:crates/binding '@rspack/core': specifier: 1.4.10 version: 1.4.10 From 2badb4639c2eaa8df857925bbc8fa2734a7bf086 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 21:37:54 +0800 Subject: [PATCH 27/38] fix: workflow --- .github/workflows/release-next-rspack.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 19dcb9a6c0f14..e3d5deab524d0 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -25,10 +25,12 @@ env: jobs: build: name: Build - uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@v1.0.3 + uses: SyMind/rspack-toolchain/.github/workflows/build.yml@d86e48f6095dd7c2dfd71d0cb95761641a78d734 with: package-json-path: rspack/crates/binding/package.json napi-build-command: pnpm build --release + working-directory: rspack + rust-toolchain: nightly-2025-05-30 release: runs-on: ubuntu-latest From ebc7f9b4d1be0abf113d0cb8b2d18ce9030df0a7 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 22:27:24 +0800 Subject: [PATCH 28/38] add rust-toolchain --- rspack/rust-toolchain.toml | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 rspack/rust-toolchain.toml diff --git a/rspack/rust-toolchain.toml b/rspack/rust-toolchain.toml new file mode 100644 index 0000000000000..7968dd60f531a --- /dev/null +++ b/rspack/rust-toolchain.toml @@ -0,0 +1,3 @@ +[toolchain] +profile = "default" +channel = "nightly-2025-05-30" From 6878c02a41414afc13e7ac80a3ab1014b8dcea8b Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 22:37:21 +0800 Subject: [PATCH 29/38] cargo update --- rspack/crates/binding/Cargo.lock | 750 ++++++++++++---------- rspack/crates/binding/rust-toolchain.toml | 3 - 2 files changed, 398 insertions(+), 355 deletions(-) delete mode 100644 rspack/crates/binding/rust-toolchain.toml diff --git a/rspack/crates/binding/Cargo.lock b/rspack/crates/binding/Cargo.lock index 64b7892dfd17e..c8b9fb2d89143 100644 --- a/rspack/crates/binding/Cargo.lock +++ b/rspack/crates/binding/Cargo.lock @@ -73,12 +73,6 @@ version = "0.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - [[package]] name = "android_system_properties" version = "0.1.5" @@ -90,9 +84,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" dependencies = [ "backtrace", ] @@ -105,9 +99,9 @@ checksum = "170433209e817da6aae2c51aa0dd443009a613425dd041ebfb2492d1c4c11a25" [[package]] name = "arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" [[package]] name = "arrayref" @@ -135,7 +129,7 @@ checksum = "0a184645bcc6f52d69d8e7639720699c6a99efb711f886e251ed1d16db8dd90e" dependencies = [ "quote", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -146,18 +140,18 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -174,7 +168,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -264,9 +258,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.1" +version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" dependencies = [ "serde", ] @@ -307,9 +301,9 @@ dependencies = [ [[package]] name = "browserslist-data" -version = "0.1.1" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c49471c5ae53cefe3ac4acc4d3c75cb4b68995b70b3bbb864f8e08fae282098c" +checksum = "2e977366ea69a6e756ae616c0d5def0da9a3521fca5f91f447fdf613c928a15a" dependencies = [ "ahash 0.8.12", "chrono", @@ -393,7 +387,7 @@ checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -421,11 +415,11 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.10" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" +checksum = "e1de8bc0aa9e9385ceb3bf0c152e3a9b9544f6c4a912c8ae504e80c1f0368603" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -452,7 +446,7 @@ dependencies = [ "io-lifetimes", "ipnet", "maybe-owned", - "rustix 1.0.7", + "rustix 1.1.2", "rustix-linux-procfs", "windows-sys 0.59.0", "winx", @@ -477,7 +471,7 @@ dependencies = [ "cap-primitives", "io-extras", "io-lifetimes", - "rustix 1.0.7", + "rustix 1.1.2", ] [[package]] @@ -490,7 +484,7 @@ dependencies = [ "cap-primitives", "iana-time-zone", "once_cell", - "rustix 1.0.7", + "rustix 1.1.2", "winx", ] @@ -514,58 +508,52 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.16", ] [[package]] name = "castaway" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" +checksum = "dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a" dependencies = [ "rustversion", ] [[package]] name = "cc" -version = "1.2.29" +version = "1.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362" +checksum = "65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44" dependencies = [ + "find-msvc-tools", "shlex", ] [[package]] name = "cfg-if" -version = "1.0.1" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" +checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" [[package]] name = "chrono" -version = "0.4.41" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ - "android-tzdata", "iana-time-zone", "num-traits", - "windows-link", + "windows-link 0.2.0", ] -[[package]] -name = "clean-path" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaa6b4b263a5d737e9bf6b7c09b72c41a5480aec4d7219af827f6564e950b6a5" - [[package]] name = "cobs" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fa961b519f0b462e3a3b4a34b64d119eeaca1d59af726fe450bbba07a9fc0a1" dependencies = [ - "thiserror 2.0.12", + "thiserror 2.0.16", ] [[package]] @@ -727,7 +715,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "log", "pulley-interpreter", "regalloc2", @@ -894,14 +882,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "ctor" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4735f265ba6a1188052ca32d461028a7d1125868be18e287e756019da7607b5" +checksum = "ec09e802f5081de6157da9a75701d6c713d8dc3ba52571fd4bd25f412644e8a6" dependencies = [ "ctor-proc-macro", "dtor", @@ -909,9 +897,9 @@ dependencies = [ [[package]] name = "ctor-proc-macro" -version = "0.0.5" +version = "0.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f211af61d8efdd104f96e57adf5e426ba1bc3ed7a4ead616e15e5881fd79c4d" +checksum = "e2931af7e13dc045d8e9d26afccc6fa115d64e115c9c84b1166288b46f6782c2" [[package]] name = "darling" @@ -934,7 +922,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -945,7 +933,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1003,9 +991,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.4.0" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc" dependencies = [ "powerfmt", ] @@ -1028,7 +1016,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1038,7 +1026,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1058,7 +1046,7 @@ checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "unicode-xid", ] @@ -1072,6 +1060,27 @@ dependencies = [ "crypto-common", ] +[[package]] +name = "dirs" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.61.0", +] + [[package]] name = "displaydoc" version = "0.2.5" @@ -1080,7 +1089,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1121,9 +1130,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "either" @@ -1163,12 +1172,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -1184,8 +1193,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf04c5ec15464ace8355a7b440a33aece288993475556d461154d7a62ad9947c" dependencies = [ "bit-set", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", + "regex-automata", + "regex-syntax", ] [[package]] @@ -1204,10 +1213,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce92ff622d6dadf7349484f42c93271a0d49b7cc4d466a936405bacbe10aa78" dependencies = [ "cfg-if", - "rustix 1.0.7", + "rustix 1.1.2", "windows-sys 0.59.0", ] +[[package]] +name = "find-msvc-tools" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d" + [[package]] name = "fixedbitset" version = "0.5.7" @@ -1237,9 +1252,9 @@ checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" dependencies = [ "percent-encoding", ] @@ -1251,7 +1266,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "308530a56b099da144ebc5d8e179f343ad928fa2b3558d1eb3db9af18d6eff43" dependencies = [ "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1261,7 +1276,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94e7099f6313ecacbe1256e8ff9d617b75d1bcb16a6fddef94866d225a01a14a" dependencies = [ "io-lifetimes", - "rustix 1.0.7", + "rustix 1.1.2", "windows-sys 0.59.0", ] @@ -1336,7 +1351,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1401,7 +1416,7 @@ dependencies = [ "cfg-if", "libc", "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "wasi 0.14.7+wasi-0.2.4", ] [[package]] @@ -1417,9 +1432,9 @@ dependencies = [ [[package]] name = "glob" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "globset" @@ -1429,8 +1444,8 @@ checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" dependencies = [ "aho-corasick", "bstr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", + "regex-automata", + "regex-syntax", ] [[package]] @@ -1456,7 +1471,7 @@ dependencies = [ "pest_derive", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.16", ] [[package]] @@ -1489,9 +1504,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.4" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" dependencies = [ "allocator-api2", "equivalent", @@ -1505,7 +1520,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.15.4", + "hashbrown 0.15.5", ] [[package]] @@ -1528,9 +1543,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hstr" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4933df6fceb5d21a21e9fb5b46e572a83be4108e5b544de7ebe87cc1245b5d23" +checksum = "ced1416104790052518d199e753d49a7d8130d476c664bc9e53f40cfecb8e615" dependencies = [ "hashbrown 0.14.5", "new_debug_unreachable", @@ -1550,9 +1565,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -1666,9 +1681,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" dependencies = [ "idna_adapter", "smallvec", @@ -1687,20 +1702,21 @@ dependencies = [ [[package]] name = "if_chain" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" +checksum = "cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb" [[package]] name = "indexmap" -version = "2.10.0" +version = "2.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" +checksum = "92119844f513ffa41556430369ab02c295a3578af21cf945caa3e9e0c2481ac3" dependencies = [ "equivalent", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "rayon", "serde", + "serde_core", ] [[package]] @@ -1728,7 +1744,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "inotify-sys", "libc", ] @@ -1744,9 +1760,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.20" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" +checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" dependencies = [ "rustversion", ] @@ -1769,11 +1785,11 @@ checksum = "06432fb54d3be7964ecd3649233cddf80db2832f47fec34c01f65b3d9d774983" [[package]] name = "io-uring" -version = "0.7.8" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" +checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cfg-if", "libc", ] @@ -1793,7 +1809,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1837,9 +1853,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "852f13bec5eba4ba9afbeb93fd7c13fe56147f055939ae21c43a29a0ecb2702e" dependencies = [ "once_cell", "wasm-bindgen", @@ -1862,9 +1878,9 @@ dependencies = [ [[package]] name = "jsonc-parser" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b558af6b49fd918e970471374e7a798b2c9bbcda624a210ffa3901ee5614bc8e" +checksum = "1d6d80e6d70e7911a29f3cf3f44f452df85d06f73572b494ca99a2cad3fcf8f4" dependencies = [ "serde_json", ] @@ -1909,9 +1925,9 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.174" +version = "0.2.175" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" +checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" [[package]] name = "libloading" @@ -1920,7 +1936,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" dependencies = [ "cfg-if", - "windows-targets 0.53.2", + "windows-targets 0.53.3", ] [[package]] @@ -1929,6 +1945,16 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" +[[package]] +name = "libredox" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" +dependencies = [ + "bitflags 2.9.4", + "libc", +] + [[package]] name = "lightningcss" version = "1.0.0-alpha.67" @@ -1936,7 +1962,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "798fba4e1205eed356b8ed7754cc3f7f04914e27855ca641409f4a532e992149" dependencies = [ "ahash 0.8.12", - "bitflags 2.9.1", + "bitflags 2.9.4", "const-str", "cssparser", "cssparser-color", @@ -1990,9 +2016,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" @@ -2012,9 +2038,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "lru" @@ -2036,11 +2062,11 @@ dependencies = [ [[package]] name = "matchers" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" dependencies = [ - "regex-automata 0.1.10", + "regex-automata", ] [[package]] @@ -2076,7 +2102,7 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227" dependencies = [ - "rustix 1.0.7", + "rustix 1.1.2", ] [[package]] @@ -2117,7 +2143,7 @@ checksum = "db5b29714e950dbb20d5e6f74f9dcec4edbcc1067bb7f8ed198c097b8c1a818b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2174,22 +2200,22 @@ dependencies = [ [[package]] name = "munge" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cce144fab80fbb74ec5b89d1ca9d41ddf6b644ab7e986f7d3ed0aab31625cb1" +checksum = "d7feb0b48aa0a25f9fe0899482c6e1379ee7a11b24a53073eacdecb9adb6dc60" dependencies = [ "munge_macro", ] [[package]] name = "munge_macro" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "574af9cd5b9971cbfdf535d6a8d533778481b241c447826d976101e0149392a1" +checksum = "f2e3795a5d2da581a8b252fec6022eee01aea10161a4d1bf237d4cbe47f7e988" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2199,7 +2225,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef68062665fc682e32a4f4c492e0f18c1a11bfdc63628a5e16ae9f1f7a9d660a" dependencies = [ "anyhow", - "bitflags 2.9.1", + "bitflags 2.9.4", "ctor", "napi-build", "napi-sys", @@ -2227,7 +2253,7 @@ dependencies = [ "napi-derive-backend", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2240,7 +2266,7 @@ dependencies = [ "proc-macro2", "quote", "semver", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2324,11 +2350,11 @@ dependencies = [ [[package]] name = "notify" -version = "8.1.0" +version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3163f59cd3fa0e9ef8c32f242966a7b9994fd7378366099593e0e73077cd8c97" +checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "fsevent-sys", "inotify", "kqueue", @@ -2428,7 +2454,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "crc32fast", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "indexmap", "memchr", ] @@ -2441,9 +2467,15 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "oneshot" -version = "0.1.8" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce411919553d3f9fa53a0880544cda985a112117a0444d5ff1e870a893d6ea" + +[[package]] +name = "option-ext" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e296cf87e61c9cfc1a61c3c63a0f7f286ed4554e0e22be84e8a38e1d264a2a29" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "outref" @@ -2489,7 +2521,7 @@ version = "0.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54fd03f1ad26cb6b3ec1b7414fa78a3bd639e7dbb421b1a60513c96ce886a196" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cssparser", "log", "phf", @@ -2556,12 +2588,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - [[package]] name = "pathdiff" version = "0.2.3" @@ -2573,26 +2599,26 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" +checksum = "21e0a3a33733faeaf8651dfee72dd0f388f0c8e5ad496a3478fa5a922f49cfa8" dependencies = [ "memchr", - "thiserror 2.0.12", + "thiserror 2.0.16", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb056d9e8ea77922845ec74a1c4e8fb17e7c218cc4fc11a15c5d25e189aa40bc" +checksum = "bc58706f770acb1dbd0973e6530a3cff4746fb721207feb3a8a6064cd0b6c663" dependencies = [ "pest", "pest_generator", @@ -2600,22 +2626,22 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87e404e638f781eb3202dc82db6760c8ae8a1eeef7fb3fa8264b2ef280504966" +checksum = "6d4f36811dfe07f7b8573462465d5cb8965fffc2e71ae377a33aecf14c2c9a2f" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "pest_meta" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd1101f170f5903fde0914f899bb503d9ff5271d7ba76bbb70bea63690cc0d5" +checksum = "42919b05089acbd0a5dcd5405fb304d17d1053847b81163d09c4ad18ce8e8420" dependencies = [ "pest", "sha2", @@ -2671,7 +2697,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2697,22 +2723,21 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pnp" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e001eb06e9523653f2a88adb94e286ef5d7acfe64158b21bf57a6f6bc3ba65ca" +checksum = "a10a726fb86dab6571b148c0f52cf619a4aabf0ac4fcf578bd4cd2178fb0e6d0" dependencies = [ "byteorder", - "clean-path", "concurrent_lru", + "dirs", "fancy-regex", "miniz_oxide", - "path-slash", "pathdiff", "radix_trie", "rustc-hash", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.16", ] [[package]] @@ -2735,9 +2760,9 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" dependencies = [ "zerovec", ] @@ -2789,9 +2814,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -2816,7 +2841,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2865,7 +2890,7 @@ checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2888,7 +2913,7 @@ checksum = "938543690519c20c3a480d20a8efcc8e69abeb44093ab1df4e7c1f81f26c677a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2969,9 +2994,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" dependencies = [ "either", "rayon-core", @@ -2979,9 +3004,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -2989,11 +3014,22 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.13" +version = "0.5.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" +dependencies = [ + "bitflags 2.9.4", +] + +[[package]] +name = "redox_users" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6" +checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ - "bitflags 2.9.1", + "getrandom 0.2.16", + "libredox", + "thiserror 2.0.16", ] [[package]] @@ -3013,7 +3049,7 @@ checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3024,7 +3060,7 @@ checksum = "5216b1837de2149f8bc8e6d5f88a9326b63b8c836ed58ce4a0a29ec736a59734" dependencies = [ "allocator-api2", "bumpalo", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "log", "rustc-hash", "smallvec", @@ -3032,47 +3068,32 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.1" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", + "regex-automata", + "regex-syntax", ] [[package]] name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" -dependencies = [ - "regex-syntax 0.6.29", -] - -[[package]] -name = "regex-automata" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.5", + "regex-syntax", ] [[package]] name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - -[[package]] -name = "regex-syntax" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" [[package]] name = "regress" @@ -3080,7 +3101,7 @@ version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "145bb27393fe455dd64d6cbc8d059adfa392590a45eadf079c01b11857e7b010" dependencies = [ - "hashbrown 0.15.4", + "hashbrown 0.15.5", "memchr", ] @@ -3158,7 +3179,7 @@ checksum = "09cb82b74b4810f07e460852c32f522e979787691b0b7b7439fe473e49d49b2f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3328,7 +3349,7 @@ dependencies = [ "proc-macro2", "quote", "rspack_binding_builder", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3391,7 +3412,7 @@ dependencies = [ "anymap3", "async-recursion", "async-trait", - "bitflags 2.9.1", + "bitflags 2.9.4", "cow-utils", "dashmap 6.1.0", "derive_more", @@ -3720,7 +3741,7 @@ checksum = "8517a2bf3f8c90ab2875606f49c1dc0d47120be55ed4c39f200e9e2812e49ccf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3744,7 +3765,7 @@ checksum = "1c3da7a6ffee9338e72b4a56b1246304c227962be3f1294e5c627d41c01b882b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -4095,7 +4116,7 @@ checksum = "9c180f77ba99f23cdeb40f526248281e8f35fd0f388dd014c8c254ef41d83c94" dependencies = [ "anymap3", "async-trait", - "bitflags 2.9.1", + "bitflags 2.9.4", "cow-utils", "either", "fast-glob", @@ -4672,7 +4693,7 @@ checksum = "5a7a15965d97394f94285c8c535b8cb39dceb34f8341ce02a149a722402fa153" dependencies = [ "cow-utils", "napi", - "regex-syntax 0.8.5", + "regex-syntax", "regress", "rspack_cacheable", "rspack_error", @@ -4681,9 +4702,9 @@ dependencies = [ [[package]] name = "rspack_resolver" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbe5f72302219f584a16ffabdc8f89a4fc245d7c8b185df09db9fc11d55ac846" +checksum = "c8680fe2525e9823c41cd53103aa27a2d1a22f412ea00913a91d5dd300a2d767" dependencies = [ "async-trait", "cfg-if", @@ -4800,7 +4821,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5781120e913abbcdd06139d8ce56f04f0ad65c418cb4e8f7ebe10661159391e" dependencies = [ "anyhow", - "bitflags 2.9.1", + "bitflags 2.9.4", "concat-string", "cow-utils", "dashmap 6.1.0", @@ -4833,9 +4854,9 @@ checksum = "2e601a80cfcfb611797d42db40c64575c67a50355d2f9ad2dff95e38c6bcc876" [[package]] name = "rustc-demangle" -version = "0.1.25" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f" +checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" [[package]] name = "rustc-hash" @@ -4849,7 +4870,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "errno", "libc", "linux-raw-sys 0.4.15", @@ -4858,15 +4879,15 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.7" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "errno", "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.59.0", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.0", ] [[package]] @@ -4876,14 +4897,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fc84bf7e9aa16c4f2c758f27412dc9841341e16aa682d9c7ac308fe3ee12056" dependencies = [ "once_cell", - "rustix 1.0.7", + "rustix 1.1.2", ] [[package]] name = "rustversion" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" @@ -4926,11 +4947,12 @@ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" [[package]] name = "semver" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" dependencies = [ "serde", + "serde_core", ] [[package]] @@ -4966,20 +4988,21 @@ checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "serde_json" -version = "1.0.140" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ "indexmap", "itoa", "memchr", "ryu", "serde", + "serde_core", ] [[package]] @@ -5063,9 +5086,9 @@ checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" [[package]] name = "slab" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" +checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" [[package]] name = "smallvec" @@ -5130,7 +5153,7 @@ checksum = "710e9696ef338691287aeb937ee6ffe60022f579d3c8d2fd9d58973a9a10a466" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5175,7 +5198,7 @@ checksum = "ae36a4951ca7bd1cfd991c241584a9824a70f6aff1e7d4f693fb3f2465e4030e" dependencies = [ "quote", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5347,9 +5370,9 @@ dependencies = [ [[package]] name = "swc_config" -version = "3.1.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d94f41e0f3c4c119a06af5e164674b63ae7eb6d7c1c60e46036c4a548f9fbe44" +checksum = "72e90b52ee734ded867104612218101722ad87ff4cf74fe30383bd244a533f97" dependencies = [ "anyhow", "bytes-str", @@ -5375,7 +5398,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5413,7 +5436,7 @@ version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65c25af97d53cf8aab66a6c68f3418663313fc969ad267fc2a4d19402c329be1" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "bytecheck 0.8.1", "is-macro", "num-bigint", @@ -5462,7 +5485,7 @@ checksum = "e276dc62c0a2625a560397827989c82a93fd545fcf6f7faec0935a82cc4ddbb8" dependencies = [ "proc-macro2", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5658,7 +5681,7 @@ version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2e2c5abb053281fa1dd99f4ce1e4c062bb18fed4cc24a2eada80d4160212e28" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "rustc-hash", "swc_atoms", "swc_common", @@ -5690,7 +5713,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67c3bd958a5a67e2cc3f74abdd41fda688e54e7a25b866569260ef7018b67972" dependencies = [ "arrayvec", - "bitflags 2.9.1", + "bitflags 2.9.4", "either", "num-bigint", "phf", @@ -5735,7 +5758,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "542307ff72ff381de86b815f1cceb69f6a98ee683b0635658a8ce1e07baaa703" dependencies = [ "arrayvec", - "bitflags 2.9.1", + "bitflags 2.9.4", "indexmap", "num-bigint", "num_cpus", @@ -5820,7 +5843,7 @@ dependencies = [ "swc_ecma_ast", "swc_ecma_parser", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5916,7 +5939,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5927,7 +5950,7 @@ checksum = "ea2b562a6db48b8ce932d54227ceab243137eb5220e0455937b1032b947b4cda" dependencies = [ "Inflector", "anyhow", - "bitflags 2.9.1", + "bitflags 2.9.4", "indexmap", "is-macro", "path-clean 1.0.1", @@ -6037,7 +6060,7 @@ version = "22.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8031a4473e5366165f23766f5bc8361c45e8ed57f7475c0227147727cbaf3342" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "indexmap", "rustc-hash", "swc_atoms", @@ -6091,7 +6114,7 @@ checksum = "c16ce73424a6316e95e09065ba6a207eba7765496fed113702278b7711d4b632" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6138,7 +6161,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d321188cc1279f9981681aadb77b877fc662e83a8841903f51bd501b40ab5c31" dependencies = [ "auto_impl", - "bitflags 2.9.1", + "bitflags 2.9.4", "rustc-hash", "swc_atoms", "swc_common", @@ -6154,7 +6177,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f98ef1f87379c816ba7d22351c9fc993af38b034bce4da3286cfe4b17e7ec9e2" dependencies = [ "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6230,7 +6253,7 @@ checksum = "aae1efbaa74943dc5ad2a2fb16cbd78b77d7e4d63188f3c5b4df2b4dcd2faaae" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6285,9 +6308,9 @@ dependencies = [ [[package]] name = "swc_sourcemap" -version = "9.3.2" +version = "9.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9755c673c6a83c461e98fa018f681adb8394a3f44f89a06f27e80fd4fe4fa1e4" +checksum = "de08ef00f816acdd1a58ee8a81c0e1a59eefef2093aefe5611f256fa6b64c4d7" dependencies = [ "base64-simd 0.8.0", "bitvec", @@ -6318,7 +6341,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfd2b4b0adb82e36f2ac688d00a6a67132c7f4170c772617516793a701be89e8" dependencies = [ "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6356,9 +6379,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.104" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -6373,7 +6396,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6382,7 +6405,7 @@ version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc4592f674ce18521c2a81483873a49596655b179f71c5e05d10c1fe66c78745" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cap-fs-ext", "cap-std", "fd-lock", @@ -6415,12 +6438,12 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed" +checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" dependencies = [ - "rustix 1.0.7", - "windows-sys 0.59.0", + "rustix 1.1.2", + "windows-sys 0.60.2", ] [[package]] @@ -6444,11 +6467,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.16", ] [[package]] @@ -6459,18 +6482,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6484,12 +6507,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "83bde6f1ec10e72d583d91623c939f623002284ef622b87de38cfd546cbf2031" dependencies = [ "deranged", - "itoa", "libc", "num-conv", "num_threads", @@ -6501,15 +6523,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" dependencies = [ "num-conv", "time-core", @@ -6527,9 +6549,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" dependencies = [ "tinyvec_macros", ] @@ -6542,9 +6564,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.46.1" +version = "1.47.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17" +checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038" dependencies = [ "backtrace", "io-uring", @@ -6565,7 +6587,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6587,7 +6609,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6612,13 +6634,13 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" +checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" dependencies = [ "matchers", "once_cell", - "regex", + "regex-automata", "serde", "serde_json", "sharded-slab", @@ -6662,15 +6684,15 @@ checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" [[package]] name = "unicode-id-start" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f322b60f6b9736017344fa0635d64be2f458fbc04eef65f6be22976dd1ffd5b" +checksum = "81b79ad29b5e19de4260020f8919b443b2ef0277d242ce532ec7b7a2cc8b6007" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-linebreak" @@ -6704,13 +6726,14 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "url" -version = "2.5.4" +version = "2.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" +checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b" dependencies = [ "form_urlencoded", "idna", "percent-encoding", + "serde", ] [[package]] @@ -6746,9 +6769,9 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" [[package]] name = "uuid" -version = "1.17.0" +version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cf4199d1e5d15ddd86a694e4d0dffa9c323ce759fea589f00fef9d81cc1931d" +checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ "js-sys", "wasm-bindgen", @@ -6834,11 +6857,11 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.2+wasi-0.2.4" +version = "0.14.7+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" dependencies = [ - "wit-bindgen-rt", + "wasip2", ] [[package]] @@ -6848,7 +6871,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f17747bf7f2275572f4e3ed884e8143285a711fbf25999244d61644fe212340" dependencies = [ "anyhow", - "bitflags 2.9.1", + "bitflags 2.9.4", "cap-fs-ext", "cap-rand", "cap-std", @@ -6857,46 +6880,56 @@ dependencies = [ "io-extras", "io-lifetimes", "log", - "rustix 1.0.7", + "rustix 1.1.2", "system-interface", - "thiserror 2.0.12", + "thiserror 2.0.16", "tracing", "wasmtime", "wiggle", "windows-sys 0.59.0", ] +[[package]] +name = "wasip2" +version = "1.0.1+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" +dependencies = [ + "wit-bindgen", +] + [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "ab10a69fbd0a177f5f649ad4d8d3305499c42bab9aef2f7ff592d0ec8f833819" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "0bb702423545a6007bbc368fde243ba47ca275e549c8a28617f56f6ba53b1d1c" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "fc65f4f411d91494355917b605e1480033152658d71f722a90647f56a70c88a0" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -6904,22 +6937,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "ffc003a991398a8ee604a401e194b6b3a39677b3173d6e74495eb51b82e99a32" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "293c37f4efa430ca14db3721dfbe48d8c33308096bd44d80ebaa775ab71ba1cf" dependencies = [ "unicode-ident", ] @@ -6940,7 +6973,7 @@ version = "0.222.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa210fd1788e6b37a1d1930f3389c48e1d6ebd1a013d34fa4b7f9e3e3bf03146" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", ] [[package]] @@ -6949,8 +6982,8 @@ version = "0.235.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" dependencies = [ - "bitflags 2.9.1", - "hashbrown 0.15.4", + "bitflags 2.9.4", + "hashbrown 0.15.5", "indexmap", "semver", "serde", @@ -6975,11 +7008,11 @@ checksum = "b6fe976922a16af3b0d67172c473d1fd4f1aa5d0af9c8ba6538c741f3af686f4" dependencies = [ "addr2line", "anyhow", - "bitflags 2.9.1", + "bitflags 2.9.4", "bumpalo", "cc", "cfg-if", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "indexmap", "libc", "log", @@ -6989,7 +7022,7 @@ dependencies = [ "once_cell", "postcard", "pulley-interpreter", - "rustix 1.0.7", + "rustix 1.1.2", "serde", "serde_derive", "smallvec", @@ -7060,7 +7093,7 @@ dependencies = [ "pulley-interpreter", "smallvec", "target-lexicon", - "thiserror 2.0.12", + "thiserror 2.0.16", "wasmparser 0.235.0", "wasmtime-environ", "wasmtime-internal-math", @@ -7077,7 +7110,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "rustix 1.0.7", + "rustix 1.1.2", "wasmtime-internal-asm-macros", "wasmtime-internal-versioned-export-macros", "windows-sys 0.59.0", @@ -7131,7 +7164,7 @@ checksum = "342b0466f92b7217a4de9e114175fedee1907028567d2548bcd42f71a8b5b016" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -7178,8 +7211,8 @@ checksum = "fc3ea480ce117a35b61e466e4f77422f2b29f744400e05de3ad87d73b8a1877c" dependencies = [ "anyhow", "async-trait", - "bitflags 2.9.1", - "thiserror 2.0.12", + "bitflags 2.9.4", + "thiserror 2.0.16", "tracing", "wasmtime", "wiggle-macro", @@ -7195,7 +7228,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "witx", ] @@ -7207,7 +7240,7 @@ checksum = "f5872fbe512b73acd514e7ef5bd5aee0ff951a12c1fed0293e1f7992de30df9f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "wiggle-generate", ] @@ -7229,11 +7262,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.0", ] [[package]] @@ -7255,7 +7288,7 @@ dependencies = [ "regalloc2", "smallvec", "target-lexicon", - "thiserror 2.0.12", + "thiserror 2.0.16", "wasmparser 0.235.0", "wasmtime-environ", "wasmtime-internal-cranelift", @@ -7264,13 +7297,13 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.61.2" +version = "0.62.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +checksum = "57fe7168f7de578d2d8a05b07fd61870d2e73b4020e9f49aa00da8471723497c" dependencies = [ "windows-implement", "windows-interface", - "windows-link", + "windows-link 0.2.0", "windows-result", "windows-strings", ] @@ -7283,7 +7316,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -7294,7 +7327,7 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -7303,22 +7336,28 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +[[package]] +name = "windows-link" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" + [[package]] name = "windows-result" -version = "0.3.4" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f" dependencies = [ - "windows-link", + "windows-link 0.2.0", ] [[package]] name = "windows-strings" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda" dependencies = [ - "windows-link", + "windows-link 0.2.0", ] [[package]] @@ -7336,7 +7375,16 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.2", + "windows-targets 0.53.3", +] + +[[package]] +name = "windows-sys" +version = "0.61.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -7357,10 +7405,11 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.2" +version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" +checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ + "windows-link 0.1.3", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -7469,9 +7518,9 @@ checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winnow" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" +checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" dependencies = [ "memchr", ] @@ -7482,18 +7531,15 @@ version = "0.36.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f3fd376f71958b862e7afb20cfe5a22830e1963462f3a17f49d82a6c1d1f42d" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "windows-sys 0.59.0", ] [[package]] -name = "wit-bindgen-rt" -version = "0.39.0" +name = "wit-bindgen" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.1", -] +checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "witx" @@ -7548,28 +7594,28 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -7589,7 +7635,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] @@ -7606,9 +7652,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.2" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b" dependencies = [ "yoke", "zerofrom", @@ -7623,5 +7669,5 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] diff --git a/rspack/crates/binding/rust-toolchain.toml b/rspack/crates/binding/rust-toolchain.toml deleted file mode 100644 index 7968dd60f531a..0000000000000 --- a/rspack/crates/binding/rust-toolchain.toml +++ /dev/null @@ -1,3 +0,0 @@ -[toolchain] -profile = "default" -channel = "nightly-2025-05-30" From 7950121e1cac0fa2e56d2fa3942c138810a66cc8 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 22:40:08 +0800 Subject: [PATCH 30/38] update workflow --- .github/workflows/release-next-rspack.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index e3d5deab524d0..e688fb3a8afe7 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -25,12 +25,11 @@ env: jobs: build: name: Build - uses: SyMind/rspack-toolchain/.github/workflows/build.yml@d86e48f6095dd7c2dfd71d0cb95761641a78d734 + uses: SyMind/rspack-toolchain/.github/workflows/build.yml@9253af6151b394a3ad70a603f1380e601ed3aba5 with: package-json-path: rspack/crates/binding/package.json napi-build-command: pnpm build --release working-directory: rspack - rust-toolchain: nightly-2025-05-30 release: runs-on: ubuntu-latest From 87fbd172f459159c71acbf0651e2f4aaeb59877d Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 23:12:57 +0800 Subject: [PATCH 31/38] fix cargo lock --- rspack/crates/binding/Cargo.lock | 1311 ++++++++++++++---------------- rspack/crates/binding/Cargo.toml | 3 + 2 files changed, 617 insertions(+), 697 deletions(-) diff --git a/rspack/crates/binding/Cargo.lock b/rspack/crates/binding/Cargo.lock index c8b9fb2d89143..85d97663924bb 100644 --- a/rspack/crates/binding/Cargo.lock +++ b/rspack/crates/binding/Cargo.lock @@ -23,9 +23,9 @@ dependencies = [ [[package]] name = "adler2" -version = "2.0.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" [[package]] name = "ahash" @@ -33,7 +33,7 @@ version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.15", "once_cell", "version_check", ] @@ -45,11 +45,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", - "getrandom 0.3.3", + "getrandom 0.3.2", "once_cell", "serde", "version_check", - "zerocopy", + "zerocopy 0.8.25", ] [[package]] @@ -73,6 +73,12 @@ version = "0.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + [[package]] name = "android_system_properties" version = "0.1.5" @@ -99,9 +105,9 @@ checksum = "170433209e817da6aae2c51aa0dd443009a613425dd041ebfb2492d1c4c11a25" [[package]] name = "arbitrary" -version = "1.4.2" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" +checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" [[package]] name = "arrayref" @@ -123,13 +129,13 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" [[package]] name = "ast_node" -version = "3.0.4" +version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a184645bcc6f52d69d8e7639720699c6a99efb711f886e251ed1d16db8dd90e" +checksum = "a1e2cddd48eafd883890770673b1971faceaf80a185445671abc3ea0c00593ee" dependencies = [ "quote", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -140,18 +146,18 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "async-trait" -version = "0.1.89" +version = "0.1.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -162,20 +168,20 @@ checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c" [[package]] name = "auto_impl" -version = "1.3.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "autocfg" -version = "1.5.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "backtrace" @@ -222,7 +228,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" dependencies = [ - "outref 0.5.2", + "outref 0.5.1", "vsimd", ] @@ -258,9 +264,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.4" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" dependencies = [ "serde", ] @@ -279,9 +285,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.2" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e" dependencies = [ "arrayref", "arrayvec", @@ -301,9 +307,9 @@ dependencies = [ [[package]] name = "browserslist-data" -version = "0.1.4" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e977366ea69a6e756ae616c0d5def0da9a3521fca5f91f447fdf613c928a15a" +checksum = "3f42db7dd1800856ac32d4a08c2915de9a9a2a72ce1fdd86189daed368729fd4" dependencies = [ "ahash 0.8.12", "chrono", @@ -328,9 +334,9 @@ dependencies = [ [[package]] name = "bstr" -version = "1.12.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +checksum = "786a307d683a5bf92e6fd5fd69a7eb613751668d1d8d67d802846dfe367c62c8" dependencies = [ "memchr", "serde", @@ -338,9 +344,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.19.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" dependencies = [ "allocator-api2", ] @@ -358,11 +364,11 @@ dependencies = [ [[package]] name = "bytecheck" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" +checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" dependencies = [ - "bytecheck_derive 0.8.1", + "bytecheck_derive 0.8.0", "ptr_meta 0.3.0", "rancor", "simdutf8", @@ -381,13 +387,13 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" +checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -415,11 +421,11 @@ dependencies = [ [[package]] name = "camino" -version = "1.2.0" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1de8bc0aa9e9385ceb3bf0c152e3a9b9544f6c4a912c8ae504e80c1f0368603" +checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" dependencies = [ - "serde_core", + "serde", ] [[package]] @@ -446,7 +452,7 @@ dependencies = [ "io-lifetimes", "ipnet", "maybe-owned", - "rustix 1.1.2", + "rustix 1.0.8", "rustix-linux-procfs", "windows-sys 0.59.0", "winx", @@ -471,7 +477,7 @@ dependencies = [ "cap-primitives", "io-extras", "io-lifetimes", - "rustix 1.1.2", + "rustix 1.0.8", ] [[package]] @@ -484,7 +490,7 @@ dependencies = [ "cap-primitives", "iana-time-zone", "once_cell", - "rustix 1.1.2", + "rustix 1.0.8", "winx", ] @@ -499,61 +505,67 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.19.2" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" +checksum = "8769706aad5d996120af43197bf46ef6ad0fda35216b4505f926a365a232d924" dependencies = [ "camino", "cargo-platform", "semver", "serde", "serde_json", - "thiserror 2.0.16", + "thiserror 2.0.12", ] [[package]] name = "castaway" -version = "0.2.4" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a" +checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" dependencies = [ "rustversion", ] [[package]] name = "cc" -version = "1.2.37" +version = "1.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44" +checksum = "32db95edf998450acc7881c932f94cd9b05c87b4b2599e8bab064753da4acfd1" dependencies = [ - "find-msvc-tools", "shlex", ] [[package]] name = "cfg-if" -version = "1.0.3" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" [[package]] name = "chrono" -version = "0.4.42" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ + "android-tzdata", "iana-time-zone", "num-traits", - "windows-link 0.2.0", + "windows-targets 0.52.6", ] +[[package]] +name = "clean-path" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aaa6b4b263a5d737e9bf6b7c09b72c41a5480aec4d7219af827f6564e950b6a5" + [[package]] name = "cobs" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fa961b519f0b462e3a3b4a34b64d119eeaca1d59af726fe450bbba07a9fc0a1" dependencies = [ - "thiserror 2.0.16", + "thiserror 2.0.12", ] [[package]] @@ -586,14 +598,14 @@ dependencies = [ [[package]] name = "console" -version = "0.15.11" +version = "0.15.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" +checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width 0.2.1", + "unicode-width 0.2.0", "windows-sys 0.59.0", ] @@ -655,9 +667,9 @@ checksum = "417bef24afe1460300965a25ff4a24b8b45ad011948302ec221e8a0a81eb2c79" [[package]] name = "cpufeatures" -version = "0.2.17" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -715,7 +727,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli", - "hashbrown 0.15.5", + "hashbrown 0.15.2", "log", "pulley-interpreter", "regalloc2", @@ -801,9 +813,9 @@ checksum = "b530783809a55cb68d070e0de60cfbb3db0dc94c8850dd5725411422bedcf6bb" [[package]] name = "crc32fast" -version = "1.5.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] @@ -882,14 +894,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "ctor" -version = "0.4.3" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec09e802f5081de6157da9a75701d6c713d8dc3ba52571fd4bd25f412644e8a6" +checksum = "07e9666f4a9a948d4f1dff0c08a4512b0f7c86414b23960104c243c10d79f4c3" dependencies = [ "ctor-proc-macro", "dtor", @@ -897,15 +909,15 @@ dependencies = [ [[package]] name = "ctor-proc-macro" -version = "0.0.6" +version = "0.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2931af7e13dc045d8e9d26afccc6fa115d64e115c9c84b1166288b46f6782c2" +checksum = "4f211af61d8efdd104f96e57adf5e426ba1bc3ed7a4ead616e15e5881fd79c4d" [[package]] name = "darling" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ "darling_core", "darling_macro", @@ -913,27 +925,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "darling_macro" -version = "0.20.11" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -991,9 +1003,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.5.3" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" dependencies = [ "powerfmt", ] @@ -1016,7 +1028,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -1026,7 +1038,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -1046,7 +1058,7 @@ checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "unicode-xid", ] @@ -1060,27 +1072,6 @@ dependencies = [ "crypto-common", ] -[[package]] -name = "dirs" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.61.0", -] - [[package]] name = "displaydoc" version = "0.2.5" @@ -1089,14 +1080,14 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "dtoa" -version = "1.0.10" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" +checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" [[package]] name = "dtoa-short" @@ -1109,9 +1100,9 @@ dependencies = [ [[package]] name = "dtor" -version = "0.0.6" +version = "0.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97cbdf2ad6846025e8e25df05171abfb30e3ababa12ee0a0e44b9bbe570633a8" +checksum = "222ef136a1c687d4aa0395c175f2c4586e379924c352fd02f7870cf7de783c23" dependencies = [ "dtor-proc-macro", ] @@ -1130,15 +1121,15 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.20" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] name = "either" -version = "1.15.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" [[package]] name = "embedded-io" @@ -1166,18 +1157,18 @@ checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" [[package]] name = "equivalent" -version = "1.0.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.14" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.61.0", + "windows-sys 0.59.0", ] [[package]] @@ -1188,9 +1179,9 @@ checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" [[package]] name = "fancy-regex" -version = "0.16.1" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf04c5ec15464ace8355a7b440a33aece288993475556d461154d7a62ad9947c" +checksum = "6e24cb5a94bcae1e5408b0effca5cd7172ea3c5755049c5f3af4cd283a165298" dependencies = [ "bit-set", "regex-automata", @@ -1213,16 +1204,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce92ff622d6dadf7349484f42c93271a0d49b7cc4d466a936405bacbe10aa78" dependencies = [ "cfg-if", - "rustix 1.1.2", + "rustix 1.0.8", "windows-sys 0.59.0", ] -[[package]] -name = "find-msvc-tools" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d" - [[package]] name = "fixedbitset" version = "0.5.7" @@ -1252,9 +1237,9 @@ checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" [[package]] name = "form_urlencoded" -version = "1.2.2" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ "percent-encoding", ] @@ -1266,7 +1251,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "308530a56b099da144ebc5d8e179f343ad928fa2b3558d1eb3db9af18d6eff43" dependencies = [ "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -1276,7 +1261,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94e7099f6313ecacbe1256e8ff9d617b75d1bcb16a6fddef94866d225a01a14a" dependencies = [ "io-lifetimes", - "rustix 1.1.2", + "rustix 1.0.8", "windows-sys 0.59.0", ] @@ -1351,7 +1336,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -1396,27 +1381,27 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.3.3" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" dependencies = [ "cfg-if", "libc", "r-efi", - "wasi 0.14.7+wasi-0.2.4", + "wasi 0.14.2+wasi-0.2.4", ] [[package]] @@ -1432,9 +1417,9 @@ dependencies = [ [[package]] name = "glob" -version = "0.3.3" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" [[package]] name = "globset" @@ -1460,9 +1445,9 @@ dependencies = [ [[package]] name = "handlebars" -version = "6.3.2" +version = "6.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759e2d5aea3287cb1190c8ec394f42866cb5bf74fcbf213f354e3c856ea26098" +checksum = "3d6b224b95c1e668ac0270325ad563b2eef1469fbbb8959bc7c692c844b813d9" dependencies = [ "derive_builder", "log", @@ -1471,7 +1456,7 @@ dependencies = [ "pest_derive", "serde", "serde_json", - "thiserror 2.0.16", + "thiserror 2.0.12", ] [[package]] @@ -1504,9 +1489,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.5" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ "allocator-api2", "equivalent", @@ -1520,7 +1505,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.15.5", + "hashbrown 0.15.2", ] [[package]] @@ -1531,9 +1516,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.5.2" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" [[package]] name = "hex" @@ -1565,15 +1550,14 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.64" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", - "log", "wasm-bindgen", "windows-core", ] @@ -1589,22 +1573,21 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" dependencies = [ "displaydoc", - "potential_utf", "yoke", "zerofrom", "zerovec", ] [[package]] -name = "icu_locale_core" -version = "2.0.0" +name = "icu_locid" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" dependencies = [ "displaydoc", "litemap", @@ -1613,11 +1596,31 @@ dependencies = [ "zerovec", ] +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" dependencies = [ "displaydoc", "icu_collections", @@ -1625,54 +1628,67 @@ dependencies = [ "icu_properties", "icu_provider", "smallvec", + "utf16_iter", + "utf8_iter", + "write16", "zerovec", ] [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" [[package]] name = "icu_properties" -version = "2.0.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" dependencies = [ "displaydoc", "icu_collections", - "icu_locale_core", + "icu_locid_transform", "icu_properties_data", "icu_provider", - "potential_utf", - "zerotrie", + "tinystr", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" [[package]] name = "icu_provider" -version = "2.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" dependencies = [ "displaydoc", - "icu_locale_core", + "icu_locid", + "icu_provider_macros", "stable_deref_trait", "tinystr", "writeable", "yoke", "zerofrom", - "zerotrie", "zerovec", ] +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", +] + [[package]] name = "ident_case" version = "1.0.1" @@ -1681,9 +1697,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.1.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" dependencies = [ "idna_adapter", "smallvec", @@ -1692,9 +1708,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ "icu_normalizer", "icu_properties", @@ -1702,41 +1718,40 @@ dependencies = [ [[package]] name = "if_chain" -version = "1.0.3" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb" +checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" [[package]] name = "indexmap" -version = "2.11.3" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92119844f513ffa41556430369ab02c295a3578af21cf945caa3e9e0c2481ac3" +checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.15.2", "rayon", "serde", - "serde_core", ] [[package]] name = "indicatif" -version = "0.17.11" +version = "0.17.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" +checksum = "cbf675b85ed934d3c67b5c5469701eec7db22689d0a2139d856e0925fa28b281" dependencies = [ "console", "number_prefix", "portable-atomic", - "unicode-width 0.2.1", + "unicode-width 0.2.0", "web-time", ] [[package]] name = "indoc" -version = "2.0.6" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" [[package]] name = "inotify" @@ -1744,7 +1759,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "inotify-sys", "libc", ] @@ -1760,9 +1775,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.21" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" +checksum = "3b31349d02fe60f80bbbab1a9402364cad7460626d6030494b08ac4a2075bf81" dependencies = [ "rustversion", ] @@ -1783,22 +1798,11 @@ version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06432fb54d3be7964ecd3649233cddf80db2832f47fec34c01f65b3d9d774983" -[[package]] -name = "io-uring" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" -dependencies = [ - "bitflags 2.9.4", - "cfg-if", - "libc", -] - [[package]] name = "ipnet" -version = "2.11.0" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" [[package]] name = "is-macro" @@ -1809,7 +1813,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -1847,15 +1851,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "js-sys" -version = "0.3.80" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852f13bec5eba4ba9afbeb93fd7c13fe56147f055939ae21c43a29a0ecb2702e" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ "once_cell", "wasm-bindgen", @@ -1878,9 +1882,9 @@ dependencies = [ [[package]] name = "jsonc-parser" -version = "0.26.3" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6d80e6d70e7911a29f3cf3f44f452df85d06f73572b494ca99a2cad3fcf8f4" +checksum = "b558af6b49fd918e970471374e7a798b2c9bbcda624a210ffa3901ee5614bc8e" dependencies = [ "serde_json", ] @@ -1925,18 +1929,18 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.175" +version = "0.2.169" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" [[package]] name = "libloading" -version = "0.8.8" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", - "windows-targets 0.53.3", + "windows-targets 0.52.6", ] [[package]] @@ -1945,16 +1949,6 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" -[[package]] -name = "libredox" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" -dependencies = [ - "bitflags 2.9.4", - "libc", -] - [[package]] name = "lightningcss" version = "1.0.0-alpha.67" @@ -1962,12 +1956,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "798fba4e1205eed356b8ed7754cc3f7f04914e27855ca641409f4a532e992149" dependencies = [ "ahash 0.8.12", - "bitflags 2.9.4", + "bitflags 2.9.1", "const-str", "cssparser", "cssparser-color", "data-encoding", - "getrandom 0.2.16", + "getrandom 0.2.15", "indexmap", "itertools 0.10.5", "lazy_static", @@ -2010,27 +2004,27 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.4.15" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" [[package]] name = "litemap" -version = "0.8.0" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" [[package]] name = "lock_api" -version = "0.4.13" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ "autocfg", "scopeguard", @@ -2038,9 +2032,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.28" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "lru" @@ -2053,9 +2047,9 @@ dependencies = [ [[package]] name = "mach2" -version = "0.4.3" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" +checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" dependencies = [ "libc", ] @@ -2098,11 +2092,11 @@ checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "memfd" -version = "0.6.5" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227" +checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 1.1.2", + "rustix 0.38.42", ] [[package]] @@ -2118,9 +2112,9 @@ dependencies = [ [[package]] name = "miette" -version = "7.6.0" +version = "7.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f98efec8807c63c752b5bd61f862c165c115b0a35685bdcfd9238c7aeb592b7" +checksum = "1a955165f87b37fd1862df2a59547ac542c77ef6d17c666f619d1ad22dd89484" dependencies = [ "backtrace", "backtrace-ext", @@ -2132,18 +2126,19 @@ dependencies = [ "supports-unicode", "terminal_size", "textwrap", + "thiserror 1.0.69", "unicode-width 0.1.14", ] [[package]] name = "miette-derive" -version = "7.6.0" +version = "7.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db5b29714e950dbb20d5e6f74f9dcec4edbcc1067bb7f8ed198c097b8c1a818b" +checksum = "bf45bf44ab49be92fd1227a3be6fc6f617f1a337c06af54981048574d8783147" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -2179,43 +2174,43 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.9" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" dependencies = [ "adler2", ] [[package]] name = "mio" -version = "1.0.4" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", "log", - "wasi 0.11.1+wasi-snapshot-preview1", - "windows-sys 0.59.0", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.52.0", ] [[package]] name = "munge" -version = "0.4.6" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7feb0b48aa0a25f9fe0899482c6e1379ee7a11b24a53073eacdecb9adb6dc60" +checksum = "64142d38c84badf60abf06ff9bd80ad2174306a5b11bd4706535090a30a419df" dependencies = [ "munge_macro", ] [[package]] name = "munge_macro" -version = "0.4.6" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2e3795a5d2da581a8b252fec6022eee01aea10161a4d1bf237d4cbe47f7e988" +checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -2225,7 +2220,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef68062665fc682e32a4f4c492e0f18c1a11bfdc63628a5e16ae9f1f7a9d660a" dependencies = [ "anyhow", - "bitflags 2.9.4", + "bitflags 2.9.1", "ctor", "napi-build", "napi-sys", @@ -2253,7 +2248,7 @@ dependencies = [ "napi-derive-backend", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -2266,7 +2261,7 @@ dependencies = [ "proc-macro2", "quote", "semver", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -2288,6 +2283,7 @@ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" name = "next-rspack-binding" version = "0.0.0" dependencies = [ + "anyhow", "napi", "napi-derive", "next-taskless", @@ -2302,6 +2298,9 @@ dependencies = [ "rspack_regex", "rspack_sources", "rustc-hash", + "serde", + "serde_json", + "swc_core", ] [[package]] @@ -2350,11 +2349,11 @@ dependencies = [ [[package]] name = "notify" -version = "8.2.0" +version = "8.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" +checksum = "3163f59cd3fa0e9ef8c32f242966a7b9994fd7378366099593e0e73077cd8c97" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "fsevent-sys", "inotify", "kqueue", @@ -2424,9 +2423,9 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.17.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ "hermit-abi", "libc", @@ -2454,7 +2453,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "crc32fast", - "hashbrown 0.15.5", + "hashbrown 0.15.2", "indexmap", "memchr", ] @@ -2467,15 +2466,9 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "oneshot" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce411919553d3f9fa53a0880544cda985a112117a0444d5ff1e870a893d6ea" - -[[package]] -name = "option-ext" -version = "0.2.0" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" +checksum = "e296cf87e61c9cfc1a61c3c63a0f7f286ed4554e0e22be84e8a38e1d264a2a29" [[package]] name = "outref" @@ -2485,15 +2478,15 @@ checksum = "7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4" [[package]] name = "outref" -version = "0.5.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" +checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" [[package]] name = "owo-colors" -version = "4.2.2" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48dd4f4a2c8405440fd0462561f0e5806bd0f77e86f51c761481bdd4018b545e" +checksum = "fb37767f6569cd834a413442455e0f066d0d522de8630436e2a1761d9726ba56" [[package]] name = "par-core" @@ -2521,7 +2514,7 @@ version = "0.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54fd03f1ad26cb6b3ec1b7414fa78a3bd639e7dbb421b1a60513c96ce886a196" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "cssparser", "log", "phf", @@ -2559,9 +2552,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.11" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", @@ -2588,6 +2581,12 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" +[[package]] +name = "path-slash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" + [[package]] name = "pathdiff" version = "0.2.3" @@ -2599,26 +2598,26 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.2" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.8.2" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21e0a3a33733faeaf8651dfee72dd0f388f0c8e5ad496a3478fa5a922f49cfa8" +checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.16", + "thiserror 2.0.12", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.8.2" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc58706f770acb1dbd0973e6530a3cff4746fb721207feb3a8a6064cd0b6c663" +checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e" dependencies = [ "pest", "pest_generator", @@ -2626,23 +2625,24 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.8.2" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d4f36811dfe07f7b8573462465d5cb8965fffc2e71ae377a33aecf14c2c9a2f" +checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "pest_meta" -version = "2.8.2" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42919b05089acbd0a5dcd5405fb304d17d1053847b81163d09c4ad18ce8e8420" +checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea" dependencies = [ + "once_cell", "pest", "sha2", ] @@ -2659,9 +2659,9 @@ dependencies = [ [[package]] name = "phf" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" dependencies = [ "phf_macros", "phf_shared", @@ -2669,9 +2669,9 @@ dependencies = [ [[package]] name = "phf_codegen" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" +checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a" dependencies = [ "phf_generator", "phf_shared", @@ -2679,9 +2679,9 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ "phf_shared", "rand", @@ -2689,31 +2689,31 @@ dependencies = [ [[package]] name = "phf_macros" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" dependencies = [ "phf_generator", "phf_shared", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "phf_shared" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" dependencies = [ - "siphasher 1.0.1", + "siphasher", ] [[package]] name = "pin-project-lite" -version = "0.2.16" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" [[package]] name = "pin-utils" @@ -2723,28 +2723,29 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pnp" -version = "0.12.3" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a10a726fb86dab6571b148c0f52cf619a4aabf0ac4fcf578bd4cd2178fb0e6d0" +checksum = "ab3167cbab15e437e9c7db8a4cf613eb4a77583d4327a8964d50fedd6cf364bd" dependencies = [ "byteorder", + "clean-path", "concurrent_lru", - "dirs", "fancy-regex", "miniz_oxide", + "path-slash", "pathdiff", "radix_trie", "rustc-hash", "serde", "serde_json", - "thiserror 2.0.16", + "thiserror 2.0.12", ] [[package]] name = "portable-atomic" -version = "1.11.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" [[package]] name = "postcard" @@ -2758,15 +2759,6 @@ dependencies = [ "serde", ] -[[package]] -name = "potential_utf" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" -dependencies = [ - "zerovec", -] - [[package]] name = "powerfmt" version = "0.2.0" @@ -2775,11 +2767,11 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.21" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -2814,9 +2806,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.101" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -2841,14 +2833,14 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "psm" -version = "0.1.26" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e944464ec8536cd1beb0bbfd96987eb5e3b72f2ecdafdc5c769a37f1fa2ae1f" +checksum = "200b9ff220857e53e184257720a14553b2f4aa02577d2ed9842d45d4b9654810" dependencies = [ "cc", ] @@ -2890,7 +2882,7 @@ checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -2913,23 +2905,23 @@ checksum = "938543690519c20c3a480d20a8efcc8e69abeb44093ab1df4e7c1f81f26c677a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "quote" -version = "1.0.40" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ "proc-macro2", ] [[package]] name = "r-efi" -version = "5.3.0" +version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" [[package]] name = "radium" @@ -2989,14 +2981,14 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.15", ] [[package]] name = "rayon" -version = "1.11.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ "either", "rayon-core", @@ -3004,9 +2996,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.13.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -3014,42 +3006,31 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.17" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" +checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" dependencies = [ - "bitflags 2.9.4", -] - -[[package]] -name = "redox_users" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" -dependencies = [ - "getrandom 0.2.16", - "libredox", - "thiserror 2.0.16", + "bitflags 2.9.1", ] [[package]] name = "ref-cast" -version = "1.0.24" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +checksum = "ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.24" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -3060,7 +3041,7 @@ checksum = "5216b1837de2149f8bc8e6d5f88a9326b63b8c836ed58ce4a0a29ec736a59734" dependencies = [ "allocator-api2", "bumpalo", - "hashbrown 0.15.5", + "hashbrown 0.15.2", "log", "rustc-hash", "smallvec", @@ -3068,9 +3049,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.2" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ "aho-corasick", "memchr", @@ -3080,9 +3061,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ "aho-corasick", "memchr", @@ -3091,9 +3072,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.6" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "regress" @@ -3101,7 +3082,7 @@ version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "145bb27393fe455dd64d6cbc8d059adfa392590a45eadf079c01b11857e7b010" dependencies = [ - "hashbrown 0.15.5", + "hashbrown 0.15.2", "memchr", ] @@ -3120,7 +3101,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" dependencies = [ - "bytecheck 0.8.1", + "bytecheck 0.8.0", ] [[package]] @@ -3147,7 +3128,7 @@ version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "395027076c569819ea6035ee62e664f5e03d74e281744f55261dd1afd939212b" dependencies = [ - "bytecheck 0.8.1", + "bytecheck 0.8.0", "bytes", "hashbrown 0.14.5", "indexmap", @@ -3179,7 +3160,7 @@ checksum = "09cb82b74b4810f07e460852c32f522e979787691b0b7b7439fe473e49d49b2f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -3349,7 +3330,7 @@ dependencies = [ "proc-macro2", "quote", "rspack_binding_builder", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -3412,7 +3393,7 @@ dependencies = [ "anymap3", "async-recursion", "async-trait", - "bitflags 2.9.4", + "bitflags 2.9.1", "cow-utils", "dashmap 6.1.0", "derive_more", @@ -3495,7 +3476,7 @@ dependencies = [ "serde_json", "termcolor", "textwrap", - "unicode-width 0.2.1", + "unicode-width 0.2.0", ] [[package]] @@ -3741,7 +3722,7 @@ checksum = "8517a2bf3f8c90ab2875606f49c1dc0d47120be55ed4c39f200e9e2812e49ccf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -3765,7 +3746,7 @@ checksum = "1c3da7a6ffee9338e72b4a56b1246304c227962be3f1294e5c627d41c01b882b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -4116,7 +4097,7 @@ checksum = "9c180f77ba99f23cdeb40f526248281e8f35fd0f388dd014c8c254ef41d83c94" dependencies = [ "anymap3", "async-trait", - "bitflags 2.9.4", + "bitflags 2.9.1", "cow-utils", "either", "fast-glob", @@ -4660,7 +4641,7 @@ dependencies = [ "swc_core", "tokio", "tracing", - "wasmparser 0.222.1", + "wasmparser 0.222.0", ] [[package]] @@ -4702,9 +4683,9 @@ dependencies = [ [[package]] name = "rspack_resolver" -version = "0.6.3" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8680fe2525e9823c41cd53103aa27a2d1a22f412ea00913a91d5dd300a2d767" +checksum = "fbe5f72302219f584a16ffabdc8f89a4fc245d7c8b185df09db9fc11d55ac846" dependencies = [ "async-trait", "cfg-if", @@ -4821,7 +4802,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5781120e913abbcdd06139d8ce56f04f0ad65c418cb4e8f7ebe10661159391e" dependencies = [ "anyhow", - "bitflags 2.9.4", + "bitflags 2.9.1", "concat-string", "cow-utils", "dashmap 6.1.0", @@ -4854,9 +4835,9 @@ checksum = "2e601a80cfcfb611797d42db40c64575c67a50355d2f9ad2dff95e38c6bcc876" [[package]] name = "rustc-demangle" -version = "0.1.26" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -4866,28 +4847,28 @@ checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rustix" -version = "0.38.44" +version = "0.38.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" +checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "errno", "libc", - "linux-raw-sys 0.4.15", + "linux-raw-sys 0.4.14", "windows-sys 0.59.0", ] [[package]] name = "rustix" -version = "1.1.2" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" +checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "errno", "libc", - "linux-raw-sys 0.11.0", - "windows-sys 0.61.0", + "linux-raw-sys 0.9.4", + "windows-sys 0.60.2", ] [[package]] @@ -4897,20 +4878,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fc84bf7e9aa16c4f2c758f27412dc9841341e16aa682d9c7ac308fe3ee12056" dependencies = [ "once_cell", - "rustix 1.1.2", + "rustix 1.0.8", ] [[package]] name = "rustversion" -version = "1.0.22" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "ryu-js" @@ -4947,12 +4928,11 @@ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" [[package]] name = "semver" -version = "1.0.27" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" dependencies = [ "serde", - "serde_core", ] [[package]] @@ -4963,46 +4943,35 @@ checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" [[package]] name = "serde" -version = "1.0.225" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d" -dependencies = [ - "serde_core", - "serde_derive", -] - -[[package]] -name = "serde_core" -version = "1.0.225" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.225" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "serde_json" -version = "1.0.145" +version = "1.0.143" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" dependencies = [ "indexmap", "itoa", "memchr", "ryu", "serde", - "serde_core", ] [[package]] @@ -5018,9 +4987,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.9" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -5057,7 +5026,7 @@ version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa2bcf6c6e164e81bc7a5d49fc6988b3d515d9e8c07457d7b74ffb9324b9cd40" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.15", "halfbrown", "ref-cast", "serde", @@ -5078,23 +5047,20 @@ version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" -[[package]] -name = "siphasher" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" - [[package]] name = "slab" -version = "0.4.11" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] [[package]] name = "smallvec" -version = "1.15.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" dependencies = [ "serde", ] @@ -5134,9 +5100,9 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stacker" -version = "0.1.21" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cddb07e32ddb770749da91081d8d0ac3a16f1a569a18b20348cd371f5dead06b" +checksum = "799c883d55abdb5e98af1a7b3f23b9b6de8ecada0ecac058672d7635eb48ca7b" dependencies = [ "cc", "cfg-if", @@ -5153,7 +5119,7 @@ checksum = "710e9696ef338691287aeb937ee6ffe60022f579d3c8d2fd9d58973a9a10a466" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -5198,7 +5164,7 @@ checksum = "ae36a4951ca7bd1cfd991c241584a9824a70f6aff1e7d4f693fb3f2465e4030e" dependencies = [ "quote", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -5303,7 +5269,7 @@ version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3500dcf04c84606b38464561edc5e46f5132201cb3e23cf9613ed4033d6b1bb2" dependencies = [ - "bytecheck 0.8.1", + "bytecheck 0.8.0", "hstr", "once_cell", "rancor", @@ -5313,14 +5279,14 @@ dependencies = [ [[package]] name = "swc_common" -version = "14.0.4" +version = "14.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2bb772b3a26b8b71d4e8c112ced5b5867be2266364b58517407a270328a2696" +checksum = "63fdb58d278e7cd625f671e5371b3e6c0eab56c6e2a995a6f70dd0f7725255d4" dependencies = [ "anyhow", "ast_node", "better_scoped_tls", - "bytecheck 0.8.1", + "bytecheck 0.8.0", "bytes-str", "either", "from_variant", @@ -5332,7 +5298,7 @@ dependencies = [ "rkyv 0.8.8", "rustc-hash", "serde", - "siphasher 0.3.11", + "siphasher", "swc_atoms", "swc_eq_ignore_macros", "swc_sourcemap", @@ -5370,9 +5336,9 @@ dependencies = [ [[package]] name = "swc_config" -version = "3.1.2" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72e90b52ee734ded867104612218101722ad87ff4cf74fe30383bd244a533f97" +checksum = "d94f41e0f3c4c119a06af5e164674b63ae7eb6d7c1c60e46036c4a548f9fbe44" dependencies = [ "anyhow", "bytes-str", @@ -5398,14 +5364,14 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "swc_core" -version = "39.0.3" +version = "39.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ad087b00477b9d310b5ebfa26acb867be338765558632597976ee56c898b63" +checksum = "a4d7c1029aeb69995d8a8babb64a8359846023d7237985cd0693d2d3c3964b3e" dependencies = [ "par-core", "swc", @@ -5436,8 +5402,8 @@ version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65c25af97d53cf8aab66a6c68f3418663313fc969ad267fc2a4d19402c329be1" dependencies = [ - "bitflags 2.9.4", - "bytecheck 0.8.1", + "bitflags 2.9.1", + "bytecheck 0.8.0", "is-macro", "num-bigint", "once_cell", @@ -5455,9 +5421,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "17.0.2" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcf55c2d7555c93f4945e29f93b7529562be97ba16e60dd94c25724d746174ac" +checksum = "b91da8222bd2e868a6977ef402b3ca5c29a41d18cd84772441d9e06ec95ded1f" dependencies = [ "ascii", "compact_str", @@ -5485,7 +5451,7 @@ checksum = "e276dc62c0a2625a560397827989c82a93fd545fcf6f7faec0935a82cc4ddbb8" dependencies = [ "proc-macro2", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -5681,7 +5647,7 @@ version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2e2c5abb053281fa1dd99f4ce1e4c062bb18fed4cc24a2eada80d4160212e28" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "rustc-hash", "swc_atoms", "swc_common", @@ -5713,7 +5679,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67c3bd958a5a67e2cc3f74abdd41fda688e54e7a25b866569260ef7018b67972" dependencies = [ "arrayvec", - "bitflags 2.9.4", + "bitflags 2.9.1", "either", "num-bigint", "phf", @@ -5753,12 +5719,12 @@ dependencies = [ [[package]] name = "swc_ecma_minifier" -version = "32.0.4" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "542307ff72ff381de86b815f1cceb69f6a98ee683b0635658a8ce1e07baaa703" +checksum = "d7dbb3fdcfdac1ff33db709149fc717e3ae4b09a76360a8c7c996dc80bb12a7e" dependencies = [ "arrayvec", - "bitflags 2.9.4", + "bitflags 2.9.1", "indexmap", "num-bigint", "num_cpus", @@ -5789,9 +5755,9 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "24.0.1" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8079e65c43d8f3e64e791321355f5864322425fce3a3ab7fc959bbddb531933" +checksum = "37c0b41d7e86acb8abc1e75b39163a1dffd88f75b69d8f89a199dfc416bb46d6" dependencies = [ "either", "num-bigint", @@ -5843,7 +5809,7 @@ dependencies = [ "swc_ecma_ast", "swc_ecma_parser", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -5867,9 +5833,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "26.0.1" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0526b4e3d6cedb7e48c5026242809387676f836d4251235fa95165218bb8ce4" +checksum = "b6db893332e61360b330063c0d0e67d61b777832ece3980096fa8ad05c0101bd" dependencies = [ "better_scoped_tls", "indexmap", @@ -5939,7 +5905,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -5950,7 +5916,7 @@ checksum = "ea2b562a6db48b8ce932d54227ceab243137eb5220e0455937b1032b947b4cda" dependencies = [ "Inflector", "anyhow", - "bitflags 2.9.4", + "bitflags 2.9.1", "indexmap", "is-macro", "path-clean 1.0.1", @@ -6060,7 +6026,7 @@ version = "22.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8031a4473e5366165f23766f5bc8361c45e8ed57f7475c0227147727cbaf3342" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "indexmap", "rustc-hash", "swc_atoms", @@ -6114,7 +6080,7 @@ checksum = "c16ce73424a6316e95e09065ba6a207eba7765496fed113702278b7711d4b632" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6161,7 +6127,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d321188cc1279f9981681aadb77b877fc662e83a8841903f51bd501b40ab5c31" dependencies = [ "auto_impl", - "bitflags 2.9.4", + "bitflags 2.9.1", "rustc-hash", "swc_atoms", "swc_common", @@ -6177,7 +6143,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f98ef1f87379c816ba7d22351c9fc993af38b034bce4da3286cfe4b17e7ec9e2" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6253,7 +6219,7 @@ checksum = "aae1efbaa74943dc5ad2a2fb16cbd78b77d7e4d63188f3c5b4df2b4dcd2faaae" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6275,7 +6241,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79e78029030baf942203f11eae0ea47c07367d167060ba4c55a202a1341366c5" dependencies = [ "better_scoped_tls", - "bytecheck 0.8.1", + "bytecheck 0.8.0", "rancor", "rkyv 0.8.8", "rustc-hash", @@ -6308,9 +6274,9 @@ dependencies = [ [[package]] name = "swc_sourcemap" -version = "9.3.4" +version = "9.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de08ef00f816acdd1a58ee8a81c0e1a59eefef2093aefe5611f256fa6b64c4d7" +checksum = "3cd6e0cad02163875258edaf9ae6004e2526be137bdde6a46c540515615949b1" dependencies = [ "base64-simd 0.8.0", "bitvec", @@ -6341,7 +6307,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfd2b4b0adb82e36f2ac688d00a6a67132c7f4170c772617516793a701be89e8" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6379,9 +6345,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.106" +version = "2.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a" dependencies = [ "proc-macro2", "quote", @@ -6390,13 +6356,13 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.13.2" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6405,12 +6371,12 @@ version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc4592f674ce18521c2a81483873a49596655b179f71c5e05d10c1fe66c78745" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "cap-fs-ext", "cap-std", "fd-lock", "io-lifetimes", - "rustix 0.38.44", + "rustix 0.38.42", "windows-sys 0.59.0", "winx", ] @@ -6423,9 +6389,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.13.3" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c" +checksum = "e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a" [[package]] name = "termcolor" @@ -6438,22 +6404,22 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.4.3" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" +checksum = "5352447f921fda68cf61b4101566c0bdb5104eff6804d0678e5227580ab6a4e9" dependencies = [ - "rustix 1.1.2", - "windows-sys 0.60.2", + "rustix 0.38.42", + "windows-sys 0.59.0", ] [[package]] name = "textwrap" -version = "0.16.2" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" +checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" dependencies = [ "unicode-linebreak", - "unicode-width 0.2.1", + "unicode-width 0.1.14", ] [[package]] @@ -6467,11 +6433,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.16" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl 2.0.16", + "thiserror-impl 2.0.12", ] [[package]] @@ -6482,36 +6448,38 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "thiserror-impl" -version = "2.0.16" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "thread_local" -version = "1.1.9" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ "cfg-if", + "once_cell", ] [[package]] name = "time" -version = "0.3.43" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83bde6f1ec10e72d583d91623c939f623002284ef622b87de38cfd546cbf2031" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", + "itoa", "libc", "num-conv", "num_threads", @@ -6523,15 +6491,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.6" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.24" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -6539,9 +6507,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.1" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" dependencies = [ "displaydoc", "zerovec", @@ -6549,9 +6517,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.10.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" dependencies = [ "tinyvec_macros", ] @@ -6564,17 +6532,13 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.47.1" +version = "1.44.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038" +checksum = "e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48" dependencies = [ "backtrace", - "io-uring", - "libc", - "mio", "parking_lot", "pin-project-lite", - "slab", "tokio-macros", "tracing", ] @@ -6587,7 +6551,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -6603,20 +6567,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.30" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] name = "tracing-core" -version = "0.1.34" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -6666,9 +6630,9 @@ version = "0.0.1" [[package]] name = "typenum" -version = "1.18.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" @@ -6684,15 +6648,15 @@ checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" [[package]] name = "unicode-id-start" -version = "1.4.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81b79ad29b5e19de4260020f8919b443b2ef0277d242ce532ec7b7a2cc8b6007" +checksum = "2f322b60f6b9736017344fa0635d64be2f458fbc04eef65f6be22976dd1ffd5b" [[package]] name = "unicode-ident" -version = "1.0.19" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-linebreak" @@ -6714,9 +6678,9 @@ checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-width" -version = "0.2.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" +checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" [[package]] name = "unicode-xid" @@ -6726,14 +6690,13 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "url" -version = "2.5.7" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" dependencies = [ "form_urlencoded", "idna", "percent-encoding", - "serde", ] [[package]] @@ -6755,6 +6718,12 @@ dependencies = [ "serde", ] +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + [[package]] name = "utf8-width" version = "0.1.7" @@ -6769,19 +6738,15 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" [[package]] name = "uuid" -version = "1.18.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" -dependencies = [ - "js-sys", - "wasm-bindgen", -] +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" [[package]] name = "valuable" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "value-trait" @@ -6797,9 +6762,9 @@ dependencies = [ [[package]] name = "vergen" -version = "9.0.6" +version = "9.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777" +checksum = "31f25fc8f8f05df455c7941e87f093ad22522a9ff33d7a027774815acf6f0639" dependencies = [ "anyhow", "cargo_metadata", @@ -6812,9 +6777,9 @@ dependencies = [ [[package]] name = "vergen-lib" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" +checksum = "c0c767e6751c09fc85cde58722cf2f1007e80e4c8d5a4321fc90d83dc54ca147" dependencies = [ "anyhow", "derive_builder", @@ -6851,17 +6816,17 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.1+wasi-snapshot-preview1" +version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasi" -version = "0.14.7+wasi-0.2.4" +version = "0.14.2+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" +checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" dependencies = [ - "wasip2", + "wit-bindgen-rt", ] [[package]] @@ -6871,7 +6836,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f17747bf7f2275572f4e3ed884e8143285a711fbf25999244d61644fe212340" dependencies = [ "anyhow", - "bitflags 2.9.4", + "bitflags 2.9.1", "cap-fs-ext", "cap-rand", "cap-std", @@ -6880,56 +6845,46 @@ dependencies = [ "io-extras", "io-lifetimes", "log", - "rustix 1.1.2", + "rustix 1.0.8", "system-interface", - "thiserror 2.0.16", + "thiserror 2.0.12", "tracing", "wasmtime", "wiggle", "windows-sys 0.59.0", ] -[[package]] -name = "wasip2" -version = "1.0.1+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" -dependencies = [ - "wit-bindgen", -] - [[package]] name = "wasm-bindgen" -version = "0.2.103" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab10a69fbd0a177f5f649ad4d8d3305499c42bab9aef2f7ff592d0ec8f833819" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", - "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.103" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bb702423545a6007bbc368fde243ba47ca275e549c8a28617f56f6ba53b1d1c" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.103" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc65f4f411d91494355917b605e1480033152658d71f722a90647f56a70c88a0" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -6937,22 +6892,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.103" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc003a991398a8ee604a401e194b6b3a39677b3173d6e74495eb51b82e99a32" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.103" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "293c37f4efa430ca14db3721dfbe48d8c33308096bd44d80ebaa775ab71ba1cf" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" dependencies = [ "unicode-ident", ] @@ -6969,11 +6924,11 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.222.1" +version = "0.222.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa210fd1788e6b37a1d1930f3389c48e1d6ebd1a013d34fa4b7f9e3e3bf03146" +checksum = "4adf50fde1b1a49c1add6a80d47aea500c88db70551805853aa8b88f3ea27ab5" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", ] [[package]] @@ -6982,8 +6937,8 @@ version = "0.235.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" dependencies = [ - "bitflags 2.9.4", - "hashbrown 0.15.5", + "bitflags 2.9.1", + "hashbrown 0.15.2", "indexmap", "semver", "serde", @@ -7008,11 +6963,11 @@ checksum = "b6fe976922a16af3b0d67172c473d1fd4f1aa5d0af9c8ba6538c741f3af686f4" dependencies = [ "addr2line", "anyhow", - "bitflags 2.9.4", + "bitflags 2.9.1", "bumpalo", "cc", "cfg-if", - "hashbrown 0.15.5", + "hashbrown 0.15.2", "indexmap", "libc", "log", @@ -7022,7 +6977,7 @@ dependencies = [ "once_cell", "postcard", "pulley-interpreter", - "rustix 1.1.2", + "rustix 1.0.8", "serde", "serde_derive", "smallvec", @@ -7093,7 +7048,7 @@ dependencies = [ "pulley-interpreter", "smallvec", "target-lexicon", - "thiserror 2.0.16", + "thiserror 2.0.12", "wasmparser 0.235.0", "wasmtime-environ", "wasmtime-internal-math", @@ -7110,7 +7065,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "rustix 1.1.2", + "rustix 1.0.8", "wasmtime-internal-asm-macros", "wasmtime-internal-versioned-export-macros", "windows-sys 0.59.0", @@ -7164,7 +7119,7 @@ checksum = "342b0466f92b7217a4de9e114175fedee1907028567d2548bcd42f71a8b5b016" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] [[package]] @@ -7211,8 +7166,8 @@ checksum = "fc3ea480ce117a35b61e466e4f77422f2b29f744400e05de3ad87d73b8a1877c" dependencies = [ "anyhow", "async-trait", - "bitflags 2.9.4", - "thiserror 2.0.16", + "bitflags 2.9.1", + "thiserror 2.0.12", "tracing", "wasmtime", "wiggle-macro", @@ -7228,7 +7183,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "witx", ] @@ -7240,7 +7195,7 @@ checksum = "f5872fbe512b73acd514e7ef5bd5aee0ff951a12c1fed0293e1f7992de30df9f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "wiggle-generate", ] @@ -7262,11 +7217,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.11" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.61.0", + "windows-sys 0.59.0", ] [[package]] @@ -7288,7 +7243,7 @@ dependencies = [ "regalloc2", "smallvec", "target-lexicon", - "thiserror 2.0.16", + "thiserror 2.0.12", "wasmparser 0.235.0", "wasmtime-environ", "wasmtime-internal-cranelift", @@ -7297,67 +7252,20 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.62.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57fe7168f7de578d2d8a05b07fd61870d2e73b4020e9f49aa00da8471723497c" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-implement", - "windows-interface", - "windows-link 0.2.0", - "windows-result", - "windows-strings", -] - -[[package]] -name = "windows-implement" -version = "0.60.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - -[[package]] -name = "windows-interface" -version = "0.59.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - -[[package]] -name = "windows-link" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" - -[[package]] -name = "windows-link" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" - -[[package]] -name = "windows-result" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f" -dependencies = [ - "windows-link 0.2.0", + "windows-targets 0.52.6", ] [[package]] -name = "windows-strings" -version = "0.5.0" +name = "windows-sys" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-link 0.2.0", + "windows-targets 0.52.6", ] [[package]] @@ -7375,16 +7283,7 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.3", -] - -[[package]] -name = "windows-sys" -version = "0.61.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" -dependencies = [ - "windows-link 0.2.0", + "windows-targets 0.53.2", ] [[package]] @@ -7405,11 +7304,10 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.3" +version = "0.53.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" dependencies = [ - "windows-link 0.1.3", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -7518,9 +7416,9 @@ checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winnow" -version = "0.7.13" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" +checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" dependencies = [ "memchr", ] @@ -7531,15 +7429,18 @@ version = "0.36.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f3fd376f71958b862e7afb20cfe5a22830e1963462f3a17f49d82a6c1d1f42d" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.9.1", "windows-sys 0.59.0", ] [[package]] -name = "wit-bindgen" -version = "0.46.0" +name = "wit-bindgen-rt" +version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" +checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +dependencies = [ + "bitflags 2.9.1", +] [[package]] name = "witx" @@ -7553,11 +7454,17 @@ dependencies = [ "wast", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + [[package]] name = "writeable" -version = "0.6.1" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] name = "wyz" @@ -7576,9 +7483,9 @@ checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" [[package]] name = "yoke" -version = "0.8.0" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" dependencies = [ "serde", "stable_deref_trait", @@ -7588,73 +7495,83 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.27" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ - "zerocopy-derive", + "byteorder", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" +dependencies = [ + "zerocopy-derive 0.8.25", ] [[package]] name = "zerocopy-derive" -version = "0.8.27" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.95", ] [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", "synstructure", ] -[[package]] -name = "zerotrie" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", -] - [[package]] name = "zerovec" -version = "0.11.4" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" dependencies = [ "yoke", "zerofrom", @@ -7663,11 +7580,11 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.95", ] diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index 6a7233e25f438..c7e170423284e 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -23,6 +23,9 @@ rustc-hash = { version = "2.1.1" } napi = { version = "=3.2.2" } napi-derive = { version = "=3.2.2" } +anyhow = { version = "1.0.95" } +serde_json = { version = "1.0.134" } + next-taskless = { path = "../../../crates/next-taskless" } # Enable SWC plugin feature for targets that support it From 6b6a225e6d127abf1041310c9942cbb7da0a096e Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Wed, 17 Sep 2025 23:20:11 +0800 Subject: [PATCH 32/38] ApplyContext --- rspack/crates/binding/src/next_externals_plugin.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/rspack/crates/binding/src/next_externals_plugin.rs b/rspack/crates/binding/src/next_externals_plugin.rs index 96890cd53da72..bc5819afda8b4 100644 --- a/rspack/crates/binding/src/next_externals_plugin.rs +++ b/rspack/crates/binding/src/next_externals_plugin.rs @@ -6,7 +6,7 @@ use std::{ use next_taskless::{BUN_EXTERNALS, EDGE_NODE_EXTERNALS, NODE_EXTERNALS}; use rspack_core::{ ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, - ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, PluginContext, + ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, ResolveOptionsWithDependencyType, ResolveResult, }; use rspack_error::ToStringResultToRspackResultExt; @@ -140,7 +140,7 @@ impl Plugin for NextExternalsPlugin { fn apply( &self, - ctx: PluginContext<&mut ApplyContext>, + ctx: &mut ApplyContext<'_>, options: &CompilerOptions, ) -> rspack_error::Result<()> { let is_client = self.compiler_type == "client"; @@ -266,8 +266,7 @@ impl Plugin for NextExternalsPlugin { .collect::>() }; - ExternalsPlugin::new(external_type, externals) - .apply(PluginContext::with_context(ctx.context), options)?; + ExternalsPlugin::new(external_type, externals).apply(&mut ctx, options)?; Ok(()) } From db1975edb5d118a60ab50290198ea8550ae4f711 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 09:44:36 +0800 Subject: [PATCH 33/38] use patch.crates-io for next-taskless --- rspack/.rustfmt.toml | 13 ++++++++++ rspack/{crates/binding => }/Cargo.lock | 2 -- rspack/Cargo.toml | 26 +++++++++++++++++++ rspack/crates/binding/Cargo.toml | 19 +------------- rspack/crates/binding/src/handle_externals.rs | 1 + .../binding/src/next_externals_plugin.rs | 10 +++---- rspack/crates/binding/tsconfig.json | 3 ++- 7 files changed, 46 insertions(+), 28 deletions(-) create mode 100644 rspack/.rustfmt.toml rename rspack/{crates/binding => }/Cargo.lock (99%) create mode 100644 rspack/Cargo.toml diff --git a/rspack/.rustfmt.toml b/rspack/.rustfmt.toml new file mode 100644 index 0000000000000..75b28121a6d21 --- /dev/null +++ b/rspack/.rustfmt.toml @@ -0,0 +1,13 @@ +max_width = 100 + +comment_width = 100 +wrap_comments = true + +tab_spaces = 4 +hard_tabs = false + +format_strings = true +use_field_init_shorthand = true + +imports_granularity = "Crate" +group_imports = "StdExternalCrate" diff --git a/rspack/crates/binding/Cargo.lock b/rspack/Cargo.lock similarity index 99% rename from rspack/crates/binding/Cargo.lock rename to rspack/Cargo.lock index 85d97663924bb..c9a0b18eb52d9 100644 --- a/rspack/crates/binding/Cargo.lock +++ b/rspack/Cargo.lock @@ -2298,9 +2298,7 @@ dependencies = [ "rspack_regex", "rspack_sources", "rustc-hash", - "serde", "serde_json", - "swc_core", ] [[package]] diff --git a/rspack/Cargo.toml b/rspack/Cargo.toml new file mode 100644 index 0000000000000..1e01fe31f7657 --- /dev/null +++ b/rspack/Cargo.toml @@ -0,0 +1,26 @@ +[workspace] +resolver = "2" + +members = [ + "crates/binding" +] + +[patch.crates-io] +next-taskless = { path = "../crates/next-taskless" } + +# Copied from https://github.com/web-infra-dev/rspack/blob/main/Cargo.toml + +[profile.dev] +codegen-units = 16 +debug = 2 +incremental = true +panic = "abort" + +[profile.release] +codegen-units = 1 +debug = false +# Performs “fat” LTO which attempts to perform optimizations across all crates within the dependency graph. +lto = "fat" +opt-level = 3 +panic = "abort" +strip = true diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index c7e170423284e..e36c700b525ce 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -26,7 +26,7 @@ napi-derive = { version = "=3.2.2" } anyhow = { version = "1.0.95" } serde_json = { version = "1.0.134" } -next-taskless = { path = "../../../crates/next-taskless" } +next-taskless = { version = "0.0.1" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf @@ -36,20 +36,3 @@ rspack_binding_builder = { version = "=0.5.4", features = ["plugin"] } [build-dependencies] rspack_binding_build = { version = "=0.5.4" } -# Copied from https://github.com/web-infra-dev/rspack/blob/main/Cargo.toml - -[profile.dev] -codegen-units = 16 -debug = 2 -incremental = true -panic = "abort" - -[profile.release] -codegen-units = 1 -debug = false -# Performs “fat” LTO which attempts to perform optimizations across all crates within the dependency graph. -lto = "fat" -opt-level = 3 -panic = "abort" -strip = true - diff --git a/rspack/crates/binding/src/handle_externals.rs b/rspack/crates/binding/src/handle_externals.rs index fd7f5edfdc181..41dc2ca03b90c 100644 --- a/rspack/crates/binding/src/handle_externals.rs +++ b/rspack/crates/binding/src/handle_externals.rs @@ -94,6 +94,7 @@ static NODE_RESOLVE_OPTIONS: LazyLock = description_files: Some(vec!["package.json".to_string()]), enforce_extension: Some(false), pnp: None, + builtin_modules: false, })), resolve_to_context: false, dependency_category: DependencyCategory::CommonJS, diff --git a/rspack/crates/binding/src/next_externals_plugin.rs b/rspack/crates/binding/src/next_externals_plugin.rs index bc5819afda8b4..e5551115a59d8 100644 --- a/rspack/crates/binding/src/next_externals_plugin.rs +++ b/rspack/crates/binding/src/next_externals_plugin.rs @@ -5,7 +5,7 @@ use std::{ use next_taskless::{BUN_EXTERNALS, EDGE_NODE_EXTERNALS, NODE_EXTERNALS}; use rspack_core::{ - ApplyContext, CompilerOptions, DependencyCategory, ExternalItem, ExternalItemFnCtx, + ApplyContext, DependencyCategory, ExternalItem, ExternalItemFnCtx, ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, ResolveOptionsWithDependencyType, ResolveResult, }; @@ -138,11 +138,7 @@ impl Plugin for NextExternalsPlugin { "NextExternalsPlugin" } - fn apply( - &self, - ctx: &mut ApplyContext<'_>, - options: &CompilerOptions, - ) -> rspack_error::Result<()> { + fn apply(&self, ctx: &mut ApplyContext<'_>) -> rspack_error::Result<()> { let is_client = self.compiler_type == "client"; let is_edge_server = self.compiler_type == "edge-server"; @@ -266,7 +262,7 @@ impl Plugin for NextExternalsPlugin { .collect::>() }; - ExternalsPlugin::new(external_type, externals).apply(&mut ctx, options)?; + ExternalsPlugin::new(external_type, externals, false).apply(ctx)?; Ok(()) } diff --git a/rspack/crates/binding/tsconfig.json b/rspack/crates/binding/tsconfig.json index 3b5b8681e76c8..1b17231ec063c 100644 --- a/rspack/crates/binding/tsconfig.json +++ b/rspack/crates/binding/tsconfig.json @@ -2,6 +2,7 @@ "compilerOptions": { "module": "NodeNext", "allowJs": true, - "strict": true + "strict": true, + "outDir": "dist" } } From 0bfc98a554a3980ede31ba3e6e4168e1bd62d551 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 10:15:38 +0800 Subject: [PATCH 34/38] cargo fmt --- rspack/crates/binding/src/next_externals_plugin.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/rspack/crates/binding/src/next_externals_plugin.rs b/rspack/crates/binding/src/next_externals_plugin.rs index e5551115a59d8..27e8b3907e9a8 100644 --- a/rspack/crates/binding/src/next_externals_plugin.rs +++ b/rspack/crates/binding/src/next_externals_plugin.rs @@ -5,9 +5,8 @@ use std::{ use next_taskless::{BUN_EXTERNALS, EDGE_NODE_EXTERNALS, NODE_EXTERNALS}; use rspack_core::{ - ApplyContext, DependencyCategory, ExternalItem, ExternalItemFnCtx, - ExternalItemFnResult, ExternalItemObject, ExternalItemValue, Plugin, - ResolveOptionsWithDependencyType, ResolveResult, + ApplyContext, DependencyCategory, ExternalItem, ExternalItemFnCtx, ExternalItemFnResult, + ExternalItemObject, ExternalItemValue, Plugin, ResolveOptionsWithDependencyType, ResolveResult, }; use rspack_error::ToStringResultToRspackResultExt; use rspack_hook::plugin; From 53f60cc482de572672792c562a96080b06e509c0 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 11:14:56 +0800 Subject: [PATCH 35/38] fix build failed --- rspack/Cargo.toml | 3 --- rspack/crates/binding/Cargo.toml | 3 +-- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/rspack/Cargo.toml b/rspack/Cargo.toml index 1e01fe31f7657..d0e04d6d10715 100644 --- a/rspack/Cargo.toml +++ b/rspack/Cargo.toml @@ -5,9 +5,6 @@ members = [ "crates/binding" ] -[patch.crates-io] -next-taskless = { path = "../crates/next-taskless" } - # Copied from https://github.com/web-infra-dev/rspack/blob/main/Cargo.toml [profile.dev] diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index e36c700b525ce..38da9b8b147d7 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -25,8 +25,7 @@ napi-derive = { version = "=3.2.2" } anyhow = { version = "1.0.95" } serde_json = { version = "1.0.134" } - -next-taskless = { version = "0.0.1" } +next-taskless = { version = "0.0.1", path = "../../../crates/next-taskless" } # Enable SWC plugin feature for targets that support it # Skip: wasm32-wasip1-threads, i686-pc-windows-msvc, aarch64-pc-windows-msvc, armv7-linux-androideabi, armv7-unknown-linux-gnueabihf From bc65d09df8fe09a443189399e5cd28b0744ebfa7 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 11:38:45 +0800 Subject: [PATCH 36/38] fix: cross bug --- rspack/crates/binding/Cargo.toml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rspack/crates/binding/Cargo.toml b/rspack/crates/binding/Cargo.toml index 38da9b8b147d7..7a749a022ffed 100644 --- a/rspack/crates/binding/Cargo.toml +++ b/rspack/crates/binding/Cargo.toml @@ -35,3 +35,12 @@ rspack_binding_builder = { version = "=0.5.4", features = ["plugin"] } [build-dependencies] rspack_binding_build = { version = "=0.5.4" } +# Workaround for `cross` builds to resolve parent workspace dependencies. +# When cross-compiling, the build runs in an isolated container and can't find +# the root workspace (`../../../`), causing a "failed to find a workspace root" +# error for path dependencies like `next-taskless`. +# This mounts the parent directory into the container, making the root `Cargo.toml` visible. +# See: https://github.com/cross-rs/cross/issues/1181 +[package.metadata.cross.build.env] +volumes = ["NEXT-TASKLESS_DEP=../../.."] + From 8afa6dc349bbc8fd052c5c672db1a7f6b37c6ed0 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 12:00:39 +0800 Subject: [PATCH 37/38] update rspack-toolchain --- .github/workflows/release-next-rspack.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index e688fb3a8afe7..726115fd31b3b 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -25,7 +25,7 @@ env: jobs: build: name: Build - uses: SyMind/rspack-toolchain/.github/workflows/build.yml@9253af6151b394a3ad70a603f1380e601ed3aba5 + uses: rspack-contrib/rspack-toolchain/.github/workflows/build.yml@f69dc04fcae6b38d97b87acef448ed7a285b01cc with: package-json-path: rspack/crates/binding/package.json napi-build-command: pnpm build --release From f38d5b53a1580f643fcf2333a0d875c51b3e9dc8 Mon Sep 17 00:00:00 2001 From: Cong-Cong Date: Thu, 18 Sep 2025 12:04:09 +0800 Subject: [PATCH 38/38] chore: update rspack-contrib --- .github/workflows/release-next-rspack.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-next-rspack.yml b/.github/workflows/release-next-rspack.yml index 726115fd31b3b..e80064a76796f 100644 --- a/.github/workflows/release-next-rspack.yml +++ b/.github/workflows/release-next-rspack.yml @@ -80,12 +80,12 @@ jobs: - name: Get NAPI info id: napi-info - uses: rspack-contrib/rspack-toolchain/get-napi-info@v1.0.3 + uses: rspack-contrib/rspack-toolchain/get-napi-info@f69dc04fcae6b38d97b87acef448ed7a285b01cc with: package-json-path: rspack/crates/binding/package.json - name: Download rspack binding - uses: rspack-contrib/rspack-toolchain/download-rspack-binding@v1.0.3 + uses: rspack-contrib/rspack-toolchain/download-rspack-binding@f69dc04fcae6b38d97b87acef448ed7a285b01cc with: path: ${{ steps.napi-info.outputs.binding-directory }}/artifacts @@ -122,4 +122,3 @@ jobs: run: | pnpm publish -r --tag ${{ inputs.npm-tag }} --no-git-checks --provenance --access public ${{ inputs.dry-run && '--dry-run' || '' }} working-directory: ./rspack -