See the cookbook recent changes page for additional updates and activity by other developers, or join the PmWiki mailing lists to discuss feature development with us.

Version 2.3.17 (2022-12-17)

  • WikiStyles trim class names (PITS:01485).
  • GUIEditButtons refactor to enable Undo in textarea; allow for custom functions to configure mopen, mclose, and unselect for their buttons.
  • EditHelp refactor to allow undo; add shortcuts Ctrl+L convert selection to lowercase, Ctrl+Shift+L to uppercase, Ctrl+Shift+ArrowUp and ArrowDown to swap lines.
  • Skip upgrade check if $EnableReadOnly.
  • Fix bug with multiple $MarkupDirectiveFunctions.
  • Add $EnableBaseNameConfig.
  • PmSyntax optimize for larger pages (cont.).
  • Input password add class "inputbox" like the other fields.
  • CondAuth() added way to check for usergroup permissions.
  • Update in pagelist.php for PHP 8.
  • Documentation update.

Version 2.3.16 (2022-11-28)

  • Class PPRC add generic callbacks.
  • IncludeText() update for PHP 8, reported by V.Krishn.
  • WikiStyle add 'overflow', 'notoc'.
  • Add PmNonce().
  • PmTOC update indented link style->classname.
  • Responsive skin: replace [[<<]] with <br class='clearboth' />, update PmTOC styles.
  • $EnableListIncludedPages use class name instead of style.
  • guiedit.js remove unneeded style.
  • PmSyntax realign font for nested programming languages in the edit form, optimize for large pages.
  • Only call session_status() if function exists.
  • Edit form remove unsafe-inline script.
  • Revert WikiStyleToClassName(), PrePrintFmt() -- need more work (PITS:01484).
  • Documentation update.

Version 2.3.15 (2022-11-21)

  • CSS pre, code relative/scalable font-size (pmwiki-responsive skin).
  • PmSyntax add variable --pmsyntax-fontsize-editform and split from --pmsyntax-fontsize [1].
  • PmSyntax fix [[Highlight]] label font size and family (reported by Hans).
  • Add variable $CookieSameSite default to 'Lax'
  • Add argument $samesite to pmsetcookie(), default to $CookieSameSite, refactor for old and new PHP versions.
  • Add function pm_session_start() respecting local configuration.
  • CSP header add base-uri=self; object-src 'none'.
  • Add $HTTPHeaders['XSSP'] = 'X-XSS-Protection: 1; mode=block'.
  • Rewrite GUIButtons logic to avoid unsafe-inline JavaScript.
  • Refactor WikiStyles, replace inline styles with class names to avoid unsafe-inline CSS.
  • Refactor PQA(), tables, cells, to replace inline style="..." with class names to avoid unsafe-inline CSS.
  • Add PrePrintFmt(), refactor PrintFmt(), PrintSkin() to process wiki pages, skin parts, and skin functions to HTML before outputting headers.
  • Fix XSS vulnerability.
  • Documentation update.

Version 2.3.14 (2022-11-03)

  • Searchbox also escape custom field names.
  • Prevent double-encoded entities in searchbox (reported by Simon).
  • Trim $Author (PITS:01208).
  • Replace autofocus inline JavaScript with attributes.
  • Edit form: the label next to the "Minor edit" checkbox now toggles the checkbox.
  • PmSyntax recognize (:template requires? ...:).
  • Update for PHP 8.
  • Obsolete PCCF() from PHP 7.2 not 8.0.
  • Add array $ObsoleteMarkups, function TraceMarkup(), update Markup(), Markup_e() and ObsoleteMarkup(), to retrieve and show files and line numbers for obsolete/disabled markup rules.
  • Fix bug with PSFT format %L.
  • Update documentation.

Version 2.3.13 (2022-10-07)

Version 2.3.12 (2022-09-25)

  • Stripmagic() cast null to "" and other fixes for PHP 8.
  • Fix parse error for complex conditionals with empty variables (PITS:01480).
  • PSFT() and MarkupExpression ftime add %L as human readable local timestamp.
  • MarkupRestore() fix wrong cast to empty string of false-ish values.
  • PrintAuthForm() split from PmWikiAuth().
  • Fix warning for unneeded session_regenerate_id() (reported by George Murray).
  • Update documentation.

Version 2.3.11 (2022-08-30)

  • Add PageVariables {$GroupHomePage}, {$GroupHomePageName}, {$GroupHomePageTitle}, {$GroupHomePageTitlespaced}.
  • Add $MarkupDirectiveFunctions.
  • Fix stripmagic() for arrays recently broke after PHP8 update.
  • Update documentation.

Version 2.3.10 (2022-08-20)

  • Update for PHP 8.1 (reported by Armin Bühler).
  • Forms will now prefill wildcard variables from $DefaultUnsetPageTextVars or $DefaultEmptyPageTextVars.
  • $EnablePmSyntax = 3; will enable syntax highlighting in the edit form by default, without the user clicking on "Highlight". Fix occasional text mis-alignment between the text area and the highlighted block.
  • Update documentation.

Version 2.3.9 (2022-08-18)

  • Add non-wildcard $DefaultUnsetPageTextVars to (:input default:) (reported by Johnny).
  • PmSyntax handles new selectors pre.pmhlt, code.pmhlt.
  • Update for PHP 8 (PITS:01478).
  • Update documentation.

