summaryrefslogtreecommitdiff
path: root/cli/tools
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2024-06-26 17:24:10 -0400
committerGitHub <noreply@github.com>2024-06-26 21:24:10 +0000
commit0da01c0ca6b537f74be32126e567bdfc2c73ed16 (patch)
treeef29d32cffb03a975a58c16827b0691dda50a5b3 /cli/tools
parent86e0292733d6d08bf338b68fd50863aef17b1e44 (diff)
refactor: move PackageJson to deno_config (#24348)
Diffstat (limited to 'cli/tools')
-rw-r--r--cli/tools/lint/mod.rs2
-rw-r--r--cli/tools/registry/pm.rs6
-rw-r--r--cli/tools/registry/unfurl.rs15
3 files changed, 13 insertions, 10 deletions
diff --git a/cli/tools/lint/mod.rs b/cli/tools/lint/mod.rs
index 712b95e34..0d9868cf2 100644
--- a/cli/tools/lint/mod.rs
+++ b/cli/tools/lint/mod.rs
@@ -911,7 +911,7 @@ pub fn get_configured_rules(
) -> ConfiguredRules {
const NO_SLOW_TYPES_NAME: &str = "no-slow-types";
let implicit_no_slow_types = maybe_config_file
- .map(|c| c.is_package() || !c.json.workspaces.is_empty())
+ .map(|c| c.is_package() || c.json.workspace.is_some())
.unwrap_or(false);
let no_slow_types = implicit_no_slow_types
&& !rules
diff --git a/cli/tools/registry/pm.rs b/cli/tools/registry/pm.rs
index 40493c6bf..4fdc02550 100644
--- a/cli/tools/registry/pm.rs
+++ b/cli/tools/registry/pm.rs
@@ -50,7 +50,7 @@ impl DenoConfigFormat {
enum DenoOrPackageJson {
Deno(deno_config::ConfigFile, DenoConfigFormat),
- Npm(deno_node::PackageJson, Option<FmtOptionsConfig>),
+ Npm(Arc<deno_node::PackageJson>, Option<FmtOptionsConfig>),
}
impl DenoOrPackageJson {
@@ -306,8 +306,8 @@ pub async fn add(flags: Flags, add_flags: AddFlags) -> Result<(), AnyError> {
.await
.context("Failed to update configuration file")?;
- // TODO(bartlomieju): we should now cache the imports from the deno.json.
-
+ // clear the previously cached package.json from memory before reloading it
+ deno_node::PackageJsonThreadLocalCache::clear();
// make a new CliFactory to pick up the updated config file
let cli_factory = CliFactory::from_flags(flags)?;
// cache deps
diff --git a/cli/tools/registry/unfurl.rs b/cli/tools/registry/unfurl.rs
index bc3272835..36bff64bb 100644
--- a/cli/tools/registry/unfurl.rs
+++ b/cli/tools/registry/unfurl.rs
@@ -305,7 +305,6 @@ fn to_range(
mod tests {
use std::sync::Arc;
- use crate::args::package_json::get_local_package_json_version_reqs;
use crate::args::PackageJsonDepsProvider;
use super::*;
@@ -316,7 +315,6 @@ mod tests {
use deno_runtime::deno_fs::RealFs;
use deno_runtime::deno_node::PackageJson;
use import_map::ImportMapWithDiagnostics;
- use indexmap::IndexMap;
use pretty_assertions::assert_eq;
use test_util::testdata_path;
@@ -349,13 +347,18 @@ mod tests {
});
let ImportMapWithDiagnostics { import_map, .. } =
import_map::parse_from_value(deno_json_url, value).unwrap();
- let mut package_json = PackageJson::empty(cwd.join("package.json"));
- package_json.dependencies =
- Some(IndexMap::from([("chalk".to_string(), "5".to_string())]));
+ let package_json = PackageJson::load_from_value(
+ cwd.join("package.json"),
+ json!({
+ "dependencies": {
+ "chalk": 5
+ }
+ }),
+ );
let mapped_resolver = MappedSpecifierResolver::new(
Some(Arc::new(import_map)),
Arc::new(PackageJsonDepsProvider::new(Some(
- get_local_package_json_version_reqs(&package_json),
+ package_json.resolve_local_package_json_version_reqs(),
))),
);