summaryrefslogtreecommitdiff
path: root/cli/lsp
diff options
context:
space:
mode:
Diffstat (limited to 'cli/lsp')
-rw-r--r--cli/lsp/diagnostics.rs8
-rw-r--r--cli/lsp/documents.rs10
-rw-r--r--cli/lsp/language_server.rs22
3 files changed, 19 insertions, 21 deletions
diff --git a/cli/lsp/diagnostics.rs b/cli/lsp/diagnostics.rs
index 8c2126561..965075a2d 100644
--- a/cli/lsp/diagnostics.rs
+++ b/cli/lsp/diagnostics.rs
@@ -16,7 +16,6 @@ use super::tsc::TsServer;
use crate::args::LintOptions;
use crate::graph_util;
use crate::graph_util::enhanced_resolution_error_message;
-use crate::node;
use crate::tools::lint::get_configured_rules;
use deno_ast::MediaType;
@@ -31,6 +30,7 @@ use deno_graph::Resolution;
use deno_graph::ResolutionError;
use deno_graph::SpecifierError;
use deno_lint::rules::LintRule;
+use deno_runtime::deno_node;
use deno_runtime::tokio_util::create_basic_runtime;
use deno_semver::npm::NpmPackageReqReference;
use log::error;
@@ -469,8 +469,8 @@ async fn generate_lint_diagnostics(
}
// ignore any npm package files
- if let Some(npm_resolver) = &snapshot.maybe_npm_resolver {
- if npm_resolver.in_npm_package(document.specifier()) {
+ if let Some(node_resolver) = &snapshot.maybe_node_resolver {
+ if node_resolver.in_npm_package(document.specifier()) {
continue;
}
}
@@ -926,7 +926,7 @@ fn diagnose_resolution(
}
} else if let Some(module_name) = specifier.as_str().strip_prefix("node:")
{
- if node::resolve_builtin_node_module(module_name).is_err() {
+ if deno_node::resolve_builtin_node_module(module_name).is_err() {
diagnostics.push(
DenoDiagnostic::InvalidNodeSpecifier(specifier.clone())
.to_lsp_diagnostic(&range),
diff --git a/cli/lsp/documents.rs b/cli/lsp/documents.rs
index 7b206406c..fd40bb95f 100644
--- a/cli/lsp/documents.rs
+++ b/cli/lsp/documents.rs
@@ -18,7 +18,6 @@ use crate::file_fetcher::map_content_type;
use crate::file_fetcher::SUPPORTED_SCHEMES;
use crate::lsp::logging::lsp_warn;
use crate::node::CliNodeResolver;
-use crate::node::NodeResolution;
use crate::npm::CliNpmRegistryApi;
use crate::npm::NpmResolution;
use crate::npm::PackageJsonDepsInstaller;
@@ -37,8 +36,11 @@ use deno_core::url;
use deno_core::ModuleSpecifier;
use deno_graph::GraphImport;
use deno_graph::Resolution;
+use deno_runtime::deno_node;
+use deno_runtime::deno_node::NodeResolution;
use deno_runtime::deno_node::NodeResolutionMode;
use deno_runtime::deno_node::PackageJson;
+use deno_runtime::deno_node::RealFs;
use deno_runtime::permissions::PermissionsContainer;
use deno_semver::npm::NpmPackageReq;
use deno_semver::npm::NpmPackageReqReference;
@@ -1069,7 +1071,7 @@ impl Documents {
// we're in an npm package, so use node resolution
results.push(Some(NodeResolution::into_specifier_and_media_type(
node_resolver
- .resolve(
+ .resolve::<RealFs>(
&specifier,
referrer,
NodeResolutionMode::Types,
@@ -1082,7 +1084,7 @@ impl Documents {
}
}
if let Some(module_name) = specifier.strip_prefix("node:") {
- if crate::node::resolve_builtin_node_module(module_name).is_ok() {
+ if deno_node::resolve_builtin_node_module(module_name).is_ok() {
// return itself for node: specifiers because during type checking
// we resolve to the ambient modules in the @types/node package
// rather than deno_std/node
@@ -1457,7 +1459,7 @@ fn node_resolve_npm_req_ref(
maybe_node_resolver.map(|node_resolver| {
NodeResolution::into_specifier_and_media_type(
node_resolver
- .resolve_npm_req_reference(
+ .resolve_npm_req_reference::<RealFs>(
&npm_req_ref,
NodeResolutionMode::Types,
&mut PermissionsContainer::allow_all(),
diff --git a/cli/lsp/language_server.rs b/cli/lsp/language_server.rs
index 239ff8a6e..f1b9cb434 100644
--- a/cli/lsp/language_server.rs
+++ b/cli/lsp/language_server.rs
@@ -9,6 +9,7 @@ use deno_core::serde_json;
use deno_core::serde_json::json;
use deno_core::serde_json::Value;
use deno_core::ModuleSpecifier;
+use deno_runtime::deno_node::NodeResolver;
use deno_runtime::deno_node::PackageJson;
use deno_runtime::deno_web::BlobStore;
use import_map::ImportMap;
@@ -81,8 +82,8 @@ use crate::lsp::urls::LspUrlKind;
use crate::node::CliNodeResolver;
use crate::npm::create_npm_fs_resolver;
use crate::npm::CliNpmRegistryApi;
+use crate::npm::CliNpmResolver;
use crate::npm::NpmCache;
-use crate::npm::NpmPackageResolver;
use crate::npm::NpmResolution;
use crate::proc_state::ProcState;
use crate::tools::fmt::format_file;
@@ -103,7 +104,7 @@ pub struct StateSnapshot {
pub documents: Documents,
pub maybe_import_map: Option<Arc<ImportMap>>,
pub maybe_node_resolver: Option<Arc<CliNodeResolver>>,
- pub maybe_npm_resolver: Option<Arc<NpmPackageResolver>>,
+ pub maybe_npm_resolver: Option<Arc<CliNpmResolver>>,
}
#[derive(Debug)]
@@ -153,7 +154,7 @@ pub struct Inner {
/// Npm resolution that is stored in memory.
npm_resolution: Arc<NpmResolution>,
/// Resolver for npm packages.
- npm_resolver: Arc<NpmPackageResolver>,
+ npm_resolver: Arc<CliNpmResolver>,
/// A collection of measurements which instrument that performance of the LSP.
performance: Arc<Performance>,
/// A memoized version of fixable diagnostic codes retrieved from TypeScript.
@@ -424,7 +425,7 @@ fn create_lsp_structs(
) -> (
Arc<CliNpmRegistryApi>,
Arc<NpmCache>,
- Arc<NpmPackageResolver>,
+ Arc<CliNpmResolver>,
Arc<NpmResolution>,
) {
let registry_url = CliNpmRegistryApi::default_url();
@@ -457,11 +458,7 @@ fn create_lsp_structs(
(
api,
npm_cache,
- Arc::new(NpmPackageResolver::new(
- resolution.clone(),
- fs_resolver,
- None,
- )),
+ Arc::new(CliNpmResolver::new(resolution.clone(), fs_resolver, None)),
resolution,
)
}
@@ -703,19 +700,18 @@ impl Inner {
self.npm_resolution.snapshot(),
None,
));
- let npm_resolver = Arc::new(NpmPackageResolver::new(
+ let npm_resolver = Arc::new(CliNpmResolver::new(
npm_resolution.clone(),
create_npm_fs_resolver(
self.npm_cache.clone(),
&ProgressBar::new(ProgressBarStyle::TextOnly),
self.npm_api.base_url().clone(),
- npm_resolution.clone(),
+ npm_resolution,
None,
),
None,
));
- let node_resolver =
- Arc::new(CliNodeResolver::new(npm_resolution, npm_resolver.clone()));
+ let node_resolver = Arc::new(NodeResolver::new(npm_resolver.clone()));
Arc::new(StateSnapshot {
assets: self.assets.snapshot(),
cache_metadata: self.cache_metadata.clone(),