> From: Derrick Stolee <dstolee@xxxxxxxxxxxxx> > > In anticipation of implementing multiple maintenance tasks inside the > 'maintenance' builtin, use a list of structs to describe the work to be > done. > > The struct maintenance_task stores the name of the task (as given by a > future command-line argument) along with a function pointer to its > implementation and a boolean for whether the step is enabled. > > A list these structs are initialized with the full list of implemented > tasks along with a default order. For now, this list only contains the > "gc" task. This task is also the only task enabled by default. > > The run subcommand will return a nonzero exit code if any task fails. > However, it will attempt all tasks in its loop before returning with the > failure. Also each failed task will send an error message. Better to say "will print an error message", I think. Other than that, patches 1-4 look good to me.