> Puppet (master/apply) will now warn at most once per compile if the > manifest being compiled uses dynamic scope.
Hmmm. At most once per compile? That still may be too frequent, and yet I'm not sure off the top of my head how to reduce it. Also, does "at most" mean it might not warn sometimes? If so, what's the rule? > During variable lookup, > it will perform both dynamic scope lookup and static scope lookup > and compare the two. If they differ, it issues the warning. > Any idea what the performance impact of the double-lookups is? And did you explore detecting dynamic lookups rather than doing the double-lookup and compare dodge (sitting on the sidelines, it looks like it might be a lot less invasive -- just detect when you recurse into a parent where self.parent_relationship == :dynamic, than warn if that's the case but you haven't reached topscope when you find the var)? And finally, I'm not seeing why the dodge with the context thread var is needed. Isn't this just going to be the current AST node? -- M ----------------------------------------------------------- The power of accurate observation is commonly called cynicism by those who have not got it. ~George Bernard Shaw ------------------------------------------------------------ -- You received this message because you are subscribed to the Google Groups "Puppet Developers" 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-dev?hl=en.
