Note for future developers: Most of the work for this will probably going to be in the walk method of SemanticPuppet::Dependency to get it to expose which dependency it was working on resolving when it couldn't find a suitable candidate and gave up. Once that's done, Puppet can be updated to sue the new version of SemanticPuppet & display the newly exposed information.
When {{puppet module}} install fails to find a module version for which dependencies can be satisfied, the operation fails with an error message. The message does not include any information about which dependency could not be satisfied which leaves no starting point for debugging and resolving the issue.
Installation fails with an error about unsatisfiable dependencies, but no information on which dependency could not be satisfied:
{noformat} # puppet module install puppetlabs-stdlib Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ... Notice: Downloading from https://forgeapi.puppet.com ... Notice: Installing -- do not interrupt ... /etc/puppetlabs/code/environments/production/modules └── puppetlabs-stdlib (v5.0.0)
# puppet module install puppetlabs-puppet_authorization --version 0.4.0 Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ... Notice: Downloading from https://forgeapi.puppet.com ... Error: Could not install module 'puppetlabs-puppet_authorization' (???) No version of 'puppetlabs-puppet_authorization' can satisfy all dependencies Use `puppet module install --ignore-dependencies` to install only this module {noformat}
h3. Expected Outcome
The error message lists {{puppetlabs-stdlib}} as a, its version, and the unsatisfiable dependency "< 5.0.0" that caused installation to fail. The module where the unsatisfiable dependency occurred should also be listed as this error can arise from transient dependencies. E.g. a dependency of a dependency of the module being installed cannot have its constraints satisfied.
You do not have permission to delete messages in this group
Copy link
Report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to puppe...@googlegroups.com
The error message lists {{puppetlabs-stdlib}}, its version, and the unsatisfiable dependency "< 5.0.0" that caused installation to fail. The module where the unsatisfiable dependency occurred should also be listed as this error can arise from transient transitive dependencies. E.g. a dependency of a dependency of the module being installed cannot have its constraints satisfied.
When {{puppet module}} install fails to find a module version for which dependencies can be satisfied, the operation fails with an error message. The message does not include any information about which dependency could not be satisfied which leaves no starting point for debugging and resolving the issue.
Installation fails with an error about unsatisfiable dependencies, but no information on which dependency could not be satisfied:
{noformat} # puppet module install puppetlabs-stdlib Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ... Notice: Downloading from https://forgeapi.puppet.com ... Notice: Installing -- do not interrupt ... /etc/puppetlabs/code/environments/production/modules └── puppetlabs-stdlib (v5.0.0)
# puppet module install puppetlabs-puppet_authorization --version 0.4.0 Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ... Notice: Downloading from https://forgeapi.puppet.com ... Error: Could not install module 'puppetlabs-puppet_authorization' (???) No version of 'puppetlabs-puppet_authorization' can satisfy all dependencies Use `puppet module install --ignore-dependencies` to install only this module {noformat}
h3. Expected Outcome
The error message lists {{puppetlabs-stdlib}}, its version, and the unsatisfiable dependency "< 5.0.0" that caused installation to fail. The module where the unsatisfiable dependency occurred should also be listed as this error can arise from transitive dependencies. E.g. a dependency of a dependency of the module being installed cannot have its constraints satisfied.
When `puppet module install` fails to find a module version for which dependencies can be satisfied, a more detailed error is shown, including the unsatisfiable module(s) along with ranges.