<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in xhtml.php</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2025</copyright>
    <generator>Java</generator><item>
        <title>2848662ba8eeff5c4027b53684449d6d492c1f43 - &#55358;&#56598; Rector and PHPCS fixes</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#2848662ba8eeff5c4027b53684449d6d492c1f43</link>
        <description>&#55358;&#56598; Rector and PHPCS fixes

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Thu, 25 Jun 2026 19:48:58 +0000</pubDate>
        <dc:creator>splitbrain &lt;86426+splitbrain@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>8ced0cff50068ab58ee04b5e3acf7edd6646c158 - Merge pull request #4636 from dokuwiki/gfm</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#8ced0cff50068ab58ee04b5e3acf7edd6646c158</link>
        <description>Merge pull request #4636 from dokuwiki/gfmAdd native Markdown parsing

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Thu, 25 Jun 2026 07:41:13 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>b73ece99c18919754d993a1d1f5cb27140555705 - Merge branch &apos;master&apos; into gfm</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#b73ece99c18919754d993a1d1f5cb27140555705</link>
        <description>Merge branch &apos;master&apos; into gfm* master:  &#55358;&#56598; Rector and PHPCS fixes  &#55358;&#56598; Update deleted files  Make common_pageinfo tests independent of execution order  Translation update (sk)  chore: adjust overlong line  fix(auth): scope media ACL checks to the namespace  refactor(search): extract LegacyIndexer wrapper for BC contract  Translation update (ro)  fix(authad): avoid warning when initAdLdap is called before opts is populated  fix(infoutils): fix synology os-release file parsing  remove valid_input_set(), inline the only remaining callers  Update copyright year in README  fix(mail): keep &apos;&amp;&apos; intact in mailto links with multiple query params# Conflicts:#	inc/Parsing/ParserMode/Internallink.php

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Wed, 10 Jun 2026 17:07:18 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>795d8419571027e05147f118ca35da5c70251a7d - Read the code block download offset as an integer</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#795d8419571027e05147f118ca35da5c70251a7d</link>
        <description>Read the code block download offset as an integerThe named code/file block download link reads the codeblockOffsetrequest parameter and adds it to the current block index to build theexport link. The value was read as a string and then used in arithmetic.On PHP 8 a non-numeric value turns that addition into a string + intoperation, which throws a TypeError and produces a fatal error whenrendering any page that contains a named code or file block.The offset is now read with $INPUT-&gt;int(), which yields 0 for absent,empty or non-numeric input and the integer value otherwise, so thearithmetic is always int + int. The has() guard and zero initialiserare no longer needed.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sat, 06 Jun 2026 19:34:42 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>73dc0a8919857718a3b64a4c0741b57580a34b2a - fix(mail): keep &apos;&amp;&apos; intact in mailto links with multiple query params</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#73dc0a8919857718a3b64a4c0741b57580a34b2a</link>
        <description>fix(mail): keep &apos;&amp;&apos; intact in mailto links with multiple query paramsMove the email-handling helpers (obfuscate, mail_isvalid,mail_quotedprintable_encode, mail_setup) out of the proceduralinc/mail.php into a namespaced dokuwiki\MailUtils class plus a newMailer::configInit(), and add a separate MailUtils::obfuscateUrl() forthe mailto-href context.The xhtml renderer and PluginTrait now build the link label and thehref separately: the address half is run through the mailguardobfuscation, the query string is preserved verbatim with only HTMLescaping applied. This fixes #1690 &#8212; in &apos;visible&apos; mode the previouscode rawurlencoded the entire address+query, turning &apos;?&apos; into &apos;%3F&apos; andbreaking multi-parameter mailto links; in all modes the query string isno longer mangled by the [at]/[dot] substitution.Core call sites (Mailer, auth, LegacyApiCore, common, the xhtmlrenderer, the parser, the bundled config/styling/usermanager plugins)are migrated to MailUtils directly. The old top-level functions andPREG_PATTERN_VALID_EMAIL constant remain as deprecated shims withrector mappings.Tests for obfuscate / mail_isvalid / mail_quotedprintable_encode areconsolidated into a single _test/tests/MailUtilsTest.php and extendedwith regression coverage for the multi-parameter, double-escape andURL-shape cases.Closes #1690Replaces #1964

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Wed, 06 May 2026 21:21:37 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>f7c6e4acc95e3c5c24a819b2149a2bf3a7668f11 - add listo_open_start sibling method for GFM start numbers</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#f7c6e4acc95e3c5c24a819b2149a2bf3a7668f11</link>
        <description>add listo_open_start sibling method for GFM start numbersReverts the listo_open signature widening from 5a2118acc and insteadadds a sibling method `listo_open_start($start = 1)` on the rendererhierarchy. The base default delegates to listo_open() so renderersthat don&apos;t override it still produce a valid (but unnumbered) list;xhtml&apos;s override emits &lt;ol start=&quot;N&quot;&gt;.The handler now emits &apos;listo_open_start&apos; only for ordered lists witha non-default first number; plain ordered lists keep emitting theunchanged &apos;listo_open&apos; instruction. This preserves the historicallisto_open / listu_open signatures (zero-arg base, $classes-onlyxhtml form from 2016) so the 17 plugin renderers found viacodesearch keep working without modification, while stillimplementing GFM&apos;s &quot;5. foo&quot; -&gt; &lt;ol start=&quot;5&quot;&gt; rule.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Thu, 30 Apr 2026 08:11:04 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;gohr@cosmocode.de&gt;</dc:creator>
    </item>
