Version 2.1.27 (2006-12-11)

  • Backport in bug fix for TableRowFormat (from 2.2.0-beta16).
  • Add support for {*$Variable} syntax (from 2.2.0 page variables).

Version 2.1.26 (2006-09-11)

  • Fix a bug with variable referencing that caused feeds.php to get a confused PCache (reported by Helge Larsen).

Version 2.1.25 (2006-09-08)

  • Fixed a bug in authuser.php that would fail if $AuthUser isn't defined (reported by Hans Huijgen).
  • Added and aliases to and directives in skin templates (suggested by John Rankin).
  • Added $PageExistsCache (suggested by John Rankin).

Version 2.1.24 (2006-09-06)

  • Fixed a bug in authuser.php that had trouble dealing with non-array entries in $AuthUser (reported by Udo).
  • Can now specify authorization groups using $AuthUser['@group'] entries.
  • Can now specify an Apache .htgroup-formatted file for authorization groups via $AuthUser['htgroup'].

Versions 2.1.21, 2.1.22, 2.1.23 (2006-09-05, 2006-09-06)

  • Close a potential security hole with $FarmD when register_globals is set "On".
  • Correct a syntax error in feeds.php (noted by Ben Wilson).
  • Fix a bug that prevented PmWiki from reading page files generated by versions prior to 0.5.6 (discovered by Milan Avramovic).

Version 2.1.20 (2006-09-04)

  • Fixed a bug in (:attachlist:) when passed a wikiword argument (reported by Kathryn Andersen).
  • Changed $HTMLStylesFmt['markup'] to honor config.php setting (reported by Hans).

