devd: modd -> devd communication doesn't work on Windows

I’m trying to get a simple setup for an Elm single page app.

I’ve got this modd.conf

@shell = exec

src/**/*.elm {
	prep: elm-make src/App.elm --warn --output elm.js
}

elm.js index.html main.css {
	daemon: devd -m .
}

Any changes to the elm files successfully trigger a recompilation into elm.js. No problems here. The changes to elm.js, index.html and main.css are also sucessfully detected by modd: >> sending signal hangup appears any time I change one of these.

My problem is that the livereload functionality somehow doesn’t work. A breakpoint inside .devd.livereload.js at the onmessage callback shows that the websocket code never gets executed.

Livewatch does work fine whenever I run devd standalone, and the same breakpoint gets hit without a problem. I also tried a bunch of options for devd, but none changed the result.

Getting the same problem with Chrome and Firefox dev edition. I’m on Windows 7 x64 Pro.

If, however, I run devd in livewatch mode separately from modd (with the daemon line removed from the conf), I get whatever I wanted to achieve. But that seems a bit silly.

I’d be happy to provide additional info or help debugging. Thanks!

About this issue

  • Original URL
  • State: open
  • Created 7 years ago
  • Comments: 15 (4 by maintainers)

Most upvoted comments

@frou thanks, and sorry for the noise. In the meantime another user created a report similar to mine: https://github.com/cortesi/devd/issues/87

@cortesi - Yep I will when I get a chance. For starters, it needs refined a bit because Go’s string representation of the signal values has an odd mix of tenses, e.g. "quit" , "killed" , "interrupt" , "terminated"