ASP.Net and file changes on FreeBSD

Ivan Radovanovic radovanovic at gmail.com
Wed Mar 18 10:27:51 UTC 2015


On 03/06/15 09:16, Ivan Radovanovic napisa:
> Hi,
>
> I am running latest ASP.Net using latest mono from ports (3.10) on
> FreeBSD 10.1 and it seems it is unable to detect changes on (some?)
> files. What confuses me is that if I run xsp for testing project it is
> unable to realize that project DLL is recompiled, or if I change
> web.config it won't restart application manually, or if aspx file is
> changed it won't recompile it, but if I add new aspx file then it will
> try to compile that. It seems to me like it is able to detect file
> addition but not change.
>
> Is there some workaround for this?
>
> Kind regards,
> Ivan
>
> P.S.
> Is there some dedicated website/forum for mono on FreeBSD - I saw some
> page on mono project site but that is completely outdated and I also saw
> BSD# page on google, but that also seems little bit old? I did little
> bit of work on having up-to-date xsp/fast-cgi and monodevelop to
> compile/work on freebsd so I would like to pass that to somebody from
> freebsd-mono group so it could eventually reach ports :-)

This is actually more interesting problem than what I expected, here are 
conclusions up to this point:

* 3.10.0 has completely broken kevent implentation of FileSystemWatcher 
- so it couldn't restart application because it is not able to detect 
any file changes (I gave up on patching this implementation with latest 
code when I saw that 3.12.1 is ported to FreeBSD)

* 3.12.1 has proper support for FileSystemWatcher, but I suspect 
something in System.Web.dll is broken (for example it properly detects 
dll change (writes message about that), but doesn't restart 
application), I am still unable to pinpoint exact problem there

* 3.2.3 has partially working FileSystemWatcher (using kevent) - it is 
not able to catch file changes but only file creations/deletions, for 
that reason changes using editors like ee which really change file 
contents (not changing inode number) go undetected, but changes with 
editors which recreate file (like monodevelop or gedit for example) are 
properly captured and handled. This version also properly restarts 
application when dll is changed.

I was using identical xsp for all mono versions to rule out differences 
there (I didn't do any tests using fastcgi server or mod_mono - will 
probably do that once I have xsp working as expected).


More information about the freebsd-mono mailing list