| Commit message (Expand) | Author | Age |
* | Avoid %links accumulating duplicates. (For TOVA)•••This is sorta an optimisation, and sorta a bug fix. In one
test case I have available, it can speed a page build up from 3
minutes to 3 seconds.
The root of the problem is that $links{$page} contains arrays of
links, rather than hashes of links. And when a link is found,
it is just pushed onto the array, without checking for dups.
Now, the array is emptied before scanning a page, so there
should not be a lot of opportunity for lots of duplicate links
to pile up in it. But, in some cases, they can, and if there
are hundreds of duplicate links in the array, then scanning it
for matching links, as match_link and some other code does,
becomes much more expensive than it needs to be.
Perhaps the real right fix would be to change the data structure
to a hash. But, the list of links is never accessed like that,
you always want to iterate through it.
I also looked at deduping the list in saveindex, but that does
a lot of unnecessary work, and doesn't completly solve the problem.
So, finally, I decided to add an add_link function that handles deduping,
and make ikiwiki-transition remove the old dup links.
| Joey Hess | 2009-05-06 |
* | Merge branch 'master' into next•••Conflicts:
IkiWiki/Plugin/googlecalendar.pm
| Joey Hess | 2008-12-25 |
|\ |
|
| * | camelcase: Add camelcase_ignore setting. | Joey Hess | 2008-12-23 |
* | | finalise version 3.00 of the plugin api | Joey Hess | 2008-12-23 |
|/ |
|
* | Coding style change: Remove explcit vim folding markers. | Joey Hess | 2008-12-17 |
* | Export pagetitle, titlepage, linkpage. | Joey Hess | 2008-09-27 |
* | add plugin safe/rebuild info (part 1 of 2)•••too many plugins.. brain exploding..
| Joey Hess | 2008-08-03 |
* | * camelcase: Convert to use new linkify and scan hooks rather than the old••• hack.
| Joey Hess | 2008-02-11 |
* | * camelcase: Tighten regexp to avoid false positives. WikiWords are only••• linkified now if they are preceeded by whitespace.
| joey | 2007-09-28 |
* | * Explode some of the more insane regexps. | joey | 2007-06-01 |
* | * pagespec_match() has changed to take named parameters, to better allow••• for extended pagespecs. The old calling convention will still work for
back-compat for now.
* The calling convention for functions in the IkiWiki::PageSpec namespace
has changed so they are passed named parameters.
* Plugin interface version increased to 2.00 since I don't anticipate any
more interface changes before 2.0.
| joey | 2007-04-27 |
* | * Work on firming up the plugin interface:••• - Plugins should not need to load IkiWiki::Render to get commonly
used functions, so moved some functions from there to IkiWiki.
- Picked out the set of functions and variables that most plugins
use, documented them, and made IkiWiki export them by default,
like a proper perl module should.
- Use the other functions at your own risk.
- This is not quite complete, I still have to decide whether to
export some other things.
* Changed all plugins included in ikiwiki to not use "IkiWiki::" when
referring to stuff now exported by the IkiWiki module.
* Anyone with a third-party ikiwiki plugin is strongly enrouraged
to make like changes to it and avoid use of non-exported symboles from
"IkiWiki::".
* Link debian/changelog and debian/news to NEWS and CHANGELOG.
* Support hyperestradier version 1.4.2, which adds a new required phraseform
setting.
| joey | 2006-09-09 |
* | * Fix CamelCase regexp to not break [[FooBar|BazBar]] WikiLinks. | joey | 2006-07-26 |
* | * Run page through any relevant filters when generating a page preview.•••* Noticed a bug in the wikitext markup plugin -- it made CamelCase links the
default throughout the wiki, not only on wikitext pages. Decided to call
this a feature, and split the camelcase support out into a separate plugin
that is independant of wikitext.
| joey | 2006-07-26 |