summaryrefslogtreecommitdiff
path: root/doc/TODO
blob: 94a1e723e826e9772a8dea96ab4c0927622157bf (plain)
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
TODO for ‘python-daemon’ library
################################

=======
PENDING
=======

Tests
=====

* Write full unit tests for every new or changed behaviour at time of
  commit.

Libraries
=========

* Work correctly with current ‘lockfile’ library (0.9 or later).

* Evaluate switching to ‘flufl.lock’ library for PID lockfile behaviour
  <http://pypi.python.org/pypi/flufl.lock>_.

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
==========================

* Convert to Python 3.


====
DONE
====

* 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: 0000).

* 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
    End:
    vim: fileencoding=utf-8 filetype=rst :