Skip to content

Commit

Permalink
implemented chokidar for file system watching
Browse files Browse the repository at this point in the history
  • Loading branch information
tyler-johnson committed Dec 5, 2013
1 parent e51b25a commit 123b78f
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 deletions.
3 changes: 2 additions & 1 deletion package.json
Expand Up @@ -4,7 +4,8 @@
"version": "1.0.0",
"author": "James Long <longster@gmail.com>",
"dependencies": {
"optimist": "*"
"optimist": "*",
"chokidar": "~0.8.0"
},
"devDependencies": {
"expect.js": "*",
Expand Down
8 changes: 5 additions & 3 deletions src/node-loaders.js
Expand Up @@ -2,6 +2,7 @@ var fs = require('fs');
var path = require('path');
var lib = require('./lib');
var Loader = require('./loader');
var chokidar = require('chokidar');

// Node <0.7.1 compatibility
var existsSync = fs.existsSync || path.existsSync;
Expand All @@ -24,9 +25,10 @@ var FileSystemLoader = Loader.extend({
// they change
lib.each(this.searchPaths, function(p) {
if(existsSync(p)) {
fs.watch(p, { persistent: false }, function(event, filename) {
var fullname = path.join(p, filename || '');
if((event == 'change' || event == 'rename') && fullname in this.pathsToNames) {
var watcher = chokidar.watch(p, { ignoreInitial: true });

watcher.on("all", function(event, fullname) {
if(event == "change" && fullname in this.pathsToNames) {
this.emit('update', this.pathsToNames[fullname]);
}
}.bind(this));
Expand Down

0 comments on commit 123b78f

Please sign in to comment.