You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spamassassin.apache.org by bu...@bugzilla.spamassassin.org on 2009/09/15 23:44:04 UTC

[Bug 5712] Antistupidity life saver: ignore ||

https://issues.apache.org/SpamAssassin/show_bug.cgi?id=5712

Justin Mason <jm...@jmason.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jm@jmason.org

--- Comment #6 from Justin Mason <jm...@jmason.org> 2009-09-15 14:44:03 PDT ---
(In reply to comment #5)
> Created an attachment (id=4504)
 --> (https://issues.apache.org/SpamAssassin/attachment.cgi?id=4504) [details]
> Alternative patch; also checks for combinatorial explosions
> 
> +1 for applying the patch, or marking this bug down from P1 critical, or both.
> 
> Here's an extended patch to not warn on '\||' in rules; to warn on (| and |)
> (although the latter was used as an equivalent for )? for 2 rules in standard
> ruleset that are amended here); and to warn on combinatorial explosions like
> '\s*) +'.   (I can sign CLA whenever!)

hi Cedric -- could you do that CLA thing? 
http://wiki.apache.org/spamassassin/AboutClas

The patch looks mostly good: except I want to allow people to continue to use
/(foo|)bar/ without warnings.  Those rules in the main ruleset won't be the
only case where they're used as its a pretty common (and safe) idiom.

I've also added a test suite for this, which uses these tests:

ok !is_caught 'foo|bar';
ok is_caught 'foo||bar';
ok is_caught '|bar';
ok is_caught 'foo|';
ok !is_caught 'foo\||bar';
ok !is_caught '\||bar';
ok is_caught 'foo\||';

ok !is_caught '(foo|bar)baz';
ok is_caught '(foo||bar)baz';
ok !is_caught '(|bar)baz';
ok !is_caught '(foo|)baz';
ok !is_caught '(foo\||bar)baz';
ok !is_caught '(\||bar)baz';

ok is_caught '(\s*) +';


more welcome ;)

-- 
Configure bugmail: https://issues.apache.org/SpamAssassin/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.