X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=TODO;h=d11d73f30adbd0be63b8689953ba8ce89fc137c3;hp=526926f8628f822021874734bede6eb5bbc64223;hb=fec1530e6b5b8d6dc352c7338010357126e84621;hpb=c7eff5ec06c3025d1ef14f955c653259ae7c615b diff --git a/TODO b/TODO index 526926f86..d11d73f30 100644 --- a/TODO +++ b/TODO @@ -1,6 +1,4 @@ Bugfixes: -* Re-enable "fsck -l" when it is ready: - https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5 * Should systemctl status \* work on all unit types, not just .service? @@ -10,7 +8,18 @@ Bugfixes: * properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point. +* ExecStart with unicode characters fails in strv_split_quoted: + + [Service] + Environment=ONE='one' "TWO='two two' too" THREE= + ExecStart=/bin/python3 -c 'import sys;print(sys.argv)' $ONE $TWO $THREE + +* MEMORY return code is overloaded for syntax errors in the commandline. + str_split_quoted() should return a real return code, so spawn_child can + report the failure properly. + External: + * Fedora: add an rpmlint check that verifies that all unit files in the RPM are listed in %systemd_post macros. * Fedora: post FPC ticket to move add %tmpfiles_create to the packaging guidelines @@ -26,6 +35,42 @@ External: Features: +* optionally support running journald from the command line for testing purposes in external projects + +* journald: allow per-priority and per-service retention times when rotating/vacuuming + +* introduce systemd-timesync-wait.service or so to sync on an NTP fix? + +* systemd --user should issue sd_notify() upon reaching basic.target, not on becoming idle + +* configure.ac pretends dbus was optional but actually hardcodes use of dbus' pkg-config file to determine various dbus dirs such as policy and activation dirs + +* consider showing the unit names during boot up in the status output, not just the unit descriptions + +* dhcp: do we allow configuring dhcp routes on interfaces that are not the one we got the dhcp info from? + +* maybe allow timer units with an empty Units= setting, so that they + can be used for resuming the system but nothing else. + +* what to do about udev db binary stability for apps? + +* maybe provide an API to allow migration of foreign PIDs into existing scopes. + +* kdbus: maybe rename "connection name" concept to something that doesn't reuse the word "name"? + +* PID 1 doesn't apply nspawns devices cgroup policy + +* rework journal-send.c to use memfds for large blobs if they are available instead of unlinked files in /tmp. Also, if we detect that the kernel knows memfds, refuse anything but sealed memfds. + +* maybe support a new very "soft" reboot mode, that simply kills all processes, disassembles everything, flushes /run and sysvipc, and then reexecs systemd again + +* man: document that corrupted journal files is nothing to act on + +* bus-proxy: when passing messages from kdbus, make sure we properly + handle the case where a large number of fds is appended that we + cannot pass into sendmsg() of the AF_UNIX sokcet (which only accepts + 253 messages) + * busctl: add a pcap writer, using LINKTYPE_DBUS/231 * man: maybe use the word "inspect" rather than "introspect"? @@ -40,20 +85,12 @@ Features: * maybe add "systemctl edit" that copies unit files from /usr/lib/systemd/system to /etc/systemd/system and invokes vim on them -* dbus: add new message hdr field for allowing interactive auth, write spec for it. update dbus spec to mandate that unknown flags *must* be ignored... - * maybe introduce AssertXYZ= similar to ConditionXYZ= that causes a unit to fail (instead of skipping it) if some condition is not true... -* remove multi-seat-x now - * refcounting in sd-resolve is borked * exponential backoff in timesyncd and resolved when we cannot reach a server -* apply start timeout during the "initializing" manager state only, - instead of both "initializing" and "starting". maybe rename the - timeout to "initialization-timeout" then or so? - * journald: make use of uid-range.h to managed uid ranges to split journals in. @@ -70,8 +107,6 @@ Features: * merge ~/.local/share and ~/.local/lib into one similar /usr/lib and /usr/share.... -* remove readahead in 217 - * journald: allows specification of UID range for splitting up journal files * systemd.show_status= should probably have a mode where only failed @@ -94,6 +129,8 @@ Features: to clients. It should also pass on its own timezone information. - provide a way to define a per-network interface default metric value for all routes to it. possibly a second default for DHCP routes. + - allow Name= to be specified repeatedly in the [Match] section. Maybe also + support Name=foo*|bar*|baz ? * resolved: - put networkd events and rtnl events at a higher priority, so that @@ -140,8 +177,6 @@ Features: * journalctl: add the ability to look for the most recent process of a binary. journalctl /usr/bin/X11 --pid=-1 or so... -* set NOTIFY_SOCKET also for control processes - * mount_cgroup_controllers(): symlinks need to get the label applied * For timer units: add some mechanisms so that timer units that trigger immediately on boot do not have the services @@ -267,13 +302,13 @@ Features: - kdbus mapping - NameLost/NameAcquired obsolete - GVariant - - "const" properties (posted) - path escaping - update systemd.special(7) to mention that dbus.socket is only about the compatibility socket now - test bloom filter generation indexes * sd-event - allow multiple signal handlers per signal? + - document chaining of signal handler for SIGCHLD and child handlers * in the final killing spree, detect processes from the root directory, and complain loudly if they have argv[0][0] == '@' set. @@ -452,7 +487,6 @@ Features: - "systemctl mask" should find all names by which a unit is accessible (i.e. by scanning for symlinks to it) and link them all to /dev/null - systemctl list-unit-files should list generated files (and probably with a new state "generated" for them, or so) - - systemctl: maybe add "systemctl add-wants" or so... * timer units: - timer units should get the ability to trigger when: @@ -746,8 +780,10 @@ External: * register catalog database signature as file magic -* zsh shell completion: - should complete options, but currently - does not +* zsh shell completion: + - - should complete options, but currently does not + - systemctl add-wants,add-requires + Regularly: