You're right. Parsing isn't stateless in 2.6 and that is why this fix was needed. I didn't realize that it used to be stateless in 0.25--that's an unfortunate regression. Is this going to get in the way of your ability to use 2.6? If so we should probably put a ticket in the system and see if we can get a workaround so you can do the sort of parsing you need to do.
If you don't need stateless parsing for 2.6, then don't worry: we already have a change in the 2.7 branch (a.k.a. the "next" branch) that makes parsing stateless again. If you want to have a look to make sure it suits your needs, the commit is 4da88fb4cd57871f16649d50572240ac3f7420f0. It got sent to the list on Aug 13 with the subject line "[#4496]+[#4521]+[#4522] Add structures to the AST to represent type definitions (classes, definitions, and nodes)." Paul On Wed, Sep 22, 2010 at 9:46 AM, Brice Figureau < [email protected]> wrote: > +1, but... > > In 0.25 the parsing was stateless and you could spawn a parser to parse > some files independently. Now the parser is stateful because it populate > an environment singleton. It is no more possible to parse random > manifests in total independency, all their AST are concatenated in the > environment. > It might not be an issue for the puppetmaster but as we see with the > cucumber-puppet speed issue or this bug it can. > I'm wondering if there couldn't be a better solution to reinstate this > feature? > > Thanks, > > On 21/09/10 22:57, Paul Berry wrote: > > When running puppet doc, if the directory containing the user's > > specified manifest file overlaps with the modules directory (i.e. they > > are the same directory or one contains the other), Puppet doc would > > try to parse the overlapping files twice, triggering an exception > > which made the documentation run fail. > > > > Fixed the bug by adding a check to the RDoc::Parser#scan method to > > prevent re-parsing of files that have already been parsed. Also added > > a spec test to verify that this works. > > [snipped] > -- > Brice Figureau > My Blog: http://www.masterzen.fr/ > > -- > 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]<puppet-dev%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/puppet-dev?hl=en. > > -- 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.
