Giter Club home page Giter Club logo

Comments (13)

ignatiusd avatar ignatiusd commented on July 21, 2024 1

I was able to resolve this issue by using a small work-around. I wanted to watch for new files created. Faced the same issue of 'created' event getting fired twice. Here's my workaround.

monitor.on("created", function (f, stat) {
  if (monitor.files[f] === undefined) {
     console.log('created: ' + f);
  }
})

Hope this helps.

from watch.

pgherveou avatar pgherveou commented on July 21, 2024

I might be wrong but i think its comes from line 83
fileWatcher(root);
the root is alreay included in the files object so it should be deleted

from watch.

timoxley avatar timoxley commented on July 21, 2024

+1 I have the same issue, create always seems to fire twice

from watch.

timoxley avatar timoxley commented on July 21, 2024

I have a feeling may be an issue with watch on OSX, can you confirm you are using OSX, @KaToKa?

from watch.

timoxley avatar timoxley commented on July 21, 2024

I can confirm that node's built-in fs.watch will trigger two events for a file creation on OSX. I believe this is likely the source of the problem. How on earth do we fix that?

from watch.

tanertopal avatar tanertopal commented on July 21, 2024

@secoif u are right. I was working on OSX that day. In the end I used another approach without watch (just an interval with nodes readdir)

from watch.

srquinn21 avatar srquinn21 commented on July 21, 2024

This is not an OSX only bug as the behavior occurs on Ubuntu 11.10 install as well. This is due to fs.watchFile on line #56 being deprecated and replaced with fs.watch. I submitted a pull request.

from watch.

ciembor avatar ciembor commented on July 21, 2024

+1 on ArchLinux. Does anyone still maintain this? Because I see a lot of old not solved issues.

from watch.

pskupinski avatar pskupinski commented on July 21, 2024

The issue for this was closed on the joyent node github repo because of this explanation: nodejs/node-v0.x-archive#2054 (comment)

from watch.

entcor avatar entcor commented on July 21, 2024

Hi !

i work with you module in windows and nodeja 0.10.x and i have twice event on create file.
Its because in main.js

    fileWatcher(root);
    for (var i in files) {
      fileWatcher(i);
    }
    callback(files, null, null);
  })
}

files array have root path to. and subscribe to root doing twice.
i don`t know how it work in another OS if correctly then you can add this:

    fileWatcher(root);
    for (var i in files) {
      if (i === root) continue;              // <<<<<<<<<<<<<<<<
      fileWatcher(i);
    }
    callback(files, null, null);
  })
}

Thank you

from watch.

timatooth avatar timatooth commented on July 21, 2024

thanks @ignatiusd for sharing that work-around was experiencing this issue too on osx 10.8

from watch.

fontanon avatar fontanon commented on July 21, 2024

thanks @ignatiusd your work-around worked for me too!
I was receiving two 'created' event per file on Ubuntu 15.04

from watch.

levithomason avatar levithomason commented on July 21, 2024

Looks like the work around is acceptable, please open a new issue if you anyone is still experiencing problems.

from watch.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.