On Mon, Aug 19, 2013 at 2:44 AM, Dean Wilson <[email protected]> wrote:

> On 9 August 2013 13:57, Trevor Vaughan <[email protected]> wrote:
>
> I still think that if an *absolutely identical* resource is declared in
>> two (or more) places, that it should simply bind back to the
>>
> same object in the catalog. It's even a cheap lookup!
>>
>
> I've always thought this'd be a great to have.
>
>
I think it would be good, too. There are a few things that we need to
figure out, though (as always :)

Resources are always contained in something (the class that declared it,
etc). This containment is used to make transitive dependencies work. Once a
resource can be "contained" by two different things it becomes uncertain
how to proceed because it seems we have to choose between either cycles
appearing for reasons that are not immediately obvious, or dependencies and
containment aren't as strong as a manifest author might like.

We are hitting this same problem when working on #8040 (the anchor pattern)
issue. There the problem is that classes don't respect containment.
Removing the containment of classes is actually something that was done on
purpose for #2423. Now that we are trying to add it back in it opens up all
sorts of issues.

I suspect that in both cases there will have to be a distinction made
between the operations of "I want this in the catalog" and "I want to
contain this in this class". Right now resources only have "I want to
contain this in this class". Classes kinda have both with "include" vs.
"class{}", however that distinction hasn't been made before.


>   Dean
> --
> Dean Wilson               http://www.unixdaemon.net
> Profanity is the one language all programmers understand
> --- Anon
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Developers" 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-dev.
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Andrew Parker
[email protected]
Freenode: zaphod42
Twitter: @aparker42
Software Developer

*Join us at PuppetConf 2013, August 22-23 in San Francisco - *
http://bit.ly/pupconf13*
**Register now and take advantage of the Final Countdown discount - save
15%!*

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" 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-dev.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to