1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
TODO for ‘python-daemon’ library
################################
:Updated: 2015-11-27
=======
PENDING
=======
Tests
=====
Libraries
=========
* Evaluate switching to ‘flufl.lock’ library for PID lockfile behaviour
<http://pypi.python.org/pypi/flufl.lock>_.
* Evaluate switching to ‘Fasteners’ library for PID lockfile behaviour
<https://pypi.python.org/pypi/fasteners>_.
Features
========
Important
---------
Wishlist
--------
* Allow specification of a syslog service name to log as (default:
output to stdout and stderr, not syslog).
Documentation
=============
Standard library inclusion
==========================
====
DONE
====
* Convert to Python 2 and Python 3 compatible code base.
* Work correctly with current ‘lockfile’ library (0.10 or later).
* Write full unit tests for every new or changed behaviour at time of
commit.
* Detect whether started by another process that handles
daemonisation, such as ‘inetd’, and behave appropriately.
* Detach to new process and session group.
* Allow specification of working directory (default: '/').
* Allow specification of umask (default: 0o000).
* Drop ‘suid’ and ‘sgid’ privileges if set.
* Close all open file handles.
* Re-open stdin, stdout, stderr to user-specified files.
* Default re-open stdin, stdout, stderr to ‘/dev/null’.
* Allow specification of a non-root user and group to drop to, if
started as ‘root’ (default: no change of user or group).
* Implement context manager protocol for daemon context.
* Allow specification of PID file with its own context manager
(default: no PID file).
* Full docstrings for functions, classes, and modules.
* PEP 3143 for adding this library to the Python standard library.
..
This is free software: you may copy, modify, and/or distribute this work
under the terms of the Apache License version 2.0 as published by the
Apache Software Foundation.
No warranty expressed or implied. See the file ‘LICENSE.ASF-2’ for details.
..
Local variables:
coding: utf-8
mode: text
mode: rst
time-stamp-format: "%:y-%02m-%02d"
time-stamp-start: "^:Updated:[ ]+"
time-stamp-end: "$"
time-stamp-line-limit: 20
End:
vim: fileencoding=utf-8 filetype=rst :
|