
Gracjan Polak
I'm looking for file locking code in GHC.IO.* modules, but cannot find any.
Just for the record: locking code resides in GHC.IO.FD in mkFD which calls lockFile. There is a heavy machinery underneath that is working hard to ensure Report's semantics. Somebody must have spent a lot of effort in this place. Nice!
How do I convince fdToHandle to create an independent handle to non-locked file?
Proper way to handle this is probably to add additional Bool parameter to mkFD, fdToHandle and GHC.IO.FD.openFile that says if Report's semantics should be held or not. Then openFileShared can be build on top of that. (Possibly primed versions of these function will be needed to keep backward compatibility) If this could help anybody else out there beside me I could make this proposal more concrete and follow library change procedure properly. If not I can live with what I have hacked together till now. Is there any interest in such a change? -- Gracjan