This is a rather complex set of structural changes. But to understand it you really only need to grasp two key sections; the rest is cleanup.
Cleanup commits: The thrust of these is to localize the code that we are going to change (the itterator over the dependency graph) and get all the key parts in one place. [PATCH/puppet 1/8] (6911) Use normal methods to implement "depthfirst?" test [PATCH/puppet 2/8] (maint) Fix for require order issue [PATCH/puppet 3/8] (6911) Refactor to localize eval_generate dependency assumptions [PATCH/puppet 4/8] (6911) Cleanup of generate_additional_resources Core of #6911: These two commits wrap a facade around Transaction's use of the Catalog's resource_graph that implement the graph frontier. Look especially at the Relationship_graph_wrapper class introduced in lib/puppet/transaction.rb by the second commit. [PATCH/puppet 5/8] (6911) Add bookkeeping facade around Transaction#relationship_graph [PATCH/puppet 6/8] (6911) Core change -- replace topsort with frontier ordered by salted SHA1 Cleanup: [PATCH/puppet 7/8] (6911) Cleanup and renaming of transaction internals Sentinal Whits: Look at the implementation of Catalog#splice! and especially the axioms given there. Everything else follows from these, albeit sometimes along a twisty path. [PATCH/puppet 8/8] (5200) -- replace containers with sentinals -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To post to this group, send email to puppet-dev@googlegroups.com. To unsubscribe from this group, send email to puppet-dev+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.