The following module was proposed for inclusion in the Module List:
modid: File::Lock::Any
DSLIP: idpOp
description: Portable advisory file locking
userid: FANGLY (Florent Angly)
chapterid: 10 (File_Names_Systems_Locking)
communities:
Git repository, CPAN
similar:
File::SharedNFSLock, File::Lock::Multi
rationale:
Traditionally, advisory locks are implemented using the flock()
function. However, it becomes more complicated to lock files on an
NFS mount because only link() guarantees atomicity (see
File::SharedNFSLock). Even then, the are corner cases that one would
rather not have to think about (e.g. no link() available on FAT32
filesystems, which makes it impossible to properly lock a file on an
NFS-mouted FAT32 filesystem).
This module attempts to use the right locking method (C<flock> or
C<link>), regardless of what operating system, filesystem type or
mount method (NFS or not) you use. In practice, File::Lock::Any uses
the File::SharedNFSLock backend (C<link>-based) for NFS-mounted
filesystems or XXX (C<flock>-based) for non-NFS -mounted
filesystems.
Remember that the locking is advisory only: it is effective if you
use this module throughout, but nothing prevents you from modifying
the file.
enteredby: FANGLY (Florent Angly)
enteredon: Fri Dec 7 01:07:41 2012 GMT
The resulting entry would be:
File::Lock::
::Any idpOp Portable advisory file locking FANGLY
Thanks for registering,
--
The PAUSE
PS: The following links are only valid for module list maintainers:
Registration form with editing capabilities:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=66c00000_72a12f2c19dfdc5a&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=66c00000_72a12f2c19dfdc5a&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=File%3A%3ALock%3A%3AAny