Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains two commits
c173c33 adds a new
YarnLockParser
utility class which as of now contains utility methods to parse and generate dependency trees out of ayarn.lock
file.This utility class is used to replace primitive/limited dependency logging following Container generation. Complete dependency trees of all resolved native dependencies are now debug logged following Container generation along with the tree of potential mismatching native dependencies versions.
31982ff Leverage the new
YarnLockParser
class by adding a new commandern cauldron why
, deprecating theern why
command that was too rudimentary and ultra slow to be of any practical use.This new command relies on the
yarn.lock
files stored in the Cauldron for each Container, and will list a dependency tree of any given native or JS dependency, which is a much faster way to check why a dependency is included in the Container of a native application version than having to go through Cauldronyarn.lock
files manually following each dependency to walk up the tree.It will list each found version of the dependency as a dependency tree along with the resolved version of any dependency. For example :