[snip]
While it is easy to work around this by top-scoping the class, some form of
documented warning might prevent some hairpulling :)
Mostly for posterity, this behaviour is indeed considered buggy (a major
outstanding design issue) and is in fact documented:
*
On Monday, October 22, 2012 3:21:57 PM UTC-5, Kristof Willaert wrote:
Hi,
I bumped into the following this afternoon (on a 2.7.19 puppet
master/agent combo):
consider a class profile::tomcat in module profile with the following
content:
$ cat modules/profile/manifests/tomcat.pp
Hi John,
I think the behavior you discovered is a natural and expected consequence
of Puppet's name scoping and resolution rules. The current namespace is
searched first for unqualified class names. Only if no matching class is
found there will other namespaces be considered.
The difference