<item>
        <title>5a2118accdef61a7716b85c1da1e7c8e27b3bb62 - add `$start` parameter to listo_open</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#5a2118accdef61a7716b85c1da1e7c8e27b3bb62</link>
        <description>add `$start` parameter to listo_openDoku_Renderer::listo_open() is now listo_open($classes = null, $start = 1),with the same signature on the metadata and XHTML renderers. The XHTMLrenderer emits start=&quot;N&quot; only when $start is not 1, so existingordered-list output is unchanged.Used by the upcoming GfmListblock to implement GFM&apos;s ordered-list startrule (`5. foo` &#8594; `&lt;ol start=&quot;5&quot;&gt;`). Plugin renderers that overridelisto_open keep working, since PHP lets overrides omit added-with-defaultparameters.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Tue, 28 Apr 2026 06:20:44 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>8719732d06ab7306149725c7c5ea71deb8ff0382 - add GfmHeader for ATX headings (`# text` through `###### text`)</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#8719732d06ab7306149725c7c5ea71deb8ff0382</link>
        <description>add GfmHeader for ATX headings (`# text` through `###### text`)Opener must sit at column 0. GFM tolerates 0-3 spaces before the `#`but that collides with DokuWiki&apos;s 2-space-indent preformatted block,so the tolerance is dropped rather than plumbed across modes.Widen the XHTML renderer&apos;s section-node tracker from 5 slots to 6 soh6 doesn&apos;t hit &quot;Undefined array key 5&quot;. Extend GfmSpecTest&apos;s HTMLnormalizer to strip DokuWiki&apos;s section-div wrappers, section-editcomments, and header id/class attributes so heading spec examplescan validate semantic correctness.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Wed, 22 Apr 2026 08:50:19 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;gohr@cosmocode.de&gt;</dc:creator>
    </item>
<item>
        <title>093fe67e98c0cdb4b73fd46938e49b64971483c2 - updated rector and applied it</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#093fe67e98c0cdb4b73fd46938e49b64971483c2</link>
        <description>updated rector and applied it

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sat, 07 Mar 2026 20:26:13 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>0e11cf251173f77351d0f27aca8ef2bd77a92ef0 - Typo in the word associative</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#0e11cf251173f77351d0f27aca8ef2bd77a92ef0</link>
        <description>Typo in the word associative

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Wed, 27 Nov 2024 02:01:50 +0000</pubDate>
        <dc:creator>brzsmg &lt;brzsmg@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>db9267247e06d4aae1a33463c71b2c22d7f7a2a7 - Replace strftime with Intl ICU. Fixes #3573</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#db9267247e06d4aae1a33463c71b2c22d7f7a2a7</link>
        <description>Replace strftime with Intl ICU. Fixes #3573This uses a class that maps strftime placeholders to the appropriate ICUpatterns. I am using the fallback-intl branch here which provides anEnglish-only fallback when the intl extension is not available.Core has only two places where strftime is used: dformat() and theSimplePie feed parser. Both are adjusted with this patch. For the lattera custom Item class had to be registered. For better separation all ourFeedParser classes have been moved to the Feed namespace where ourFeedCreator classes already reside.Note that this will currently be a degration for users without intl asit will fall back to date and not to the still available strftime.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Fri, 26 Jan 2024 18:34:12 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>e44b94a4bd0679ff22e14add34b60590fe7077d3 - Revert &quot;use a dispatcher to access static image files&quot;</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#e44b94a4bd0679ff22e14add34b60590fe7077d3</link>
        <description>Revert &quot;use a dispatcher to access static image files&quot;This reverts commit 944e9ba7254387adb60f253b0d8796f2276096b1.It was accidentally pused to master before review. A PR with a revertfor the revert will be pushed shortly.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sun, 08 Sep 2024 16:15:53 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>944e9ba7254387adb60f253b0d8796f2276096b1 - use a dispatcher to access static image files</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#944e9ba7254387adb60f253b0d8796f2276096b1</link>
        <description>use a dispatcher to access static image filesThis makes it possible to replace default images in an update safe way.It also addresses the issue raised in dokuwiki/docker#16A .htaccess rewrite catches any direct accesses that might come in fromplugins.

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sun, 08 Sep 2024 16:09:28 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>6c16a3a9aa602bb7e269fb6d5d18e1353e17f97f - Use str_starts_with/str_ends_with</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#6c16a3a9aa602bb7e269fb6d5d18e1353e17f97f</link>
        <description>Use str_starts_with/str_ends_with

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Thu, 14 Sep 2023 20:32:18 +0000</pubDate>
        <dc:creator>fiwswe &lt;fiwswe@fwml.de&gt;</dc:creator>
    </item>
<item>
        <title>749bc7f13d5fc213945d96ad93feaab8f74a1e03 - minor cleanup in the renderers</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#749bc7f13d5fc213945d96ad93feaab8f74a1e03</link>
        <description>minor cleanup in the renderers

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sat, 02 Sep 2023 09:52:36 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>95078f236f25cbd6aa6d3e5aae7a3f3d39de6834 - apply code sniffer rules to inc/parser as well</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#95078f236f25cbd6aa6d3e5aae7a3f3d39de6834</link>
        <description>apply code sniffer rules to inc/parser as well

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sat, 02 Sep 2023 09:42:14 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>a19c9aa0217112e3ab7ebc160354c7e9fbabe8eb - recover comments in list</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#a19c9aa0217112e3ab7ebc160354c7e9fbabe8eb</link>
        <description>recover comments in list

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Wed, 30 Aug 2023 22:25:09 +0000</pubDate>
        <dc:creator>Gerrit Uitslag &lt;klapinklapin@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>faf3f01b9af152b16aca96437c109c41b8250689 - Apply rector fixes to inc/parser</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#faf3f01b9af152b16aca96437c109c41b8250689</link>
        <description>Apply rector fixes to inc/parser

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Tue, 29 Aug 2023 15:58:44 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>53df38b0e4465894a67a5890f74a6f5f82e827de - fix XSS in RSS syntax</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#53df38b0e4465894a67a5890f74a6f5f82e827de</link>
        <description>fix XSS in RSS syntaxThe title was not correctly escaped when written to the doc in xhtmlrenderer.SimplePie does no content escaping on its own (a comment in the codeseems to suggest that that was assumed). Instead the content is passedon as-is from the feed.This patch also applies some more escaping on the description output(though it should have been relatively safe thanks to the use ofstriptags).This was discovered by @ry0tak and reported inhttps://huntr.dev/bounties/c6119106-1a5c-464c-94dd-ee7c5d0bece0/

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Mon, 15 May 2023 06:06:00 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>d5fce4941e00a7dc95e2ae64e51693f90953d592 - Merge branch &apos;pr/3908&apos;</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/parser/xhtml.php#d5fce4941e00a7dc95e2ae64e51693f90953d592</link>
        <description>Merge branch &apos;pr/3908&apos;* pr/3908:  JPEGMeta: clean up exception handling  Fix: Do not garbage collect the JpegMeta object after reading a tag  Replace check for null with cast to string  Fix: Rework error handling in JpegMeta marker reading  Replace is_null() check with count()  Fix: Padding in _getFixedString, log the path of damaged images  Fix: PHP8-related JpegMeta.php fixes  Backwards Compatibility: Don&apos;t error if finishSectionEdit is called without first startSectionEdit  Fix: &apos;E_WARNING: Uninitialized string offset -1&apos; on some templates  Fix: &apos;E_WARNING: Undefined array key &quot;_data&quot;&apos;

            List of files:
            /dokuwiki/inc/parser/xhtml.php</description>
        <pubDate>Sat, 11 Mar 2023 13:27:47 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
</channel>
</rss>
