I'd like to verify whether all the dependencies in my project (package.json
and yarn.lock
) are satisfied without having to run yarn install
(which builds out a whole dependency tree and makes network requests)
At first, I was very hopeful that yarn check
did this. The following command verifies that each dependency is satisfied in package.json
and verifies that the installed package matches the yarn.lock
file.
yarn check --integrity --verify-tree
However, the documentation says this is deprecated as of yarn v2, and that yarn install --check-files
should be used instead.
But the documentation for --check-files
makes it seem like this does something completely different.
yarn install --check-files
Verifies that already installed files in node_modules did not get removed.
I can also verify that running it essentially runs a full yarn install
command, so it's not useful here.
Furthermore, the pull request that removed yarn check
also mentions that the behavior of --check-files
isn't exactly intuitive.
So what's the supported way of running this check in yarn v2 and later? Is there any way to do a lightweight check against package.json
and yarn.lock
without having to build out the whole dependency tree over a network like yarn install
does?
FWIW, a similar question was asked for npm
and the solution was to use the --dry-run
flag, but that flag doesn't seem to exist in yarn
.
--offline
feature didn't have much explanation in that documentation but is better explained here. However, it looks like it maintains a separate cache folder. This isn't ideal, I would think there would still be an easier way to check installation. But this is a great thing to investigate. – Pacifier