| 71726d78 | 30-Aug-2006 |
Ben Coburn <btcoburn@silicodon.net> |
scalable changelog redesign
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
scalable changelog redesign
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
show more ...
|
| 19a32233 | 29-Aug-2006 |
chris <chris@jalakai.co.uk> |
further update to global memory cache arrays
- remove initialisation of caches in inc/pageutils.php - add global declaration to init.php to support init.php being included from within a function,
further update to global memory cache arrays
- remove initialisation of caches in inc/pageutils.php - add global declaration to init.php to support init.php being included from within a function, e.g. unit testing
;-)
- minor change to utf8_substr, remove non-essential brackets added as part of an earlier patch
darcs-hash:20060829134806-9b6ab-ab15191344a83be664c412403dc84a24fa2253a2.gz
show more ...
|
| 02a498e7 | 22-Aug-2006 |
chris <chris@jalakai.co.uk> |
bug #876, additional data for new user notification email
This patch updates only the english version of the localised "registermail.txt" file. Other versions need to be updated also.
darcs-hash:2
bug #876, additional data for new user notification email
This patch updates only the english version of the localised "registermail.txt" file. Other versions need to be updated also.
darcs-hash:20060822072444-9b6ab-ff6cb5bc78277c383e82c3986eeb16168e86c27b.gz
show more ...
|
| c93ca5e6 | 28-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
GeSHi update to 1.0.7.13
darcs-hash:20060828190614-7ad00-d52a526cee9329caeed5861d797d278a82936d11.gz |
| 50602150 | 28-Aug-2006 |
Ben Coburn <btcoburn@silicodon.net> |
init global memory cache arrays
Update to 'add function result caching for cleanID and wikiFN'. Makes certain that arrays exist for the caches, without checking on each function call. Properly creat
init global memory cache arrays
Update to 'add function result caching for cleanID and wikiFN'. Makes certain that arrays exist for the caches, without checking on each function call. Properly create multidimensional arrays in wikiFN().
darcs-hash:20060828071205-05dcb-7c8dbdb5ea4e7b73808ec3bd9222df1b837d3a1f.gz
show more ...
|
| bb4e0b0b | 28-Aug-2006 |
chris <chris@jalakai.co.uk> |
utf8_substr() fix, it wasn't using mb_substr results when available
darcs-hash:20060828092029-9b6ab-f76c94b76ce1ada49e2fefde11af824bb98b99c7.gz |
| dc2c0e04 | 27-Aug-2006 |
chris <chris@jalakai.co.uk> |
update cleanID and wikiFN result caches to support unit testing
- move caches into global scope (they were static in function scope) - add teardown() method to clean_id unit test - to clear its cach
update cleanID and wikiFN result caches to support unit testing
- move caches into global scope (they were static in function scope) - add teardown() method to clean_id unit test - to clear its cache
darcs-hash:20060827183327-9b6ab-cf9beb2ca6c47142dfaad3117d7c86748a54312c.gz
show more ...
|
| 6e0cc83a | 27-Aug-2006 |
chris <chris@jalakai.co.uk> |
add function result caching for cleanID and wikiFN
darcs-hash:20060827153352-9b6ab-651decb2566f16334218c6782edc6c7d47b41e13.gz |
| f50163d1 | 27-Aug-2006 |
chris <chris@jalakai.co.uk> |
utf8_correctIdx bounds checking and more unittests
darcs-hash:20060827153254-9b6ab-3c76fde7cb5534ca12628e9aa6e6d59d9bb02f45.gz |
| ced0762e | 26-Aug-2006 |
chris <chris@jalakai.co.uk> |
ft_snippet() update
- correct "opt1" algorithm for multibyte utf8 - minor improvement to "opt2" for short pages - add "utf8" algorithm, this algorithm endeavours to work with whole utf8 charac
ft_snippet() update
- correct "opt1" algorithm for multibyte utf8 - minor improvement to "opt2" for short pages - add "utf8" algorithm, this algorithm endeavours to work with whole utf8 character as much as possible. The resulting snippet will tend to 100 characters, rather than the 100 bytes of "opt1" and "opt2".
darcs-hash:20060826234333-9b6ab-ae4c60c8855a92b133cb8d5a230098203f610e7b.gz
show more ...
|
| e1d60f58 | 26-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
strip tags from title #883
This patch no longer uses htmlspecialchars on $conf['title'] when used in the page title - instead strip_tags is applied. This streamlines the use of $conf['title']
darcs
strip tags from title #883
This patch no longer uses htmlspecialchars on $conf['title'] when used in the page title - instead strip_tags is applied. This streamlines the use of $conf['title']
darcs-hash:20060826180943-7ad00-c8cc155c1e92fad05b85f77841834f782cbf6281.gz
show more ...
|
| 5953e889 | 26-Aug-2006 |
chris <chris@jalakai.co.uk> |
ft_snippet() update, fix utf8 problems
darcs-hash:20060826095311-9b6ab-9a6f272cc7c7532eb2bad8f7b4404c5a16b71109.gz |
| 0eac1afb | 26-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
code to remove bad UTF-8 bytes added
This adds code to remove or replace invalid UTF-8 bytes and uses it in the ft_snippets function.
darcs-hash:20060826082919-7ad00-a94004de159ae93ff5b7270fd3e631f
code to remove bad UTF-8 bytes added
This adds code to remove or replace invalid UTF-8 bytes and uses it in the ft_snippets function.
darcs-hash:20060826082919-7ad00-a94004de159ae93ff5b7270fd3e631ff467233cd.gz
show more ...
|
| fd49f8df | 25-Aug-2006 |
chris <chris@jalakai.co.uk> |
update config plugin
- add $conf['compression'] meta data and en lang strings - remove $conf['usegzip'] meta data and en lang strings
Other language strings will need to be updated.
darcs-hash:200
update config plugin
- add $conf['compression'] meta data and en lang strings - remove $conf['usegzip'] meta data and en lang strings
Other language strings will need to be updated.
darcs-hash:20060825223047-9b6ab-b0c8c6af57847690a6d398d0bd98af9a51911c21.gz
show more ...
|
| fe893490 | 25-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
typo fix for compression check
darcs-hash:20060825174755-7ad00-e67f267dd1552ba22b01662de6dbb84faf33e5f8.gz |
| 501af51e | 25-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
no forcing of ASCII in section IDs
XHTML allows non-ASCII chars in ids and names, so there is no need to forcibly romanize section header ids
darcs-hash:20060825173653-7ad00-f982cec893cc2d0f1b2de42
no forcing of ASCII in section IDs
XHTML allows non-ASCII chars in ids and names, so there is no need to forcibly romanize section header ids
darcs-hash:20060825173653-7ad00-f982cec893cc2d0f1b2de4226879d7d2b294ac76.gz
show more ...
|
| 0d8ea614 | 25-Aug-2006 |
chris <chris@jalakai.co.uk> |
update wikiFN with third paramter, $clean
value defaults to true
patch also includes an update to idx_parseIndexLine to make use of the new parameter - the index file (if built by DokuWiki's method
update wikiFN with third paramter, $clean
value defaults to true
patch also includes an update to idx_parseIndexLine to make use of the new parameter - the index file (if built by DokuWiki's methods) will contain already "clean" IDs.
darcs-hash:20060825144112-9b6ab-55adc71cf55bb58468fb3f0b03b9001ab149a82b.gz
show more ...
|
| 501252a5 | 25-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
compression fallback
This updates the availability check of the choosen compression method. If bzip2 is configured but not available it falls back to gzip if available.
darcs-hash:20060825144739-7a
compression fallback
This updates the availability check of the choosen compression method. If bzip2 is configured but not available it falls back to gzip if available.
darcs-hash:20060825144739-7ad00-9f7ce54fd1dbf0d7a8272393e9bc02d862b28fff.gz
show more ...
|
| ff3ed99f | 23-Aug-2006 |
marcel <marcel@rucksackreinigung.de> |
Added bz2 compression support for Attic
darcs-hash:20060823211149-9c1ae-569f295c33dc798a429a373f48cb09122334ea29.gz |
| 95a12943 | 25-Aug-2006 |
chris <chris@jalakai.co.uk> |
update to previous ft_snippet() patch, improve snippet text selection
darcs-hash:20060825134730-9b6ab-086ee0647af39c4398cf1726324d8215722a39db.gz |
| bd2cb6fc | 25-Aug-2006 |
chris <chris@jalakai.co.uk> |
ft_snippet optimisations
This patch includes two alternative algorithms for ft_snippet(), the code which prepares the snippets seen on the search page - and the most time consuming part of the produ
ft_snippet optimisations
This patch includes two alternative algorithms for ft_snippet(), the code which prepares the snippets seen on the search page - and the most time consuming part of the production of that page.
If you have $conf['allowdebug'] on, you can specify the search algorithm to use by adding &_search
darcs-hash:20060825104046-9b6ab-942d81a43cf0f85bfd235cabf6c35dd4b20e0b71.gz
show more ...
|
| 0196c1c5 | 23-Aug-2006 |
chris <chris@jalakai.co.uk> |
finnish translation of install.php (thanks Roope Jrvinen)
darcs-hash:20060823225137-9b6ab-e408b50f8aaeaface334a9aa602af893223d357a.gz |
| a6858c6a | 23-Aug-2006 |
chris <chris@jalakai.co.uk> |
user manager update
- add capability to send notification emails to users on creation and password modification (bug#640) - add success and fail messages for new user addition - fix bug when modif
user manager update
- add capability to send notification emails to users on creation and password modification (bug#640) - add success and fail messages for new user addition - fix bug when modification of username wasn't allowed, 'Edit user' fields weren't populated - fix (php5 only?) bug where default group wasn't given to a new user if no groups were specified - added explanatory notes concerning default group and password notification emails
This patch adds several new strings to the plugin's lang.php
darcs-hash:20060823115626-9b6ab-ea98ef630c79b28b52141957deb3efc307a9291d.gz
show more ...
|
| 11120ca9 | 23-Aug-2006 |
chris <chris@jalakai.co.uk> |
minor en lang string fix
darcs-hash:20060823115006-9b6ab-af7b27a3fa1830e5bd7e152d7e589ec3a2fbcd72.gz |
| 26ca5dee | 18-Aug-2006 |
Andreas Gohr <andi@splitbrain.org> |
Estonian language update
darcs-hash:20060818143213-7ad00-ae323084b3f5d20437a415ecef7e0b679140a99b.gz |