* Titlematch: We now translate a space to an escaped underscore as the native underscore is a special char within SQL LIKE
* New commands: linkstoexternal and addexternallink
* Changed default for userdateformat to show also seconds DPL only; Intersection will show only the date for compatibility reasons)
* Bugfix date/time problem 1977
* Time conditions in query are now also translated according to timezone of server/client
# Version 1.8.5
* Changed the php source files to UTF8 encoding (i18n was already utf8)
* Removed all closing ?> php tags at source file end
* Added 'path' and changed href to "third-party" in the hook-registration
* Added a space after showing the date in addeditdate etc.
* Changed implementation of userdate transformation to wgLang->userAdjust()
* Include now understands parserFunctions when used with {#xxx}
* Include now understands tag functions when used with {~xxx}
* Title<andtitle> added,
* New URL arg: DPL_fromTitle, DPL_toTitle
* New built-in vars: %FIRSTTITLE%, %LASTTITLE%, %FIRSTNAMESPACE%, %LASTNAMESPACE%, %SCROLLDIR% (only in header and footer)
* Removed replacement of card suit symbols in SQL query due to collation incompatibilities
* Added special logic to DPL_fromTitle: reversed sort order for backward scrolling
* Changed default sort in DPL to 'titlewithoutnamespace (as this is more efficient than 'title')
# Version 1.8.6
* Bugfix at ordermethod = titlewithoutnamespace (led to invalid SQL statements)
# Version 1.8.7
* Experimental calls to the CacheAPI; can be switched off by $useCacheAPI = false;
* One can set option[eliminate] to 'all' in LocalSettings now as a default
* Editrulesnow takes several triples of 'parameter', 'value' and 'afterparm'
* Editrules can now produce a screen form to change template values
* Title<andtitle> now test for greater or less; if you want greater/equal the argument must start with "= "
* The majority of the php modules are now only loaded if a page contains a DPL statement
* Added %DPL_findTitle%
* First letter changed toUpper in %DPL_fromTitle%, %DPL_toTitle%, %DPL_findTitle%,
* Enhanced syntax for include : [limit text~skipPattern]
* UNIQ-QINU Bug resolved
* Convert spaces to underscores in all category (regexp) statements
* We convert html entities in the category command to avoid false interpretation of & as AND
# Version 1.8.8
* Offset by one error in updaterules corrected
* Bugfix in checking includematch on chapter content
* Made size of edit fields depend on value size
* Deleterules: does some kind of permission checking now
* Various improvements in template editing (calling the edit page now for the real update)
* Call to parser->clearState() inserted; does this solve the UNIQ-QINU problem without a patch to LnkHolderArray ??
# Version 1.8.9
* Further improvements of updaterules
* Include: _ in template names are now treated like spaces
* Providing URL-args as variables execandexit = geturlargs
* New command scroll = yes/no
* If %TOTALPAGES% is not used, the number of total hits will not be calculated in SQL
* When searching for a template call the localized word for "Template:" may preceed the template´s name
* Categories= : empty argument is now ignored; use _none_ to list articles with NO category assignment
* Include: we use :and whitespace for separation of field names
* {{{%CATLIST%}}} is now available in phantom templates
* %IMAGE% is now translated to the image plus hashpath if used within a tablerow statement
* The function which truncates wiki text was improved (logic to check balance of tags)
* Setting execandexit to true will prevent the parser cache from being disabled by successive settings of allowcachedresults
* Bug fix: replacing %SECTION% in an include link text did not work wit hregukar expressions as section titles
* Command fixcategory added
* Adding a way to define an alternate namespace for surrogate templates {ns::xyz}.abc
* Accept @ as a synonym for # in the include statement, @@ will match regular expressions
* Syntax changed in include: regexp~ must precede all other information, allow multiple regexps :[regex1~regex2~regex3~number linkText]
* Allow %CATLIST% in tablerow
* Allow '-' as a dummy parameter in include
* Allow alternate syntax for surrogate template {tpl|surrogate} in include
* Multiple linksto statements are now AND-wired (%PAGESEL%) refers to the FIRST statement only
* Multiple linkstoexternal statements are now AND-wired
* New parser function #dplnum
* Allow like expressions in LINKSTO (depending on % in target name)
* Prevent %xx from being misinterpreted as a hex code when used in linksto (e.g. %2c)
* Added hiddencategories = yes / no / only [dead code - not yet WORKING !]
* Added %EDITSUMMARY%
# Version 1.9.0
* Added dplvar
* Added dplreplace
* Changed DLPLogger, getting rid of deprecated methods like addMessage()
* Minor bugfix in include {tpl¦phantom tpl} , problem with different namespaces
*#dplvar accepts all variables from the URL
# Version 1.9.1
* Ordermethod=titlewithoutnamespace now creates capitals in mode=categories according to page title
* Bug fix in namespace= , invalid values now lead to an error message (had been silently translated to the main namespace before)
* Category mode: first char bugfix
# Version 2.0.0
* Added %ARGS% to template surrogate call
* Replaced "makeKnownLinkObjects" by "fullurl:" to get rid of the need to change $rawHtml
* Eliminated rawHTML usage
* Eliminated calls to parser->clearState and parser->transformMsg, now CITE and DPL work together
* As a consequence a patch to LinkHolderArray.php is needed.
* Added proprietory function to sort bidding sequences for the card game of 'Bridge' according to suit rank
* Added workaround to eliminate problems with cite extension (DPL calls parser clearState which erases references)
* Added a CAST to CHAR at all LOWER statemens in SQL (MediaWiki changed to varbinary types since 1.17)
# Version 2.01
* Re-merged all changes from SVN since DPL 1.8.6
# Version 3.0.0
* THE MOTHER OF ALL OVERHAULS! - Seriously, the entire code base was ripped to shreds and redone to be easily worked on in the future.
* Configuration is now standardized instead of calling into static class functions or modifying objects directly.
* Fixed several SQL injection exploits with 'ordercollation' and 'category'.
* Cache now works with the built Mediawiki Parser cache. The built in DPL cache was fundamentally broken.
* Parameter 'dplcache' was removed as it is now obselete. Please use 'allowcachedresults' to control caching.
* The 'allowcachedresults' parameter default was changed to true.
* The 'dplcacheperiod' parameter was renamed to 'cacheperiod'.
* The 'cacheperiod' parameter default was changed to 3600 seconds.(One Hour)
* URL argument 'DPL_refresh' was removed. To purge the Parser cache perform a null edit on the page or place 'action=purge' as part of the URL.
* Configuration value 'respectParserCache' was removed.
* The card suit sort function no longer has a massive memory leak.
# Version 3.0.1
Many thanks to GreenReaper on GitHub for reporting and finding issues with core functionality that previously went unreported.
* Code quality improvements. Various changes to squash E_NOTICE errors helped find unnoticed issues.
* The "headingmode" functionality was not previously repaired from the code rework. It is now fixed.
* Removed an unused $logger in the DynamicPageList class.
* Category depth recursion was broken. #41
* New timestamp handling functionality caused unexpected behavior. It has been reverted to work the same as the previous implementation. #40
* Parse time profiling was broken.
* Scroll direction parameter was broken.
* Early parsing was accidentally clearing minor warnings and errors preventing them from being seen.
* Category links relied on Mediawiki functionality that ended up causing double parsing and potentially broken links on some wiki setups. This is now handled all in the extension to reduce the number of parses and ensure links are valid. #38
* Article processing would clear the number of query results causing an issue in which blank output would be produced when all articles were excluded from the output. This has been fixed to display a warning for no results.
* Databases that use table prefixes were broken due to a few bugged selects. #37 Thanks to @nsradke for reporting this issue.
# Version 3.0.2
* Fixed issues with usedby parameter causing fatal errors.
* Fixed issue where the allrevisionssince would display a blank [[User:|]] link despite not being specified to show user information.
* The addpagecounter parameter now requires Extension:HitCounter which itself requires MediaWiki 1.25. All other features and parameters will continue to work on MediaWiki 1.23+.
* Preliminary support for Mediawiki 1.25+ wfLoadExtension() style extension loading. Current implementation is broken due to extension design issues that need fixed.
* Fix an issue with an array not being initialized in DPL's list formatter.
* Fixed an additional issue with the new Extension:HitCounter support. Using ordermethod=counter without specifying the addpagecounter parameter would cause a database error.
* Reverted to the old hard coded method of which categorylinks table to use for the addfirstcategorydate parameter. This resolves issues variable parameters used in conjunction with it.
* Changed instances of $dplSettings in language strings to $wgDplSettings.
* Moved the DPL template installation to the database updater. Previously this was done on every page load and would also interfere with Special:Import.
* Fixed end resets and eliminates being flipped for what context(function or tag) they should run.
* DPL will no longer handle the raw <section> tag outside of the DPL context by default. It will still handle <section> tags found inside a DPL context.
* New setting: $wgDplSettings['handleSectionTag'], default of false. Set this to true for the old broken behavior.
# Version 3.0.9
* Fixed interaction with Extension:HitCounters that was causing a fatal exception.
* Fixed language string used to display numbers from Extension:HitCounters.
* Added support for mode=gallery.
* Fixed ordermethod=category where it no longer times out.
* Fixed minrevisions tag causing SQL error.
* Fixed ordermethod=firstedit. It now sorts in the correct direction.
# Version 3.0.10
* Really fixed ordermethod=firstedit this time thanks to cillianderoiste.
* Issues with legacy Extension:Cite conflicts have been resolved in the Cite extension and this in turn breaks DynamicPageList for MediaWiki 1.29. FoXFTW removed the now unnecessary code.
* Fixed sortByPriority not applying correctly in some cases.
# Version 3.1.3
* The dpl_clview view will just be created on database update instead of complaining on wiki text parsing that the administrator did not do it manually.