Version 2.1.19 (2006-08-30)

  • Corrected a bug in the pageindex code that was causing the .pageindex to not update as quickly as it should.
  • Slightly changed the handling of 'width' and 'height' in wikistyles.php, so that they can be be applied as attributes to and tags.
  • Updated the Keep() function to recognize closing block tags as being in the 'B' block pool.
  • Fixed a bug with wikistyles and form tags.
  • Version 2.1.18 (2006-08-28)

    • Closed a potential cross-site scripting vulnerability in table markups (reported by JB).
    • Added (:input image:) markup (requested by JB).
    • Fixed problem with ?action=print failing to set {$Action} (reported by Bart).

    Version 2.1.17 (2006-08-26)

    • Added some improvements to IMS caching to better handle logout and authorization actions (PITS:00573, reported by floozy and Henrik Bechmann).

    Version 2.1.16 (2006-08-26)

    • Added $SkinLibDirs variable, to select filesystem and url locations where skins may be found (resolves PITS:00708, as reported by Hagan Fox, with additional suggestions from Ben Wilson).
    • Changed <!--HeaderText--> to <!--HTMLHeader--> in skin templates, and added an optional <!--HTMLFooter--> directive (PITS:00767).
    • Adjusted the pmwiki and print skins to use the new directives.

    Version 2.1.15 (2006-08-25)

    • Fixed issue dealing with order of @_site_* passwords (reported by Jean-Fabrice and others).
    • Added $LocalDir variable (requested by John Rankin).
    • Removed an unnecessary setting of $DefaultPage in scripts/pgcust.php (it's now handled by ResolvePageName() ).
    • Added some variables and changes in wikistyles.php to better support wikipublisher (contributed by John Rankin).
    • RetrieveAuthPage (PmWikiAuth) now recognizes a $level of 'ALWAYS' as indicating that access should always be allowed, regardless of current passwords or identities.
    • Added filter specifier for AuthUser LDAP authentication (contributed by Balu).

    Version 2.1.13, 2.1.14 (2006-08-15, 2006-08-16)

    • Updated scripts/authuser.php to allow ldaps://... authentications (contributed by Michael Brenner).
    • Fixed problem with numeric passwords introduced in 2.1.beta20 (reported by Christophe David and Dirk Blaas).

    Version 2.1.12 (2006-08-07)

    • Corrected typo in Site.SideBar file (reported by Judith Zacharie).
    • Suppressed warning message for search on sites without a wikilib.d/ directory.
    • Added capability for nested divs.
    • Use $Transition['nodivnest'] to restore previous non-nesting div/table behavior.
    • Including authuser.php now automatically resolves pagename.
    • Added (:noaction:) directive to turn off actions.
    • Fixed bug in wikistyles prior to image blocks.
    • Added white-space as allowed wikistyle (suggested by C. Ridderström).
    • Allow colons, hyphens, and dots in id= tags.

    Version 2.1.11 (2006-06-09)

    • Fixed generation of empty paragraphs around %define=...% wikistyles (PITS:00753).

    Version 2.1.10 (2006-06-04)

    • Added a around the RecentChanges link in the pmwiki skin (PITS:00750, suggested by Hagan Fox).
    • Changed the $Action variable to $ActionTitle (PITS:00749, reported by Hagan Fox).
    • Changed $FPLTemplatePageFmt to be an array of pages to be searched for page templates, enabled searching of current page and Site.LocalTemplates page.
    • Updated .vspace margin in sidebar for pmwiki skin (PITS:00751, by Hagan Fox).

    Version 2.1.9 (2006-06-02)

    • Fixed a bug with [[~Author]] links (PITS:00530 reported by Klonk, PITS:00611 reported by weijang, PITS:00671 reported by Stirling Westrup, and helpful clues provided by Clayton Curtis).

    Version 2.1.8 (2006-06-01)

    • Added ability to specify notification entries from local/config.php as well as Site.Notify (suggested by Christophe David).
    • Fixed $Transition['vspace'] from 2.1.7.

    Version 2.1.7 (2006-05-31)

    • Adjusted width of edit form for IE browsers (contributed by Roman and H. Fox).
    • Suppress authentication failure error from LDAP (PITS:00739).
    • Fixed problem with invalid page names resulting in redirect loop (PITS:00723, reported by jojoo).
    • Added "Group." and "Group/" page name syntax, resolving PITS:00736 (from a suggestion by Pico).
    • Changed handling of "vspace" paragraphs.
    • Fixed some XSS vulnerabilities in uploads.php and url links (reported by Moritz Naumann, http://moritz-naumann.com).
    • Added notify.php script, allowing finer control of email notifications.

    Version 2.1.6 (2006-05-22)

    • Optimized performance of urlapprove.php.
    • Added (:if auth xyz PageName:) syntax.
    • Corrected XSS bug in trails.php.
    • Slightly improved performance of free links.
    • Restore ability to use hyphens in InterMap links (reported by Henrik Bechmann).

    Version 2.1.4, 2.1.5 (2006-03-29)

    • Fixed problem with pagelist-based feeds (PITS:00709, reported by Jon Haupt).
    • Added {$Action} page variable. (PITS:00696, reported by Sebastian Pipping).
    • Added stripmagic() around variables submitted to authuser.php.
    • Fixed problem with multi-term searches containing special characters (PITS:00713, reported by Leo).
    • Switched (:attachlist:) to use a natural case sort (suggested by H. Fox).

    Version 2.1.3 (2006-03-17)

    • Re-fixed problem with PHP 5.1.1 and lines= option to (:include:) (PITS:00620).
    • Fixed empty LDAP password issue (reported by Thomas Lederer).

    Version 2.1.2 (2006-03-16)

    • Fixed

      /

      tag mismatches (PITS:00702, reported by Martin Hason).

    • Fixed bug with $AllowPassword and "nopass" (reported by M. Weiner and bram brambring).
    • Improved the speed of RSS and other web feeds when $EnablePageListProtect is not set.

    Version 2.1.1 (2006-03-13)

    • Fixed a bug with multiple authorization groups as a password (PITS:00699, reported by Ari Epstein).
    • Updated the authorization code to be a bit more liberal with password/group settings.
    • Updated PmWiki.FAQ page to be able to grab FAQ items from other pages in the documentation.

    Version 2.1.0 (2006-03-12)

    • Many many documentation updates (special thanks to many authors).
    • Allow trailing underscores in upload names (requested by Hans).
    • Fixed 'ak_print' problem causing accesskey='a' for print (noted by Pico).
    • Added code to make sure each anchor is generated only once per page (for XHTML validity).
    • Added a $BlockPattern variable to recognize block HTML tags.
    • Made an adjustment to Keep() so that it places strings with block HTML into the 'B' pool.
    • Adjusted stdmarkup.php to not produce paragraphs for keep blocks in the 'B' pool.
    • Corrected a variety of i18n phrases.
    • Added class='escaped' to distinguish @@...@@ from [@...@] (from a comment by Hans).
    • Slightly changed styling of .faq divs.
    • Made the edit textarea a couple of rows smaller to better fit on smaller displays (suggested by H. Fox).

    Version 2.1.beta38 (2006-03-09)

    • Fixed auth bug in HandleSearchA (reported by noskule).
    • Fixed print skin to be XHTML 1 compliant and use updated i18n phrases (PITS:00690, contributed by Athan).
    • Fixed ?action=search to honor markup escapes when checking current page for (:searchresults:).
    • Fixed bug in handling blank lines in preformatted text.
    • Fixed extra newlines appearing after [@...@] markups (reported by H. Fox).
    • Added class= and caption= arguments for (:markup:) markup.
    • Added apply=pre to wikistyles.

    Version 2.1.beta37 (2006-03-08)

    • Converted (:redirect:) to be a true markup, now honors conditional markup and includes.
    • Added status= option to redirect.
    • Allow redirecting to an anchor within a page (PITS:00558).
    • Added experimental server-side page caching.

    Version 2.1.beta36 (2006-03-06)

    • Fixed problem with PmWiki under PHP 5.1.2 with lines= option to (:include:) (PITS:00620, thanks to Eric Wolleson for the fix).
    • Added (:if exists PAGENAME:) conditional markup.
    • Fixed bug with pages using 'nopass' as password (reported by H. Baas and J. Demartini).

    Version 2.1.beta35 (2006-03-05)

    • Revised authorization code to be faster/cleaner, and to support "@_site_edit" authorization.
    • Adjusted Site.SideBar so that edit permissions default to site's edit permissions.

    Version 2.1.beta34 (2006-03-04)

    • Updated the simuledit.php script so that an author won't lose edits when the merge fails (PITS:00391).

    Version 2.1.beta33 (2006-03-02)

    • Added transparent button images (PITS:00347, suggested by Klonk).
    • Added some new button images to pub/guiedit, including a button "blank" for creating new buttons.
    • Added $EditRedirectFmt option to allow save/cancel in ?action=edit to redirect somewhere other than the current page (PITS:00674, requested by T. Dowling).
    • Restored lost scripts/.htaccess and docs/.htaccess files.
    • Added {$Description} page variable, changed feeds.php to use this instead of $ItemDesc.
    • Added conditional expressions, based on cookbook recipe from D. Faure (PITS:00531).

    Version 2.1.beta32 (2006-02-27)

    • Fixed minor glitch with call to flush() in pagelist.php causing spurious "headers already sent" warnings (reported by Robin Sheat and others).

    Version 2.1.beta31 (2006-02-26)

    • Changed "inputbox" to "inputbutton" in (:searchbox:) directive (reported by Hans).
    • Switched setting of $SkinDir to include a leading "./".
    • Added option to suppress fields in ?action=attr display.

    Version 2.1.beta30 (2006-02-25)

    • Fixed bug with custom $SearchBoxFmt (noticed by Hans and Han Baas).

    Version 2.1.beta29 (2006-02-24)

    • Restored default setting of $EnablePageListProtect to 1 (was inadvertently switched to zero in beta27).
    • Fixed "group=" option in (:searchbox:), and added ability to pass other options to search results.
    • Added rule to ignore a blank line immediately following a heading (suggested by J. Durcholz and H. Fox).
    • Revised pmwiki skin stylesheet (contributed by H. Fox)
    • Added <!--PageActionFmt--> section to pmwiki skin.
    • Added target= option to (:searchbox:).
    • Added change to use the current page for ?action=search if it has (:searchresults:) in the page's markup.
    • $PageSearchForm can now be an array of pages to possibly be used to display the results of ?action=search -- first one found is used (suggested by Hans).
    • Fixed bug with pageindex not including page's name in list of terms to search.

    Version 2.1.beta27-28 (2006-02-24)

    • Removed .linkindex, converted to .pageindex for faster word searches.
    • Fixed bug with setting of $AuthId after logins.
    • Added order=group for pagelists (requested by B. Boltwood)
    • Added appropriate settings for magic_quotes_runtime and magic_quotes_sybase PHP settings.
    • Fixed problem with include lines=... chopping off last line of text when fewer than requested lines in page.
    • Updated handling of links to non-existent pages and query strings.
    • Added some useful comments to scripts/feeds.php.

    Version 2.1.beta26 (2006-02-16)

    • Changed PmWiki's default pmwiki.css styles to look a little cleaner in various browsers (suggestions from H. Fox).
    • The (:include:) directive now supports a self=0|1 parameter to tell the directive if it should include the current page.
    • $GroupHeaderFmt and $GroupFooterFmt now have "self=0" added to prevent their contents from being displayed twice.
    • Page links with query arguments are now treated as "existing page" links even if the page does not exist (from suggestions by Jon Haupt).
    • Modified scripts/author.php so that $Author is automatically set from $AuthId (unless overridden by a local config or by the author).
    • Added order=random option to (:pagelist:).
    • Added $Transition['fplbygroup'] to restore FPLByGroup function.
    • Changed $EnableDefaultWikiStyles to $EnableWikiStyles.
    • Added $UploadNameChars to allow customization of characters in upload filenames.

    Version 2.1.beta24-25 (2006-02-08)

    • Improved interface to transition.php code to allow better granularity.
    • Changed default of $EnableTransitions to 0.
    • Fixed problem with (:markup:) closing divs (reported by H. Fox).
    • Added $Action value for ?action=search (suggested by H. Fox).
    • Added class=inputbox and class=inputbutton to various input controls (PITS:00577, suggested by H. Fox, Hans, and others).
    • Fixed bug with "list=normal" when drafts enabled.

    Version 2.1.beta23 (2006-02-07)

    • Fixed bug with PageExists("") returning true (reported by Sebastian Siedentopf and others).
    • Fixed $InterMapFiles to allow fmt substitutions.
    • Removed unused $DiffAuthorPageExistsFmt and $DiffAuthorPageMissingFmt from pagerev.php.
    • Resolved some issues of "double-posts" and simultaneous edits.
    • Added {$LastModifiedSummary} page variable.
    • Allow spaces around '#' in [[target | # ]] links (suggested by Ryan Varick).
    • Added docs/UPGRADE.txt (thanks to Hagan Fox).
    • Added draft capabilities with $EnableDrafts = 1 .
    • Changed default setting of $UploadUrlFmt to be based on $PubDirUrl (excellent suggestion by Hagan Fox).
    • Removed problem of simultaneous edits interfering with reading of simple text files in wiki.d/ .
    • Pressing "Save" with no text changes now actually performs a save.

    Version 2.1.beta22 (2006-01-28)

    • Fixed a bug in feeds.php with ?action=dc.
    • Added code to be able to capture remainder of trail lines in trail index pages.

    Version 2.1.beta21 (2006-01-27)

    • Updated page variable code to better handle null values of $pagename.
    • Improved guard against register_globals poisoning (courtesy of Francesco 'ascii' Ongaro).
    • Added a tag to RSS feeds (from suggestions by Jean Demartini).
    • Added wildcard capabilities for pagelists and conditional markups.
    • Improved page-not-found handling, changed Site.PageNotFound (PITS:00556).
    • Fixed bug in whitespace handling (reported by Christian Ridderstrom).
    • Fixed handling of query strings and anchors in trail index pages.
    • Null targets in links now produce null output.

    Version 2.1.beta20 (2006-01-12)

    • Redesigned/improved handling of session authorization variables.
    • Suppressed warning from fileowner/filegroup in fixperms (courtesy Dominique Faure)
    • Restored Last-Modified headers to algorithm used in 2.1.beta17, but the code now detects changes in configuration files and recipes.
    • Added (:encrypt :) markup, to simplify generation of encrypted passwords in Site.AuthUser.

    Version 2.1.beta18-19 (2006-01-10)

    • Added 'class=' option to (:pagelist:) (based on suggestions from H. Bass).
    • Changed Site.InterMap to {$SiteGroup}.InterMap.
    • Fixed E_NOTICE errors.
    • Corrected bug in $SaveAttrPatterns in scripts/stdmarkup.php.
    • Removed $text global variable (use $_POST, $_GET, or $_REQUEST['text']).
    • Removed saving of 'excerpt' attribute -- this is being reworked.
    • Fixed bug with PageVar's handling of pagenames containing slashes (reported by Hans).
    • Page action links in PmWiki skin no longer display with "non-existent page" decorations.
    • Added more robots to $RobotPattern.
    • Adjusted script to generate Last-Modified headers whenever $LastModFile is set.
    • Added docs/ directory, several documentation files, and README.txt (courtesy H. Fox).
    • Moved sample-config.php and COPYING to docs/ directory.

    Version 2.1.beta16-17 (2005-12-29)

    • Fixed bug with titled links (reported by blues).
    • Restored $FPLFunctions variable.
    • Restored (:if enabled:) conditional (PITS:00630).
    • Fixed bug with PCache.
    • Added rel='nofollow' to various links where robots should not be going (suggestion by H. Fox).

    Version 2.1.beta15 (2005-12-28)

    • Removed Main.GroupAttributes and PmWiki.GroupAttributes from the distribution.
    • Switched to using _crypt() for AuthUserConfig (requested by D. Faure).
    • Fixed bug in httpauth.php with double-prompting for passwords (noted by M. Weiner).
    • Added new page variables code, adding PageVar() function and redesigning FmtPageName().
    • Added PmWiki.PageVariables, removed PmWiki.MarkupVariables.
    • Added (:if equal ...:).
    • Optimized processing of includes and conditional markup.
    • Optimized PCache().
    • Removed deprecated $NewlineXXX variable.
    • Added 'ctime' page attribute.
    • Redesigned pagelist.php to use pagelist templates.
    • Changed $EnablePageListProtect to default to 1.
    • Added Site.PageListTemplates.
    • Removed FPLByGroup, FPLSimple, and FPLGroup.
    • Added more conversions to scripts/compat1x.php (suggested by C. Ridderström).

    Version 2.1.beta13-14 (2005-12-10)

    • Added scripts/feeds.php, which replaces scripts/rss.php (now removed from the distribution).
    • Trail links are no longer saved as part of targets=.
    • Keywords and description markup are saved as meta values in page files, along with an initial portion (excerpt) of the rendered HTML for a page.

    Version 2.1.beta12 (2005-12-07)

    • Fixed bug with storing group authorizations via ?action=attr (discovered by Dan Weber).

    Version 2.1.beta11 (2005-12-06)

    • Fixed problem with ?action=login for admin password (PITS:00612, reported by Klonk).
    • Updated xlpage-utf-8.php for sites that have pcre installations that don't understand /u (reported by Andres Kulikauskas).

    Version 2.1.beta10 (2005-12-05)

    • Class attributes in wikistyles are now additive.
    • Added capability for shared pages in farms (PITS:00459).
    • Fixed XHTML validation problem for empty pagelists (PITS:00601, reported by Mickael Nilsson).

    Version 2.1.beta9 (2005-11-30)

    • Added ?action=login.

    Version 2.1.beta8 (2005-11-30)

    • Fixed a problem with paragraphs after lists (reported by Bronwyn Boltwood).
    • Added robot controls to scripts/robots.php (PITS:00563).

    Version 2.1.beta7 (2005-11-29)

    • Added capability to load InterMap entries from Site.InterMap page (PITS:00522).
    • Fixed bug with AuthList code (reported by Ilana Kingsley and others).

    Version 2.1.beta6 (2005-11-29)

    • Revised authuser.php to obtain configuration from Site.AuthUser page.
    • Included capability for authorization groups.

    Version 2.1.beta5 (2005-11-25)

    • Fixed bug with read-protected Site.AuthForm (reported by Matt Strauser)

    Version 2.1.beta4 (2005-11-24)

    • Fixed bug with authentication after unsuccessful attempt (PITS:00551, reported by Uli and Bronwyn).

    Version 2.1.beta3 (2005-11-23)

    • Fixed bug with "id:*" authorization string (reported by Bronwyn).

    Version 2.1.beta2 (2005-11-22)

    • Fixed bug with formatting surrounding [@...@] code blocks.
    • Added ... around wikiword links to provide additional wikiword formatting.
    • Changed authorization prompt to default to Site.AuthForm.
    • Revised PmWikiAuth function to be able to authorize against groups or multiple authentications.
    • Fixed session handling in authorization code to create and open session only if needed.
    • Fixed bug with display of directives in page history (PITS:00592, reported by floozy).
    • Added white-space:nowrap to command section of pmwiki skin (PITS:00591, contributed by floozy).
    • Fixed a possible bug with urls for direct-download attachments (PITS:00588, reported by Henning).

    Version 2.1.beta1 (2005-11-18)

    • WikiWords are now disabled by default (PITS:00520).
    • Whitespace at the beginning of lines can be used for nesting within lists (PITS:00562).
    • Added ability to specify percentages in wikistyles (use "pct" instead of "%").
    • Fixed problem with including to end of text (PITS:00560, thanks to Klonk).
    • Added (:if enabled VAR:) conditional markup.
    • Added [[target|+]] titled markup.
    • Adjusted markup bug in (:markup:) (reported by Hans).
    • Fixed problem of nested apostrophe markups (PITS:00590, reported by floozy).
    • Added (:input file:) and $InputValues array (PITS:00566).

    Version 2.0.13 (2005-11-10)

    • Fixed PostPreview function to allow page preview even if page is saved.
    • Fixed downloading code so that large files don't run into memory limits (reported by Daniel Scheibler).
    • Changed urlapprove.php so that admins can always post.
    • Fixed XSS bug in pagelist.php (reported by Mauritz Naumann, http://moritz-naumann.com).

    Version 2.0.12 (19-Oct-2005)

    • Fixed cast of $ApprovedUrlsFmt in transition.php (reported by Patrick Ogay).
    • Changed PmWiki's exit() call to a return (PITS:00548, requested by Wesley Tanaka).
    • Fixed bug that was erroneously converting '&' back to '&' in query fragments (from a bug report by Chris Cox).

    Version 2.0.11 (17-Oct-2005)

    • Fixed problem with blank passwords in LDAP authentication (PITS:00547, reported by Paul Eden).
    • Added support for whitespace indent rules.
    • Fixed problem with losing history on changing passwords (PITS:00555, thanks to floozy).
    • Added support for (:linebreaks:) and (:nolinebreaks:) (PITS:00549).
    • Added support for MySQL passwords in authuser.php (suggestions from Ahmed Ibrahim).
    • Added an (:if date:) condition to the markup.

    Version 2.0.10 (29-Sep-2005)
    Version 2.0.9 (28-Sep-2005)

    • Fixed oversight in xlpage-utf-8.php that doesn't upcase ASCII letters when mb_strtoupper isn't present.
    • Updated copyright dates.

    Version 2.0.8 (27-Sep-2005)

    • Changed $Name to $Title in print skin (found by Robert Riebisch).
    • Added capability to use quotes to enter pass phrases in ?action=attr (requested by Simon).

    Version 2.0.7 (26-Sep-2005)

    • Updated xlpage-utf-8.php to use a different case conversion algorithm, and completed tables for other character sets.
    • Fixed $VersionNum variable.
    • Added ak_textedit and default value of ',' (PITS:00528, offered by Christoph Lange).
    • Added a time limit to generation of .linkindex files.

    Version 2.0.6 (16-Sep-2005)

    • Updated xlpage-utf-8.php so that mb_strtoupper() is no longer required.
    • UTF-8 module now is able to handle UTF-8 characters in link suffixes (PITS:00432, reported by Schlaefer).
    • Fixed a bug with vardoc.php when an empty $VarIndex is loaded (PITS:00491, reported by Jean-Dom).
    • Improved the guiedit buttons for IE browsers -- selections now work more like one would hope they would (PITS:00515, suggested by floozy).
    • Fixed