Rated 4 out of 5 stars

I had to alter this extension slightly to allow it to work with the default X-Spam-Status header used by my cPanel server. I changed Spamness.parseHeader to:

Spamness.parseHeader = function(headerStr) {
var score = (score = headerStr.match(/(score|hits) ?= ?([-\d\.]+)/)) ? parseFloat(score[2]) : 0;
var required = (required = headerStr.match(/(required) ?= ?([-\d\.]+)/)) ? parseFloat(required[2]) : 0;
var tests = (tests = headerStr.match(/tests ?= ?(.*?[^, ])( |$)/)) ? tests[1].split(/,\s*/) : [];
return new Spamness.Header(score, required, tests);
};

Also, I changed the last line of Spamness.getHeaderName to:

return header.toLowerCase();

This allows Score Header to be case-insensitive. Before, it had to be in lower case.

Thanks to Ryan for this excellent extension. I have been testing new SpamAssassin configuration and it is very useful to be able to sort messages by spam score.

This review is for a previous version of the add-on (0.6.3).