summaryrefslogtreecommitdiff
path: root/cli/args/package_json.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/args/package_json.rs')
-rw-r--r--cli/args/package_json.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/cli/args/package_json.rs b/cli/args/package_json.rs
index 667918cd1..97fb97f0b 100644
--- a/cli/args/package_json.rs
+++ b/cli/args/package_json.rs
@@ -44,6 +44,10 @@ pub fn get_local_package_json_version_reqs(
) -> Result<(), AnyError> {
if let Some(deps) = deps {
for (key, value) in deps {
+ if value.starts_with("workspace:") {
+ // skip workspace specifiers for now
+ continue;
+ }
let (name, version_req) =
parse_dep_entry_name_and_raw_version(key, value)?;
@@ -203,4 +207,21 @@ mod test {
)
);
}
+
+ #[test]
+ fn test_get_local_package_json_version_reqs_skips_workspace_specifiers() {
+ let mut package_json = PackageJson::empty(PathBuf::from("/package.json"));
+ package_json.dependencies = Some(HashMap::from([
+ ("test".to_string(), "1".to_string()),
+ ("work".to_string(), "workspace:1.1.1".to_string()),
+ ]));
+ let result = get_local_package_json_version_reqs(&package_json).unwrap();
+ assert_eq!(
+ result,
+ BTreeMap::from([(
+ "test".to_string(),
+ NpmPackageReq::from_str("test@1").unwrap()
+ )])
+ );
+ }
}