Ember CLI Mirage’s
master build has been broken for a bit and I’m trying to fix it. The failure is specific: it’s in one of our FastBoot tests, running on a “floating dependencies” scenario. Here’s the build, and you can see “node tests” under “floating dependencies” is the job that’s failing. Here’s the actual failure.
Floating dependencies are hard to debug, because if you get a test failure, how do you know what has changed between that and the working build? The only way is to
rm yarn.lock && yarn install && git diff.
If I do that, I get this diff:
It’s 8400 lines long! That’s a lot of changes in dep versions between
yarn.lock file and one that would be generated if
yarn install --no-lockfile were run today.
My next idea was to look back at the most recently passing
master build, which is here. It ran 25 days ago. The problem is, the
yarn.lock in that commit doesn’t represent the dependency graph of
yarn install --no-lockfile as of then; it represents the last time we updated the lockfile. What I really want is to compare the dependency graph generated via
yarn install --no-lockfile as of 25 days ago, with the dependency graph that you’d get if you ran
yarn install --no-lockfile as of today.
Any way to do this?
(I found this issue that references a years-old fork of npm with the functionality, but it looks like it never went anywhere.)
Any other debugging tips? I’m kinda at a loss for how to proceed…