summaryrefslogtreecommitdiff
path: root/lib/plugins/importoldchangelog/action.php
Commit message (Collapse)AuthorAge
* removed importoldchangelog and importoldindex pluginsAndreas Gohr2009-01-25
| | | | | | | | | | Ignore-this: fb48b24cecb52541a728ba9c17597d8f These one-shot plugins where used for upgrading older DokuWiki versions and are no longer needed. If you upgrade from a really old version you might want upgrade to intermediate versions instead. darcs-hash:20090125143050-7ad00-5ff7b2cd5f61c392e9e02e13eab947d045d60b04.gz
* fixed all remaining links to wiki.splitbrain.org and to restructured pagesAnika Henke2008-08-15
| | | | darcs-hash:20080815134211-f7d6d-61f4f4fa1c5f62832d7cc5ad3e3a7a78460d2981.gz
* Importoldchangelog: Added metadata supportSimon Coffey spc03@doc.ic.ac.uk2008-02-13
| | | | | | | Added function savePerPageMetadata() to populate creator and contributor fields of metadata array from old-style changes.log. darcs-hash:20080213145734-31360-226e84e11c5a95d2bcafd8d29abca24f76b25482.gz
* changelog type strings replaced with constantsBen Coburn2006-12-07
| | | | | | | | Using more verbose constant names in the place of single character strings should make the code much more readable. This does not change the behavior of the changelog. darcs-hash:20061207074906-05dcb-0bdc35e7241bf14063b2b43a6ff26d8a3c307cb9.gz
* make importoldchangelog plugin more user friendlyBen Coburn2006-10-30
| | | | | | | | | | | The plugin places all the changelog lines into the recent changes cache. Truncating this cache is left to the code that normally trims the recent changes cache. $conf['recent_days'] defines the maximum age of changes to be considered "recent". If no changes are "recent" the changelog cache trimmer will leave some stale changes in the cache to avoid emptying it completely. darcs-hash:20061030023710-05dcb-6a870d8597aeb22769de00dfb977d394881b9de8.gz
* changelog redesign updateBen Coburn2006-09-11
| | | | | | | | | | | - Improves handling of deleted revisions. - Import plugin disables after import. - Check act reports if plugin is still enabled after the import. - Import correctly handles summaries without the minor prefix. - Newlines and tabs are now striped out of type, sum, and extra in the changelog. darcs-hash:20060911014738-05dcb-2f6c9fdffb6346f7d3190610a72b290090b28097.gz
* suppress boring errorsBen Coburn2006-09-08
| | | | | | | | Suppress any errors from set_time_limit, unlink, and file_exists functions. see: http://www.freelists.org/archives/dokuwiki/09-2006/msg00004.html darcs-hash:20060908193433-05dcb-013617431870ab5bfb2ce8c6e99ba5af13493228.gz
* scalable changelog redesignBen Coburn2006-08-30
This patch provides a rewritten changelog system that is designed to run efficiently on both small and large wikis. The patch includes a plugin to convert changelogs from the current format. The conversion is non-destructive and happens automatically. For more information on the new changelog format see "http://wiki.splitbrain.org/wiki:changelog". Structure In short the changelog is now stored in per-page changelog files, with a recent changes cache. The recent changes cache is kept in "/data/meta/_dokuwiki.changes" and trimmed daily. The per-page changelogs are kept in "/data/meta/<ns>/<page_id>.changes" files. To preserve revision information for revisions stored in the attic, the "*.changes" files are not removed when their page is deleted. This allows the full life-cycle of page creation, deletion, and reversion to be tracked. Format The changelog line format now uses a general "line type" field in place of the special "minor" change syntax. There is also an extra field that can be used to store arbitrary data associated with special line types. The reverted line type (R) is a good example. There the extra field holds the revision date used as the source for reverting the page. See the wiki for the complete syntax description. Code Notes The changelog functions have been rewritten to load the whole file only if it is small. For larger files, the function loads only the relevant chunk(s). Parsed changelog lines are cached in memory to speed future function calls. getRevisionInfo A binary search is used to locate the chunk expected to contain the requested revision. The whole chunk is parsed, and adjacent lines are optimistically cached to speed consecutive calls. getRevisions Reads the changelog file backwards (newest first) in chunks until the requested number of lines have been read. Parsed changelog lines are cached for subsequent calls to getRevisionInfo. Because revisions are read from the changelog they are no longer guaranteed to exist in the attic. (Note: Even with lines of arbitrary length getRevisionInfo and getRevisions never split changelog lines while reading. This is done by sliding the "file pointer" forward to the end of a line after each blind seek.) isMinor Removed. To detect a minor edit check the type as follows: $parsed_logline['type'] darcs-hash:20060830182753-05dcb-1c5ea17f581197a33732a8d11da223d809c03506.gz