ChangeLogArchive

This is the log of changes in PmWiki pre-2.3.0.

Version 2.3.0 (2022-01-15)

See ChangeLog.

Version 2.2.145 (2021-12-11)

  • Hide undefined variable notices for PHP8.
  • Pagelist searches with wrong $SearchPatterns (list=abc argument) will now use $SearchPatterns["default"] rather than an empty array (effectively all pages). This is to allow admins to limit search locations.
  • Obsolete markups: change ⚠ emoji for entity ⚠ (emoji doesn't work in non-UTF8 wikis).
  • Update documentation.

Version 2.2.144 (2021-11-06)

  • Fix CmpPageAttr() for PHP 8 (suggested by Chris Caputo).
  • Optimize conditional "exists" if called many times, like from a pagelist.
  • Allow for CondExists(), MatchPageNames(), and MatchNames() to be called with a $caseinsensitive argument set to false (default case insensitive is true like before).
  • Update intermap.txt for Meatball wiki (PITS:01472).
  • Update documentation.

Version 2.2.143 (2021-10-02)

  • Prevent PHP from crashing with older markups and patterns.
  • Add ObsoleteMarkup(). Obsolete markup rules are now disabled and will appear framed with a "warning" icon.
  • Update documentation.

Version 2.2.142 (2021-08-31)

  • Mute some PHP notices.
  • Add form attributes autofocus, accept.
  • Update documentation.

Version 2.2.141 (2021-07-09)

Version 2.2.140 (2021-06-26)

  • Fix warnings for undefined variables in PHP 8 (PITS:01461).
  • Update pub/drt-utils.js to use the new API function call for Highlight.js, the old one having been deprecated. This change requires Highlight.js version 10.7.0 or newer (currently 11.0.0).
  • Update documentation.

Version 2.2.139 (2021-05-05)

  • Remove empty title attributes, reported by Martin Cuno.
  • Hide warning in pagelist.php for PHP 8, reported by Dominique Faure.
  • Hide warning in wikiwords.php for PHP 8, reported by Jue (PITS:01461).
  • Update documentation.

Version 2.2.138 (2021-03-02)

  • Fix details summary incorrectly escaped HTML, reported by Jack Applin (PITS:01465).
  • Update documentation.

Version 2.2.137 (2021-02-26)

  • Fix bug with twice encoded entities in PQA() quoted arguments.

Version 2.2.136 (2021-02-26)

  • Fix XSS vulnerability for WikiStyles reported today by Igor Sak-Sakovskiy.
  • The PQA() function accepts a second argument $keep default true.

Version 2.2.135 (2021-01-31)

  • Fix a number of PHP8 compatibility issues. Report others at PITS:01461.
  • Add pmtoken(), AutoCheckToken() currently transparent.
  • Blocklists: disabled a defunct one.
  • PmTOC: rewrite handling of section editing links.
  • Update documentation.

Version 2.2.134 (2020-11-30)

  • Update documentation.

Version 2.2.133 (2020-10-25)

  • Escape unintended variable evaluation in link tooltip titles, reported by Finar.
  • Responsive skin css: remove ul/ol forced padding (clips numbered list markers in long lists, reported by Colin Cody; complex to override cross-browser).
  • Add image extensions WEBP and APNG (PITS:01454) and upload extensions.
  • Fix potential vulnerability to CWE-384: Session Fixation, reported by Dominique Faure. Add $EnableAuthPostRegenerateSID default enabled.
  • RecipeCheck - only inject CSS when the action is called.
  • Update documentation.

Version 2.2.132 (2020-09-30)

  • Update documentation.

Version 2.2.131 (2020-08-30)

  • Update documentation.

Version 2.2.130 (2020-07-04)

  • Update documentation.

Version 2.2.129 (2020-05-21)

  • Mute some PHP notices.
  • Copy "simpletable" styles from the "pmwiki-responsive" skin into the old "pmwiki" skin.
  • Update documentation.

Version 2.2.128 (2020-04-26)

  • Strip some trailing spaces and convert some tabs to spaces.
  • Add comments next to preg_replace() and create_function() where old addons may cause PHP deprecation notices.
  • Mute some PHP notices.
  • Print the invalid pagename in the error message.
  • Update documentation.

Version 2.2.127 (2020-03-23)

  • Mute some PHP "undefined variable" notices.
  • Responsive skin set #wikiedit textarea max-height: 60vh (after discussion+tests at PmWiki:Skins-Talk).
  • Prefix PmTOC classes "pmtoc-show" and "pmtoc-hide" to avoid processing by other frameworks (reported by Finar).
  • Add Skins:SkinChange to the core, enabled by either of the variables $EnableAutoSkinList and/or $PageSkinList.
  • Add FileSizeCompact() and DiffTimeCompact() (can be used by recipes).
  • Add $FmtV["$upresult"] can be intercepted by recipes.
  • Update documentation.

Version 2.2.126 (2020-02-01)

  • Mute some "Undefined" notices.
  • Fix caches.php to write an updated .htaccess format.
  • Fix bug with $PmTOC['MinNumber'] = -1 reported by SteP.
  • Update documentation.

Version 2.2.124, 2.2.125 (2020-01-27)

Version 2.2.123 (2019-12-31)

  • Allow for escaped [=link address=] to have any special characters, including quotes, parentheses and pipes.
  • Fix PmXMail when the link contains a quote, and to work from headers, footers and sidebars.
  • Add form attribute "formnovalidate" (suggested by Robert Riebisch).
  • Allow table of contents to work better with Cookbook:SectionEdit (reported by Johan Bengtsson).
  • Mute a number of PHP notices for undefined variables.
  • Add that "URL" means in browser in sample-config.php (PITS:01448).
  • Add Cookbook:RecipeCheck in diag.php.
  • Refactor functions that handle $EnableRCDiffBytes to show the deltas in the page histories.
  • Remove $EnableRelativePageVars from sample-config.php (confusing, PITS:01145).
  • Add upload extensions webp image format and opus audio codec.
  • Update documentation.

Version 2.2.122 (2019-11-19)

Version 2.2.121 was released by mistake and contained some experimental code that was meant to be tested first.

  • ObfuscateLinkIMap: Fix bug with special or international characters in custom subject fields, reported by FidelioEspoir.
  • Add $DefaultUnsetPageTextVars, $DefaultEmptyPageTextVars.
  • Mute "Uninitialized string offset messages" for error_reporting(E_ALL), reported by DFaure.
  • Fix PmTOC, when NumberedHeadings is enabled, to number headings even when the TOC would not be created.
  • Add {$$EachCount} pagelist template pseudovariable, containing the count for the current "each" loop.
  • Add $InputAttrs role and aria-* form attributes, allow aria-\\w* attributes for the (:searchbox:) field.
  • Update documentation.

Version 2.2.120 (2019-10-13)

  • Add (:input datalist:) form element.
  • Add (:details summary="...":)...(:detailsend:) block markup.
  • Fix bugs with guiedit.php/guiedit.js reported by FidelioEspoir.
  • PmTOC: add max-height and overflow-auto to the block.
  • Update documentation.

Version 2.2.119 (2019-10-03)

Version 2.2.118 (2019-08-28)

Version 2.2.117 (2019-07-28)

  • Add $EnableUploadAuthorRequired default to $EnablePostAuthorRequired, add Author field in upload form.
  • Implement partial content indirect downloads (suggested by Christopher Cox, required for embedded video on iOS).
  • Add allowed upload video extensions 'm4v' and '3gp'.
  • Fix lowercase "Content-Disposition" header for downloads.
  • Update documentation.

Version 2.2.116 (2019-06-19)

  • Add $PageListVarFoldFn, defaults to $StrFoldFunction, for international case-insensitive matches of page (text) variables.
  • Update documentation.

Version 2.2.115 (2019-05-13)

  • Responsive skin: Simplify CSS for custom backgrounds, remove repetition.
  • Update documentation.

Version 2.2.114 (2019-04-02)

  • Fix bug with input select lists where an already defined id= attribute may get overwritten.
  • Vardoc: Move the id= attribute from a standalone anchor to the definition term element (allows ":target" styling).
  • Vardoc: Localize table header and link text (suggested by Michael F. Wolff).
  • Add $SkinTemplateIncludeLevel, IncludeTemplate skin directive.
  • Add input "tel" type, and attribute "pattern". Fix classnames of new input types.
  • Update documentation.

Version 2.2.113 (2019-03-01)

Version 2.2.112 (2019-01-09)

  • Fix switch break for PHP 7.3, reported by Hans-Jürgen Godau.
  • Update documentation.

Version 2.2.111 (2018-12-08)

  • Add $Id$ subversion keyword to pmwiki.php, requested by Peter Gragert.
  • Fix responsive skin search form max-width in desktop mode, reported by Moni Kellermann.
  • Add $DenyHtaccessContent variable. Update protective .htaccess files.
  • Add tz= and locale= arguments to {(ftime )} MarkupExpression (PHP5+).
  • Update documentation.

Version 2.2.110 (2018-11-05)

  • Fix {(substr )} markup expression with non-number arguments could cause warnings, reported by Simon.
  • Add $PageListSortCmpFunction, default to current 'strcasecmp'.
  • Add global $MarkupMarkupLevel which changes when the processing is inside (:markup:) blocks.
  • Fix inconsistent white space with inline [@escaped code@], reported by Dannybpng.
  • Update documentation.

Version 2.2.109 (2018-07-09)

  • Update pmcrypt() to exclude negative -@groups from hash checking.
  • Add $EnableMarkupDiag to backtrace all markup calls, suggested by ChuckG.
  • Fix Path InterMap broken in 2.2.108, reported by ChuckG.
  • Update documentation.

Version 2.2.108 (2018-07-05)

  • Add $PCCFOverrideFunction.
  • $AuthUserPageFmt can now be an array of page names.
  • Add $PageCacheFileFmt default to "%s/%s,cache" (like before), allowing custom cache filenames.
  • Form checkbox labels now have the same tooltip title as the checkbox.
  • Add %reversed% WikiStyle.
  • RefCount: add label to checkbox, class to table.
  • Vardoc: fix markup call, reported by Hans-Jürgen Godau.
  • pmcrypt() return false when salt appears to be some old PmWiki attribute.
  • Default InterMap PmWiki URLs have now the HTTPS protocol (suggested by Simon).
  • Update documentation.

Version 2.2.107 (2018-02-02)

  • Fix Forms and Pagelists warnings in PHP 7.2, reported by DFaure.
    • Fix order=title broken with the previous commit, reported by ChuckG.
  • Add $MailFunction.
  • Add ".rtl *" styles.
  • Update documentation.

Version 2.2.106 (2017-12-01)

  • Add pmsetcookie(), $EnableCookieSecure, $EnableCookieHTTPOnly (PITS:01425).
  • Refactor PageListSort() to make it work for PHP 7.2 without requiring create_function().
    • Fix ordering broken with the previous commit, reported by ChuckG.
  • Fix `wikiword markup, reported by Steve Glover.
  • Update documentation.

Version 2.2.105 (2017-11-07)

  • Refactor HandleUpload() - add UploadSetVars($pagename) to allow custom upload add-ons to set variables.
  • Fix bug with PQA() that caused invalid HTML with attributes glued together.

Version 2.2.104 (2017-10-11)

  • Fix bug with WikiTrails introduced with 2.2.103 (PITS:01422).

Version 2.2.103 (2017-10-01)

  • Add pagelist list=grouphomes and fmt=#grouphomes.
  • Update all scripts for PHP 7.2 (bugtrack).
  • Make responsive skin also compatible with PmWiki versions 2.2.55 or earlier.
  • Add *.vtt (web subtitles) as allowed upload extension.
  • Fix Charset headers for xlpage-iso-*.php
  • Refactor PageStore class to remove create_function() calls.
  • Add "title" attribute to input form elements.
  • Re-add the definition of the $rrep variable in Markup expressions, reported by ChuckG.
  • Add $AuthLDAPReferrals to set LDAP_OPT_REFERRALS if needed, reported by Kirk Zurell.
  • Fix missing $pagename for WikiWord links.
  • Update documentation.

Version 2.2.102 (2017-08-05)

  • Revert fix for PITS:01300, the markup engine breaks when a text variable content is longer than 2699 characters.
  • Add a text box in SiteAdmin.AuthList to allow filtering of the results.

Version 2.2.101 (2017-07-30)

  • Rename function PageStore to __construct, to prevent PHP 7 strict or deprecated notices.

Version 2.2.100 (2017-07-30)

  • Workaround around Subversion incompatibility with $Author:...$ string not intended as SVN keyword.
  • Responsive skin: add spacing above the #wikitext block, similar to the default skin.
  • Update documentation.

Version 2.2.99 (2017-06-26)

  • Fix Preview didn't show changes due to $ROSPatterns (PITS:01408).
  • Remove markup rules for previewing author signature not needed anymore.
  • Fix bug and warning appearing in PHP 4 installations.
  • Update Wikipedia intermap entry (secure https).
  • Fix bug with [[<<]] styles "clear:both".
  • Fix incomplete definition of page text variable halts the rendering (PITS:01300).
  • Fix $Version didn't work as a vardoc link.
  • Update documentation.

Version 2.2.98 (2017-05-31)

  • Fix WikiStyles where "pct" was incorrectly dropped from some classnames (PITS:01404).
  • Hide warning about missing intermap file.
  • Add pmwiki-responsive skin, based on modified Skins:2016.
  • Responsive skin: Hide icon if PageActions empty. Fix "close" icon didn't appear for the PageActions block. Unrestrict menu height. Switching from portrait view with menu open to landscape: page should not be greyed out (PITS:01406). Landscape view: fix overflow for search form in Epiphany (likely Safari and other AppleWebKit-based browsers). Move the <main> tag up to allow scrolling of the whole #wikibody. Large preformatted blocks will also scroll in the mobile view. Set limit for desktop layout to 50em~800px. Scrollable tables via cosmetic JavaScript.
  • Both skins: Set default text color (PITS:01406).
  • Fix Deprecated notice for Site.AuthUser password attributes.
  • Vardoc links now use MakeLink() to allow a custom LinkPage function, fix bug reported by ChuckG.
  • $InclCount now counts per browsed page (for multi-page processing recipes).
  • Make $markupid variable available to markup replacement functions.
  • Refactor function ReplaceOnSave to allow easier calling from recipes (PITS:01407).
  • Enable *.mkv as allowed video extension.
  • Fix bug with attachlist markup.
  • Fix alternative bold/italics markup in sample-config.php (PITS:01400).
  • Fix lost space in markup tables, replace markup tables <code> with <pre> and add style "pre-wrap" (reported by ChuckG).
  • Update documentation.

Version 2.2.97 (2017-04-07)

Version 2.2.96 (2017-04-05)

  • Fix severe PHP code injection vulnerability, reported by Gabriel Margiani.
    • Filter $pagename to exclude certain characters.
    • Add $pagename_unfiltered in case a recipe requires it.
  • Update documentation.

Version 2.2.95 (2017-02-28)

  • Update documentation.

Version 2.2.94 (2017-01-31)

Version 2.2.93 (2016-12-31)

  • Update documentation.

Version 2.2.92 (2016-11-30)

  • Skip checking for $AllowPassword if empty or false.
  • Enable FmtPageName() to expand PageVariables with asterisks.
  • Update documentation.

Version 2.2.91 (2016-09-30)

  • Update documentation.

Version 2.2.90 (2016-08-31)

  • Add action parameter to upload form URL.
  • Add imgonly and imgcaption CSS classes (PITS:01390).
  • Fix plus-links with suffix [[Page|+]]s (PITS:01392).
  • Update documentation.

Version 2.2.89 (2016-07-30)

  • Add identifiers to Site.EditForm elements to enable easier styling.
  • Add $SimpleTableDefaultClassName, default unset (PITS:00638).
  • Add temporary $new['=html'] entry, in SaveAttributes().
  • Fix superfluous line breaks in SiteAdmin.AuthList.
  • Add optional placeholder attribute in (:searchbox:).
  • Add $SearchBoxInputType, default 'text'.
  • Set $HTMLStylesFmt via SDVA() in vardoc.php, urlapprove.php, and xlpage-utf-8.php.
  • Fix vardoc.php to recognize and link variables $pagename, $Author, $Skin, and to sort case insensitively.
  • Update documentation.

Version 2.2.88 (2016-06-29)

  • Fix invalid HTML output of WikiTrail links (PITS:01388).
  • Add 4th argument $double_encode to PHSC() for safe replacement of htmlspecialchars().
  • Add page variable {$SiteAdminGroup} (PITS:00951).
  • Update documentation.

Version 2.2.87 (2016-05-31)

Version 2.2.86 (2016-04-28)

Version 2.2.85 (2016-03-31)

  • Add svg(z) and SVG(Z) as embeddable image extensions (PITS:00197, PITS:00435).
  • Add *.svgz as allowed upload extension.
  • Update documentation.

Version 2.2.84 (2016-02-21)

Version 2.2.83 (2015-12-31)

  • Update documentation.

Version 2.2.82 (2015-11-30)

  • Enable stripmagic() to process arrays recursively.
  • Update documentation.

Version 2.2.81 (2015-10-31)

  • Fix single line PageTextVariable definition (reported by HansB).
  • Add .ltr and .rtl CSS classes for UTF-8.
  • Update documentation.

Version 2.2.80 (2015-09-30)

  • Modify (:searchbox:) to use type="search" input.
  • Update documentation.

Version 2.2.79 (2015-08-27)

  • Modify guiedit.js::insMarkup() to accept a custom function name processing the text, and a custom id for the text area.
  • Add CSS basic colors 'fuchsia','olive','lime','teal','aqua','orange' and 'grey' as WikiStyles (PITS:01373).
  • Add $EnableROSEscape, default 0 (PmWiki:TextFormattingRules-Talk).
  • Remove 'target' attribute in input forms (breaks PmForm).
  • Add HTML5 input types email, url, number, date, search.
  • Add attribution in script comments.
  • Update documentation.

Version 2.2.78 (2015-07-21)

  • Update $RobotPattern with current user agents.
  • Accept 'target' attribute in input forms.
  • Update documentation.

Version 2.2.77 (2015-06-19)

  • Add generic function MakeNames() to process MakePageNames().
  • Extend (:if attachments:) to specify file and page names (PITS:01087).
  • Optimize PageStore::recode() to cache utf8_decode and utf8_encode callbacks.
  • Add {$WikiTitle} page variable.
  • Update documentation.

Version 2.2.76 (2015-05-31)

  • Recover posted arrays (indexed or associative, not multidimensional) when a password is required (PITS:00835, PITS:01110).
  • Add label argument to checkbox and radio inputs (PITS:01367).
  • Enable PHSC() to process arrays recursively.
  • Enable processing of arrays as input values (PITS:01032).
  • Add CSS classes to standalone image div and caption (PITS:00489, PITS:00497).
  • Update documentation.

Version 2.2.75 (2015-04-26)

  • Fix uploads to respect $EnableReadOnly.
  • Escape HTML special characters when printing failed callback creation.
  • Add pmcrypt() for PHP 5.6 compatibility.
  • Add markup for HTML5 semantic tags article, section, nav, header, footer, aside, address.
  • Update documentation.

Version 2.2.74 (2015-03-28)

  • Allow translation of the "OK" string in forms (PITS:01363).
  • Update documentation.

Version 2.2.73 (2015-02-28)

  • Update documentation.

Version 2.2.72 (2015-01-27)

  • Enable markup debug messages even when debug_backtrace() is not available.
  • Add $AbortFunction.
  • Restore ability to set a custom $MarkupWordwrapFunction, add $MarkupWrapTag (related to earlier fix for PITS:01360).
  • Update documentation.

Version 2.2.71 (2014-12-29)

  • Add $DraftActionsPattern.
  • Enable "input default source" parameter to contain multiple pages.
  • Enable "pagelist request" parameter to contain a list of (dis)allowed parameters.
  • Enable Markup() backtrace for ?action=ruleset.
  • Fix strict warning for blacklisted uploads (PITS:01359).
  • Fix wrong hard wrap in (:markup:) code examples (PITS:01360).
  • Update documentation.

Version 2.2.70 (2014-11-08)

  • Update documentation.

Version 2.2.69 (2014-10-13)

Version 2.2.68 (2014-09-01)

  • Add Skins: InterMap prefix.
  • Add signature to Site.EditQuickReference (PITS:01350).
  • Allow $PostConfig entries to be launched after per-page customization, before other stdconfig.php inclusions if values<50.
  • Add WikiStyles clear, min and max width and height (PITS:00860), fix %p class=...% with more than one space.
  • Update documentation.

Version 2.2.67 (2014-08-02)

  • Fix InputDefault/PageTextVariables inconsistency (PITS:01337).
  • Update documentation.

Version 2.2.66 (2014-07-02)

  • Fix Author in Notifcations when deleting pages (PITS:01112).
  • Exclude "_" to be considered as a function name in various $*Patterns.
  • Update documentation.

Version 2.2.65 (2014-06-07)

  • Fix {$$PseudoVars} containing {*$PageVars} in PageList Templates.
  • Fix wording in scripts/.htaccess (PITS:01345).
  • Fix fixperms() if directory owner is root (PITS:01346).
  • Update documentation.

Version 2.2.64 (2014-05-08)

  • Add {(mod)} markup expression.
  • Add tel: and geo: URI schemes.
  • Add $SysMergePassthru to allow Merge() to use passthru() instead of popen().
  • Update documentation.

Version 2.2.63 (2014-04-05)

  • Allow form elements to have a dash in the attribute names.
  • Strip magic slashes for pagelist/search request vars.
  • Allow input attributes readonly, placeholder and autocomplete for HTML5 sites.
  • Update documentation.

Version 2.2.62 (2014-02-28)

  • Add $CallbackFnTemplates["return"].
  • Add 4th argument to Markup_e() - $template.
  • Add $EnableTableAutoValignTop.
  • Update documentation.

Version 2.2.61 (2014-01-31)

  • Add $TableCellAlignFmt.
  • Remove unused snippet in prefs.php (reported by Oliver Betz).
  • Remove unused calls to PSS() (reported by John Rankin).
  • Update documentation.

Version 2.2.60 (2014-01-12)

  • Revert to previous pmwiki.css file.

Version 2.2.59 (2014-01-11)

  • Fix checking multiple posted fields in blocklist.php (reported by Randy Brown).
  • Allow Markup_e() to accept a callback as well as code.
  • Fix "+" shortcut for internal anchor links.
  • Disable HTML cache if count($_GET)>1 not >2 (PITS:01278).
  • Fix query string if a "?" is encoded to uppercase "%3F".
  • Replace CSS font sizes from points (fixed) to percents (relative) for the default skin.
  • Fix nested conditionals containing $pagename (reported by Benjamin Grassineau).
  • Update documentation.

Version 2.2.58 (2013-12-25)

  • Allow $LinkUpload to be usable in (:attachlist:).
  • Enable customizations of (:input auth_form:).
  • Remove unused variable $Block in FormatTableRow(), reported by Klonk.
  • Fix $EnableBlocklistImmediate to check all posted fields for blocked terms.
  • Add $GLOBALS['MarkupToHTML'] to pass parameters such as $pagename to markup calls.
  • Update documentation.

Version 2.2.57 (2013-11-03)

Version 2.2.56 (2013-09-30)

  • Work in progress to remove the core dependency of the deprecated "eval" feature of the preg_replace() function (PITS:01319).
  • Add functions PCCF(), PPRE(), PPRA(), Markup_e(), migrating all core calls to these functions.
  • Fix detection of proper PageStore->recodefn.
  • Update documentation.

Version 2.2.55 (2013-09-16)

Version 2.2.54 (2013-08-13)

  • Fix broken page history for draft pages, reported by ChuckG.
  • Update documentation.

Version 2.2.53 (2013-07-08)

  • Show a message when the post has been blocked because of too many unapproved links.
  • Update documentation.

Version 2.2.52 (2013-06-08)

  • Add docx, pptx, xlsx upload extentions.
  • Hide E_DEPRECATED warnings for PHP 5.5.
  • Update documentation.

Version 2.2.51 (2013-05-08)

  • Update url to MoinMoin's blocklist.
  • Comment-out blacklist.chongqed.org as the domain appears to have expired.
  • Fix possible XSS vulnerability in prefs.php, discovered today.
  • Fix access keys to be a single character.
  • Fix $AuthorPage if there is a group named the same as the author (PITS:01259).
  • Update documentation.

Version 2.2.50 (2013-04-08)

  • Update documentation.

Version 2.2.49 (2013-03-09)

Version 2.2.48 (2013-02-11)

  • Fix bug introduced yesterday with some links, reported by Michael Weiner (PITS:01308).

Version 2.2.47 (2013-02-10)

  • Enable tooltip titles for links to anchors on the same page.
  • Update documentation.

Version 2.2.46 (2013-01-07)

  • Add third parameter to fixperms() explicitly setting the permissions.
  • Add $UploadPermAdd and $UploadPermSet variables.
  • Update documentation.

Version 2.2.45 (2012-12-02)

  • Cleanup some PHP notices (PITS:01304).
  • Update documentation.

Version 2.2.44 (2012-10-21)

  • Better display of whitespace in page histories.
  • Fix definition for PageTextVariables containing a dash (PITS:00978).
  • Update documentation.

Version 2.2.43 (2012-09-20)

  • Allow for HTML attribute names to contain dashes, eg. data-transition, data-role etc.
  • Remove warning when previewing Site.EditForm.
  • Update documentation.

Version 2.2.42 (2012-08-20)

  • Convert the line-endings in the docs/ directory to \r\n compatible with Windows.
  • Modify PHSC() to call htmlspecialchars() with a single-byte encoding argument.
  • Update documentation.

Version 2.2.41 (2012-08-12)

  • Change $KeepToken to "\034\034" which is compatible with more encodings.
  • Update documentation.

Version 2.2.40 (2012-07-21)

  • Add PHSC() helper function as a replacement of htmlspecialchars() for PHP 5.4 (PITS:01292).
  • Update documentation.

Version 2.2.39 (2012-06-25)

  • Fix URL encoding of attachment links.
  • Update documentation.

Version 2.2.38 (2012-05-21)

  • Fix "Wrong parameter count for utf8_decode" warning, reported by Simon.
  • Update documentation.

Version 2.2.37 (2012-05-01)

  • Add page filename encoding functions.
  • Better handling of dots in [[#anchor_1.2]] sections (PITS:01285).
  • Expand PageVariables in PageList templates defaults (PITS:01282).
  • Add test for iconv() and mb_convert_encoding(), refactor recode().
  • Update documentation.

Version 2.2.36 (2011-12-28)

  • Add $EnableOldCharset variable and $page["=oldcharset"] entry.
  • Refactor PageStore->recode() to recover Windows-1252 characters.
  • Add exit line to xlpage-iso-8859-2.php (PITS:01275).
  • Fix difference in defining and removing "invisible" PTVs.
  • Update documentation.

Version 2.2.35 (2011-11-11)

  • Fix critical PHP injection vulnerability (PITS:01271, reported by Egidio Romano).
  • Important change: Disable script loading from XLPage().
  • Move the processing of [[link|+]] inside LinkPage() and delete markup rule from stdmarkup.php.
  • Modify MakeLink() to better handle link titles.
  • Add optional $LinkTitleFunction allowing recipes to customize the link titles.
  • Fix ReadTrail() to better handle links with titles.
  • Add title attributes for the HTML templates in the $LinkPage*Fmt variables.
  • Add upload extensions svg, xcf, ogg, flac, ogv, mp4, webm, odg, epub.
  • Minor optimization for the MarkupExpressions for UTF-8 strings.
  • Minor optimization of the rendering of page history.

Version 2.2.34 (2011-10-10)

  • Add MarkupExpressions replacements for UTF-8.
  • Reset timestamps of Site(Admin).AuthUser to 1000000000, used in upgrades.php.
  • Update documentation.

Version 2.2.33 (2011-09-23)

  • Fix locked states for Site and SiteAdmin GroupAttributes (reported by Brijesh Kothari).
  • Fix intermap.txt entries PITS: and Wikipedia: to point to their current locations.
  • Fix refcount.php to produce valid HTML (PITS:01266).

Version 2.2.32 (2011-09-18)

  • Add required html xmlns attribute to the print skin template.
  • Add PageStore->recode() function.
  • Add $DefaultPageCharset array.
  • Optimize for speed the inline diff for page history when too many lines were added or deleted.
  • Update and convert to UTF-8 the documentation.

Note: Due to a manipulation error, a version 2.2.31 was created before it was ready for a release.

Version 2.2.30 (2011-08-13)

  • Fix $Charset definition in iso-8859-*.php files.
  • Add $EnableRangeMatchUTF8, set it to 1 to enable range matches in UTF-8.
  • Update documentation.

Version 2.2.29 (2011-07-24)

  • Fix Attach links that were broken with the Path fix in 2.2.28.
  • Add $IMapLocalPath array containing InterMap prefixes that should be treated as local.

Version 2.2.28 (2011-07-24)

  • Fix potential XSS vulnerability in refcount.php (PITS:01262).
  • Fix bug in Path: links (PITS:01260).
  • Fix potential XSS vulnerability in custom SitePreferences (PITS:01263).
  • Update documentation.

Version 2.2.27 (2011-06-19)

  • Add block WikiStyle %justify% (PITS:01253).
  • Remove unused <vspace> after a redirection (PITS:01255).
  • Add ?nodiff=1 parameter for page history to disable diff rendering and show only restore links.
  • Update documentation.

Version 2.2.26 (2011-05-21)

  • Fix ReadTrail(), redundant replacing of hashes, already done in MakePageName().
  • Update documentation.

Version 2.2.25 (2011-03-22)

  • Update documentation.

Version 2.2.24 (2011-02-15)

Version 2.2.23 (2011-01-25)

Version 2.2.22 (2011-01-16)

Version 2.2.21 (2010-12-14)

  • Fix potential XSS vulnerability, reported by DFaure.
  • Fix invalid HTML for simple table captions, reported by JL.
  • Fix WikiStyles could work not properly if a value was empty like accesskey="".

Version 2.2.20 (2010-12-14)

  • Fix Pagelist {$$variable} didn't work in template none (PITS:01212).
  • Fix interface access keys in browse mode (PITS:01188).
  • Add PmL10n: intermap prefix for the Localization/ group on pmwiki.org (PITS:01180).
  • Fix AuthUser excluding members didn't work (PITS:01201).
  • Update documentation.

Version 2.2.19 (2010-11-10)

  • Update documentation.

Version 2.2.18 (2010-09-04)

  • Fix $SaveAttrPatterns to skip nested conditionals (reported by RandyB).
  • Fix RecentChanges when an edit summary contains the dollar sign (PITS:01217).
  • Fix RDF feed number of elements (PITS:01198).
  • Update documentation.

Version 2.2.17 (2010-06-20)

  • Add tabindex as a valid form attribute (PITS:01190).
  • Collapse adjacent insertions in DiffRenderSource (PITS:01192).
  • Fix HandleDownload to flush() output before exit (PITS:01199).
  • Fix HandleDownload to respect $EnableIMSCaching (PITS:01191).
  • Add $PostConfig functions and scripts, loaded after stdconfig.php (PITS:01132).
  • Add $AuthUserPat variable for the regexp pattern in AuthUserId() (PITS:01202).
  • Pass $authlist as last parameter to $AuthUserFunctions (PITS:01197).
  • Fix "exists" conditional to work with old link markup.
  • Update documentation.

Version 2.2.16 (2010-05-10)

  • Allow "exists" conditional to accept wildcards (PITS:01184)
  • Fix GUI button %center% which didn't work correctly.
  • Fix incorrectly parsed quote in PQA(), possible script injection (discovered by Hanno Boeck).

Version 2.2.15 (2010-03-27)

  • Add (Auth|Edit)Form to auto-translated titles.
  • Fix (:if auth LEVEL:) to respect $HandleAuth (PITS:01164).
  • Skip loading of the second half of draft.php if $action!="edit".
  • Fix bug with (:template none:) introduced in 2.2.14, reported by Holger.
  • Fix HandleDownload() to use binary file-read.

Version 2.2.14 (2010-02-27)

  • Fix inline styles in WikiTrails (PITS:01121).
  • Add a negation parameter to pagelist first/last templates (PITS:01127).
  • Refactor FPLTemplateFormat(), move repeated code blocks into FPLExpandItemVars().
  • Add $EnableUndefinedTemplateVars allowing to hide or show undefined template/include {$$variables} (PITS:01152).
  • Add "title" attribute to external links (PITS:00657).
  • Add FmtPageTitle() to allow automatic i18n titles for RecentChanges and other technical pages (PITS:01157).
  • Update documentation.

Version 2.2.13 (2010-02-21)

  • Replace deprecated in PHP 5.3 function split() with explode().
  • Add $WordDiffFunction default to PHPDiff().
  • Use existing border colors as highlighting background.
  • Refactor/optimize DiffRenderSource(), merge with DiffRenderInline().
  • Change default history to show word-level highlighting.
  • Fix bug with $DiffKeepNum which kept less revisions than it should.
  • Fix RetrieveAuthPage() call from HandleDiff().
  • Update documentation.

Version 2.2.12 (2010-02-17)

  • Allow a custom $DiffHTMLFunction to skip the line rendering if it returns false.
  • Add $EnableDiffInline, simple word-level diffs (PITS:00571).
  • Update documentation.

Version 2.2.11 (2010-02-14)

  • Break PrintDiff() into customizable functions (PITS:01106).
  • Add anchors to individual diffs (PITS:00796).
  • Remove unused $RecipeInfo definition in markupexpr.php (reported by P.Bowers).
  • Add (:head:) and (:headnr:) table directives (PITS:00535).
  • Fix $GroupPattern and $NamePattern in xlpage-utf-8.php.
  • Update documentation.

Version 2.2.9, 2.2.10 (2010-01-17)

Version 2.2.8 (2009-12-07)

  • Fix apostrophes in Author field (PITS:01155).
  • Fix Condition "exists" for PHP 5.3 (PITS:01156).
  • Update documentation.

Version 2.2.7 (2009-11-08)

  • Fix GlobToPCRE() to work with !excl and -excl with PHP 5.3 (PITS:01149).
  • Fix HandleDownload() correctly quote the filenames (PITS:01150).
  • Fix SessionAuth() for PHP 5.3, the $_REQUEST array doesn't contain the $_COOKIE array (PITS:01141).
  • Fix default timezone for PHP 5.3 (PITS:01141).
  • Update documentation.

Version 2.2.6 (2009-10-04)

  • Escape apostrophes for multiline textarea/hidden form fields.
  • Fix global unset of $MarkupRules in Markup() and DisableMarkup(), reported by D.Faure.
  • Fix call to BuildMarkupRules() in MarkupToHTML(), suggested by Pm.
  • Allow disabling of $PageListFilters and $FPLTemplateFunctions if set to -1 and thus allow replacing a core function with a custom one.
  • Fix DRange() returned timestamps +1min or +1day when it shouldn't (PITS:01125).
  • Add $MarkupWordwrapFunction to allow custom (:markup:) line width for multibyte wikis (PITS:00703).
  • Add $MakeUploadNamePatterns to allow custom filename normalization for uploads.
  • Add a fourth argument to PostRecentChanges() to allow this function to be called with a custom $RecentChangesFmt array.
  • Add $RecentUploadsFmt, to allow logging of new uploads to the RecentChanges pages (PITS:00088).
  • Fix Notify for some installations in safe_mode (PITS:00976).
  • Add $HTMLHeaderFmt['guiedit'] variable in guiedit.php to allow customization (PITS:01146).
  • Update documentation.

Version 2.2.5 (2009-08-25)

  • Add *.7z as accepted upload extension (PITS:00813).
  • Fix global variable $HandleAttrFmt in HandleAttr (PITS:01126).
  • Allow brackets in input element names (PITS:01131).
  • Fix CSS class applied twice (PITS:01071).
  • Fix Not-Modified headers could prevent caching (PITS:00802).
  • Break FPLTemplate() into configurable sub-parts (PITS:01102).
  • Add (:template none:) section for PageList templates.
  • Fix attr-protected page could be deleted with edit permissions (PITS:00238).
  • Update documentation.

Version 2.2.4 (2009-07-16)

  • Fix bug with page attributes, which somehow didn't make it in the 2.2.3 release.
  • Fix bug with HTML entities in XLPages introduced earlier today in 2.2.3 (reverted, PITS:01114).

Version 2.2.3 (2009-07-16)

  • Fix action=logout could incorrectly set a session cookie (PITS:01062).
  • Fix page history trim in vardoc.php (PITS:01103).
  • Add $EnableUploadGroupAuth, use group password for downloads (PITS:01104).
  • Fix recursive PTV loops, added $MaxPageTextVars (PITS:00915, PITS:01099).
  • Fix mkdirp() messages for absolute paths (PITS:00396).
  • Fix sample-config.php order for urlapprove.php (PITS:01037).
  • Fix broken signature links on preview.
  • Fix crypt.php (action=crypt) could malfunction for passwords with quotes or apostrophes.
  • Fix @_site_* passwords to work in GroupAttributes (PITS:00836, PITS:00998).
  • Fix possible XSS vulnerabilities, reported by Michael Engelke.
  • Update documentation.

Version 2.2.2 (2009-06-21)

  • Fix class in pages not on the breadcrumbs trail, reported by Ed W.
  • Fix tabindex and onclick to guiedit buttons.
  • Fix $GroupPrintHeaderFmt in print.php (PITS:01073).
  • Fix global vars in xlpage-utf-8.php (PITS:00980).
  • Fix $txt in LinkPage (reported by Eemeli Aro).
  • Add $EnableNotifySubjectEncode for international wikis (Cookbook:UTF-8).
  • Fix international message in Abort().
  • Fix security bug with AuthUser, reported by Eemeli Aro. See Release notes.
  • Fix $ActionTitleFmt for login and upload, reported by Eemeli Aro.

Version 2.2.1 (2009-03-28)

  • Fix $FPLTemplateMarkupFunction which somehow didn't get in the 2.2.0 archive.
  • Fix wikitrails to work cross-group (PITS:00407).
  • Add $EnableRedirectQuiet variable (PITS:00919).
  • Fix {$Title} could display global variables (reported by HansB).
  • Fix reloaded form submissions could lose values (reported by DaveG).
  • Fix preview while restoring a version from history (PITS:01081).
  • Fix relative links with international characters (reported by G. Hermanowicz).
  • Add in sample-config.php example call to xlpage-utf-8.php (PITS:01066).
  • Update documentation.
  • Fix guiedit.php to produce valid HTML.

Version 2.2.0 (2009-01-18)

  • Convert beta series to official release series.
  • Add $FPLTemplateMarkupFunction (PITS:00984, requested by John Rankin).

Version 2.2.0-beta68 (2008-08-14)

  • Fix E_NOTICE errors reported by Dominique Faure.
  • Enable (:redirect:) directives in pagelists.

Version 2.2.0-beta67 (2008-07-13)

  • Add {$LastModifiedTime} page variable.
  • Add $EnableSessionPasswords variable to control session password usage.
  • Add $SessionEncode and $SessionDecode variables to specify functions for encoding/decoding sensitive session data.
  • Updated httpauth.php to use SessionAuth instead of poking in session guts directly.

Version 2.2.0-beta66 (2008-07-04)

  • Add content-type/charset to Abort() output (suggested by Petko).
  • Close minor XSS vulnerability (PITS:01030).
  • Add "nested if" capability.
  • Fix bug in $Transition handling that would enable all transitions if any were set (reported by John Rankin).

Version 2.2.0-beta65 (2007-11-17)

  • Fix SiteAdmin.AuthList so that it defaults to list=all (reported by Roman).
  • Fix pmwiki skin to include xmlns= attribute in <html> tag (PITS:00989, reported by Mateusz Czaplinski and Petko Yotov).

Version 2.2.0-beta64 (2007-11-13)

  • Add times to PmWiki date parsing (e.g., 2007-08-09T12:22:04).
  • Suppress warning from ini_set in diag.php (suggested by Petko).
  • Fix handling of -> links in trails (reported by Eemeli Aro).
  • Add .kml and .kmz as valid attachment types.
  • Fix handling of &amp; in markup (PITS:00988, reported by Stirling Westrup).
  • Fix duplication of language markers in $XLLangs (PITS:00987, reported by Stirling Westrup).
  • Correct typo in DRange() call in stdmarkup.php (reported by Stirling Westrup).
  • Turn on error displays when diagnostics are enabled.
  • Default PHP's pcre.backtrack_limit to at least 1000000.

Version 2.2.0-beta63 (2007-07-31)

  • Added $SkinDirectivesPattern to allow adjustments to available skin directives (requested by Petko).
  • Fix default permissions on Site.AuthUser and Site.AuthList (reported by Scott Connard).
  • Add "monospace" to pmwiki.css default (reported by Joshua Timberman, with assistance from H. Fox)
  • Fix problem with slashes in wildcards to name= and group= parameters (reported by Ian MacGregor).

Version 2.2.0-beta62 (2007-07-21)

  • Fix bug in trails introduced by beta61 (reported by charlequin).

Version 2.2.0-beta61 (2007-07-19)

  • Add ability to grab trails by section.
  • Add an "ontrail" condition (from suggestions by charlequin).

Version 2.2.0-beta59, 2.2.0-beta60 (2007-07-18)

  • Fix problem with upgrade.php on wiki farms (reported by Scott Connard).
  • Fix problem with distributed version of Site.AuthUser (reported by Jon Haupt).

Version 2.2.0-beta58 (2007-07-17)

  • Significant change: Site.AuthUser, Site.Blocklist, Site.ApprovedUrls, and Site.NotifyList now appear in the SiteAdmin group by default.
  • Abort if ldap: authentication requested and libraries aren't present.
  • Added "upgrades.php" script to handle various migration issues.
  • Current PmWiki version is now held in SiteAdmin.Status .
  • Fix ?action=postupload to follow ?action=upload settings.
  • Improvements to SiteAdmin.AuthList page (suggestions and fixes from Ian MacGregor).
  • Allow leading underscores in attachment names (requested by Christophe David).

Version 2.2.0-beta57 (2007-06-15)

  • Fix AsSpacedUTF8() to work like AsSpaced() (reported by Petko).
  • Qualify page links that contain parentheses (reported by Petko).
  • Fix bug in (:input default $:var ... :) (reported by Crisses).

Version 2.2.0-beta56 (2007-06-13)

  • Fix AsSpaced() to not add spaces before leading digit, and treat hyphenated digits as complete numbers.
  • Fix infinite recursion in self-referencing page text variables (PITS:00915).
  • Fix bug introduced in beta55 not handling end anchors correctly (reported by Roman).

Version 2.2.0-beta55 (2007-06-11)

  • Fix attributes to (:input e_form:) (PITS:00387, re-reported by Crisses).
  • UpdatePage() now calls StopWatch() to record posting.
  • Display stopwatch output as part of redirect.
  • Fix wiki styles bug when $EnableLinkPageRelative is set (reported by Petko).
  • Revise TextSection() code to hopefully avoid pcre limits (reported by Kathryn Andersen, Knut Alboldt).
  • Add wrap=inline and wrap=none options to page list.

Version 2.2.0-beta53, 2.2.0-beta54 (2007-06-02)

  • Improve error message reporting for markup rules (suggestion by Knut Alboldt).
  • Clean up more E_NOTICE warnings (reported by Ian MacGregor).
  • Add focus= option to (:input:) controls.
  • Added CSS .faqtoc class, to be able to display only the questions coming from the #includefaq page list template.
  • Changed PmWiki.FAQ to use .faqtoc class.
  • Fix bug in TextSection (PITS:00935, reported by Jean-Fabrice).
  • Fix bug in page list caching of trails.

Version 2.2.0-beta52 (2007-05-26)

  • Add per-PageStore attributes (from a suggestion by Tobias Thelen).
  • Add {$PasswdRead}, {$PasswdEdit}, etc. to display page password settings.
  • Add Site.AuthList to display all password permissions on a site.
  • Reorder $PageListFilters slightly.
  • Add "passwd=" option to page list, to return only those pages that have some sort of password attribute on them.
  • Add line numbers to StopWatchHTML output.
  • Clean up handling of $AuthCascade.

Version 2.2.0-beta51 (2007-05-23)

  • Add fmt=count to page list (reminder from Hans).
  • Ignore hidden files in skin directories when searching for .tmpl (suggestion by Stephan Becker).
  • Clean up queuing of pages to be updated in .pageindex .
  • Reset $LinkTargets() at beginning of each UpdatePage() sequence.

Version 2.2.0-beta50 (2007-05-22)

  • Fix HTML cache when drafts are enabled, or other recipes using CondAuth().
  • Prevent page lists with protected pages from HTML cache.

Version 2.2.0-beta48, 2.2.0-beta49 (2007-05-21)

  • Fix spurious value= attribute in <textarea> tag generated by (:input textarea ... :).
  • Allow either (:input default ...:) or (:input defaults ...:).
  • Fix problem with page text variable handling in (:input defaults:).
  • Allow either (:template default:) or (:template defaults:) in page list templates.
  • Fix a bug handling dates with suffixes (reported by Crisses).

Version 2.2.0-beta47 (2007-05-20)

  • Fix bug with quote handling in (:include:) options (reported by Hans).

Version 2.2.0-beta46 (2007-05-19)

  • Moved $PageTextVarPatterns definition from scripts/stdmarkup.php to pmwiki.php.
  • Ignore Markup() rules that have unresolved $when parameters.
  • Fix issue in authuser.php when $auth array isn't set (contributed by Ben Stallings).
  • The (:include:) directive now performs template argument processing on the included text.
  • Optimized (:pagelist:) slightly when sorting on page variables.
  • Refactored (:input ... :) markups.
  • Added HandleDispatch(), which allows action handlers to easily redispatch to other actions (and add messages).
  • Added FmtTemplateVars(), to perform various template-substitutions.

Version 2.2.0-beta45 (2007-05-02)

  • Update pmwiki's date parsing to use a common routine, recognizing dates within strings and restricting range to 1900-2039.
  • Add additional parameter to "date" conditional.
  • Add if= option to page list (suggested by Crisses).
  • Refactor code to use TextSection() and RetrieveAuthSection() functions.
  • The value= parameter to (:input textarea:) now works properly (including values loaded from $InputValues).
  • The (:input default:) directive now allows loading input control defaults from another page via the source= parameter.
  • Remove automatic call to FmtPageName() in $ROSPatterns. Add $ROEPatterns (from suggestions by JB and others).
  • Fix minor variable bugs in scripts/crypt.php.
  • Remove E_NOTICE errors (reported by Hans).
  • Fix handling of page variables when pagename is empty or not provided.
  • Add $EnableLinkPageRelative configuration option.
  • Clean up handling of arguments to {(ftime ...)}.
  • Remove mailposts.php call in stdconfig.php (reported by Christophe David).

Version 2.2.0-beta44 (2007-04-16)

  • Fix case conversion of U+027D and U+026B (reported by Petko).
  • Add $FTimeFmt to set default formatting for {(ftime)}.
  • Add %s conversion to {(ftime)} for systems that don't have it by default.
  • Report an error if edit form cannot be read (suggested by Hans).
  • Don't report ?cannot acquire lockfile when simply browsing pages.
  • Add $EnableReadOnly flag to signal when PmWiki is to be run in read-only mode.

Version 2.2.0-beta43 (2007-04-15)

  • Update drafts code to add $EnablePublishAttr and change button labels when drafts are enabled (PITS:00755).
  • Removed no-longer-needed 'compat1x.php' and 'mailposts.php' from distribution.
  • Added $DraftRecentChangesFmt.
  • Added "markup expressions" {(...)} into the core.
  • Added charset= attribute to saved pages.
  • Update pagelist.php and xlpage-utf-8.php to handle case-insensitive searches.
  • Added some optimizations to phpdiff.php script to produce more useful history information.

Version 2.2.0-beta42 (2007-03-27)

  • Fix a bug with order=title in pagelists (reported by Anno).

Version 2.2.0-beta41 (2007-03-26)

  • Added $EnableWSPre option, which allows easy adjustment of the "leading space -> preformatted text" (or "whitespace") rule.
  • Added a new "pre" wikistyle, to designate blocks that are to be treated as preformatted text.

Version 2.2.0-beta40 (2007-03-24)

  • Fix bug with order=title in pagelists when using $Titlespaced (PITS:00906, reported by Feral).
  • Report state of allow_url_fopen when downloads fail in blocklist.php.

Version 2.2.0-beta39 (2007-03-23)

  • Allow page variable filters to appear as options in (:template defaults:) (reported by SteP).
  • Updated Site.PageListTemplates to use (:template:) directives.
  • Remove '#wikileft h1' and '#wikileft h5' from pmwiki default stylesheet.

Version 2.2.0-beta38 (2007-03-22)

  • Strip control characters from $ChangeSummary.
  • Fix problem with count=m..n where m..n is outside the range of available pages (reported by SteP).
  • Allow (:template default ...:) to specify a class= option.
  • Redirect pagename can now include an anchor (PITS:00558)

Version 2.2.0-beta37 (2007-03-16)

  • Allow an optional space after comma separators in wildcard patterns (reported by Han Baas).

Version 2.2.0-beta36 (2007-03-16)

  • Allow nested page text variables to work, remove extraneous ENT_NOQUOTES parameter.
  • Add new (:template ...:) directives for PageList templates.
  • Modify count= option to pagelists to allow for alternate ranges.

Version 2.2.0-beta35 (2007-03-05)

Version 2.2.0-beta33, 2.2.0-beta34 (2007-03-01)

  • Refactor wildcard handling into its own GlobToPCRE function.
  • Allow negated wildcards for page variable filters in pagelists (PITS:00878, reported by Jiri)
  • Fix wildcards so that spaces no longer separate patterns (use commas).
  • Fix handling of '&' prior to (:input:) and other directives (reported by Luigi).
  • Adjust position of %define=...% wiki styles to occur after ampersands.
  • Adjust copyright dates on many files.
  • Allow spaces around text variable names in page text variable markups.

Version 2.2.0-beta32 (2007-02-28)

  • Fix erroneous $EnableCreole item in docs/sample-config.php (reported by Sigurd).
  • Added (:elseif:) and (:else:) markups (PITS:00787).
  • Fix global $Skin variable handling when using SetSkin from within markup.
  • Make sure directives aren't treated like page text variables (reported by Petko).
  • Remove call to ResolvePageName() from authuser.php .
  • Simplify LDAP authentication for Active Directory sites.
  • Cache lowercase/uppercase patterns in AsSpacedUTF8().

Version 2.2.0-beta31 (2007-02-11)

Version 2.2.0-beta29, 2.2.0-beta30 (2007-02-09)

  • MakePageName now uses the first matching entry of $PagePathFmt as the home page of groups without a home page.
  • Add AsSpacedUTF8() to handle title spacing in utf-8 (PITS:00875, contributed by Petko, Celok)
  • Fix $RequestedPage when running with utf-8.
  • Add <meta> content-type tag for utf-8.
  • Add an experimental caching system for pagelists.
  • Fix $SuffixPattern and link suffixes for utf-8 (PITS:00881, reported by ppip).

Version 2.2.0-beta28 (2007-02-03)

  • Update blocklist.php so that all posted fields are checked for block values (PITS:00850).

Version 2.2.0-beta27 (2007-01-25)

  • Fix markup processing sequence for (:input default:), (:input select:), etc. (problem noted by Marc).
  • Fix default value of order= parameter to MakePageList().

Version 2.2.0-beta26 (2007-01-23)

  • Fix a bug where pagelist list= option had no effect when reading from trails (from an rss problem noted by Russ Fink).

Version 2.2.0-beta24, 2.2.0-beta25 (2007-01-22)

  • Add a scripts/creole.php module for Creole markup (http://www.wikicreole.org/).
  • Move WikiWords out of the core defaults -- can be enabled via $EnableWikiWords.
  • Fix handling of WikiWords following & or #, as in &AElig; and #FFFF00 (reported by Moni Kellermann).
  • Adjust FormatTableRow() to support Creole-style tables (using single |'s).
  • Update docs/sample-config.php with new configurations and options.
  • Added code to allow Abort() to refer to additional information on pmwiki.org.
  • Added $EnableSkinDiag, which checks templates for required <!--HTMLHeader--> and <!--HTMLFooter--> directives.
  • Removed deprecated $BasicLayoutVars support from skins.php.

Version 2.2.0-beta22, 2.2.0-beta23 (2007-01-17)

  • Added $EnableActions, to allow pmwiki.php to be included without generating output (from a suggestion by Wouter Groeneveld).
  • Fix bug in "order=" option to (:pagelist:) (reported by Mike Bishop).
  • Change DisplayStopWatch() function to StopWatchHTML().
  • Allow multiple lines for markup:, wiki:, and page: template directives (reported by Marc)

Version 2.2.0-beta21 (2007-01-12)

  • Fix <vspace> bug in searchresults output (PITS:00846, reported by M. Czaplinski, marc, and others).
  • Fix numerous E_NOTICE warnings and incorrect constants (PITS:00853, contributed by AndrewFyfe).

Version 2.2.0-beta20 (2007-01-11)

  • $FeedPageListOpt needs to be declared global in feeds.php.
  • Add "404 Not Found" status code to ?invalid page name aborts (PITS:00854, suggested by Athan).
  • Remove stale entries from $PageExistsCache when a new PageStore is added (reported by Hans).

Version 2.2.0-beta19 (2006-12-29)

  • Have blocklist check $_POST['text'] only when it is set (from a report by Simon).

Version 2.2.0-beta18 (2006-12-28)

  • Change $pagename parameter in UpdatePage() to be passed by reference (suggestion by J. Meijer).
  • Fix $EnableRobotsCloakActions so that it works again with page variables.
  • Add "XML Sitemaps" to $RobotPattern.
  • Change $MetaRobots to return "nofollow,noindex" for non-existent pages.
  • Prefer "404 Not Found" to "403 Forbidden" for robots attempting to do invalid actions on non-existent pages.
  • Add rel='nofollow' to "create attachment" links.
  • Added class='inputbox' to select boxes (suggested by Hans).
  • Added .odt, .ods, and .odp file extensions to allowed uploads (suggested by Algis Kabaila, Robin Sheat, and others).
  • Clean up some error warnings (PITS:00801, contributed by psvo).
  • Set $ScriptUrl to 'https:' when accessed via SSL link (suggestions from C. Ridderström, H. Fox, PITS:00410, PITS:00527, PITS:00595).
  • Fix bug in link= and trail= options to (:pagelist:) (reported by C. Ridderström).

Version 2.2.0-beta17 (2006-12-13)

  • Fix spurious hidden field in (:searchbox:) output (reported by Hans).
  • Fix $CaseConversions array for \xc4\xb1 and \xc5\xbf (reported by Petko Yotov).
  • Refactor (:input:) markup handling.
  • Add (:input select ...:) markup (PITS:00567).
  • Add (:input default ...:) markup -- may change before 2.2.0 release.
  • Add ability to set defaults for radio/checkbox/select controls.

Version 2.2.0-beta16 (2006-11-10)

  • Fix problem with (:e_preview:) directive when viewing an edit form (reported by Dominique Faure).
  • Fix out-of-memory problem in scripts/compat1x.php when dealing with large pages to be converted (contributed by Donald Gordon).
  • Fix problem of Variable: lines immediately followed by newline (reported by Hans).
  • Fix uninitialized variable errors in FormatTableRow() (reported by Bob Sanders).
  • Fix second argument of MakeBaseName() (provided by Stirling Westrup).

Version 2.2.0-beta15 (2006-10-16)

  • Fix bug with displaying multi-line (:var:value:) page text variables (reported by Pico).
  • Improve PageStore ls() method slightly, to restrict pagename searches to directories of a given depth (based on an issue reported by Chris Cox).
  • Added $IsBlocked status variable to scripts/blocklist.php.
  • Added $UnapprovedLink array to report unapproved links.
  • Added $TimeISOFmt, $TimeISOZFmt, and $CurrentTimeISO variables.
  • Switched scripts/feeds.php to use $TimeISOZFmt instead of $ISOTimeFmt.
  • Added request= option to (:pagelist:), switched pagelist to default to not use url/form parameters.
  • Fixed bug with array {$$options} in pagelist.

Version 2.2.0-beta14 (2006-10-06)

Version 2.2.0-beta13 (2006-10-04)

  • Fix handling of angle brackets (and potential XSS) in pagelists combined with page text variables (noted by Pico).

Version 2.2.0-beta12 (2006-10-03)

  • Added the UpdatePage() function into the core.

Version 2.2.0-beta11 (2006-10-03)

  • Added ability to automatically create targets.
  • Added sample code to docs/sample-config.php for automatic generation of Category.* pages.
  • Fixed character escapes in pagelist {$$option} variables.

Version 2.2.0-beta10 (2006-10-02)

  • Added {$$option} variables to get option values from (:pagelist:) (based on a recipe from Martin Fick).
  • Changed {$PageCount}, {$GroupPageCount}, and {$GroupCount} to be {$$PageCount}, {$$GroupPageCount}, and {$$GroupCount}.
  • Added {$BaseName} page variable and $BaseNamePatterns.

Version 2.2.0-beta9 (2006-10-01)

  • Fix bug with $EnablePageListProtect (reported by Brent Zupp).
  • Added ability to select based on page variables in (:pagelist:).

Version 2.2.0-beta8 (2006-09-30)

  • Update scripts/blocklist.php to check only $_POST['text'] instead of entire markup text.
  • Fix bug in pagelist.php that wouldn't return correctly formatted array in certain circumstances (noted by Florian Fischer and JDem).

Version 2.2.0-beta7 (2006-09-30)

  • Added scripts/blocklist.php to core.
  • Updated handling of $PageTextVarPatterns.
  • Eliminated need for extra flush() steps in notify.php, pagelist.php.

Version 2.2.0-beta6 (2006-09-27)

  • Fix bug with initialization of $FeedPageListOpt in scripts/feeds.php (reported by Roman).
  • Fix bug with over-eager (:textvar:value:) markup (from a bug reported by Chris Cox).

Version 2.2.0-beta4, 2.2.0-beta5 (2006-09-27)

  • Fix bug with name= option in pagelist (reported by Ben Wilson).
  • Fix bug with array_merge under PHP 5 (reported by Kathryn Andersen).

Version 2.2.0-beta3 (2006-09-26)

  • Remove extra <!----> comment at end of table directives (noted by Ben Stallings).
  • Fix directive form of page text variables (reported by Kathryn Andersen).
  • Add first version of new modular pagelist code.

Version 2.2.0-beta2 (2006-09-25)

  • Add support for {$:var} page text variables, and (:var:...:) markup.
  • Fix default setting of $EnableRelativePageVars in docs/sample-config.php .

Version 2.2.0-beta1 (2006-09-25)

  • Added {*$var} page variables (always the currently browsed page).
  • Convert link and page variable handling in (:include:) to be relative to the included page.
  • Added $EnableRelativePageVars and $EnableRelativePageLinks variables, as well as transition options.
  • Added basepage= option to (:include:).
  • Updated $GroupHeaderFmt and $GroupFooterFmt to use basepage= option.
  • Adjusted $MakePageNamePatterns to automatically strip any #... or ?... from the end of a pagename input string (solution to a problem reported by J. Meijer).

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 <!--XMLHeader--> and <!--XMLFooter--> aliases to <!--HTMLHeader--> and <!--HTMLFooter--> 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 <object> and <embed> 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 <span> 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 <h1>/<h2> 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.beta

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 <pubDate> 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 <phrase>:) 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 <span class='wikiword'>...</span> 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 </div> 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 <script> tags for XHTML validation (PITS:00486, suggested by Jocke).
  • Improved author cookie handling with UTF-8 (PITS:00450, noted by Schlaefer)
  • Fixed author special character handling (PITS:00524, from Dave G)
  • Added $LogoutCookies to tell ?action=logout which cookies to expire.
  • Added $CookiePrefix a prefix for cookies set by PmWiki scripts and recipes.
  • Added $VersionNum numeric variable and ({$VersionNum} markup to make testing for specific versions easier.

Version 2.0.5 (9-Sep-2005)

  • Cleaned up code for internationalization support.
  • Added ?action=logout.
  • Deprecated $Newline for good. Sites that need $Newline set can use $NewlineXXX.

Version 2.0.4 (8-Sep-2005)

  • Eliminated E_NOTICE warning from scripts/prefs.php (reported by Pierre-Marie Carette).
  • Eliminated other E_NOTICE warnings in various other sections of code.
  • Adjusted signature patterns (sequences of ~'s) to be more restrictive.
  • Improved internationalization strings (PITS:00475, noted by Roman).
  • Added maximum length to change summaries (reported by H. Fox).
  • Added speed improvements to link= in pagelist, $EnableLinkIndex option.

Version 2.0.3 (6-Sep-2005)

  • Corrected default value settings in scripts/urlapprove.php.
  • Fixed bug in setting of $sub in authuser.php (PITS:00509, reported by Alexandre B).
  • Added change summaries into page history display.
  • Fixed search pages and skin to use $SiteGroup instead of "Site" for search pages.
  • Added additional attributes to input forms (suggested by Jo Durchholz).

Version 2.0.2 (3-Sep-2005)

  • Fixed bugs in mailposts.php (reported by M. Weiner and D. Scheibler)
  • Fixed bug in PageStore removing whitespace from end of pages (reported by K. Chan)
  • Added $EnablePageListProtect option to sample-config.php.

Version 2.0.1 (2-Sep-2005)

  • Temporarily restored setting of $Newline variable for recipes that need it.
  • Fixed WikiTrail in PmWiki.PageDirectives (submitted by H. Fox).

Version 2.0.0 (1-Sep-2005)

  • Added PCache() call for ?action=search (recommended by John Rankin).
  • Added Path: InterMap entry for relative urls in links.
  • Set Site.SideBar to default to no password required for editing (suggested by Hans and others).
  • Deleted pages are now named Group.PageName,del-1234567890.
  • Deprecated use of $Newline in PageStore, now uses urlencoded newlines.
  • Added new default skin -- old skin is at Cookbook:PmWikiV1Skin?.
  • Added default accesskey values in scripts/prefs.php.
  • Fixed problem with extra spaces appearing around cells of simple tables (PITS:00402, reported by Klonk).
  • Fixed problem with wikistyles in search strings (PITS:00495, reported by Radu).
  • Updated print skin (PITS:00490, reported by Jungle).
  • Fixed problem with url approvals being included multiple times, case sensitivity (PITS:00466 contributed by Simon).
  • Added cookbook/.htaccess (suggested by H. Fox).

Version 2.0.beta55 (25-Aug-2005)

  • Added capability to retain previous versions of uploaded files (PITS:00386).
  • Added LDAP authentication to authuser.php.
  • Updated Q: and A: markups.
  • Fixed bug with 'value=' style and numbered lists (reported by Crisses).
  • Allow dots and parens in wikistyles.
  • Fixed bug in link= parameter for pagelist markup (reported by W. Mueller).
  • Changed handling of blank lines in wiki markup.
  • Changed display characters of page history (suggestions from H. Fox).
  • Adjusted handling of [@...@] markup.
  • Fixed table cells to default to valign='top'.
  • Fixed >><< to generate (:divend:).
  • Adjusted (:markup:) display.
  • Added %cframe% wikistyle.
  • Changed (:include:) markup to allow selection from multiple pages.
  • Removed space that is generated as part of \\ joins.

Version 2.0.beta54 (1-Aug-2005)

  • Fixed bug with handling of & in title, description, and keywords directives (reported by Anno).
  • beta53 was released without several commits; these are now committed.

Version 2.0.beta53 (30-Jul-2005)

  • Added ?action=search, and adjusted search routines to use the new action.

Version 2.0.beta52 (29-Jul-2005)

  • Fixed problem with multiple (:nl:) directives in sequence (reported by C. Ridderström).
  • Fixed problem with (:markup:) appearing at beginning of page.
  • Fixed problem with escaped-quotes in change summary (reported by J. Durchholz).
  • Adjusted displayed image syntax
  • Added float, frame, rfloat, lfloat, rframe, lframe, thumb wikistyles.
  • Converted (:markup:) to use tables instead of divs.
  • Fixed bug with center-aligned images.
  • Added Content-Style-Type tag to pmwiki.tmpl (suggested by V. Krishn).
  • Added title= attribute to image tags.

Version 2.0.beta51 (22-Jul-2005)

  • Adjusted posting algorithm, added $EnablePost.
  • Added default parameter to HandleDiff (noticed by Robert Riebisch).
  • Adjusted Site.EditForm to use a \\ break instead of [[<<]].

Version 2.0.beta50 (20-Jul-2005)

  • Added major improvements to authorization code, including PITS:00249. [is this the right link? "Summary: Classic skin missing in pmwiki 2.0", I think the right is PITS:00248 - CG]
  • Support for cascading authorization levels.
  • $HandleAuth array allows setting of authorization requirements on a per-action basis.

Version 2.0.beta49 (18-Jul-2005)

  • Remove Keep() around trailing \\ markup results (based on a bug noticed by W. Mueller).
  • Added Content-Disposition: and $DownloadDisposition to indirect downloads.

Version 2.0.beta48 (13-Jul-2005)

  • Adjusted display of change summary in recent changes
  • Corrected width of edit form

Version 2.0.beta47 (12-Jul-2005)

  • Fixed incorrect manipulation of GUIEdit/$EditTemplateFmt (reported by Ian Barton).
  • Fixed magic quoting on $ChangeSummary (reported by Balu).
  • Added $ChangeSummary to recent changes files.

Version 2.0.beta46 (11-Jul-2005)

  • Fixed lossage in change summary and minor edit checkbox (reported by Balu).

Version 2.0.beta45 (10-Jul-2005)

  • Adjusted "show changes to markup" display to avoid long non-wrapping lines
  • Fixed wrap problem in guiedit button bar (reported by Des and L. Hausman).

Version 2.0.beta44 (10-Jul-2005)

  • Added session_start() to ?action=diag (suggested by Joachim Durchholz).
  • Added $[phrase], (:noleft:), (:noright:) markups.
  • The $PageName substitution is no longer available in FmtPageName().
  • Added wikistyle for links.
  • Changed $ImgTagFmt, added border=0 style to all images in a page.
  • Added transition.php script to assist with upgrading from previous releases.
  • Added capability to create input forms.
  • Added markup-based edit page form (PITS:00308).
  • Added change summary capability (from cookbook script).
  • Added "save and continue edit" and "cancel" options to edit forms (PITS:00290 and PITS:00261).
  • Changed $EditMessageFmt to $MessagesFmt array, added (:messages:) markup.
  • Modified GUI buttons to support accesskeys, added (:e_guibuttons:) markup.
  • Added $SiteGroup variable.
  • Moved Main.AllRecentChanges to Site.AllRecentChanges .
  • Moved Main.SearchWiki to Site.Search.
  • Moved Main.ApprovedUrls to Site.ApprovedUrls.
  • Moved Main.PageNotFound to Site.PageNotFound.
  • Set robots noindex,nofollow for pages in Site group.
  • Moved PmWiki.EditQuickReference and PmWiki.UploadQuickReference to Site group.
  • Deprecated PmWiki.WikiHelp.
  • Deprecated $PagePreviewFmt variable.
  • Removed $PageNameFmt substitution.
  • Added initial capability for user/browser preferences in scripts/prefs.php.

Version 2.0.beta43 (8-Jul-2005)

  • This version adds the long awaited (:div:) markups.
  • Added %id=...% wikistyle.

Version 2.0.beta42 (7-Jul-2005)

  • Added (:if attachments:) markup (suggested by Leigh Hausman and others).

Version 2.0.beta41 (7-Jul-2005)

  • Added %value% wikistyle to set item value for ordered lists (PITS:00457, requested by Richard Rothwell)
  • Adjusted the output of (:attachlist:) to include thousands separators in file sizes.
  • Fixed bug with '.' in $UploadDir (PITS:00439, contributed by Zoyo).
  • Changed Keep() parameter name to $pool, handles nested Keeps() (suggested by Joachim Durchholz, Christian Ridderström, and others).

Version 2.0.beta40 (22-Jun-2005)

  • Added Apache-compatible MD5 passwords and SHA encryption to authuser.php (contributed by D. Faure).

Version 2.0.beta39 (20-Jun-2005)

  • Adjusted handling of trailing spaces for simple table rows.
  • Fixed problem with '%' in simple tables (PITS:00437, PITS:00452, reported by Maxim, Hans, and others).
  • Fixed problem with wikistyles spanning simple table cells (PITS:00172).
  • Fixed problem with searches returning errors for open directories (PITS:00455, reported by Henning and Daniel Friedmann).
  • Added definition lists to wiki trails.
  • Removed unnecessary call to LoadTemplate from print template (reported by Winfried Mueller).
  • Added scripts/authuser.php -- documentation forthcoming.

Version 2.0.beta38 (14-Jun-2005)

  • Fixed ListPages() so that it would generate correct page lists when per-group subdirectories are used to store pages (reported by David Sovinski).

Version 2.0.beta37 (26-May-2005)

  • Changed the location in which $SearchIncl, $SearchExcl, and $SearchGroup are set (requested by John Rankin).
  • Fixed bug in setting of $SearchExcl (reported by H. Fox and others).
  • Added filesize check after new page is saved but before replacing existing one (suggested by Radu).
  • Added $LinkUrl and $LinkAlt to urlapprove.php (contributed by Balu).

Version 2.0.beta36 (30-Apr-2005)

  • Fixed bug in search term exclusion (caught/fixed by Nate Cull).
  • Eliminated trailing spaces problem in simple tables (caught by F. Johnson)

Version 2.0.beta35 (24-Apr-2005)

  • Fixed bugs in (:pagelist:) (caught by John Coxon).
  • Adjusted end of sample-config.php, copyright notices.

Version 2.0.beta34 (23-Apr-2005)

  • Fixed group search bug (noted by Hans).
  • Query string of last search now appears in searchbox.
  • Removed ?> tags from ends of scripts to help VMS installations.

Version 2.0.beta33 (22-Apr-2005)

  • Fixed performance bug in FmtPageName and LinkPage.
  • Redesigned scripts/pagelist to add new directives and features (major change -- see ReleaseNotes).

Version 2.0.beta32 (17-Apr-2005)

  • Added $RCLinesMax, which can be used to limit the total number of lines in RecentChanges files.

Version 2.0.beta31 (15-Apr-2005)

Version 2.0.beta30 (14-Apr-2005)

  • Fixed issues with PHP sessions causing deadlock situations.
  • Improved PmWiki's locking algorithms.
  • Added $PageTextStartFmt and $PageTextEndFmt (requested by John Rankin)
  • Fixed wiki link function so that wikiwords aren't automatically spaced if $LinkWikiWords = 0.

Version 2.0.beta29 (11-Apr-2005)

  • Fixed bizarre bug with font scaling on European locales (PITS:00357, reported by Christian Schneider).
  • Fixed <pre>...</pre> bug with preformatted text (Cookbook:NoSpacePre, noted by Tom Holroyd).
  • Improved page storage and reading algorithm for greater efficiency.
  • Changed various actions to avoid reading page history if not needed.
  • Changed PageStore class to optimize generation of filenames for standard installations (from a suggestion by Martin Fick).
  • Added preliminary code for
    • user-based authorization (PITS:00010)
    • form-based authorization (PITS:00026, PITS:00264)
    • better display of password settings in attributes form (PITS:00301)
    • webserver authentication
    • .htpasswd authentication
    • LDAP/Active Directory Server authentication
  • Added conditional markups for authorization privileges and login status

Version 2.0.beta28 (27-Mar-2005)

  • Added ability to link to other pages' attachments.
  • Added ext= option to (:attachlist:) to limit output to selected extensions (PITS:00389, requested by corqspy).
  • Added option to (:attachlist:) to request listing of attachments for a page other than the current one.
  • Fixed incompatibility problem between PmWiki.UploadQuickReference and markup extensions recipe (PITS:00377, reported by gaoj).
  • Changed attachments code to force extensions to lowercase (PITS:00315, suggestions from Hagan Fox, Didier Lebrun, Henning, and PRZ).
  • Added comment to pmwiki.php regarding comments in pmwiki.php.

Version 2.0.beta27 (26-Mar-2005)

  • Made directives case-insensitive (requested by John Coxon).
  • Fixed bug in VarIndexLoad() (noticed by Dominique Faure).
  • Added (:markup:) with [@...@] arguments (requested by Neil Herber).
  • Added (:markupend:) syntax.
  • Fixed bug in $MetaRobots (PITS:00393, noticed by Didier Lebrun).
  • Added missing ?> to various script files (PITS:00403, reported by Schlaefer).
  • Allow localmap.txt files to contain variable substitutions (requested by C. Ridderström).
  • Fixed bug in Markup() with rule dependencies.
  • Added missing {$FullName} markup.
  • Fixed bug with preformatted markup eating leading spaces (repeatedly reported by C. Ridderström).

Version 2.0.beta26 (5-Mar-2005)

  • Added edit page templates (PITS:00113, requested by many administrators).
  • Fixed bug with search box code in pmwiki template (noticed by mistyfire).

Version 2.0.beta25 (2-Mar-2005)

  • Heading markups now consume an optional space following the markup chars (suggested by H. Fox).
  • Added option to ParseArgs() to allow capture of arguments in the order specified (suggested by C. Ridderström).

Version 2.0.beta24 (1-Mar-2005)

  • Fixed loss of version number in wiki field (PITS:00217, found by Hugo Alrøe).
  • Fixed bug with handling of '?'s encoded as %3f in incoming urls.
  • Fixed mis-handling of "PageNotFound" requests.
  • Added $EnablePostAttrClearSession switch to control remembering of session's passwords when posting attributes (requested by Dirk Blaas).
  • List markups now consume optional space following markup char.
  • Added ParseArgs() function for uniform handling of directive argument processing.
  • Switched pagelist.php to use ParseArgs().

Version 2.0.beta23 (24-Feb-2005)

  • Fixed post attributes to clear "remembered" passwords so that password enabling and testing is more visible.
  • Added $EnablePageListProtect -- when set to a true value it causes read-protected pages to not appear in page listings and search results unless the browser has already been authorized to read them (based on suggestions from Nils Knappmeier, Neil Herber, and PITS:00344).

Version 2.0.beta22 (23-Feb-2005)

  • Fixed authorization form so that cursor is automatically placed in password box (contributed by Hans).
  • Fixed bug with non-ASCII character sets in ?action=source (PITS:00336, noted by Hans B.).
  • Updated scripts/guiedit.php to allow buttons with arbitrary HTML actions.
  • Fixed permissions on .lastmod (PITS:00339, reported by Mark S. and others).
  • Fixed bug in PCache where variables weren't set correctly for RecentChanges pages.
  • Made substantial changes to skins.php to ease control of page template sections.

Version 2.0.beta21 (13-Feb-2005)

  • Changed width of edit box in pmwiki skin to be 98% for IE (suggested by Hans).
  • Fixed bug in scripts/pgcust.php with checking wrong flag for loading local/default.php (PITS:00305, discovered by Joe Miller).
  • Fixed bug with empty table heading (<th>) cells not generating &nbsp; (noticed by V. Krishn).
  • Fixed bug with table attributes line generating empty <p></p> paragraphs (also noticed by V. Krishn).
  • Fixed bug with settings of $AuthorPage and $AuthorLink (noticed by M. Weiner and John Rankin PITS:00247).
  • Fixed a very minor bug in the PageStore->ls() method.
  • Added conversion of [[page:]] and [[linebreaks]] v1 markups from cookbook recipes (suggested by C. Ridderström and P. Ogay).
  • Fixed rss.php to display $Title instead of just a page's name (suggested by G.J. De Bruin).
  • Changed PmWiki's default umask to 002.
  • Added the DisableMarkup() function (suggested by C. Ridderström).

Version 2.0.beta20 (30-Jan-2005)

  • Added ability to place comments in localmap.txt files (requested by C. Ridderström).
  • Removed extra spacing before "Upload" button in upload form (suggested by H. Fox).
  • Changed $UrlLinkFmt to have rel='nofollow' attribute in external links.
  • Added <div id='wikidiff'> around page history output.
  • Fixed global variable oddity in setting of $Skin in scripts/skins.php (discovered by N. Herber).
  • Added ability to place wiki styles in heading markups.

Version 2.0.beta19 (17-Jan-2005)

  • This version works around a problem with losing edits when a PHP session expires, or when browsers have cookies disabled (reported by C. Freeze).

Version 2.0.beta18 (17-Jan-2005)

  • Fixed bug with incorrect call to setlocale() in pmwiki.php (noticed by Ciaran).
  • Fixed bug with search results and other block markups being wrapped in <p>...</p> tags (PITS:00074, reported by John Rankin).
  • WikiTrails now allows alternate text in the trail page reference (PITS:00271, requested by Oneida Kincaid).
  • Added "styles" index to default $HTMLHeaderFmt, to allow disabling of inlined styles.
  • Added $GUIButtonDirUrlFmt variable to guiedit to make it easy to provide alternate guibutton sets.
  • Added more guibuttons.
  • Moved "Attach:" guibutton code into upload.php.
  • Fixed bug with $LastModified timestamp in page history (noted by Neil Herber and others).
  • Modified guiedit code so that the sample text is highlighted after hitting a button (makes it easy to locate and overwrite existing sample text).

Version 2.0.beta17 (12-Jan-2005)

  • Fixed bug in advanced tables not closing properly.
  • Fixed wikistyles so that color changes extend to anchor tags (PITS:00282).
  • Fixed a bug in handling arrayed default passwords.
  • Added $Titlespaced conversion to compat1x.php.

Version 2.0.beta16 (11-Jan-2005)

  • Fixed missing guiedit.js file in distribution.

Version 2.0.beta15 (10-Jan-2005)

  • Fixed problem with {$Title} markup (PITS:00177, thanks to Neil Herber).
  • Added $Titlespaced and {$Titlespaced} (requested by H. Fox).
  • Fixed another bug in vardoc.php that was preventing some restore links from working.
  • Fixed bug in compat1x.php that was incorrectly converting reference-style links (noticed by Christian Ridderström).
  • Re-adjusted wikistyles again to allow styles to appear in link text.
  • Cleaned up rss encodings of named character entities (PITS:00129 and PITS:00239, reported by Bronwyn, Graham L., and others).
  • Fixed problem with block styling containing only links (PITS:00258, reported by Hans Bracker).

Version 2.0.beta14 (28-Dec-2004)

  • Removed border= attribute from <img ...> tags, now uses style='border:0px;' instead. (PITS:00169, reported by Balu).
  • Removed extraneous $Fragment from print skin (PITS:00241, reported by BrBrBr).
  • Fixed ?action=crypt posting (reported by Hans Bracker)
  • Added id='text' to $PageEditFmt.
  • Cleaned up 'posteval' code for MarkupToHTML() function.
  • Optimized a number of patterns for (hopefully) faster pattern matching.
  • Fixed urls to better encode non-ASCII characters.
  • Converted substr() comparisons to more efficient expressions.
  • Added a cache to PageExists() function.
  • Cleaned up PrintFmt() function for better processing.
  • Added Lock(0) to PrintFmt to release locks prior to sending data to browser.
  • Fixed bug with empty StopWatch() function (reported by K. Alboldt).
  • Changed ?action=diff to require 'read' permissions (Note: this will change to be admin configurable in another release).

Version 2.0.beta13 (22-Dec-2004)

  • Fixed a bug introduced in 2.0.beta7 that causes ?action=refcount to produce incorrect links (thanks to Leo for reporting this).

Version 2.0.beta12 (21-Dec-2004)

  • Added <div id='wikipreview'>, <div id='wikiupload'>, <div id='wikiattr'>, and <div class='wikisearch'> to appropriate forms and documents (suggested by Dominique Faure).
  • Added the (:description:) markup for setting <meta name='description' ...> (PITS:00016).
  • Added $UnapprovedLinkCountMax to limit the number of unapproved external links that can appear in a post.

Version 2.0.beta11 (19-Dec-2004)

  • Fixed bug with trailing punctuation in uris (PITS:00134, thanks to chr).
  • Added note to sample-config.php about admin passwords (suggested by Hans Bracker)
  • Cleaned up StopWatch function, added $EnableStopWatch to control functionality.
  • Fixed message where upload exceeds PHP maximum.
  • Modified upload.php so that the "Upload name" field is blank after performing an upload.
  • Changed upload functionality to use $LinkUpload instead of $LinkUrl (note, this affects $LinkUploadCreateFmt)

Version 2.0.beta10 (14-Dec-2004)

  • Improved mkdirp() function to give more appropriate diagnostics with respect to PHP's safe_mode setting.
  • Improved handling/permissions/recovery of wiki.d/.flock file.

Version 2.0.beta9 (14-Dec-2004)

  • Fixed bug in [[target |#]] markup.
  • Fixed bug in vardoc with substitution of old $FmtV into $LinkText.
  • Fixed bug(?) in uploads.php not submitting urls to correct address.

Version 2.0.beta8 (13-Dec-2004)

  • Changed ?pagename= to ?n= for urls.
  • Changed PmWiki to default to not using PATH_INFO-style urls.
  • Fixed bug where ?action=diff would disable external links and images in sidebar (PITS:00227, thanks to BrBrBr).
  • Changed (⇑) in uploads.php to (Δ) (PITS:00127, thanks to jr and Schlaefer).
  • Fixed Q: and A: markups (PITS:00067).
  • Added $TableRowAttr and $TableCellAttr, along with $TableRowCount, $TableRowIndex, and $TableCellCount for stylized tables (suggested by Ciaran).
  • Fixed incorrect PmWiki: location in intermap.txt.
  • Fixed likely hyphen bug in author.php that was removing spaces.

Version 2.0.beta7 (8-Dec-2004)

  • Added PUE() function to handle specialized url encoding.
  • Added code to work around $Newline in posted text.
  • Fixed spelling of 'gray' in css (thanks to S. Andreozzi).
  • Fixed .htaccess files in local/ and wiki.d/.
  • Fixed bug in sample-config.php (PITS:00216, thanks to noe).
  • Fixed < and > bugs in q= parameter to search.
  • Fixed default width of edit textarea (PITS:00052).
  • Restored link citation/reference markup [[target|#]] (PITS:00049).
  • Restored (:keywords:) markup (PITS:00089).
  • Fixed internationalization of $DefaultPageTextFmt.
  • Updated/added xlpage-utf-8.php for UTF-8 support (PITS:00168).

Version 2.0.beta6 (5-Dec-2004)

  • Fixed internationalization of PmWiki.EditQuickReference (PITS:00159, thanks to PRZ and noe).
  • Fixed bug in FmtPageName() that was incorrectly converting all slashes to dots (PITS:00201, thanks to C. Bonamigo).
  • Restored $DiffChangeSum variable in pagerev.php (PITS:00200).
  • Fixed farmmap.txt (PITS:00207, thanks to Keith Campbell).
  • Changed $MaxIncludes default value to 50.
  • Restored $WikiWordCountMax and $WikiWordCount functionality (PITS:00007).
  • Updated sample-config.php.
  • Fixed some skin README files.

Version 2.0.beta5 (1-Dec-2004)

Version 2.0.beta4 (1-Dec-2004)

  • Added conversion to scripts/compat1x.php for PmWikiDraw -- [[Drawing:SomePage]] is converted to (:drawing SomePage:).
  • Fixed bug in use of $_REQUEST/$_POST in several scripts.
  • Fixed code handling extra '?var=value' parameters to set values in $_REQUEST as well as $_GET (PITS:00165).
  • Fixed missing slash in (:attachlist:) links (PITS:00192, thanks to Brent Zupp for reporting this).

Version 2.0.beta3 (30-Nov-2004)

  • Changed references to $_REQUEST to be $_POST for edit sequence.
  • Suppressed external links in page history output.
  • Added .GIF, .JPG, .PNG to valid image extensions (PITS:00168, thanks to noe).
  • Fixed locking of Main.GroupAttributes and PmWiki.GroupAttributes (PITS:00183, thanks to Balu).
  • Fixed PmWiki.EditQuickReference to work in IE again (PITS:00164, thanks to PRZ).
  • Fixed documentation in PmWiki.SimpleTables2 (PITS:00186, thanks to PRZ).
  • Added an (:attachlist:) markup (PITS:00001).

Version 2.0.beta2 (28-Nov-2004)

  • Fixed bug with LoadPageTemplate in skins.php.

Version 2.0.beta1 (26-Nov-2004)

  • Fixed index used for setting robots <meta> tag.
  • Fixed intermap.txt links to point to new pmwiki 2.0 location.
  • Changed default for urlapprove.php to be ?action=approvesites.
  • Added more documentation pages.

Version 2.0.devel27 (25-Nov-2004)

  • Fixed bug with setting of $Needle (PITS:00154, thanks to KAL).
  • Fixed bug with "Group/" not working in searches (PITS:00131, thanks to PRZ for finding the bug and John Rankin for suggesting the fix).
  • Fixed missing <tr> in stopwatch output.
  • Fixed rss to use <dc:date> instead of <pubDate> (for compatibility with Firefox Live Bookmarks).
  • Added <dc:contributor> element to rss 2.0 output (PITS:00157, suggested by Steffen Glückselig).
  • Added $EnableUrlApprovalRequired to scripts/urlapprove.php.
  • Fixed permissions problem on uploaded files for setuid environments (reported by Steven Leite).
  • Fixed permissions problems for RSS feeds (noted by Enrique Pardo and others).
  • Changed skins code (hopefully for the last time!)
  • Fixed print skin to use new skin format.
  • Changed default error reporting to suppress E_NOTICE messages.

Version 2.0.devel26 (11-Nov-2004)

  • Fixed leading spaces bug in [[ target | text ]] links (PITS:00149, thanks to Klonk).
  • Fixed bug with leading items missing from trail path (PITS:00143, thanks to John Rankin).
  • Fixed $CurrentTime bug (PITS:00115, thanks to Philip Jägenstedt).
  • Added scripts/rss.php, updated for PmWiki 2.0 (PITS:00128).
  • Updated scripts/compat1x.php for performing migrations, as well as updated the UpgradingFromPmWiki1 documentation to match (PITS:00151).

Version 2.0.devel25 (9-Nov-2004)

  • Fixed bug in compat1x.php script not converting [[{{free link}}#anchor text]] correctly (PITS:00148, thanks to Klonk and kt007).

Version 2.0.devel24 (9-Nov-2004)

  • Added password protection of ApprovedUrls page in urlapprove.php script (PITS:00004).
  • Added "upload" attribute and default locked upload password (reported by S. Leite).
  • Fixed name of {$fmt} and {$var} markup rules.

Version 2.0.devel23 (8-Nov-2004)

  • Fixed bug in fmt=grouplist (thanks to John Feezell).
  • Added "redirect" parameter for Redirect (suggested by Ciaran).
  • Added GroupAttributes to list of excluded pages in list=normal (PITS:00133, suggested by Val).

Version 2.0.devel22 (4-Nov-2004)

  • Fixed bug in [[text -> target]] when target is empty (thanks to S. Leite).
  • Fixed missing "file:" directive in PrintFmt (thanks to Scott Duff).

Version 2.0.devel21 (2-Nov-2004)

  • Fixed bug in (:nl:) handling (thanks to Balu).
  • Fixed 'text' E_NOTICE warning (thanks to chr).
  • Fixed missing group/ if $LinkWikiWords set off (thanks to Steven Leite).

Version 2.0.devel20 (29-Oct-2004)

  • Added %align=left% and %align=right% WikiStyles for images (PITS:00009).
  • Added category [[!Category]] markup (proposed by jr). This is still experimental, and may be changed/removed for 2.0.
  • Fixed handling of $PageSkinFmt and $PrintSkinFmt.

Version 2.0.devel19 (27-Oct-2004)

  • Fixed bug in FmtPageName with substituting null strings if an invalid $pagename is encountered (related to PITS:00117, thanks to jr).

Version 2.0.devel18 (27-Oct-2004)

  • Fixed handling of (:searchresults:) directive with parameters (thanks to Knut Alboldt for finding this).

Version 2.0.devel17 (26-Oct-2004)

  • Restored file: links (PITS:00112, thanks to Chris Untold)
  • Added scripts/refcount.php.
  • Fixed bug with <pre> formatted text not in a single block (thanks to Steffen Bauch)

Version 2.0.devel16 (22-Oct-2004)

  • Fixed numerous bugs in PrintAttrForm (thanks to S. Sherebrin).
  • Fixed bug in calling getrusage() for Windows (PITS:00094, thanks to Adam Bull)
  • Fixed bug with WikiTrails and spacewikiwords (PITS:00103, thanks to jr)
  • Modified per-page and per-group customizations so that per-group customizations are loaded even if a per-page customization exists -- see scripts/pgcust.php.
  • Changed $EnablePerGroupCust to $EnablePGCust.
  • Modified `WikiWord markup to protect `Group.WikiWord.
  • Added code to go ahead and look for config.php in the current directory if local/config.php doesn't exist.
  • Added $EnableLocalConfig to allow farm administrators to control automatic local configuration.
  • Fixed LinkIMap to properly url-encode non-ASCII characters (needed for IE, related to PITS:00053).
  • Fixed problems with non-ASCII characters in attachment names (PITS:00053, thanks to Henning and Zverik).
  • PmWiki now sets locale to en_US if default is UTF-8 or C.
  • Added $PageSkinFmt and $PrintSkinFmt to simplify layout template specs, which also reorganizes the files in the pub/skins directory.

Version 2.0.devel15 (21-Oct-2004)

  • Fixed bugs in (:if:) markup.
  • Added 'true', 'group', and 'name' conditions to ConditionalMarkup.
  • Fixed bug with nested lists appearing inside of non-nesting blocks (PITS:00101, thanks to Mystique for finding this bug).
  • Fixed date-formatting bug in Last-Modified header (PITS:00099, thanks to PRZ).
  • Fixed bug with $DiffClassMinor in edit (PITS:00095).
  • Improved phpdiff algorithm to ignore blank lines as target of shortest-distance search (PITS:00096, thanks to Elias Soong for analysis and suggestion).
  • Added "clear:both;" to default print template (PITS:00079, suggested by SV).

Version 2.0.devel14 (20-Oct-2004)

  • Fixed problem with html entities being translated in included text (PITS:00100, thanks to Knut Alboldt)
  • Added capability to use a WikiTrail as the scope of a search.
  • Fixed bug with $SearchPatterns (PITS:00066, thanks to PRZ).
  • Added list= parameter to searchresults, pagelist, etc. to filter list output (requested by P. Krait and others).
  • Converted [:directive:] to (:directive:)
  • Changed $PageName to $FullName. $PageName still but is deprecated and will be removed in the 2.0 release.
  • Added $Action and $ActionTitleFmt to create better <title>s. (PITS:00093, thanks to jr).
  • Deprecated $HTMLTitleFmt, updated layout templates.

Version 2.0.devel13 (11-Oct-2004)

  • Added code to remove trailing slashes from pagename in urls (suggested by Steven Leite).
  • Made change to set the default locale using PmWiki 1's algorithm.
  • Modified httpauth to keep track of multiple passwords via sessions (if possible).
  • Added wikiword spacing and title control via WikiLink function.
  • Added $AsSpacedFunction and AsSpaced.
  • Fixed trails.php to use MakePageName instead of MakeLink to build pagenames.
  • Added SaveAttributes, which extracts a page's title and link targets into separate page attributes.
  • Fixed search function to also search for matching targets.
  • Added $LinkWikiWords to control WikiWord linking.
  • Changed $PageTitle to $Title.
  • Added PCache to provide quick access to subsets of page attributes; this eliminates the SetPage function.

Version 2.0.devel12 (10-Oct-2004)

  • Fixed [:nofooter:] (PITS:00080, thanks to PRZ).
  • Fixed incorrect array cast (PITS:00073, thanks to noe).
  • Fixed handling of WikiWords with query fragments (PITS:00069, thanks to jr)
  • Fixed bug with empty double-brackets links (PITS:00083, thanks to PRZ).
  • Fixed bug with link text in WikiTrails (PITS:00085, thanks to PRZ).

Version 2.0.devel11 (3-Oct-2004)

  • Added ' big ', '-small-', '^super^', '_sub_', { ins }, {-del-} and `WikiWord (with credit to John Rankin).
  • Added --<hanging indent text (suggested by John Rankin).
  • Added $DefaultPasswords.
  • Switched pmwiki to default to session-based passwords.
  • Added scripts/httpauth.php for administrators who wish to use HTTP Basic authentication.

Version 2.0.devel10 (1-Oct-2004)

  • Fixed $GroupPattern bug in trails.php (PITS:00057, thanks to John Rankin).
  • Added comments about markups supported by || in stdmarkup.php (PITS:00056, thanks to John Rankin).
  • Added $HTMLPNewline to specify what to output for newlines in the middle of paragraph text (PITS:00063).
  • Fixed ~~~ markup to properly display in page previews (PITS:00059, thanks to Larry Baltz and others).
  • Added $LinkPageSelfFmt to specify how self-referencing page links should be formatted (kudos to John Rankin).
  • Added a PHP-based diff engine, set it as the default for edits (with great thanks to Nils Knappmeier).
  • Cleaned up the page history output slightly.

Version 2.0.devel9 (30-Sep-2004)

  • Modified FmtPageName() so that dynamic substitutions are customizable.
  • Added StopWatch features.
  • Changed $KeepToken so that it wouldn't be treated as part of a WikiWord (at least not in latin-1 charsets).
  • Cleaned up ReadPage.
  • Added "advanced tables" markup ([:table:]). May still need some testing.
  • Added scripts/compat1x.php to assist with converting 1.x sites to 2.0.

Version 2.0.devel8 (22-Sep-2004)

  • Added browser caching via If-Modified-Since HTTP headers. This can be enabled via $EnableIMSCaching=1; in config.php.

Version 2.0.devel7 (21-Sep-2004)

  • Modified MakeLink() function to strip <html> tags when creating a target link. This may allow inline markups to be processed before links.
  • Fixed url pattern used for mailto: links.
  • Moved inline markups to occur before link processing. This should enable many inline markups within link text. It may also cause some problems, so this change is a bit tentative.

Version 2.0.devel6 (20-Sep-2004)

  • Fixed ||!table caption!|| (PITS:00040, thanks to John Rankin)
  • Added $UrlLinkFmt, $IMapLinkFmt (PITS:00050, thanks to John Rankin)
  • Removed extraneous spaces from link texts (PITS:00047, thanks to Bronwyn)
  • Fixed author tracking (PITS:00048, thanks to Larry Baltz)
  • Added "markup:" parameter for PrintFmt (addresses PITS:00051)
  • Added <!--markup:...--> template option.

Version 2.0.devel5 (13-Sep-2004)

  • Fixed wikistyle nesting problem (PITS:00032, thanks to Balu for catching this)
  • Moved body { margin-left:20px; } into pmwiki.css (PITS:00034, thanks to Balu)
  • Changed calls to ucwords() to use preg_replace() since ucwords doesn't work properly in some languages (PITS:00031, thanks to Zverik)
  • Fixed problems with partial urls (PITS:00013)
  • Fixed upload.php to use SDVA on $UploadExts (thanks to Larry Baltz)
  • Fixed problem with WikiStyles crossing header tags (PITS:00032, thanks to Balu)

Version 2.0.devel4 (6-Sep-2004)

  • Fixed call-time-pass-by-reference in simuledit.php (thanks to CB).
  • Added ?action=crypt.
  • Added ?action=print.
  • Added XLPage() functions and fixed problems with i18n (PITS:00011)
  • Fixed bug in trails.php code (PITS:00017)
  • Documented custom markup functions (PITS:00003)
  • Improved ?action=ruleset slightly
  • Added [[<<]] markup (thanks to JF)

Version 2.0.devel3 (27-Aug-2004)

  • Fixed missing mode parameter in mkdir (thanks to javajunky on irc).

Version 2.0.devel2 (27-Aug-2004)

  • Added $EnablePathInfo support.
  • Fixed problem with QUERY_STRING handling of '?'.

Version 2.0.devel1 (26-Aug-2004)

  • Initial release. For experimental and development use only.


This page may have a more recent version on pmwiki.org: PmWiki:ChangeLogArchive, and a talk page: PmWiki:ChangeLogArchive-Talk?.