[Pmwiki-users] pmwiki-0.6.18 released

Patrick R. Michaud pmichaud
Thu May 6 23:46:40 CDT 2004


I've just released PmWiki version 0.6.18, available from 
http://www.pmichaud.com/pub/pmwiki.  This release incorporates a
couple of reasonably major changes, as described below.

New PHP-based Patch function
----------------------------
Previous versions of PmWiki use a Patch() function that relies on a call
to an external program (called "patch") to restore previous versions of
page contens from the page's history.  This release has a new Patch()
function that no longer requires a call to an external program.  There
have been cases where the external patch program has been unable to 
properly restore previous versions of pages.  Also, the new Patch() 
function performs the patch completely in memory without the use of 
any temporary files, so that there should no longer be 'txt*.rej' and 
'txt*.orig' files left in the wiki.d/ directory.  And, because this 
new function doesn't require reads/writes to external files, it may
be more efficient on most systems.  

However, it's possible that some installations may wish to continue to
use the old function that called the external program, either because
the external program is a bit faster or more robust at restoring pages
from page history, especially on systems where the page history is
being generated from non-standard diff output.  Adding the line

    include_once('scripts/syspatch.php');

to local/config.php will cause PmWiki to rever to using the same
algorithm for page restores that was used in previous versions of PmWiki.

Note that for this release only the external call to "patch" has been
converted to PHP -- for performance and reliability reasons PmWiki still 
uses an external "diff" utility to produce the page history stored in pages.  
If you want a PHP-based version of the diff algorithm, see Nils Knappmeier's
Cookbook contribution at http://www.pmichaud.com/wiki/Cookbook/PHPDiffEngine.


[[include:]] in SideBars
------------------------
PmWiki 0.6.18 modifies the PrintWikiPage() function to process any 
[[include:]] directives that occur in pages printed via this function.  
In particular, this means that [[include:]] directives should now 
work in sidebars and other pages that are loaded via the 
<!--wiki:PageName--> directive in page templates.


$GroupPrintHeaderFmt and $GroupPrintFooterFmt
---------------------------------------------
These two configuration variables now control the names of wiki pages to be
added to the top or bottom of a page when ?action=print has been specified.
By default these variables are set to "GroupPrintHeader" and "GroupPrintFooter"
pages in the current group, but an administrator can set them to any valid
page.  In particular, setting
    $GroupPrintHeaderFmt = $GroupHeaderFmt;
    $GroupPrintFooterFmt = $GroupFooterFmt;
in config.php causes ?action=print to use the same headers and footers
as are used when browsing (normally 'GroupHeader' and 'GroupFooter').


As always, questions, comments, and bug reports are greatly appreciated.

Pm



More information about the pmwiki-users mailing list