[pmwiki-users] pmwiki-2.2.0-beta7 released (blocklists)

Patrick R. Michaud pmichaud at pobox.com
Sat Sep 30 01:53:39 CDT 2006

I've just released pmwiki-2.2.0-beta7, now available from

The primary addition in this release is a core "blocklist"
capability that can be used as a countermeasure against
wikispam.  More details on this are below.

For those who are running previous 2.2.0-beta versions, I highly
recommend upgrading to this version.  This is especially true for
people who may be running beta3, beta4, or beta5, which has a bug
that causes the edit form to not appear in certain circumstances.

For sites that are running pmwiki-2.1.X versions (or earlier),
I recommend careful review of the 2.2.0 release notes before
committing to an upgrade, especially for production or 
"mission-critical" sites.  However, downgrading from 2.2.0-beta
to 2.1.26 should not pose any real difficulties.

The remainder of this message describes the blocklist capability
in a bit more detail.  The blocklist system added to the core
borrows features contributed by many people, including especially
the various blocklist cookbook recipes by Crisses, Hagan Fox, and 
Wendell Brown.  Some of the features of the new core blocklist system:

    - blocking by phrase, IP address, or regular expression
    - automatic download/update of shared blocklists
    - ability to ignore ("unblock") entries
    - report reasons for blocking to authors
    - better integration with recipes

The new system is not a perfect drop-in replacement for any of
the existing blocklist recipes, but it's fairly close.  Of course,
it's still relatively new and so may be a slightly unstable,
so sites that have been using other blocklist recipes may wish
to continue doing so.  As long as the core blocklist is not
enabled there should not be any conflicts with existing blocklist

To enable blocklisting, simply add the following to local/config.php:

    $EnableBlocklist = 1;

Then custom block entries may be added to the Site.Blocklist page:

    # block a specific IP            

    # block a range of IPs

    # block a phrase
    block: phrase to be blocked

    # block a regular expression
    block: /regex to block/

The blocklist system no longer allows multiple block: entries on
a single markup line -- each block: entry must be on a separate 

And for those who have been using blocklist2.php or blocklist3.php,
PmWiki recognizes "regex:" as a synonym for "block:".  It's the
leading slash that makes something act like a regex match.

For sites that want to take advantage of pre-existing and
publicly available blocklists, simply set $EnableBlocklist to
10 instead of 1:

    $EnableBlocklist = 10;

This tells PmWiki to enable blocklists *and* automatically
download and keep up-to-date copies of common blocklists available
from other sources.  The downloaded blocklists will be saved as
Site.Blocklist-Chongqed and Site.Blocklist-MoinMaster (as well as
other pages as we identify them).

Of course, it's also possible to configure custom blocklist
downloads from other sources, so if people want to start
sharing blocklist entries it's easy to do.  At some point 
we may decide to maintain a shared blocklist for automatic
downloading from pmwiki.org .

Further details on the new blocklist system are available
at http://www.pmwiki.org/wiki/PmWiki/Blocklist .  I wrote some
of the code and documentation under time pressure, so any 
problem reports or suggested improvements are greatly

Thanks as always,


More information about the pmwiki-users mailing list