[Unison-hackers] fsmonitor.py & ignore paths on Linux

Benjamin Pierce bcpierce at cis.upenn.edu
Mon Jul 19 11:34:46 EDT 2010

Hi Jay,

Thanks for the prod -- the last push on this stuff got fairly close to a working state, but (as you found out) there are still plenty of rough edges.  I'd love to get it really working.

Unfortunately, I don't have a linux server with a python installation including pyinotify, so I can't test that side myself.

> - That's made significantly worse by the fact that it doesn't honor any 
> ignore paths in the unison config; this probably would be a minor 
> annoyance if it only had to iterate over 5K of files instead of 250K.
> - Now that I think about it, fsmonitor.py on Linux (server) is assuming 
> that its ~/.unison directory contains the same profile as the Mac 
> (client).  In my case, it doesn't, only because I hadn't thought to copy 
> it over.

Actually, this part of fsmonitor.py should be simpified: Unison can give it the ignore preferences on the command line (or in a file, if it gets too big) so it doesn't have to parse the preferences file itself.  

But we should certainly make it operate on a dir-by-dir basis in any case.

> - But even worse: unison obeys fsmonitor's instruction and syncs up 
> changed files - even if they were previously ignored.  So, f'rinstance, 
> the server's .unison archive files are getting synced to the client.

That sounds like something isn't working on the unison side -- it's supposed to check for ignored files.

> Do you need any further info to reproduce these? I know the linux code 
> is especially untested.  I'd offer a patch, but I don't know Python, so 
> that'd be more threat than offer.

(Python is pretty readable, by the way, and if you're familiar with the underlying OS stuff you can probably figure out how to at least add print statements enough to diagnose problems.)

   - Benjamin

More information about the Unison-hackers mailing list