Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What actually happens when we do npm clear cache --force

Tags:

npm

angular

I am working on angular and just in general i wanted to know what actually happens in the angular project when we execute command npm clear cache --force and what type of data is there in cache. Thanks in advance

like image 230
Utkarsh Avatar asked Nov 26 '19 06:11

Utkarsh


People also ask

What does npm clean cache -- force do?

npm cache clean --force or npm cache clean -f . This will force delete the npm cache on your computer.

Is it safe to clear npm cache?

clean: Delete all data out of the cache folder. Note that this is typically unnecessary, as npm's cache is self-healing and resistant to data corruption issues.

Is npm cache important?

A note about the cache's design. The npm cache is strictly a cache: it should not be relied upon as a persistent and reliable data store for package data. npm makes no guarantee that a previously-cached piece of data will be available later, and will automatically delete corrupted contents.

What does npm cache verify do?

ie; npm cache verify : Verifies the contents of the cache folder, garbage collecting any unneeded data, and verifying the integrity of the cache index and all cached data. npm cache clean --force delete the entire cache.


2 Answers

As found here

npm stores cache data in an opaque directory within the configured cache, named _cacache. This directory is a cacache-based content-addressable cache that stores all http request data as well as other package-related data. This directory is primarily accessed through pacote, the library responsible for all package fetching as of npm@5.

All data that passes through the cache is fully verified for integrity on both insertion and extraction. Cache corruption will either trigger an error, or signal to pacote that the data must be refetched, which it will do automatically. For this reason, it should never be necessary to clear the cache for any reason other than reclaiming disk space, thus why clean now requires --force to run.

There is currently no method exposed through npm to inspect or directly manage the contents of this cache. In order to access it, cacache must be used directly.

npm will not remove data by itself: the cache will grow as new packages are installed.

To answer your question:

The cache stores all http request data as well as other package-related data

like image 75
Julian Avatar answered Oct 23 '22 03:10

Julian


The clear cache delete all data out of the cache folder and --force "forces" npm to re-download all packages and install them again.

like image 25
danywalls Avatar answered Oct 23 '22 02:10

danywalls