chiark / gitweb /
journalctl: Add support for showing messages from a previous boot
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 0498809ea0aff7f5c0f8eba7abf905d3ca222f90..f5da81f527adf78d60aa9452ebc2941fa4a02939 100644 (file)
--- a/TODO
+++ b/TODO
@@ -34,58 +34,78 @@ Fedora 19:
 
 * when installing fedora with yum --installroot /var/run is a directory, not a symlink
 
-Features:
+CGroup Rework Completion:
 
-* when a kernel driver logs in a tight loop we should ratelimit that too.
+* introduce "mainpid" for scopes
 
-* move systemctl set-log-level to systemd-analyze?
+* implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
 
-* fix killing spree logic in systemd-user-sessions
+* implement per-slice CPUFairScheduling=1 switch
+
+* handle jointly mounted controllers correctly
 
 * logind: implement session kill exceptions
 
-* fix machine regstration to forward property array
+* make BlockIODeviceWeight=, BlockIODeviceBandwidth= runtime settable
 
-* fix loginctl cgroup enumeration
+* introduce high-level settings for RT budget, swappiness
 
-* move "systemctl dump" to systemd-analyze
+* man: document new bus apis
 
-* introduce "mainpid" for scopes
+* Send SIGHUP and SIGTERM in session scopes
 
-* add a fixed dbus path for "my own unit", "my own session", ... to PID1, logind, ...
+Features:
 
-* add implicit slice for instantiated services
+* add rpm macros for applying tmpfiles --create after package installation
 
-* service_coldplug() appears to reinstall the wrong stop timeout watch?
+* when parsing calendar timestamps support the UTC timezone (even if we won't support arbitrary timezone specs, support UTC itself certainly makes sense), also support syntaxes such as +0200
 
-* transient units: allow creating auxiliary units with the same call
+* journalctl: add an output mode that looks like classic /var/log/messages, but also outputs the cursor of the last entry so that people can write scripts that can run iteratively and always process data that has been added since the last time.
 
-* make BlockIODeviceWeight=, BlockIODeviceBandwidth= runtime settable
+* when a kernel driver logs in a tight loop we should ratelimit that too.
 
-* split up BlockIOWeight= and BlockIODeviceWeight=
+* journald: optionally, when messages with a high log prioerity are logged, sync() immeidately.
 
-* introduce high-level settings for RT budget, swapiness
+* introduce %v resolving to the string returned by "uname -r"
 
-* how to reset dynamically changed attributes sanely?
+* systemctl list-unit-files should list generated files (and probably with a new state "generated" for them, or so)
 
-* when reloading configuration, apply new cgroup configuration
+* Get rid of systemd-sysv:
+  https://fedoraproject.org/wiki/User:Toshio/Systemd_Convert_draft
 
-* implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
+* do we really need both hasprefix() and startswith()?
 
-* implement per-slice CPUFairScheduling=1 switch
+* when a kernel driver logs in a tight loop we should ratelimit that too.
 
-* handle jointly mounted controllers correctly
+* journald: when we drop syslog messages because the syslog socket is
+  full, make sure to write how many messages are lost as first thing
+  to syslog when it works again.
 
-* journald: make sure ratelimit is actually really per-service with the new cgroup changes
+* prohibit Restart= set with Type=oneshot
+
+* man: the documentation of Restart= currently is very misleading and suggests the tools from ExecStartPre= might get restarted.
+
+* load .d/*.conf dropins for device units
+
+* move systemctl set-log-level to systemd-analyze?
 
-* move systemctl dump to systemd-analyze
+* move "systemctl dump" to systemd-analyze
+
+* add a fixed dbus path for "my own unit", "my own session", ... to PID1, logind, ...
+
+* service_coldplug() appears to reinstall the wrong stop timeout watch?
+
+* transient units: allow creating auxiliary units with the same call
+
+* how to reset dynamically changed attributes sanely?
+
+* when reloading configuration, apply new cgroup configuration
+
+* journald: make sure ratelimit is actually really per-service with the new cgroup changes
 
 * libsystemd-logind: sd_session_is_active() and friends: verify
   validity of session name before appending it to a path
 
-* logind: when a PAM client calls ReleaseSession() start a timeout and
-  kill the session entirely after that is reached.
-
 * gparted needs to disable auto-activation of mount units somehow, or
   maybe we should stop doing auto-activiation of this after boot
   entirely. https://bugzilla.gnome.org/show_bug.cgi?id=701676
@@ -204,8 +224,6 @@ Features:
 
 * teach ConditionKernelCommandLine= globs or regexes (in order to match foobar={no,0,off})
 
-* we should log capabilities too
-
 * Support SO_REUSEPORT with socket activation:
   - Let systemd maintain a pool of servers.
   - Use for seamless upgrades, by running the new server before stopping the
@@ -338,14 +356,13 @@ Features:
   - journal-send.c, log.c: when the log socket is clogged, and we drop, count this and write a message about this when it gets unclogged again.
   - journal: find a way to allow dropping history early, based on priority, other rules
   - journal: When used on NFS, check payload hashes
-  - Introduce journalctl -b <nr> to show journal messages of a previous boot
   - journald: check whether it is OK if the client can still modify delivered journal entries
   - journal live copy, based on libneon (client) and libmicrohttpd (server)
   - journald: add kernel cmdline option to disable ratelimiting for debug purposes
   - refuse taking lower-case variable names in sd_journal_send() and friends.
   - journald: we currently rotate only after MaxUse+MaxFilesize has been reached.
   - journal: deal nicely with byte-by-byte copied files, especially regards header
-  - journalctl: show multiline log messages sanely, expand tabs, and show all valid utf8 messages
+  - journalctl: expand tabs
   - journal: store euid in journal if it differs from uid
   - journal: sanely deal with entries which are larger than the individual file size, but where the components would fit
   - Replace utmp, wtmp, btmp, and lastlog completely with journal