Somewhere between TWiki release 4.2.3 and 4.3.2, TablePlugin changed its behavior with sorting by a text column. Up to 4.2.3, HTML tags were removed before column values are compared. TWiki::Plugins::TablePlugin::Core::emitTable() had the folloing lines.
@curTable = map { $_->[0] }
sort { $b->[1] cmp $a->[1] }
map { [ $_, _stripHtml( $_->[$sortCol]->{text} ) ] }
@curTable;
But from 4.3.2 onward, the corresponding lines has been changed as follows. This means HTML tags are not removed.
@curTable = map { $_->[0] }
sort { $b->[1] cmp $a->[1] }
map { [ $_, lc( $_->[$sortCol]->{text} ) ] }
@curTable;
This is considered to be devolution. Making the sort case insensitive is a good idea but not removing HTML tags is not.
--
TWiki:Main/HideyoImazu
- 2013-06-25
Makes sense to fix as proposed.
--
TWiki:Main.PeterThoeny
- 2013-06-26
FYI, the removal of stripping HTML was done in
Item6031 on 2008-09-30. I think it was unintentional.
--
TWiki:Main.PeterThoeny
- 2013-06-26
Make sure the docs are updated before uploading the new package.
--
TWiki:Main.PeterThoeny
- 2013-06-26