Differentiate polling from find_new_files to remove double reads in build mode

This commit is contained in:
Thomas Reynolds 2016-01-20 12:20:27 -08:00
parent ffa662a917
commit 6d1c3562a7
4 changed files with 28 additions and 6 deletions

View file

@ -1,6 +1,7 @@
# Watcher Library
require 'listen'
require 'middleman-core/contracts'
require 'digest'
# Monkey patch Listen silencer so `only` works on directories too
module Listen
@ -177,6 +178,16 @@ module Middleman
@listener = nil
end
Contract ArrayOf[Pathname]
def find_new_files!
new_files = ::Middleman::Util.all_files_under(@directory.to_s)
.reject { |p| @files.key?(p) }
update(new_files, [])
new_files
end
# Manually trigger update events.
#
# @return [void]