On Thu, 4 Dec 2014, Bob Proulx wrote:

John Hardin wrote:
Bob Proulx wrote:
There have been multiple facets to this problem.  The first was a rule
update that produced warnings that produced email from every cron run
sa-update / sa-learn run if run on recent released spamassassin 3.4.0
but not the development trunk version.

That was actually the second facet. The first facet was a new test rule
using a perl RE syntax that was introduced in 5.10.0 This rule passed dev
validation on perl 5.18-ish, ...

But, but, but...  It also failed lint and produced cron noise on my
perl 5.20.1 system too.  Running spamassassin 3.4.0.  That is later
than perl 5.18 and it definitely produced the warning message.

That's two separate issues. The perl RE lint *error* was due to use of the \w++ construct from 5.10+ on a 5.8.8 install. That's perl version dependent.

The addition of a perl_version conditional to protect that rule without also having a check for the SA version to ensure it supported perl_version is what generated the SA parse *warning*. That's SA version dependent.

Adding a check for SA version to that conditional suppressed the SA parse warning, *except* on perl < 5.10, apparently due to a change in perl's expression shortcut semantics (but this is not proven). That's perl version dependent.

--
 John Hardin KA7OHZ                    http://www.impsec.org/~jhardin/
 jhar...@impsec.org    FALaholic #11174     pgpk -a jhar...@impsec.org
 key: 0xB8732E79 -- 2D8C 34F4 6411 F507 136C  AF76 D822 E6E6 B873 2E79
-----------------------------------------------------------------------
  Of the twenty-two civilizations that have appeared in history,
  nineteen of them collapsed when they reached the moral state the
  United States is in now.                          -- Arnold Toynbee
-----------------------------------------------------------------------
 11 days until Bill of Rights day

Reply via email to