chiark / gitweb /
tree-wide: drop !! casts to booleans
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 929173218e24774b93a37532e6b806b3908437bd..2cf8a4cfc1e3fe3eda3af8c1495535721cf8be4f 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,16 +1,8 @@
 Bugfixes:
 
-* Should systemctl status \* work on all unit types, not just .service?
-
-* Dangling symlinks of .automount unit files in .wants/ directories, set up
-  automount points even when the original .automount file did not exist
-  anymore. Only the .mount unit was still around.
-
-* ExecStart with unicode characters fails in strv_split_extract:
+* the error paths in usbffs_dispatch_ep() leak memory
 
-          [Service]
-          Environment=ONE='one' "TWO='two two' too" THREE=
-          ExecStart=/bin/python3 -c 'import sys;print(sys.argv)' $ONE $TWO $THREE
+* copy.c: set the right chattrs before copying files and others after
 
 External:
 
@@ -22,23 +14,21 @@ Janitorial Clean-ups:
 
 * Rearrange tests so that the various test-xyz.c match a specific src/basic/xyz.c again
 
+* rework mount.c and swap.c to follow proper state enumeration/deserialization
+  semantics, like we do for device.c now
+
 Features:
 
-* document specifiers elogind-sysusers understands in its man page (the way
-  it's already documented in tmpfiles.d(5)' man page)
+* When reloading configuration PID 1 should reset all its properties to the
+  original defaults before calling parse_config()
+
+* Add OnTimezoneChange= and OnTimeChange= stanzas to .timer units in order to
+  schedule events based on time and timezone changes.
 
 * add O_TMPFILE support to copy_file_atomic()
 
 * nspawn: greater control over selinux label?
 
-* sd-event: implement inotify events, as we can safely and robustly do that now
-  for any inode without fearing confusion by inodes appearing at multiple
-  places: we can open it with O_PATH first, then store its inode in a hash
-  table, to recognize duplicate watches before creating (and thus corrupting
-  pre-existing ones) them, and using /proc/self/fd/ to add it right after.
-
-* the error paths in usbffs_dispatch_ep() leak memory
-
 * cgroups: figure out if we can somehow communicate in a cleaner way whether a
   elogind instance not running in the cgroup root shall or shall not manage the
   attributes of its top-level cgroup. Currently it assumes it manages all, but
@@ -46,6 +36,9 @@ Features:
   should be revisited to make clearer and also work if the payload elogind runs
   with full privs and without userns.
 
+* portables: introduce a new unit file directory /etc/elogind/system.attached/
+  or so, where we attach portable services to
+
 * cgroups: use inotify to get notified when somebody else modifies cgroups
   owned by us, then log a friendly warning.
 
@@ -71,6 +64,12 @@ Features:
   numbers.
 
 * port systemctl, elogind-inhibit, busctl, … over to format-table.[ch]'s table formatters
+* Check that users of inotify's IN_DELETE_SELF flag are using it properly, as
+  usually IN_ATTRIB is the right way to watch deleted files, as the former only
+  fires when a file is actually removed from disk, i.e. the link count drops to
+  zero and is not open anymore, while the latter happens when a file is
+  unlinked from any dir.
+
 
 * pid1: lock image configured with RootDirectory=/RootImage= using the usual nspawn semantics while the unit is up