chiark / gitweb /
journal: add a test case for flushing messages out of a series of journal files into...
[elogind.git] / TODO
diff --git a/TODO b/TODO
index eb1a9d1d3f540ccafa31c0e6710568ce828a5749..3383f3502b543d95b351e64237cf59798be930eb 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,5 +1,4 @@
 Bugfixes:
-
 * enabling an instance unit creates a pointless link, and
   the unit will be started with getty@getty.service:
     $ systemctl enable getty@.service
@@ -24,7 +23,7 @@ Bugfixes:
 
 Fedora 20:
 
-* external: ps should gain colums for slice and machine
+* external: ps should gain colums for slice
 
 * localed:
   - localectl: support new converted x11→console keymaps
@@ -34,8 +33,6 @@ Fedora 20:
 
 CGroup Rework Completion:
 
-* introduce "mainpid" for scopes (or maybe not?)
-
 * implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
 
 * implement per-slice CPUFairScheduling=1 switch
@@ -46,6 +43,56 @@ CGroup Rework Completion:
 
 Features:
 
+* general: get rid of readdir_r/dirent_storage stuff, it's unnecessary on Linux
+
+* add API to clone sd_bus_message objects
+
+* sd-bus: synthesized messages should get serial number (uint32_t) -1
+
+* sd-event: allow multiple signal handlers per signal
+
+* when we detect low battery and no AC on boot, show pretty splash and refuse boot
+
+* move libasyncns into systemd as libsystemd-asyncns
+
+* calendarspec: support value ranges with ".." notation. Example: 2013-4..8-1
+
+* sd-bus: when triggering property change events, allow a NULL strv indicate that all properties listed as such are send out as changed
+
+* sd-bus: enforce signatures on response messages
+
+* sd-bus: see if we can drop more message validation on the sending side
+
+* sd-bus: introduce sd_bus_creds object and attach it to messages as well as allow querying it for names
+
+* sd-bus: support "const" properties as flag
+
+* sd-event: when a handler returns an error, just turn off its event
+  source, but do not return anything up to the event loop
+  caller. Instead add parameter to sd_event_request_quit() to take
+  retval. This way errors rippling upwards are the option, not the
+  default
+
+* sd-event: child pid handling: first invoke waitid(WNOHANG) and call event handler, only afterwards reap the process
+
+* sd-event: native support for watchdog stuff
+
+* machined, localed: when we try to kill an empty cgroup, generate an ESRCH call over the bus
+
+* sd-bus: SD_BUS_COMMENT() macro for inclusion in vtables, syntax inspired by gdbus
+
+* libsystemd-journal, libsystemd-login, libudev: add calls to easily attach these objects to sd-event event loops
+
+* be more careful what we export on the bus as (usec_t) 0 and (usec_t) -1
+
+* add field to transient units that indicate whether systemd or somebody else saves/restores its settings, for integration with libvirt
+
+* systemctl: rework wait filter to not require match callback
+
+* unify dispatch table in systemctl_main() and friends
+
+* bus: access policy as vtable flag
+
 * journalctl: support -M to read journal of containers and determine journal directory from root directory of container
 
 * tmpfiles: to make sure we don't delete unpacked tarballs with old timestamps right-away never delete stuff that is inside a directory with a new mtime
@@ -58,13 +105,10 @@ Features:
 * remove NSS usage from PID 1 (notably the specifiers)
 
 * socket-proxyd:
-  - Support multiple inherited sockets mapped to different remote hosts
   - Use a nonblocking alternative to getaddrinfo
   - Until we can start daemons directly, find a less ugly, less racy alternative than shell scripts for the second man page example.
   - Support starting daemons directly without requiring a shell script; update man pages
 
-* optimize the cgroup propagation bits, especially unit_get_members_mask(), cgroup_context_get_mask()
-
 * "systemctl cat" or "systemctl view" command or or so, that cats the backing unit file of a service, plus its drop-ins and shows them in a pager
 
 * rfkill,backlight: we probably should run the load tools inside of the udev rules so that the state is properly initialized by the time other software sees it
@@ -346,9 +390,6 @@ Features:
 * service: watchdog logic: for testing purposes allow ping, but do not require pong
 
 * journal:
-  - do not use magic msync() in src/journal/journal-file.c, just call fsync()
-      <alxchk> poettering: looks like msync just calls vfs_fsync
-      http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/mm/msync.c#n18
   - import and delete pstore filesystem content at startup
   - journald: also get thread ID from client, plus thread name
   - journal: when waiting for journal additions in the client always sleep at least 1s or so, in order to minimize wakeups
@@ -414,8 +455,6 @@ Features:
 * deal with sendmail/postfix exclusivity
 
 * timer units:
-  - configurable jitter for timer events
-  - Adjust timers to be triggered at the same time as sd-event timers
   - timer events with system resume
   - timer units should get the ability to trigger when:
     o CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
@@ -493,6 +532,7 @@ Features:
   - nspawn: maybe add a way to drop additional caps, in addition to add additional caps
   - nspawn: maybe explicitly reset loginuid?
   - nspawn: make it work for dwalsh and shared /usr containers -- tmpfs mounts as command line parameters, selinux exec context
+  - refuses to boot containers without /etc/machine-id (OK?), and with empty /etc/machine-id (not OK).
 
 * cryptsetup:
   - cryptsetup-generator: allow specification of passwords in crypttab itself
@@ -779,8 +819,6 @@ Regularly:
 
 * Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
 
-* %m in printf() instead of strerror(errno);
-
 * pahole
 
 * set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!