Commit Graph

43 Commits (b4699cd741f22425b45cb7751f2c358f68ae6bb0)

Author SHA1 Message Date
Thomas Reynolds b4699cd741 Poll source on path change 2016-10-31 09:30:46 -07:00
Rene Klacan 8b4e2d043c Fix source watcher configuration 2016-10-27 15:26:34 +02:00
Mark Rowe dcd36a4f99 Eliminate quadratic behavior in `SourceWatcher::poll_once!`.
Both `Array#reject` and `Array#include?` have linear time
complexity. This results in quadratic time complexity when
`Array#include?` is called within `Array#reject`'s block. Using
`Array`'s difference operator gives the same result in linear time.

In a site with ~14,000 files, this drops the time taken by some calls to
`SourceWatcher::poll_once!` from ~15 seconds each to just a few
milliseconds.
2016-08-11 00:24:42 -07:00
Peter Suschlik 1581bfc27e Convert `latency` option to a Fixnum (#1928)
As @vill pointed out in https://github.com/middleman/middleman/issues/1866#issuecomment-222869287
passing `--watcher-latency=2` fails because the gem `listen` expects `latency` to be an `Fixnum`.

This commit fixes this issue.
2016-06-01 14:19:13 -07:00
Thomas Reynolds 0f2bc1e0ea Minor perf tweaks 2016-04-21 16:12:33 -07:00
Thomas Reynolds 16c82fe57a Really fix #1864 2016-03-27 14:12:32 -07:00
Thomas Reynolds 737e6f5e64 expand_path on custom source directories. Fixes #1823 2016-03-02 12:54:14 -08:00
Thomas Reynolds 3f18efeed9 split up util module, fix some rubocop complaints 2016-01-31 14:13:52 -08:00
Thomas Reynolds 598d72480f Fix slow server boot. It was recursing through node_modules and .git on initial boot 2016-01-28 16:45:54 -08:00
Thomas Reynolds c7a4618166 Perf work and Parallel builds 2016-01-22 15:57:07 -08:00
Thomas Reynolds b8c0fd34e7 additional perf work 2016-01-22 14:25:02 -08:00
Thomas Reynolds 92d96f6604 typo 2016-01-21 10:19:52 -08:00
Thomas Reynolds 5586784947 Add some options to watcher to opt out of features later 2016-01-20 13:34:12 -08:00
Thomas Reynolds 6d1c3562a7 Differentiate polling from find_new_files to remove double reads in build mode 2016-01-20 12:20:27 -08:00
Thomas Reynolds ffa662a917 Add system-wide file read cache 2016-01-20 11:50:25 -08:00
Jim Dalton dc3eac9e96 Use correct type for removed paths passed to update 2016-01-16 11:58:00 -08:00
Thomas Reynolds d82ac590db Cop 2016-01-14 11:21:42 -08:00
Thomas Reynolds 5f8beba4b3 Perf 2016-01-14 11:05:41 -08:00
Thomas Reynolds ae15d203a8 Fix some tests 2015-11-28 19:32:45 -08:00
Thomas Reynolds e47b0ae29a import_file and import_path APIs. Addresses #1632 2015-11-28 18:03:05 -08:00
Thomas Reynolds 16b997498b Generic related files check 2015-11-28 16:48:08 -08:00
Thomas Reynolds dd0ee24ca3 Work around Listen :only weirdness. Addresses #1637 2015-11-27 15:26:46 -08:00
Thomas Reynolds 4594f46fb8 Minor tweak to #1695 2015-11-27 14:16:55 -08:00
Johnny Shields 13a14d43d4 In SourceWatcher, add a subroutine to find files which should be considered "also dirty" when a given file is touched. 2015-11-27 15:20:20 +09:00
Thomas Reynolds fdabd87957 merge in fixes from stable 2015-09-17 13:53:43 -07:00
Thomas Reynolds 409a892da7 Forward port some stable changes 2015-09-17 09:41:17 -07:00
Thomas Reynolds 9886e04a95 Patch around seemingly invalid logic in Listen v3 2015-08-17 14:28:15 -07:00
Thomas Reynolds e64954fbff Finish porting to new callbacks manager 2015-05-03 15:38:23 -07:00
Thomas Reynolds 2403fa2d81 Merge stable 2015-04-26 11:32:47 -07:00
Thomas Reynolds c87e2e026e Rubocop tweaks 2015-04-26 11:13:29 -07:00
Thomas Reynolds 55c5a46440 Update contracts gem. #1494 2015-04-24 10:26:42 -07:00
Steven Sloan 3b1a00cf47 allow setting a destination_dir for SourceWatchers
This change lets a source be defined with a destination directory. That way we can mount a source (say a gem’s ‘doc’ directory) in a namespace and worry less about name collisions with  files in other sources.
2015-04-17 16:46:39 -04:00
Thomas Reynolds 26c6f453f3 Add file watcher :only option 2015-02-26 17:08:40 -08:00
Thomas Reynolds c94e5d0f4d Merge from stable 2015-02-24 11:16:16 -08:00
Thomas Reynolds e4b7d4fff0 begin prepping beta.1 2015-02-07 13:38:29 -08:00
Thomas Reynolds ee4c68b03c prep alpha, backwards compat 2014-12-23 14:54:21 -08:00
Thomas Reynolds d8e8b06cb6 merge v3 2014-11-19 09:04:56 -08:00
Thomas Reynolds c7922c4a35 move actual type detection to sprockets 2014-10-18 12:56:52 -05:00
Thomas Reynolds 6a3d2e7e4e slightly better types debug message 2014-10-18 12:50:18 -05:00
Thomas Reynolds d0a9f01b2f Treat source file types more like tags, allow a set of them 2014-10-18 12:45:49 -05:00
Thomas Reynolds 445443cffc Add a bit of laziness 2014-10-15 14:25:06 -05:00
Thomas Reynolds 84acb50b02 Optimize globbed file lookups, fixes nasty performance regression 2014-08-24 17:10:25 -07:00
Thomas Reynolds bedf235ff6 Multiple Source watchers 2014-07-20 18:57:22 -07:00