diff --git a/awestruct.gemspec b/awestruct.gemspec index f7156f1d..4f2a6da8 100644 --- a/awestruct.gemspec +++ b/awestruct.gemspec @@ -4,7 +4,7 @@ require 'awestruct/version' spec = Gem::Specification.new do |s| s.name = 'awestruct' s.version = Awestruct::VERSION - s.date = '2014-09-26' + s.date = '2014-10-17' s.authors = ['Bob McWhirter', 'Jason Porter', 'Lance Ball', 'Dan Allen', 'Torsten Curdt', 'other contributors'] s.email = ['bob@mcwhirter.org', 'lightguard.jp@gmail.com', 'lball@redhat.com', 'dan.j.allen@gmail.com', 'tcurdt@vafer.org'] diff --git a/lib/awestruct/engine.rb b/lib/awestruct/engine.rb index 8c6efa40..b91badac 100644 --- a/lib/awestruct/engine.rb +++ b/lib/awestruct/engine.rb @@ -333,9 +333,9 @@ def generate_page_and_dependencies(page) generate_page_internal(page) end - pages = [ page ] + regen_pages = Set.new [ page ] - pages.each do |p| + regen_pages.each do |p| if $LOG.debug? $LOG.debug "--------------------" $LOG.debug "Page: #{p.output_path} #{p.relative_source_path} #{p.__is_layout ? 'Layout':''}" @@ -353,8 +353,7 @@ def generate_page_and_dependencies(page) end end - regen_pages = Set.new - + binding.pry if page.dependencies.has_changed_content || page.__is_layout || page.is_partial? regen_pages += page.dependencies.dependents end @@ -380,10 +379,9 @@ def generate_page_and_dependencies(page) regen_pages.each do |p| puts "Regenerating page #{p.output_path}" unless config.quiet generate_page_internal(p) - pages << p end - pages + regen_pages end def run_auto_for_non_page(file) diff --git a/lib/awestruct/extensions/paginator.rb b/lib/awestruct/extensions/paginator.rb index eeca0e6b..45d18336 100644 --- a/lib/awestruct/extensions/paginator.rb +++ b/lib/awestruct/extensions/paginator.rb @@ -59,10 +59,10 @@ def initialize(prop_name, input_path, opts={}) def execute(site) removal_path = nil - all = @collection || site.send( @prop_name ) + _all = @collection || site.send( @prop_name ) i = 1 paginated_pages = [] - all.each_slice( @per_page ) do |slice| + _all.each_slice( @per_page ) do |slice| page = site.engine.find_and_load_site_page( @input_path ) removal_path ||= page.output_path slice.extend( Paginated ) diff --git a/lib/awestruct/extensions/tagger.rb b/lib/awestruct/extensions/tagger.rb index 394969c3..c32ecf37 100644 --- a/lib/awestruct/extensions/tagger.rb +++ b/lib/awestruct/extensions/tagger.rb @@ -89,6 +89,7 @@ def execute(site) paginator = Awestruct::Extensions::Paginator.new( @tagged_items_property, @input_path, options ) primary_page = paginator.execute( site ) tag.primary_page = primary_page + tag.pages.each {|p| primary_page.dependencies.add_key_dependency(p)} end site.send( "#{@tagged_items_property}_tags=", ordered_tags ) diff --git a/lib/awestruct/version.rb b/lib/awestruct/version.rb index 7360a33c..1427a302 100644 --- a/lib/awestruct/version.rb +++ b/lib/awestruct/version.rb @@ -1,3 +1,3 @@ module Awestruct - VERSION = '0.5.6.beta' + VERSION = '0.5.6.beta2' end