Skip to content

enhancement: improve dependency failure output #43

@neurogenesis

Description

@neurogenesis

Dependency issues can be difficult to track down using current output from berks install (chef-dk 0.5.1, berkshelf 3.2.3).

This request stemmed from the following issue with berkshelf:

berkshelf/berkshelf#1228
berkshelf/berkshelf#1130

Some common problems that aren't as clear as they could/should be:

  • if a dependency cookbook exists, but a specified version (exact or constraint) does not, the output should concisely indicate that the cookbook version couldn't be found. this is fundamentally different from finding a version that meets the version constraint (but then one of its dependencies clashing with another). UPDATE: this appears to have been fixed with minimum viable depsolving exception handling fix berkshelf/berkshelf#1136

  • presently the latest version shows up as a demand (after "Artifacts for which there are conflicting dependencies..."), which is misleading. one would then start searching through cookbooks that reference the latest version or no version constraint (and not find it). if a version cannot be found, the cookbook that specified the missing version should be displayed.

  • the structure of the output isn't optimized for human consumption (nested comma separated lists). consider something closer to yaml or Berksfile.lock (highlighting, color coding, or otherwise specifically indicating the cookbooks / dependencies that are problematic, as opposed to just listing all dependencies).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions