https://bugzilla.wikimedia.org/show_bug.cgi?id=45317

--- Comment #8 from Lord_Farin <[email protected]> ---
I've done further testing. There are two relevant conclusions:

1: Running formatHeadings with $isMain set to false is completely superfluous
as far as I've been able to determine (using the shipped PHPUnit tests). If
this is tested and investigated further, it can improve page load times
(expensive but useless preg_match() calls are applied on the entire wiki page).

2: The sections that do not show up in TOC are hidden by a UNIQ identifier for
the extension tag, which is not resolved until
$this->mStripState->unstripGeneral() is called from the main parse() -- which
is way after the TOC is determined using the main call to formatHeadings() in
internalParse().

This state of affairs (which I suspect to tie in with the problems concerning
section editing and templates) naturally means that some unstripping should be
done before TOC is generated.


Therefore, my proposal is as follows:

To create a designated third unstrip type e.g. entitled "sections" (the first
two being "nowiki" and "general", defined and used in StripState.php), which is
called before determining TOC, expanding those UNIQ markers whose content may
hide sections. Upon creation of a new extension, one can indicate whether or
not it may contain new sections using a flag.

This course of action occurs to me as the least intrusive way to resolve this
bug (and hopefully, related ones). Thoughts are welcomed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to