2011-11-26 13 views
8

Ho nodejs v0.6.3 e coffeescript 1.1.3. su Archlinux.Coffeescript 1.1.3 Watch only works once

So che hanno cambiato il modo in cui funziona l'orologio nell'ultima versione di coffeescript e che l'orologio richiede almeno il nodo v0.6.2.

Nel mio caso funziona solo una volta. Dopodiché, quando salvo di nuovo un file, il caffè non presta attenzione. Quale potrebbe essere il problema qui?

risposta

10

Ci sono una serie di problemi con fs.watch, che ho discusso attivamente su entrambi i tracker di problemi Node e CoffeeScript. Un problema, probabilmente quello che si sta verificando, è che alcuni programmi salvano le modifiche non scrivendo direttamente nel file esistente, ma scrivendo su un file temporaneo e quindi mv mettendo il file sopra quello esistente. Dal punto di vista di fs.watch, ciò significa che il file osservato è stato eliminato e le modifiche al nuovo file verranno ignorate.

Sul master attuale di CoffeeScript, cerchiamo di aggirare questo problema rivedendo il file ogni volta che viene emesso un evento rename. Quindi installalo e fammi sapere se risolve il tuo problema. In caso contrario, dovresti ripristinare l'utilizzo dell'API fs.watchFile precedente, eseguendo il downgrade a CoffeeScript 1.1.2 o utilizzando uno strumento di terze parti come il mio Jitter.

+0

Sì, ho installato l'ultima versione 1.1.4 (commit b1224066 ...) e sembra che funzioni di nuovo. – hoodie

+2

Sto avendo lo stesso problema sulla versione 1.6.3 – Micah