Issue #18534 has been updated by Roger Kennedy.

Status changed from Unreviewed to Needs Decision

I have verified that this is true, however the behavior does not surprise me. 
The semantic of `modulepath` is the same as `PATH` in *NIX systems: when 
looking for a thing, check the PATH in order and use the first thing found.

There is nothing in `--debug` on master or agent to indicate where in the 
modulepath a module was found. However, I think the real issue is #12173. If 
you could reliably distinguish between different versions of modules, having a 
"first one found wins" model becomes less problematic.

It may still be prudent to enhance `withpath` to provide a "fully-qualified" 
path including the modules directory used. This could also be useful debugging 
environments, as a site with multiple/complex environments is probably using 
custom modulepaths for the environments.

----------------------------------------
Bug #18534: Warn when multiple versions of the same module are available in the 
modulepath
https://projects.puppetlabs.com/issues/18534#change-94512

* Author: Josh Cooper
* Status: Needs Decision
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* Affected Puppet version: 
* Keywords: 
* Branch: 
----------------------------------------
The module tool tries to prevent multiple versions of the same module from 
being installed. But there are lots of ways that you can end up in that state, 
such as by installing a module using a specific modulepath (puppet module 
install --modulepath dirA)

Then if the master is configured to use multiple modulepaths, 
modulepath=dirA:dirB, you can easily end up with multiple versions of the same 
module. This can cause unexpected breakage if the version in dirA is 
incompatible with respect to the one in dirB, especially when the module, e.g. 
stdlib, is a dependency shared by multiple modules.. See #18525.

One simple thing to assist debugging this situation would be to issue a warning 
on the master if there are multiple versions of the same module accessible in 
its modulepath.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to