diff options
Diffstat (limited to 'cli/tools')
-rw-r--r-- | cli/tools/doc.rs | 1 | ||||
-rw-r--r-- | cli/tools/lint/rules/no_sloppy_imports.rs | 6 | ||||
-rw-r--r-- | cli/tools/registry/unfurl.rs | 15 | ||||
-rw-r--r-- | cli/tools/vendor/test.rs | 1 |
4 files changed, 21 insertions, 2 deletions
diff --git a/cli/tools/doc.rs b/cli/tools/doc.rs index bc0d81cc9..e7eab9b91 100644 --- a/cli/tools/doc.rs +++ b/cli/tools/doc.rs @@ -59,7 +59,6 @@ async fn generate_doc_nodes_for_builtin_types( imports: Vec::new(), is_dynamic: false, passthrough_jsr_specifiers: false, - workspace_members: &[], executor: Default::default(), file_system: &NullFileSystem, jsr_url_provider: Default::default(), diff --git a/cli/tools/lint/rules/no_sloppy_imports.rs b/cli/tools/lint/rules/no_sloppy_imports.rs index b5e057bfc..1ae792e08 100644 --- a/cli/tools/lint/rules/no_sloppy_imports.rs +++ b/cli/tools/lint/rules/no_sloppy_imports.rs @@ -203,10 +203,14 @@ impl<'a> deno_graph::source::Resolver for SloppyImportCaptureResolver<'a> { None => Ok(specifier), } } - deno_config::workspace::MappedResolution::WorkspaceNpmPackage { + deno_config::workspace::MappedResolution::WorkspaceJsrPackage { + .. + } + | deno_config::workspace::MappedResolution::WorkspaceNpmPackage { .. } | deno_config::workspace::MappedResolution::PackageJson { .. } => { + // this error is ignored Err(ResolveError::Other(anyhow!(""))) } } diff --git a/cli/tools/registry/unfurl.rs b/cli/tools/registry/unfurl.rs index a28ba445a..489c9a1be 100644 --- a/cli/tools/registry/unfurl.rs +++ b/cli/tools/registry/unfurl.rs @@ -75,6 +75,9 @@ impl SpecifierUnfurler { match resolved { MappedResolution::Normal(specifier) | MappedResolution::ImportMap(specifier) => Some(specifier), + MappedResolution::WorkspaceJsrPackage { pkg_req_ref, .. } => { + Some(ModuleSpecifier::parse(&pkg_req_ref.to_string()).unwrap()) + } MappedResolution::WorkspaceNpmPackage { target_pkg_json: pkg_json, pkg_name, @@ -388,11 +391,14 @@ mod tests { use super::*; use deno_ast::MediaType; use deno_ast::ModuleSpecifier; + use deno_config::workspace::ResolverWorkspaceJsrPackage; use deno_core::serde_json::json; use deno_core::url::Url; use deno_runtime::deno_fs::RealFs; use deno_runtime::deno_node::PackageJson; + use deno_semver::Version; use import_map::ImportMapWithDiagnostics; + use indexmap::IndexMap; use pretty_assertions::assert_eq; use test_util::testdata_path; @@ -436,6 +442,13 @@ mod tests { let workspace_resolver = WorkspaceResolver::new_raw( Arc::new(ModuleSpecifier::from_directory_path(&cwd).unwrap()), Some(import_map), + vec![ResolverWorkspaceJsrPackage { + base: ModuleSpecifier::from_directory_path(cwd.join("jsr-package")) + .unwrap(), + name: "@denotest/example".to_string(), + version: Some(Version::parse_standard("1.0.0").unwrap()), + exports: IndexMap::from([(".".to_string(), "mod.ts".to_string())]), + }], vec![Arc::new(package_json)], deno_config::workspace::PackageJsonDepResolution::Enabled, ); @@ -458,6 +471,7 @@ import b from "./b.js"; import b2 from "./b"; import "./mod.ts"; import url from "url"; +import "@denotest/example"; // TODO: unfurl these to jsr // import "npm:@jsr/std__fs@1/file"; // import "npm:@jsr/std__fs@1"; @@ -507,6 +521,7 @@ import b from "./b.ts"; import b2 from "./b.ts"; import "./mod.ts"; import url from "node:url"; +import "jsr:@denotest/example@^1.0.0"; // TODO: unfurl these to jsr // import "npm:@jsr/std__fs@1/file"; // import "npm:@jsr/std__fs@1"; diff --git a/cli/tools/vendor/test.rs b/cli/tools/vendor/test.rs index dc851858e..65f37efdc 100644 --- a/cli/tools/vendor/test.rs +++ b/cli/tools/vendor/test.rs @@ -300,6 +300,7 @@ fn build_resolver( Arc::new(ModuleSpecifier::from_directory_path(root_dir).unwrap()), maybe_original_import_map, Vec::new(), + Vec::new(), deno_config::workspace::PackageJsonDepResolution::Enabled, )), maybe_jsx_import_source_config, |