<br><br><blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">
<br>> 2) Find rebar is not available on windows. OK. I'll upgrade a VM I have
<br>> to Unbuntu 12:04. (which takes 3 hours, fails and needs nursing back to
<br>> health. After removing and re-installing some packages things are now
<br>> OK, apart from the occasional crash. Aside - virtual box provides a
<br>> rather standard environment, so should not be a problem. And I though
<br>> Linux was supposed not to crash like Windows. Not my experience. Oh
<br>> well - press on.
<br>
<br>Cowboy isn't available on Windows either, AFAIK. None of my software has
<br>been tested properly on Windows (or at least I didn't get feedback about
<br>it). I think few open-source Erlang developers use Windows and unless
<br>they send patches or finance some work towards this it's going to
<br>improve very slowly. Not trying to make an apology of it, just
<br>explaining the whys.
<br>
<br></blockquote><div><br></div><div>A couple weeks ago I got Rebar and Cowboy working on Windows 7 and Cygwin. It was difficult but only because I wasn't familiar with the process or Rebar, and I learned a lot of value along the way. I had to make only one small change to a Rebar erl file and none to Cowboy. It required some simple Makefile changes too, and some kludged copying of erl and beam files to get dependencies working without errors, but I'm sure that could be done properly by someone with more Erlang and Rebar knowledge.</div><div><br></div><div>I had to make only one source change, to Rebar, and that was to get the Cowboy tests (mostly) working.</div><div><br></div><div>"<" is my version, ">" is original.</div><div><br></div><div><div>$ diff rebar_ct.erl ../r/src</div><div>92,103c92,94</div><div>< Msg = case rebar_utils:sh("grep -e \"TEST COMPLETE\" -e \"{error,make_failed}\" \"" ++ RawLog ++ "\"", [{use_stdout, false}, return_on_error]) of<br></div><div>< {ok, Msg1} -> Msg1;</div><div>< {error, {1,[]}} -> ""</div><div>< end,</div><div><</div><div>---<br></div><div>> {ok, Msg} =</div><div>> rebar_utils:sh("grep -e 'TEST COMPLETE' -e '{error,make_failed}' "</div><div>> ++ RawLog, [{use_stdout, false}]),</div><div><br></div></div><div><br></div>Test run results:<br><br>Name Ok Failed Skipped(User/Auto) Missing<br><a href="file:///D:/misc/workspaces/Erlang/app-Cowboy/logs/ct_run.test@Stympy.2012-06-22_17.54.55/Erlang.app-Cowboy.http_SUITE.logs/run.2012-06-22_17.54.55/suite.log.html">Erlang.app-Cowboy.http_SUITE</a> 67 7 4 (4/0) 0<br><a href="file:///D:/misc/workspaces/Erlang/app-Cowboy/logs/ct_run.test@Stympy.2012-06-22_17.54.55/Erlang.app-Cowboy.proper_SUITE.logs/run.2012-06-22_17.55.13/suite.log.html">Erlang.app-Cowboy.proper_SUITE</a> 1 0 0 (0/0) 0<br><a href="file:///D:/misc/workspaces/Erlang/app-Cowboy/logs/ct_run.test@Stympy.2012-06-22_17.54.55/Erlang.app-Cowboy.ws_SUITE.logs/run.2012-06-22_17.55.14/suite.log.html">Erlang.app-Cowboy.ws_SUITE</a> 7 0 0 (0/0) 0<br><br><br> <div>Cowboy works great, but there is one thing not working for me in Windows. The cowboy_http_static handler doesn't appear to be detecting file changes. I'll change a .js file, refresh the web page, and Cowboy responds that the file is unchanged. I'm using Etags ({attributes, [filepath, filesize, inode, mtime]}), the Etags are changing when the file changes, but Cowboy never seems to detect that change, according to its response to the browser. </div><div><br></div><div><br></div><div><br></div>