Fix mistakes in cptest asserts
[oweals/dinit.git] / TODO
diff --git a/TODO b/TODO
index 964d14a69c931016b9baf54741d3054b4f227bcf..a90c4a73ffcf291825976d8bdd0ae61735a46b75 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,17 +1,29 @@
-For version 0.8.0:
+For version 0.9.0:
 ------------------
-* Easy way to reload service description (including if service is running, where possible).
-* provide a way to check configuration for errors (dinitcheck command) [In progress]
-  - man page
-  - circular dependency checks
-* report process launch failure reason (stage & errno) via dinitctl.
 * "chain-to" can result in an unbreakable loop if the chain is circular. Chained services should not be
   started during shutdown to prevent this (also avoids a race condition where the chained service is left
   running when everything else has shutdown).
+* Check that desired_state is getting set correctly. (Currently we don't decide whether a service
+  will restart until it stops...)
+* Add dinit command line option to run as pid 1 but not as system manager (i.e., in a container).
+  Currently dinit can be used as pid 1 in a container but it may try to shut down the system when
+  it terminates. (This results in a harmless warning, but is not ideal).
+
+For version 0.10.+:
+------------------
+* for non-system init, fail if the control socket exists, with option to override this and re-
+  create the socket instead (as system init does).
+* report process launch failure reason (stage & errno) via dinitctl.
 * Show "activated" state in "dinitctl list" output
+* Service description sanity checks:
+  - Service type not specified
+    - maybe default to 'internal' if command not specified
+    - if command specified but type not, report an error
+    - other checks?
+  - errors should also be reported by dinitcheck
 
-For version 1.0:
-----------------
+For version 1.0 (i.e. longer-term plans):
+-----------------------------------------
 * Service description parse errors should report line number
 * dinitcheck should perform lint checks - do named files exist? etc
 * Limit memory use by control connections. Currently clients can queue commands without limit.
@@ -29,8 +41,8 @@ For version 1.0:
 * Chaining of service process input/output?
 * Be able to boot and shutdown Linux and FreeBSD (or OpenBSD).
 
-For later:
-----------
+For later (post 1.0):
+---------------------
 * On linux when running with PID != 1, write PID to /proc/sys/kernel/cad_pid so
   that we still receive SIGINT from ctrl+alt+del (must be done after /proc is
   mounted, possibly could be left to a service script)