This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author EdSchouten
Recipients EdSchouten
Date 2016-08-14.20:41:01
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1471207261.97.0.678306569451.issue27764@psf.upfronthosting.co.za>
In-reply-to
Content
Python's fcntl module already provides some support for making support for file locking optional. For example, constants like F_SETFL are only defined if present. Unfortunately, the accompanying functions 'flock()' and 'lockf()' are present unconditionally.

CloudABI, a sandboxed runtime environment for UNIX (https://mail.python.org/pipermail/python-dev/2016-July/145708.html), doesn't implement these ways of doing file locking, for the reason that these operations do not fit nicely within its process model. These locks are per-process; not per-descriptor. This means that processes cannot safely be composed or decomposed.

Attached is a relatively small patch to make flock() and lockf() optional, only compiling them when the necessary APIs are present. The LOCK_* constants are now also defined optionally.
History
Date User Action Args
2016-08-14 20:41:02EdSchoutensetrecipients: + EdSchouten
2016-08-14 20:41:01EdSchoutensetmessageid: <1471207261.97.0.678306569451.issue27764@psf.upfronthosting.co.za>
2016-08-14 20:41:01EdSchoutenlinkissue27764 messages
2016-08-14 20:41:01EdSchoutencreate