mirror of
https://github.com/denoland/deno.git
synced 2025-09-26 12:19:12 +00:00
fix(cli): Explicitly cache NPM packages during deno install
(#24190)
Fixes a regression introduced in https://github.com/denoland/deno/pull/24170, where we wouldn't actually set up the node modules dir on `deno install` if there was an up to date deno lockfile present. Previously we were relying on the fact that resolving pending module resolution called `cache_packages` (which sets up the node modules dir). When pending resolutions were removed, and the `resolve_pending` function with it, we also removed the `cache_packages` call needed to set up node modules.
This commit is contained in:
parent
b30e5c0985
commit
a7531361ef
4 changed files with 44 additions and 0 deletions
|
@ -75,6 +75,9 @@ pub async fn load_top_level_deps(factory: &CliFactory) -> Result<(), AnyError> {
|
|||
let npm_resolver = factory.npm_resolver().await?;
|
||||
if let Some(npm_resolver) = npm_resolver.as_managed() {
|
||||
npm_resolver.ensure_top_level_package_json_install().await?;
|
||||
// TODO(nathanwhit): we call `cache_packages` if the lockfile is modified,
|
||||
// so by calling it here it's possible we end up calling it twice
|
||||
npm_resolver.cache_packages().await?;
|
||||
}
|
||||
// cache as many entries in the import map as we can
|
||||
if let Some(import_map) = factory.maybe_import_map().await? {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue