Bugs are bad and all but I don't understand the "how could Google do this?!" questions. Am I missing something?
Bugs are bad and all but I don't understand the "how could Google do this?!" questions. Am I missing something?
The main problem is that this is completely bypassing updates!
* Changing a field's default value (is that even a mistake? users might perceive it that way. Also, is there a difference between a field set to the default value and has never been changed vs a field explicitly set to the default value? Should you change it in the latter case? Did you even track the latter case?).
* Overwriting a field's non-default value and setting it back to default.
* Migrating a field and mapping the non-default value to the wrong non-default value.
* Migrating a tuple of fields to another tuple of fields and getting the map wrong for an edge case subset of the input values (bonus points if that subset was thought to be an impossible state to get into).
etc...
The best way to avoid settings updates it to throw it all on the user. eg, Arch Linux just takes the approach: if, you update a file in /etc, the new file is just created with a special file extension and merging the new and current file is left to the user. You don't get nearly as many surprise updates, but... you spend time merging config files, which few people are willing to do.
actually I prefer Slackware's way to do it: you can keep either the new or the old file, or launch vimdiff and merge them yourself
My whole /tmp/ directory was silently deleted by some "cleanup" systemd shit, hours after an update that changed my configuration.
Putting stuff in /tmp and expecting it to stick around has been a user and indeed a system administration mistake for all of that time, motivating, for example, warnings like this in Kent's & Williams' 1990 Encyclopedia of Computer Science and Technology (volume 22, "The UNIX operating system"):
> /tmp and /usr/tmp: These directories are used by utility programs to contain temporary files. They are cleaned out periodically, so files should not be stored here.
Que Corporation's Using UNIX and Using Linux both said:
> Because the system automatically deletes the contents of this directory periodically, do not keep anything you might need later in this directory.
15 years before the existence of systemd, Linux Filesystem Structure (later to become the Filesystem Hierarchy Standard) was similarly warning:
> /tmp may be cleaned out at boot time or at relatively frequent intervals. Therefore, data stored in /tmp should not be expected to remain for any long period.
A mere 13 years before the existence of systemd, that warning was made starker:
> Programs must not assume that any files or directories in /tmp are preserved between invocations of the program.