Version 2.3.8 (2022-07-22)

  • PmSyntax fix for 2 different %hlt% on the same line (reported by Simon).
  • Fix broken include when the first page doesn't exist.
  • Update documentation.

Version 2.3.7 (2022-06-28)

  • $HTTPHeaders add X-Frame-Options (suggested by Imagine Dragon) and Content-Security-Policy to disallow embedding in external websites by default.
  • $EnableHighlight will now remember any links to PmWiki variables and restore them after the highlighting, see thread.
  • $EnablePmSyntax will now process %hlt pmwiki% in addition to %pmhlt% blocks, and escaped markup after it will be tentatively highlighted.
  • Update documentation.

Version 2.3.6 (2022-06-19)

  • Fixes for PHP 8.
  • Add form attribute "lang".
  • Sortable tables allow for table headers to have markup such as bold (except links). It will now use a case-insensitive natural ordering.
  • Allow for $UploadVerifyFunction to modify $upname.
  • Add variable $PageIndexTermsFunction.
  • Searchbox allow for removal of submit button if label=""; add default placeholder="$[Search]".
  • Fix author.php may be included before some variables are defined, reported by Said Achmiz.
  • $EnableHighlight convert code blocks to plain text, see thread.
  • Documentation update.

Version 2.3.5 (2022-05-23)

  • Fix broken list=grouphomes (PITS:01477).
  • Add DisableSkinParts() helper function for recipes.
  • HandlePostUpload: add $FmtV["$filepath"] and $FmtV["$upurl"] with the file path and direct URL to the newly uploaded file.
  • In pmwiki-utils.js, replace forgotten let with var (suggested by SteP).
  • Update for PHP 8.1.
  • Update documentation.

Version 2.3.4 (2022-04-22)

  • Fixes for PHP 8 warnings, reported by Siegfried Seibert.
  • Update documentation.

Version 2.3.3 (2022-03-26)

  • Fix for PHP 8 warnings, reported by Jean-Patrick Charrey, Dominique Faure and Siegfried Seibert.
  • Update README.txt and docs/ files, suggested by Simon Davis.
  • Update documentation.

Version 2.3.2 (2022-02-09)

  • Allow for $EnableLocalTimes to define custom duration of the pulled page history.
  • Rename variable $EnableIncludedPages to $EnableListIncludedPages (avoid ambiguity).
  • Remove $LinkAlt when an embedded picture without an alternative text fails to load.
  • PmSyntax:
    • Allow for line breaks
      inside headings, tables, list items (like the core).
    • Parallel processing of multiple blocks.
  • Add scripts/utils.php; move loading of pmwiki-utils.js and PmSyntax to scripts/utils.js.
    • Add $EnablePmUtils, default enabled.
    • Parallel processing of the pmwiki-utils.js utility functions.
    • Move pmwiki-utils.js move to $HTMLHeaderFmt (often prevents page redraw with the TOC/PmToggle/LocalTimes).
  • Fix bug causing invalid page name when the name is "Group.0".
  • Fix PHP 8.1.2 warnings, reported by Jürgen Godau and Dominique Faure.
  • LocaltTimes fix "rcnew" classes for wikis with the older format.
  • Update documentation.

Version 2.3.1 (2022-01-15)

  • Fix the release script which broke the $VersionNum variable and the [[#anchor]] markup with the PmWiki-responsive skin.

Version 2.3.0 (2022-01-15)

  • Add PmSyntax, $EnablePmSyntax, $CustomSyntax, {$EnabledIMap}, see Cookbook:PmSyntax, Cookbook:CustomSyntax.
  • (:markup:) can now have class=norender to only show the source code without processing it.
  • Updates for PHP 8.1, hide warnings, add PSFT() replacement for strftime() and 2 callbacks, $EnableFTimeNew, update core function calls, add %o for the ordinal suffix of the date (PITS:01418).
  • Notify: tz= (timezone) per-user.
  • PageList add category= argument (PITS:00447, PITS:01475); link= and category= now accept multiple pages, wildcards, and negations (PITS:00908).
  • [[!Category]] links can have alternative text (PITS:01095).
  • Simplify/optimize pmwiki-utils.js when using datasets, simplify sorting of table rows without cloning, add LocalTimes().
  • Page history diff anchors to also have "id=" attributes in addition to "name=".
  • Add $EnableLocalTimes (default disabled) and styles, add HandleDiffList().
  • Add markup @2022-01-09T08:35:00Z output as <time>; localized if $EnableLocalTimes.
  • Add $EnableRecentUploads (only Site.AllRecentChanges, only if $RecentUploadsFmt not defined).
  • PmTOC update CSS for properly indented subheadings.
  • Edit form $EnableIncludedPages, add placeholders to e_changesummary and e_author. Enable $EnableNotSavedWarning, add to sample-config.php. EditHelp to behave more like a word processor, typing "Enter" twice without writing text removes the preceding bullet.
  • Responsive skin details>summary:hover {color:navy, cursor: pointer;}.
  • PrintDiff() add classes for the delay between edits: diffday, diffweek, diffmonth, diffyear.
  • Add helper function DownloadUrl($pagename, $path) moved from LinkUpload().
  • Add $[ULby] i18n string 'uploaded by'.
  • Update documentation.

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 &#9888; (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).

Older versions

ChangeLog Archive - changes prior to version 2.2.0.


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

Weather data

CASO

BSV

ppdo

AgronomicTaxon

AgroTechnoPôle

GIEEA

edit SideBar

Blix theme adapted by David Gilbert, powered by PmWiki