Issue #2053 has been updated by Nick Fagerlund.
Category changed from documentation to modules
Status changed from Accepted to Needs Decision
Assignee set to eric sorenson
Keywords set to telly deprecation modules classes namespaces names
Andy and Eric and I talked about this today, and we were pretty much in
agreement:
* The introduction of the autoloader imposed a new and complete meaning on
namespaces: they reflect a class or define's position in a module.
* This **conflicts** with the older meaning of namespaces, which was that
namespaced classes or defines were actually CONTAINED in another class.
* In the modules era, the fact that a class or define shares a namespace with
another class implies no particular relationship other than the fact that they
share a module.
* The depth of a class or define's namespace chain carries no meaning.
* Relative class names (i.e. `include bar` does not actually mean to include
class bar, except as an absolute last resort) obey the principle of maximum
surprise (and user rage).
* Asking everyone to use absolute class names (`include bar` will never declare
class foo::bar) isn't an unreasonable burden...
* ...Especially since that's what everyone THINKS you have to do already.
And therefore we should probably kill relative class/define names. But it's
going to require a big deprecation period, because it will absolutely break
large amounts of older code out in the wild.
----------------------------------------
Bug #2053: including a class with the same name subclass yields an unexpected
result
https://projects.puppetlabs.com/issues/2053#change-68745
Author: Lawrence Ludwig
Status: Needs Decision
Priority: Normal
Assignee: eric sorenson
Category: modules
Target version:
Affected Puppet version: 0.24.7
Keywords: telly deprecation modules classes namespaces names
Branch:
If you create a subclass with the same as a class you include, you get an
unexpected result.
Test code is listed here.
http://pastie.org/409446
It appears that any include inside of subclass thinks it references itself
first.
--
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-bugs?hl=en.