diff --git a/crates/next-api/src/app.rs b/crates/next-api/src/app.rs index 5b5b8e3e5ebc7..47bf32ccd06a7 100644 --- a/crates/next-api/src/app.rs +++ b/crates/next-api/src/app.rs @@ -1634,7 +1634,7 @@ impl AppEndpoint { .edge_rsc_runtime_entries() .await? .clone_value(); - let evaluatable = ResolvedVc::try_sidecast_sync(app_entry.rsc_entry) + let evaluatable = ResolvedVc::try_sidecast(app_entry.rsc_entry) .context("Entry module must be evaluatable")?; evaluatable_assets.push(evaluatable); evaluatable_assets.push(server_action_manifest_loader); @@ -1675,10 +1675,8 @@ impl AppEndpoint { .server_utils .iter() .map(|m| async move { - Ok( - *ResolvedVc::try_downcast_sync::>(*m) - .context("Expected server utils to be chunkable")?, - ) + Ok(*ResolvedVc::try_downcast::>(*m) + .context("Expected server utils to be chunkable")?) }) .try_join() .await?; diff --git a/crates/next-api/src/client_references.rs b/crates/next-api/src/client_references.rs index 2311b5d3bebba..e64f29119d430 100644 --- a/crates/next-api/src/client_references.rs +++ b/crates/next-api/src/client_references.rs @@ -39,7 +39,7 @@ pub async fn map_client_references( let module = node.module; if let Some(client_reference_module) = - ResolvedVc::try_downcast_type_sync::(module) + ResolvedVc::try_downcast_type::(module) { Ok(Some(( module, @@ -49,7 +49,7 @@ pub async fn map_client_references( }, ))) } else if let Some(client_reference_module) = - ResolvedVc::try_downcast_type_sync::(module) + ResolvedVc::try_downcast_type::(module) { Ok(Some(( module, @@ -58,7 +58,7 @@ pub async fn map_client_references( )), ))) } else if let Some(server_component) = - ResolvedVc::try_downcast_type_sync::(module) + ResolvedVc::try_downcast_type::(module) { Ok(Some(( module, diff --git a/crates/next-api/src/dynamic_imports.rs b/crates/next-api/src/dynamic_imports.rs index b4af8fd79f5ab..9a1b1e90e374c 100644 --- a/crates/next-api/src/dynamic_imports.rs +++ b/crates/next-api/src/dynamic_imports.rs @@ -132,7 +132,7 @@ pub async fn map_next_dynamic(graph: Vc) -> Result(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(Some(( *module, @@ -143,7 +143,7 @@ pub async fn map_next_dynamic(graph: Vc) -> Result(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(Some(( *module, diff --git a/crates/next-api/src/instrumentation.rs b/crates/next-api/src/instrumentation.rs index 652da865ac15b..95d0fcbf66dd1 100644 --- a/crates/next-api/src/instrumentation.rs +++ b/crates/next-api/src/instrumentation.rs @@ -123,13 +123,12 @@ impl InstrumentationEndpoint { .await? .clone_value(); - let Some(module) = - ResolvedVc::try_downcast_sync::>(module) + let Some(module) = ResolvedVc::try_downcast::>(module) else { bail!("Entry module must be evaluatable"); }; - let Some(evaluatable) = ResolvedVc::try_sidecast_sync(module) else { + let Some(evaluatable) = ResolvedVc::try_sidecast(module) else { bail!("Entry module must be evaluatable"); }; evaluatable_assets.push(evaluatable); @@ -155,7 +154,7 @@ impl InstrumentationEndpoint { let userland_module = self.core_modules().await?.userland_module; let module_graph = this.project.module_graph(*userland_module); - let Some(module) = ResolvedVc::try_downcast_sync(userland_module) else { + let Some(module) = ResolvedVc::try_downcast(userland_module) else { bail!("Entry module must be evaluatable"); }; diff --git a/crates/next-api/src/pages.rs b/crates/next-api/src/pages.rs index c51dab99a1c5d..ef6ae8cc7f674 100644 --- a/crates/next-api/src/pages.rs +++ b/crates/next-api/src/pages.rs @@ -960,7 +960,7 @@ impl PageEndpoint { let is_edge = matches!(runtime, NextRuntime::Edge); if is_edge { let mut evaluatable_assets = edge_runtime_entries.await?.clone_value(); - let evaluatable = ResolvedVc::try_sidecast_sync(ssr_module) + let evaluatable = ResolvedVc::try_sidecast(ssr_module) .context("could not process page loader entry module")?; evaluatable_assets.push(evaluatable); diff --git a/crates/next-api/src/versioned_content_map.rs b/crates/next-api/src/versioned_content_map.rs index 48ceb1aeac077..34f84f215d5e4 100644 --- a/crates/next-api/src/versioned_content_map.rs +++ b/crates/next-api/src/versioned_content_map.rs @@ -196,7 +196,7 @@ impl VersionedContentMap { }; if let Some(generate_source_map) = - ResolvedVc::try_sidecast_sync::>(*asset) + ResolvedVc::try_sidecast::>(*asset) { Ok(if let Some(section) = section { generate_source_map.by_section(section) diff --git a/crates/next-api/src/webpack_stats.rs b/crates/next-api/src/webpack_stats.rs index 6161348249ee0..4df9024816950 100644 --- a/crates/next-api/src/webpack_stats.rs +++ b/crates/next-api/src/webpack_stats.rs @@ -27,7 +27,7 @@ where continue; }; - if let Some(chunk) = ResolvedVc::try_downcast_type_sync::(*asset) { + if let Some(chunk) = ResolvedVc::try_downcast_type::(*asset) { let chunk_ident = normalize_client_path(&chunk.ident().path().await?.path); chunks.push(WebpackStatsChunk { size: asset_len, diff --git a/crates/next-core/src/bootstrap.rs b/crates/next-core/src/bootstrap.rs index a7a11021050d5..f8b268eab0252 100644 --- a/crates/next-core/src/bootstrap.rs +++ b/crates/next-core/src/bootstrap.rs @@ -110,7 +110,7 @@ pub async fn bootstrap( .to_resolved() .await?; - let asset = ResolvedVc::try_sidecast_sync::>(asset) + let asset = ResolvedVc::try_sidecast::>(asset) .context("internal module must be evaluatable")?; Ok(*asset) diff --git a/crates/next-core/src/next_client/runtime_entry.rs b/crates/next-core/src/next_client/runtime_entry.rs index 553f44798a792..048a26f92e13f 100644 --- a/crates/next-core/src/next_client/runtime_entry.rs +++ b/crates/next-core/src/next_client/runtime_entry.rs @@ -45,8 +45,7 @@ impl RuntimeEntry { let mut runtime_entries = Vec::with_capacity(modules.len()); for &module in &modules { - if let Some(entry) = ResolvedVc::try_downcast_sync::>(module) - { + if let Some(entry) = ResolvedVc::try_downcast::>(module) { runtime_entries.push(entry); } else { bail!( diff --git a/crates/next-core/src/next_client_reference/css_client_reference/css_client_reference_transition.rs b/crates/next-core/src/next_client_reference/css_client_reference/css_client_reference_transition.rs index e0b581c1034a5..baf2cbc0cb40f 100644 --- a/crates/next-core/src/next_client_reference/css_client_reference/css_client_reference_transition.rs +++ b/crates/next-core/src/next_client_reference/css_client_reference/css_client_reference_transition.rs @@ -36,7 +36,7 @@ impl Transition for NextCssClientReferenceTransition { return Ok(ProcessResult::Ignore.cell()); }; - let client_module = ResolvedVc::try_sidecast_sync::>(module) + let client_module = ResolvedVc::try_sidecast::>(module) .context("css client asset is not css chunk placeable")?; Ok(ProcessResult::Module(ResolvedVc::upcast( diff --git a/crates/next-core/src/next_client_reference/ecmascript_client_reference/ecmascript_client_reference_transition.rs b/crates/next-core/src/next_client_reference/ecmascript_client_reference/ecmascript_client_reference_transition.rs index a770d652608e3..4890f36221c52 100644 --- a/crates/next-core/src/next_client_reference/ecmascript_client_reference/ecmascript_client_reference_transition.rs +++ b/crates/next-core/src/next_client_reference/ecmascript_client_reference/ecmascript_client_reference_transition.rs @@ -99,13 +99,13 @@ impl Transition for NextEcmascriptClientReferenceTransition { }; let Some(client_module) = - ResolvedVc::try_sidecast_sync::>(client_module) + ResolvedVc::try_sidecast::>(client_module) else { bail!("client asset is not ecmascript chunk placeable"); }; let Some(ssr_module) = - ResolvedVc::try_sidecast_sync::>(ssr_module) + ResolvedVc::try_sidecast::>(ssr_module) else { bail!("SSR asset is not ecmascript chunk placeable"); }; diff --git a/crates/next-core/src/next_client_reference/visit_client_reference.rs b/crates/next-core/src/next_client_reference/visit_client_reference.rs index 931cefc6f4c2e..f8ab44f42eace 100644 --- a/crates/next-core/src/next_client_reference/visit_client_reference.rs +++ b/crates/next-core/src/next_client_reference/visit_client_reference.rs @@ -164,9 +164,8 @@ pub async fn client_reference_graph( .map(|module| async move { Ok(VisitClientReferenceNode { state: if let Some(server_component) = - ResolvedVc::try_downcast_type_sync::( - module, - ) { + ResolvedVc::try_downcast_type::(module) + { VisitClientReferenceNodeState::InServerComponent { server_component, } @@ -406,7 +405,7 @@ impl Visit for VisitClientReference { let referenced_modules = referenced_modules.iter().map(|module| async move { if let Some(client_reference_module) = - ResolvedVc::try_downcast_type_sync::(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(VisitClientReferenceNode { state: node.state, @@ -423,7 +422,7 @@ impl Visit for VisitClientReference { } if let Some(client_reference_module) = - ResolvedVc::try_downcast_type_sync::(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(VisitClientReferenceNode { state: node.state, @@ -440,7 +439,7 @@ impl Visit for VisitClientReference { } if let Some(server_component_asset) = - ResolvedVc::try_downcast_type_sync::(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(VisitClientReferenceNode { state: VisitClientReferenceNodeState::InServerComponent { @@ -453,8 +452,7 @@ impl Visit for VisitClientReference { }); } - if ResolvedVc::try_downcast_type_sync::(*module).is_some() - { + if ResolvedVc::try_downcast_type::(*module).is_some() { return Ok(VisitClientReferenceNode { state: VisitClientReferenceNodeState::InServerUtil, ty: VisitClientReferenceNodeType::ServerUtilEntry( diff --git a/crates/next-core/src/next_dynamic/dynamic_transition.rs b/crates/next-core/src/next_dynamic/dynamic_transition.rs index 9b08b5b0f1d24..603d6793e3446 100644 --- a/crates/next-core/src/next_dynamic/dynamic_transition.rs +++ b/crates/next-core/src/next_dynamic/dynamic_transition.rs @@ -69,9 +69,9 @@ impl Transition for NextDynamicTransition { Ok(match &*module.try_into_module().await? { Some(client_module) => { - let Some(client_module) = ResolvedVc::try_sidecast_sync::< - Box, - >(*client_module) else { + let Some(client_module) = + ResolvedVc::try_sidecast::>(*client_module) + else { bail!("not an ecmascript client_module"); }; diff --git a/crates/next-core/src/next_dynamic/visit_dynamic.rs b/crates/next-core/src/next_dynamic/visit_dynamic.rs index d079b753ef6d2..8574f2337c62e 100644 --- a/crates/next-core/src/next_dynamic/visit_dynamic.rs +++ b/crates/next-core/src/next_dynamic/visit_dynamic.rs @@ -94,7 +94,7 @@ impl Visit for VisitDynamic { let referenced_modules = referenced_modules.iter().map(|module| async move { if let Some(next_dynamic_module) = - ResolvedVc::try_downcast_type_sync::(*module) + ResolvedVc::try_downcast_type::(*module) { return Ok(VisitDynamicNode::Dynamic( next_dynamic_module, diff --git a/crates/next-core/src/util.rs b/crates/next-core/src/util.rs index f2a3d6cc3120f..1c5d796c93a4b 100644 --- a/crates/next-core/src/util.rs +++ b/crates/next-core/src/util.rs @@ -428,8 +428,7 @@ async fn parse_route_matcher_from_js_value( pub async fn parse_config_from_source( module: ResolvedVc>, ) -> Result> { - if let Some(ecmascript_asset) = - ResolvedVc::try_sidecast_sync::>(module) + if let Some(ecmascript_asset) = ResolvedVc::try_sidecast::>(module) { if let ParseResult::Ok { program: Program::Module(module_ast), diff --git a/turbopack/crates/turbo-tasks-testing/tests/resolved_vc.rs b/turbopack/crates/turbo-tasks-testing/tests/resolved_vc.rs index 0222b91a44a7d..0d1fb48be2978 100644 --- a/turbopack/crates/turbo-tasks-testing/tests/resolved_vc.rs +++ b/turbopack/crates/turbo-tasks-testing/tests/resolved_vc.rs @@ -83,9 +83,9 @@ async fn test_sidecast() -> Result<()> { run(®ISTRATION, || async { let concrete_value = ImplementsAandB.resolved_cell(); let as_a = ResolvedVc::upcast::>(concrete_value); - let as_b = ResolvedVc::try_sidecast_sync::>(as_a); + let as_b = ResolvedVc::try_sidecast::>(as_a); assert!(as_b.is_some()); - let as_c = ResolvedVc::try_sidecast_sync::>(as_a); + let as_c = ResolvedVc::try_sidecast::>(as_a); assert!(as_c.is_none()); Ok(()) }) diff --git a/turbopack/crates/turbo-tasks/src/vc/resolved.rs b/turbopack/crates/turbo-tasks/src/vc/resolved.rs index 60ff791e5a899..cec2a2e8f7b71 100644 --- a/turbopack/crates/turbo-tasks/src/vc/resolved.rs +++ b/turbopack/crates/turbo-tasks/src/vc/resolved.rs @@ -211,14 +211,13 @@ impl ResolvedVc where T: VcValueTrait + ?Sized, { - /// /// Returns `None` if the underlying value type does not implement `K`. /// /// **Note:** if the trait `T` is required to implement `K`, use [`ResolvedVc::upcast`] instead. /// This provides stronger guarantees, removing the need for a [`Result`] return type. /// /// See also: [`Vc::try_resolve_sidecast`]. - pub fn try_sidecast_sync(this: Self) -> Option> + pub fn try_sidecast(this: Self) -> Option> where K: VcValueTrait + ?Sized, { @@ -241,12 +240,12 @@ where /// Returns `None` if the underlying value type is not a `K`. /// /// See also: [`Vc::try_resolve_downcast`]. - pub fn try_downcast_sync(this: Self) -> Option> + pub fn try_downcast(this: Self) -> Option> where K: Upcast + VcValueTrait + ?Sized, { // this is just a more type-safe version of a sidecast - Self::try_sidecast_sync(this) + Self::try_sidecast(this) } /// Attempts to downcast the given `Vc>` to a `Vc`, where `K` is a value type. @@ -254,7 +253,7 @@ where /// Returns `None` if the underlying value type is not a `K`. /// /// See also: [`Vc::try_resolve_downcast_type`]. - pub fn try_downcast_type_sync(this: Self) -> Option> + pub fn try_downcast_type(this: Self) -> Option> where K: Upcast + VcValueType, { diff --git a/turbopack/crates/turbopack-browser/src/ecmascript/evaluate/chunk.rs b/turbopack/crates/turbopack-browser/src/ecmascript/evaluate/chunk.rs index 024632362b80b..18289b58c54bc 100644 --- a/turbopack/crates/turbopack-browser/src/ecmascript/evaluate/chunk.rs +++ b/turbopack/crates/turbopack-browser/src/ecmascript/evaluate/chunk.rs @@ -107,7 +107,7 @@ impl EcmascriptDevEvaluateChunk { let module_graph = this.module_graph; move |entry| async move { if let Some(placeable) = - ResolvedVc::try_sidecast_sync::>(*entry) + ResolvedVc::try_sidecast::>(*entry) { Ok(Some( placeable diff --git a/turbopack/crates/turbopack-browser/src/ecmascript/list/content.rs b/turbopack/crates/turbopack-browser/src/ecmascript/list/content.rs index 919a9506ea01b..2e465687e18af 100644 --- a/turbopack/crates/turbopack-browser/src/ecmascript/list/content.rs +++ b/turbopack/crates/turbopack-browser/src/ecmascript/list/content.rs @@ -75,7 +75,7 @@ impl EcmascriptDevChunkListContent { for (chunk_path, chunk_content) in &self.chunks_contents { if let Some(mergeable) = - ResolvedVc::try_sidecast_sync::>(*chunk_content) + ResolvedVc::try_sidecast::>(*chunk_content) { let merger = mergeable.get_merger().resolve().await?; by_merger.entry(merger).or_default().push(*chunk_content); diff --git a/turbopack/crates/turbopack-browser/src/ecmascript/list/update.rs b/turbopack/crates/turbopack-browser/src/ecmascript/list/update.rs index cb36324ee6e7b..15311d3451155 100644 --- a/turbopack/crates/turbopack-browser/src/ecmascript/list/update.rs +++ b/turbopack/crates/turbopack-browser/src/ecmascript/list/update.rs @@ -91,7 +91,7 @@ pub(super) async fn update_chunk_list( for (chunk_path, chunk_content) in &content.chunks_contents { if let Some(mergeable) = - ResolvedVc::try_sidecast_sync::>(*chunk_content) + ResolvedVc::try_sidecast::>(*chunk_content) { let merger = mergeable.get_merger().to_resolved().await?; by_merger.entry(merger).or_default().push(*chunk_content); diff --git a/turbopack/crates/turbopack-browser/src/ecmascript/merged/merger.rs b/turbopack/crates/turbopack-browser/src/ecmascript/merged/merger.rs index 4bbc0f9423243..498b42a3297f6 100644 --- a/turbopack/crates/turbopack-browser/src/ecmascript/merged/merger.rs +++ b/turbopack/crates/turbopack-browser/src/ecmascript/merged/merger.rs @@ -31,7 +31,7 @@ impl VersionedContentMerger for EcmascriptDevChunkContentMerger { .iter() .map(|content| async move { if let Some(content) = - ResolvedVc::try_downcast_type_sync::(*content) + ResolvedVc::try_downcast_type::(*content) { Ok(content) } else { diff --git a/turbopack/crates/turbopack-cli-utils/src/runtime_entry.rs b/turbopack/crates/turbopack-cli-utils/src/runtime_entry.rs index e2732fc09985b..55c75bd4635c7 100644 --- a/turbopack/crates/turbopack-cli-utils/src/runtime_entry.rs +++ b/turbopack/crates/turbopack-cli-utils/src/runtime_entry.rs @@ -45,8 +45,7 @@ impl RuntimeEntry { let mut runtime_entries = Vec::with_capacity(modules.len()); for &module in &modules { - if let Some(entry) = ResolvedVc::try_sidecast_sync::>(module) - { + if let Some(entry) = ResolvedVc::try_sidecast::>(module) { runtime_entries.push(entry); } else { bail!( diff --git a/turbopack/crates/turbopack-cli/src/build/mod.rs b/turbopack/crates/turbopack-cli/src/build/mod.rs index dc1fb0496722d..28544dbd1bd7c 100644 --- a/turbopack/crates/turbopack-cli/src/build/mod.rs +++ b/turbopack/crates/turbopack-cli/src/build/mod.rs @@ -343,7 +343,7 @@ async fn build_internal( .map(|entry_module| async move { Ok( if let Some(ecmascript) = - ResolvedVc::try_sidecast_sync::>(entry_module) + ResolvedVc::try_sidecast::>(entry_module) { match target { Target::Browser => { diff --git a/turbopack/crates/turbopack-cli/src/dev/web_entry_source.rs b/turbopack/crates/turbopack-cli/src/dev/web_entry_source.rs index ff0370c69c1fd..8a673bafbd601 100644 --- a/turbopack/crates/turbopack-cli/src/dev/web_entry_source.rs +++ b/turbopack/crates/turbopack-cli/src/dev/web_entry_source.rs @@ -163,8 +163,8 @@ pub async fn create_web_entry_source( .into_iter() .map(|module| async move { if let (Some(chunkable_module), Some(entry)) = ( - ResolvedVc::try_sidecast_sync::>(module), - ResolvedVc::try_sidecast_sync::>(module), + ResolvedVc::try_sidecast::>(module), + ResolvedVc::try_sidecast::>(module), ) { Ok(DevHtmlEntry { chunkable_module, @@ -173,7 +173,7 @@ pub async fn create_web_entry_source( runtime_entries: Some(runtime_entries.with_entry(*entry).to_resolved().await?), }) } else if let Some(chunkable_module) = - ResolvedVc::try_sidecast_sync::>(module) + ResolvedVc::try_sidecast::>(module) { // TODO this is missing runtime code, so it's probably broken and we should also // add an ecmascript chunk with the runtime code diff --git a/turbopack/crates/turbopack-core/src/chunk/chunk_group.rs b/turbopack/crates/turbopack-core/src/chunk/chunk_group.rs index 5380209a49832..33663520a8c09 100644 --- a/turbopack/crates/turbopack-core/src/chunk/chunk_group.rs +++ b/turbopack/crates/turbopack-core/src/chunk/chunk_group.rs @@ -318,7 +318,7 @@ pub async fn chunk_group_content( } let Some(chunkable_module) = - ResolvedVc::try_sidecast_sync::>(node.module) + ResolvedVc::try_sidecast::>(node.module) else { return Ok(GraphTraversalAction::Skip); }; @@ -337,7 +337,7 @@ pub async fn chunk_group_content( }; let parent_module = - ResolvedVc::try_sidecast_sync::>(parent_node.module) + ResolvedVc::try_sidecast::>(parent_node.module) .context("Expected parent module to be chunkable")?; Ok(match edge { diff --git a/turbopack/crates/turbopack-core/src/introspect/module.rs b/turbopack/crates/turbopack-core/src/introspect/module.rs index 33c083eacfae9..eda791a8a20a5 100644 --- a/turbopack/crates/turbopack-core/src/introspect/module.rs +++ b/turbopack/crates/turbopack-core/src/introspect/module.rs @@ -15,10 +15,8 @@ pub struct IntrospectableModule(ResolvedVc>); impl IntrospectableModule { #[turbo_tasks::function] pub async fn new(asset: ResolvedVc>) -> Result>> { - Ok( - *ResolvedVc::try_sidecast_sync::>(asset) - .unwrap_or_else(|| ResolvedVc::upcast(IntrospectableModule(asset).resolved_cell())), - ) + Ok(*ResolvedVc::try_sidecast::>(asset) + .unwrap_or_else(|| ResolvedVc::upcast(IntrospectableModule(asset).resolved_cell()))) } } diff --git a/turbopack/crates/turbopack-core/src/introspect/output_asset.rs b/turbopack/crates/turbopack-core/src/introspect/output_asset.rs index 3a4a57f4b3b63..25217770d9401 100644 --- a/turbopack/crates/turbopack-core/src/introspect/output_asset.rs +++ b/turbopack/crates/turbopack-core/src/introspect/output_asset.rs @@ -18,7 +18,7 @@ impl IntrospectableOutputAsset { asset: ResolvedVc>, ) -> Result>> { Ok( - *ResolvedVc::try_sidecast_sync::>(asset).unwrap_or_else(|| { + *ResolvedVc::try_sidecast::>(asset).unwrap_or_else(|| { ResolvedVc::upcast(IntrospectableOutputAsset(asset).resolved_cell()) }), ) diff --git a/turbopack/crates/turbopack-core/src/introspect/source.rs b/turbopack/crates/turbopack-core/src/introspect/source.rs index 803ee8dae2ce2..4f3a53f79c211 100644 --- a/turbopack/crates/turbopack-core/src/introspect/source.rs +++ b/turbopack/crates/turbopack-core/src/introspect/source.rs @@ -12,10 +12,8 @@ pub struct IntrospectableSource(ResolvedVc>); impl IntrospectableSource { #[turbo_tasks::function] pub async fn new(asset: ResolvedVc>) -> Result>> { - Ok( - *ResolvedVc::try_sidecast_sync::>(asset) - .unwrap_or_else(|| ResolvedVc::upcast(IntrospectableSource(asset).resolved_cell())), - ) + Ok(*ResolvedVc::try_sidecast::>(asset) + .unwrap_or_else(|| ResolvedVc::upcast(IntrospectableSource(asset).resolved_cell()))) } } diff --git a/turbopack/crates/turbopack-core/src/introspect/utils.rs b/turbopack/crates/turbopack-core/src/introspect/utils.rs index 0704fa7bf67d0..9de4c1b76a942 100644 --- a/turbopack/crates/turbopack-core/src/introspect/utils.rs +++ b/turbopack/crates/turbopack-core/src/introspect/utils.rs @@ -77,7 +77,7 @@ pub async fn children_from_module_references( for &reference in &*references { let mut key = key; if let Some(chunkable) = - ResolvedVc::try_downcast_sync::>(reference) + ResolvedVc::try_downcast::>(reference) { match &*chunkable.chunking_type().await? { None => {} diff --git a/turbopack/crates/turbopack-core/src/issue/mod.rs b/turbopack/crates/turbopack-core/src/issue/mod.rs index ae9f8e0792462..b44aa026c9338 100644 --- a/turbopack/crates/turbopack-core/src/issue/mod.rs +++ b/turbopack/crates/turbopack-core/src/issue/mod.rs @@ -598,8 +598,7 @@ async fn source_pos( start: SourcePos, end: SourcePos, ) -> Result>, SourcePos, SourcePos)>> { - let Some(generator) = ResolvedVc::try_sidecast_sync::>(source) - else { + let Some(generator) = ResolvedVc::try_sidecast::>(source) else { return Ok(None); }; diff --git a/turbopack/crates/turbopack-core/src/reference/mod.rs b/turbopack/crates/turbopack-core/src/reference/mod.rs index ae1d8cf672de7..e48cf1cec5f27 100644 --- a/turbopack/crates/turbopack-core/src/reference/mod.rs +++ b/turbopack/crates/turbopack-core/src/reference/mod.rs @@ -289,7 +289,7 @@ pub async fn primary_chunkable_referenced_modules( .iter() .map(|reference| async { if let Some(reference) = - ResolvedVc::try_downcast_sync::>(*reference) + ResolvedVc::try_downcast::>(*reference) { if let Some(chunking_type) = &*reference.chunking_type().await? { let resolved = reference diff --git a/turbopack/crates/turbopack-core/src/source_map/source_map_asset.rs b/turbopack/crates/turbopack-core/src/source_map/source_map_asset.rs index 2f7d4a31962c4..e7869f05396c6 100644 --- a/turbopack/crates/turbopack-core/src/source_map/source_map_asset.rs +++ b/turbopack/crates/turbopack-core/src/source_map/source_map_asset.rs @@ -40,7 +40,7 @@ impl Asset for SourceMapAsset { #[turbo_tasks::function] async fn content(&self) -> Result> { let Some(generate_source_map) = - ResolvedVc::try_sidecast_sync::>(self.asset) + ResolvedVc::try_sidecast::>(self.asset) else { bail!("asset does not support generating source maps") }; @@ -84,7 +84,7 @@ impl Introspectable for SourceMapAsset { #[turbo_tasks::function] async fn children(&self) -> Result> { let mut children = FxIndexSet::default(); - if let Some(asset) = ResolvedVc::try_sidecast_sync::>(self.asset) { + if let Some(asset) = ResolvedVc::try_sidecast::>(self.asset) { children.insert((ResolvedVc::cell("asset".into()), asset)); } Ok(Vc::cell(children)) diff --git a/turbopack/crates/turbopack-css/src/asset.rs b/turbopack/crates/turbopack-css/src/asset.rs index e1afdb6f7da5f..67bb9af733ea4 100644 --- a/turbopack/crates/turbopack-css/src/asset.rs +++ b/turbopack/crates/turbopack-css/src/asset.rs @@ -215,7 +215,7 @@ impl CssChunkItem for CssModuleChunkItem { for reference in references.iter() { if let Some(import_ref) = - ResolvedVc::try_downcast_type_sync::(*reference) + ResolvedVc::try_downcast_type::(*reference) { for &module in import_ref .resolve_reference() @@ -226,7 +226,7 @@ impl CssChunkItem for CssModuleChunkItem { .iter() { if let Some(placeable) = - ResolvedVc::try_downcast_sync::>(module) + ResolvedVc::try_downcast::>(module) { let item = placeable.as_chunk_item(*self.module_graph, *chunking_context); if let Some(css_item) = @@ -240,7 +240,7 @@ impl CssChunkItem for CssModuleChunkItem { } } } else if let Some(compose_ref) = - ResolvedVc::try_downcast_type_sync::(*reference) + ResolvedVc::try_downcast_type::(*reference) { for &module in compose_ref .resolve_reference() @@ -251,7 +251,7 @@ impl CssChunkItem for CssModuleChunkItem { .iter() { if let Some(placeable) = - ResolvedVc::try_downcast_sync::>(module) + ResolvedVc::try_downcast::>(module) { let item = placeable.as_chunk_item(*self.module_graph, *chunking_context); if let Some(css_item) = @@ -266,7 +266,7 @@ impl CssChunkItem for CssModuleChunkItem { let mut code_gens = Vec::new(); for r in references.iter() { - if let Some(code_gen) = ResolvedVc::try_sidecast_sync::>(*r) { + if let Some(code_gen) = ResolvedVc::try_sidecast::>(*r) { code_gens.push(code_gen.code_generation(*chunking_context)); } } diff --git a/turbopack/crates/turbopack-css/src/chunk/mod.rs b/turbopack/crates/turbopack-css/src/chunk/mod.rs index 529a193c95443..9a41e102b40cb 100644 --- a/turbopack/crates/turbopack-css/src/chunk/mod.rs +++ b/turbopack/crates/turbopack-css/src/chunk/mod.rs @@ -199,8 +199,7 @@ impl OutputChunk for CssChunk { let imports_chunk_items: Vec<_> = entries_chunk_items .iter() .map(|&chunk_item| async move { - let Some(css_item) = - ResolvedVc::try_downcast_sync::>(chunk_item) + let Some(css_item) = ResolvedVc::try_downcast::>(chunk_item) else { return Ok(vec![]); }; @@ -505,7 +504,7 @@ impl ChunkType for CssChunkType { .iter() .map(async |ChunkItemWithAsyncModuleInfo { chunk_item, .. }| { let Some(chunk_item) = - ResolvedVc::try_downcast_sync::>(*chunk_item) + ResolvedVc::try_downcast::>(*chunk_item) else { bail!("Chunk item is not an css chunk item but reporting chunk type css"); }; diff --git a/turbopack/crates/turbopack-css/src/module_asset.rs b/turbopack/crates/turbopack-css/src/module_asset.rs index e725b1b296913..32480c4cee486 100644 --- a/turbopack/crates/turbopack-css/src/module_asset.rs +++ b/turbopack/crates/turbopack-css/src/module_asset.rs @@ -355,7 +355,7 @@ impl EcmascriptChunkItem for ModuleChunkItem { }; let Some(css_module) = - ResolvedVc::try_downcast_type_sync::(*resolved_module) + ResolvedVc::try_downcast_type::(*resolved_module) else { CssModuleComposesIssue { severity: IssueSeverity::Error.resolved_cell(), diff --git a/turbopack/crates/turbopack-css/src/references/url.rs b/turbopack/crates/turbopack-css/src/references/url.rs index 8fab98ced4afc..00fa0e6053d9b 100644 --- a/turbopack/crates/turbopack-css/src/references/url.rs +++ b/turbopack/crates/turbopack-css/src/references/url.rs @@ -60,9 +60,7 @@ impl UrlAssetReference { chunking_context: Vc>, ) -> Result> { if let Some(module) = *self.resolve_reference().first_module().await? { - if let Some(chunkable) = - ResolvedVc::try_downcast_sync::>(module) - { + if let Some(chunkable) = ResolvedVc::try_downcast::>(module) { let chunk_item = chunkable.as_chunk_item(module_graph, chunking_context); if let Some(embeddable) = Vc::try_resolve_downcast::>(chunk_item).await? diff --git a/turbopack/crates/turbopack-dev-server/src/html.rs b/turbopack/crates/turbopack-dev-server/src/html.rs index 91e1c30011bac..35db6b1e2d326 100644 --- a/turbopack/crates/turbopack-dev-server/src/html.rs +++ b/turbopack/crates/turbopack-dev-server/src/html.rs @@ -146,16 +146,15 @@ impl DevHtmlAsset { } = entry; let assets = if let Some(runtime_entries) = runtime_entries { - let runtime_entries = if let Some(evaluatable) = - ResolvedVc::try_downcast_sync(chunkable_module) - { - runtime_entries - .with_entry(*evaluatable) - .to_resolved() - .await? - } else { - runtime_entries - }; + let runtime_entries = + if let Some(evaluatable) = ResolvedVc::try_downcast(chunkable_module) { + runtime_entries + .with_entry(*evaluatable) + .to_resolved() + .await? + } else { + runtime_entries + }; chunking_context.evaluated_chunk_group_assets( chunkable_module.ident(), *runtime_entries, diff --git a/turbopack/crates/turbopack-dev-server/src/source/combined.rs b/turbopack/crates/turbopack-dev-server/src/source/combined.rs index 16ef2490cf1f3..930fc31b27a88 100644 --- a/turbopack/crates/turbopack-dev-server/src/source/combined.rs +++ b/turbopack/crates/turbopack-dev-server/src/source/combined.rs @@ -58,7 +58,7 @@ impl Introspectable for CombinedContentSource { .map(|&source| async move { Ok( if let Some(source) = - ResolvedVc::try_sidecast_sync::>(source) + ResolvedVc::try_sidecast::>(source) { Some(source.title().await?) } else { @@ -86,21 +86,17 @@ impl Introspectable for CombinedContentSource { #[turbo_tasks::function] async fn children(&self) -> Result> { let source = ResolvedVc::cell("source".into()); - Ok( - Vc::cell( - self.sources - .iter() - .copied() - .map(|s| async move { - Ok(ResolvedVc::try_sidecast_sync::>(s)) - }) - .try_join() - .await? - .into_iter() - .flatten() - .map(|i| (source, i)) - .collect(), - ), - ) + Ok(Vc::cell( + self.sources + .iter() + .copied() + .map(|s| async move { Ok(ResolvedVc::try_sidecast::>(s)) }) + .try_join() + .await? + .into_iter() + .flatten() + .map(|i| (source, i)) + .collect(), + )) } } diff --git a/turbopack/crates/turbopack-dev-server/src/source/conditional.rs b/turbopack/crates/turbopack-dev-server/src/source/conditional.rs index 81b0b0bbf040d..6615e431c20bd 100644 --- a/turbopack/crates/turbopack-dev-server/src/source/conditional.rs +++ b/turbopack/crates/turbopack-dev-server/src/source/conditional.rs @@ -126,8 +126,7 @@ impl Introspectable for ConditionalContentSource { #[turbo_tasks::function] async fn title(&self) -> Result> { - if let Some(activator) = - ResolvedVc::try_sidecast_sync::>(self.activator) + if let Some(activator) = ResolvedVc::try_sidecast::>(self.activator) { Ok(activator.title()) } else { @@ -139,9 +138,9 @@ impl Introspectable for ConditionalContentSource { async fn children(&self) -> Result> { Ok(Vc::cell( [ - ResolvedVc::try_sidecast_sync::>(self.activator) + ResolvedVc::try_sidecast::>(self.activator) .map(|i| (activator_key(), i)), - ResolvedVc::try_sidecast_sync::>(self.action) + ResolvedVc::try_sidecast::>(self.action) .map(|i| (action_key(), i)), ] .into_iter() diff --git a/turbopack/crates/turbopack-dev-server/src/source/issue_context.rs b/turbopack/crates/turbopack-dev-server/src/source/issue_context.rs index 55596cf2ef9c7..ffbb075b69dcc 100644 --- a/turbopack/crates/turbopack-dev-server/src/source/issue_context.rs +++ b/turbopack/crates/turbopack-dev-server/src/source/issue_context.rs @@ -153,9 +153,7 @@ impl Introspectable for IssueFilePathContentSource { #[turbo_tasks::function] async fn ty(&self) -> Result> { Ok( - if let Some(source) = - ResolvedVc::try_sidecast_sync::>(self.source) - { + if let Some(source) = ResolvedVc::try_sidecast::>(self.source) { source.ty() } else { Vc::cell("IssueContextContentSource".into()) @@ -166,9 +164,7 @@ impl Introspectable for IssueFilePathContentSource { #[turbo_tasks::function] async fn title(&self) -> Result> { Ok( - if let Some(source) = - ResolvedVc::try_sidecast_sync::>(self.source) - { + if let Some(source) = ResolvedVc::try_sidecast::>(self.source) { let title = source.title().await?; Vc::cell(format!("{}: {}", self.description, title).into()) } else { @@ -180,9 +176,7 @@ impl Introspectable for IssueFilePathContentSource { #[turbo_tasks::function] async fn details(&self) -> Result> { Ok( - if let Some(source) = - ResolvedVc::try_sidecast_sync::>(self.source) - { + if let Some(source) = ResolvedVc::try_sidecast::>(self.source) { source.details() } else { Vc::cell(RcStr::default()) @@ -193,9 +187,7 @@ impl Introspectable for IssueFilePathContentSource { #[turbo_tasks::function] async fn children(&self) -> Result> { Ok( - if let Some(source) = - ResolvedVc::try_sidecast_sync::>(self.source) - { + if let Some(source) = ResolvedVc::try_sidecast::>(self.source) { source.children() } else { Vc::cell(Default::default()) diff --git a/turbopack/crates/turbopack-dev-server/src/source/lazy_instantiated.rs b/turbopack/crates/turbopack-dev-server/src/source/lazy_instantiated.rs index eab65fea6ff20..29188d266914a 100644 --- a/turbopack/crates/turbopack-dev-server/src/source/lazy_instantiated.rs +++ b/turbopack/crates/turbopack-dev-server/src/source/lazy_instantiated.rs @@ -48,7 +48,7 @@ impl Introspectable for LazyInstantiatedContentSource { #[turbo_tasks::function] async fn children(&self) -> Result> { Ok(Vc::cell( - [ResolvedVc::try_sidecast_sync::>( + [ResolvedVc::try_sidecast::>( self.get_source.content_source().to_resolved().await?, ) .map(|i| (source_key(), i))] diff --git a/turbopack/crates/turbopack-dev-server/src/source/router.rs b/turbopack/crates/turbopack-dev-server/src/source/router.rs index f099be6d7c27f..435931ae496d3 100644 --- a/turbopack/crates/turbopack-dev-server/src/source/router.rs +++ b/turbopack/crates/turbopack-dev-server/src/source/router.rs @@ -64,10 +64,8 @@ async fn get_introspection_children( .cloned() .chain(std::iter::once((RcStr::default(), *fallback))) .map(|(path, source)| async move { - Ok( - ResolvedVc::try_sidecast_sync::>(source) - .map(|i| (ResolvedVc::cell(path), i)), - ) + Ok(ResolvedVc::try_sidecast::>(source) + .map(|i| (ResolvedVc::cell(path), i))) }) .try_join() .await? diff --git a/turbopack/crates/turbopack-ecmascript/src/chunk/chunk_type.rs b/turbopack/crates/turbopack-ecmascript/src/chunk/chunk_type.rs index 4ed6e5fcd0b6a..618bdc7f910a1 100644 --- a/turbopack/crates/turbopack-ecmascript/src/chunk/chunk_type.rs +++ b/turbopack/crates/turbopack-ecmascript/src/chunk/chunk_type.rs @@ -55,9 +55,9 @@ impl ChunkType for EcmascriptChunkType { module: _, async_info, }| { - let Some(chunk_item) = ResolvedVc::try_downcast_sync::< - Box, - >(*chunk_item) else { + let Some(chunk_item) = + ResolvedVc::try_downcast::>(*chunk_item) + else { bail!( "Chunk item is not an ecmascript chunk item but reporting chunk \ type ecmascript" diff --git a/turbopack/crates/turbopack-ecmascript/src/chunk_group_files_asset.rs b/turbopack/crates/turbopack-ecmascript/src/chunk_group_files_asset.rs index 00154f2922f2a..8d88403edf9de 100644 --- a/turbopack/crates/turbopack-ecmascript/src/chunk_group_files_asset.rs +++ b/turbopack/crates/turbopack-ecmascript/src/chunk_group_files_asset.rs @@ -142,7 +142,7 @@ impl ChunkGroupFilesChunkItem { async fn chunks(&self) -> Result> { let inner = self.inner.await?; let chunks = if let Some(ecma) = - ResolvedVc::try_sidecast_sync::>(inner.module) + ResolvedVc::try_sidecast::>(inner.module) { inner.chunking_context.evaluated_chunk_group_assets( inner.module.ident(), diff --git a/turbopack/crates/turbopack-ecmascript/src/lib.rs b/turbopack/crates/turbopack-ecmascript/src/lib.rs index c85d0e881d6d2..d13a16268647c 100644 --- a/turbopack/crates/turbopack-ecmascript/src/lib.rs +++ b/turbopack/crates/turbopack-ecmascript/src/lib.rs @@ -767,15 +767,14 @@ impl EcmascriptModuleContent { for r in references.await?.iter() { let r = r.resolve().await?; if let Some(code_gen) = - ResolvedVc::try_sidecast_sync::>(r) + ResolvedVc::try_sidecast::>(r) { code_gens.push(code_gen.code_generation( module_graph, chunking_context, async_module_info, )); - } else if let Some(code_gen) = - ResolvedVc::try_sidecast_sync::>(r) + } else if let Some(code_gen) = ResolvedVc::try_sidecast::>(r) { code_gens.push(code_gen.code_generation(module_graph, chunking_context)); } diff --git a/turbopack/crates/turbopack-ecmascript/src/manifest/loader_item.rs b/turbopack/crates/turbopack-ecmascript/src/manifest/loader_item.rs index a8213bd05af31..6138006480e52 100644 --- a/turbopack/crates/turbopack-ecmascript/src/manifest/loader_item.rs +++ b/turbopack/crates/turbopack-ecmascript/src/manifest/loader_item.rs @@ -161,7 +161,7 @@ impl EcmascriptChunkItem for ManifestLoaderChunkItem { // Finally, we need the id of the module that we're actually trying to // dynamically import. let placeable = - ResolvedVc::try_downcast_sync::>(manifest.inner) + ResolvedVc::try_downcast::>(manifest.inner) .ok_or_else(|| anyhow!("asset is not placeable in ecmascript chunk"))?; let dynamic_id = &*placeable .as_chunk_item( diff --git a/turbopack/crates/turbopack-ecmascript/src/references/esm/base.rs b/turbopack/crates/turbopack-ecmascript/src/references/esm/base.rs index c23a6a6b91038..7bbd73fb27b3e 100644 --- a/turbopack/crates/turbopack-ecmascript/src/references/esm/base.rs +++ b/turbopack/crates/turbopack-ecmascript/src/references/esm/base.rs @@ -88,7 +88,7 @@ impl ReferencedAsset { } &ModuleResolveResultItem::Module(module) => { if let Some(placeable) = - ResolvedVc::try_downcast_sync::>(module) + ResolvedVc::try_downcast::>(module) { return Ok(ReferencedAsset::Some(placeable).cell()); } @@ -166,7 +166,7 @@ impl ModuleReference for EsmAssetReference { if module == TURBOPACK_PART_IMPORT_SOURCE { if let Some(part) = self.export_name { let module: ResolvedVc = - ResolvedVc::try_downcast_type_sync(self.origin) + ResolvedVc::try_downcast_type(self.origin) .expect("EsmAssetReference origin should be a EcmascriptModuleAsset"); return Ok(ModuleResolveResult::module( @@ -194,7 +194,7 @@ impl ModuleReference for EsmAssetReference { let part = part.await?; if let &ModulePart::Export(export_name) = &*part { for &module in result.primary_modules().await? { - if let Some(module) = ResolvedVc::try_downcast_sync(module) { + if let Some(module) = ResolvedVc::try_downcast(module) { let export = export_name.await?; if *is_export_missing(*module, export.clone_value()).await? { InvalidExport { diff --git a/turbopack/crates/turbopack-ecmascript/src/references/mod.rs b/turbopack/crates/turbopack-ecmascript/src/references/mod.rs index 827c2a41bf0ba..7036f735b2c9c 100644 --- a/turbopack/crates/turbopack-ecmascript/src/references/mod.rs +++ b/turbopack/crates/turbopack-ecmascript/src/references/mod.rs @@ -604,7 +604,7 @@ pub(crate) async fn analyse_ecmascript_module_internal( } if !source_map_from_comment { if let Some(generate_source_map) = - ResolvedVc::try_sidecast_sync::>(source) + ResolvedVc::try_sidecast::>(source) { let source_map_origin = source.ident().path(); analysis.set_source_map( diff --git a/turbopack/crates/turbopack-ecmascript/src/references/pattern_mapping.rs b/turbopack/crates/turbopack-ecmascript/src/references/pattern_mapping.rs index ced680e950657..4b864785055fa 100644 --- a/turbopack/crates/turbopack-ecmascript/src/references/pattern_mapping.rs +++ b/turbopack/crates/turbopack-ecmascript/src/references/pattern_mapping.rs @@ -346,7 +346,7 @@ async fn to_single_pattern_mapping( return Ok(SinglePatternMapping::Invalid); } }; - if let Some(chunkable) = ResolvedVc::try_downcast_sync::>(module) { + if let Some(chunkable) = ResolvedVc::try_downcast::>(module) { match resolve_type { ResolveType::AsyncChunkLoader => { let loader_id = chunking_context.async_loader_chunk_item_id(*chunkable); diff --git a/turbopack/crates/turbopack-ecmascript/src/references/worker.rs b/turbopack/crates/turbopack-ecmascript/src/references/worker.rs index 7ff3f850ba9fa..b21ce486a3ed9 100644 --- a/turbopack/crates/turbopack-ecmascript/src/references/worker.rs +++ b/turbopack/crates/turbopack-ecmascript/src/references/worker.rs @@ -69,8 +69,7 @@ impl WorkerAssetReference { let Some(module) = *module.first_module().await? else { return Ok(None); }; - let Some(chunkable) = ResolvedVc::try_downcast_sync::>(module) - else { + let Some(chunkable) = ResolvedVc::try_downcast::>(module) else { CodeGenerationIssue { severity: IssueSeverity::Bug.resolved_cell(), title: StyledString::Text("non-ecmascript placeable asset".into()).resolved_cell(), diff --git a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/chunk_item.rs b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/chunk_item.rs index d380bcd1cdb0d..503b61ee6b99f 100644 --- a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/chunk_item.rs +++ b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/chunk_item.rs @@ -72,15 +72,14 @@ impl EcmascriptChunkItem for EcmascriptModuleFacadeChunkItem { let mut code_gens = Vec::with_capacity(references_ref.len() + 2); for r in &references_ref { if let Some(code_gen) = - ResolvedVc::try_sidecast_sync::>(*r) + ResolvedVc::try_sidecast::>(*r) { code_gens.push(code_gen.code_generation( *self.module_graph, *chunking_context, async_module_info, )); - } else if let Some(code_gen) = - ResolvedVc::try_sidecast_sync::>(*r) + } else if let Some(code_gen) = ResolvedVc::try_sidecast::>(*r) { code_gens.push(code_gen.code_generation(*self.module_graph, *chunking_context)); } diff --git a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/module.rs b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/module.rs index 3b4752cfce87b..a8cc8b8dea3c8 100644 --- a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/module.rs +++ b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/facade/module.rs @@ -76,7 +76,7 @@ impl Module for EcmascriptModuleFacadeModule { let references = match &*self.ty.await? { ModulePart::Evaluation => { let Some(module) = - ResolvedVc::try_sidecast_sync::>(self.module) + ResolvedVc::try_sidecast::>(self.module) else { bail!( "Expected EcmascriptModuleAsset for a EcmascriptModuleFacadeModule with \ @@ -95,7 +95,7 @@ impl Module for EcmascriptModuleFacadeModule { } ModulePart::Exports => { let Some(module) = - ResolvedVc::try_sidecast_sync::>(self.module) + ResolvedVc::try_sidecast::>(self.module) else { bail!( "Expected EcmascriptModuleAsset for a EcmascriptModuleFacadeModule with \ diff --git a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/reference.rs b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/reference.rs index 0149a0af6a9ea..40b4097d5df32 100644 --- a/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/reference.rs +++ b/turbopack/crates/turbopack-ecmascript/src/side_effect_optimization/reference.rs @@ -67,7 +67,7 @@ impl ModuleReference for EcmascriptModulePartReference { let module = if let Some(part) = self.part { match *part.await? { ModulePart::Locals => { - let Some(module) = ResolvedVc::try_downcast_type_sync(self.module) else { + let Some(module) = ResolvedVc::try_downcast_type(self.module) else { bail!( "Expected EcmascriptModuleAsset for a EcmascriptModulePartReference \ with ModulePart::Locals" diff --git a/turbopack/crates/turbopack-ecmascript/src/static_code.rs b/turbopack/crates/turbopack-ecmascript/src/static_code.rs index 42ff488c23821..2b968d05f17d6 100644 --- a/turbopack/crates/turbopack-ecmascript/src/static_code.rs +++ b/turbopack/crates/turbopack-ecmascript/src/static_code.rs @@ -38,8 +38,7 @@ impl StaticEcmascriptCode { .module() .to_resolved() .await?; - let Some(asset) = ResolvedVc::try_sidecast_sync::>(module) - else { + let Some(asset) = ResolvedVc::try_sidecast::>(module) else { bail!("asset is not an Ecmascript module") }; Ok(Self::cell(StaticEcmascriptCode { diff --git a/turbopack/crates/turbopack-ecmascript/src/worker_chunk/chunk_item.rs b/turbopack/crates/turbopack-ecmascript/src/worker_chunk/chunk_item.rs index d23bf6294f582..def0b3da1b48b 100644 --- a/turbopack/crates/turbopack-ecmascript/src/worker_chunk/chunk_item.rs +++ b/turbopack/crates/turbopack-ecmascript/src/worker_chunk/chunk_item.rs @@ -40,8 +40,7 @@ impl WorkerLoaderChunkItem { async fn chunks(&self) -> Result> { let module = self.module.await?; - let Some(evaluatable) = - ResolvedVc::try_downcast_sync::>(module.inner) + let Some(evaluatable) = ResolvedVc::try_downcast::>(module.inner) else { bail!( "{} is not evaluatable for Worker loader module", diff --git a/turbopack/crates/turbopack-node/src/lib.rs b/turbopack/crates/turbopack-node/src/lib.rs index a38c03fdd3558..e90a187a62ef2 100644 --- a/turbopack/crates/turbopack-node/src/lib.rs +++ b/turbopack/crates/turbopack-node/src/lib.rs @@ -94,7 +94,7 @@ async fn internal_assets_for_source_mapping( let mut internal_assets_for_source_mapping = HashMap::new(); for asset in internal_assets.iter() { if let Some(generate_source_map) = - ResolvedVc::try_sidecast_sync::>(*asset) + ResolvedVc::try_sidecast::>(*asset) { if let Some(path) = intermediate_output_path.get_path_to(&*asset.ident().path().await?) { diff --git a/turbopack/crates/turbopack-nodejs/src/chunking_context.rs b/turbopack/crates/turbopack-nodejs/src/chunking_context.rs index 57b9a1c2373af..4acc37597ecf9 100644 --- a/turbopack/crates/turbopack-nodejs/src/chunking_context.rs +++ b/turbopack/crates/turbopack-nodejs/src/chunking_context.rs @@ -434,7 +434,7 @@ impl ChunkingContext for NodeJsChunkingContext { ) .collect(); - let Some(module) = ResolvedVc::try_downcast_sync(module) else { + let Some(module) = ResolvedVc::try_downcast(module) else { bail!("module must be placeable in an ecmascript chunk"); }; diff --git a/turbopack/crates/turbopack-nodejs/src/ecmascript/node/entry/chunk.rs b/turbopack/crates/turbopack-nodejs/src/ecmascript/node/entry/chunk.rs index 6f135fc32d3d0..52437064eceaa 100644 --- a/turbopack/crates/turbopack-nodejs/src/ecmascript/node/entry/chunk.rs +++ b/turbopack/crates/turbopack-nodejs/src/ecmascript/node/entry/chunk.rs @@ -112,9 +112,8 @@ impl EcmascriptBuildNodeEntryChunk { let evaluatable_assets = this.evaluatable_assets.await?; for evaluatable_asset in &*evaluatable_assets { - if let Some(placeable) = ResolvedVc::try_sidecast_sync::< - Box, - >(*evaluatable_asset) + if let Some(placeable) = + ResolvedVc::try_sidecast::>(*evaluatable_asset) { let runtime_module_id = placeable .as_chunk_item(*this.module_graph, Vc::upcast(*this.chunking_context)) diff --git a/turbopack/crates/turbopack-tests/tests/snapshot.rs b/turbopack/crates/turbopack-tests/tests/snapshot.rs index bb9b87e853409..4ac2c29f8f03f 100644 --- a/turbopack/crates/turbopack-tests/tests/snapshot.rs +++ b/turbopack/crates/turbopack-tests/tests/snapshot.rs @@ -498,9 +498,7 @@ async fn walk_asset( .await? .iter() .copied() - .map(|asset| async move { - Ok(ResolvedVc::try_downcast_sync::>(asset)) - }) + .map(|asset| async move { Ok(ResolvedVc::try_downcast::>(asset)) }) .try_join() .await? .into_iter() diff --git a/turbopack/crates/turbopack/src/global_module_ids.rs b/turbopack/crates/turbopack/src/global_module_ids.rs index 355efe434fea5..46219efabe0ab 100644 --- a/turbopack/crates/turbopack/src/global_module_ids.rs +++ b/turbopack/crates/turbopack/src/global_module_ids.rs @@ -34,7 +34,7 @@ pub async fn get_global_module_id_strategy( .traverse_all_edges_unordered(|parent, current| { if let (_, &ChunkingType::Async) = parent { let module = - ResolvedVc::try_sidecast_sync::>(current.module) + ResolvedVc::try_sidecast::>(current.module) .context("expected chunkable module for async reference")?; async_idents.push(AsyncLoaderModule::asset_ident_for(*module)); } diff --git a/turbopack/crates/turbopack/src/module_options/rule_condition.rs b/turbopack/crates/turbopack/src/module_options/rule_condition.rs index a4461ab8ce782..4f58387e4ce97 100644 --- a/turbopack/crates/turbopack/src/module_options/rule_condition.rs +++ b/turbopack/crates/turbopack/src/module_options/rule_condition.rs @@ -96,7 +96,7 @@ impl RuleCondition { } RuleCondition::ReferenceType(condition_ty) => condition_ty.includes(reference_type), RuleCondition::ResourceIsVirtualSource => { - ResolvedVc::try_downcast_type_sync::(source).is_some() + ResolvedVc::try_downcast_type::(source).is_some() } RuleCondition::ResourcePathGlob { glob, base } => { if let Some(path) = base.get_relative_path_to(path) {