The last-attached patch works - it lets you check or uncheck certain columns in
a view, and offers Last Stable as a new option (unchecked by default, before
Last Successful). Things that could be better:
1. There is no way to configure a column besides showing or hiding it. The
original Javadoc comment "the intention is eventually make each ListViewColumn
fully configurable like Publisher" is thus not fully honored. Of course, no
current column types have anything to configure, but you might wish for them
to have a config.jelly where you could configure some TBD special options.
2. You cannot change the order of columns. In particular, columns added by
plug-ins will always come last.
3. config.xml stores Java class names when you pick a nondefault set of columns,
which might be undesirable:
<columnNames class="tree-set">
<no-comparator/>
<string>hudson.views.BuildButtonColumn</string>
<string>hudson.views.JobColumn</string>
<string>hudson.views.LastDurationColumn</string>
<string>hudson.views.LastFailureColumn</string>
<string>hudson.views.LastStableColumn</string>
<string>hudson.views.LastSuccessColumn</string>
<string>hudson.views.StatusColumn</string>
</columnNames>
All of these issues could be solved, if desired, by using a DescribableList - I
think. The 'Saveable owner' could just be null. I am less familiar with how this
code works so I did not try it yet.
What is the intended future for configurability of ListViewColumn? Currently all
columns are hardcoded in ListView.defaultColumnDescriptors. While you could add
another column as an @Extension in a plugin, it would be shown at the end
(weird) and you could not suppress other columns. Nor could you control which
views the column would be shown in - it would appear in all.
What I want: for specific views, to replace LastSuccessColumn and
LastFailureColumn with (newly added) LastStableColumn and LastUnstableColumn.
Ideally I guess a ListView would have a nontransient field of type
DescriptorExtensionList<ListViewColumn, Descriptor<ListViewColumn>>.
ListViewColumn Javadoc implies a somewhat different plan: "the intention is
eventually make each ListViewColumn fully configurable like Publisher"