<?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 concept.txt</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2025</copyright>
    <generator>Java</generator><item>
        <title>db8be586414d0dc05ca5131baddfa84f08c55520 - SearchIndex: review fixes &#8212; auto-save MemoryIndex, cast TupleOps counts, style cleanups</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#db8be586414d0dc05ca5131baddfa84f08c55520</link>
        <description>SearchIndex: review fixes &#8212; auto-save MemoryIndex, cast TupleOps counts, style cleanups- MemoryIndex: auto-save dirty data on unlock/destruction to prevent  silent index corruption when indexes are used in tandem- TupleOps::parseTuples(): cast exploded count strings to int- FileIndex::retrieveRow(): document the write-on-read padding behavior- Fix whitespace issues in ApiCore, common.php, Sitemap/Mapper- Update concept.txt to reflect MemoryIndex auto-save behavior

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Wed, 08 Apr 2026 17:50:08 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>2a22d4b9fca21fe1c728c4462c02b97b2e70e0ee - SearchIndex: document Tokenizer::isValidSearchTerm() in concept.txt</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#2a22d4b9fca21fe1c728c4462c02b97b2e70e0ee</link>
        <description>SearchIndex: document Tokenizer::isValidSearchTerm() in concept.txt

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Wed, 08 Apr 2026 16:53:38 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>1148921de6af6909f19cb5b30b698d0f27d7751e - SearchIndex: unify CollectionSearch API and optimize search pipeline</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#1148921de6af6909f19cb5b30b698d0f27d7751e</link>
        <description>SearchIndex: unify CollectionSearch API and optimize search pipeline- Remove separate lookup() API from CollectionSearch. All searches now  use addTerm()/execute() with a single unified pipeline.- Add matches() predicate to Term using efficient string functions  (===, str_starts_with, str_ends_with, str_contains) instead of regex.- Add caseInsensitive() support on CollectionSearch and Term for  metadata/title searches where indexed values preserve case.- Remove callback support from MetadataSearch::lookupKey() &#8212; the only  real usage (case-insensitive substring) is replaced by  caseInsensitive() + wildcards.- Remove min-length validation from Term. Add Tokenizer::isValidSearchTerm()  for callers that need it (FulltextSearch, Indexer::lookup).- Optimize execute() from 4 group passes to 2: scan tokens + resolve  frequencies in one pass per group, batch entity name resolution, then  populate Terms.- Store full match detail in Term: entity &#8594; token &#8594; frequency. New  accessors getMatches(), getEntityTokens(), getEntityFrequencies()  derive different views from this single data structure.- Term no longer used as scratch pad by CollectionSearch. Index-internal  data (token IDs, entity IDs) stays local to execute(). Terms receive  only final resolved results.- Use title from search results in MetadataSearch::pageLookupCallBack()  instead of re-fetching via p_get_first_heading().- Update concept.txt documentation.

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Wed, 08 Apr 2026 16:51:16 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>b9d7a61502960927577a8c9c2bee03484a94a17f - SearchIndex: updated documentation</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#b9d7a61502960927577a8c9c2bee03484a94a17f</link>
        <description>SearchIndex: updated documentationto be moved into the wiki later

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Tue, 07 Apr 2026 19:21:39 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>f2bbffb509f37291c31c023167b8aeb383079d6d - SearchIndex: extract Collection base class hierarchy</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#f2bbffb509f37291c31c023167b8aeb383079d6d</link>
        <description>SearchIndex: extract Collection base class hierarchyIntroduce AbstractCollection as the shared base for all indexcollections, with FrequencyCollection and LookupCollection asthe two abstract subclasses differing only in how tokens arecounted (frequency vs dedup).Key design decisions:- splitByLength is a constructor parameter on AbstractCollection  controlling whether token/frequency indexes use length-based  file splitting. This is independent of the collection type.- The reverse index format is self-describing: entries with *  have a group prefix (split), entries without don&apos;t (non-split).  No branching needed in parse/format methods.- addEntity, resolveTokens, updateIndexes, and reverse index  handling all live in AbstractCollection. Subclasses only  implement countTokens().Concrete collections: PageFulltextCollection (frequency, split),MediaCollection and ReferencesCollection (lookup, non-split).Renames FulltextCollection -&gt; PageFulltextCollection andFulltextCollectionSearch -&gt; FrequencyCollectionSearch.

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Sun, 05 Apr 2026 13:35:39 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>7f394dd683d14aba9f6131a7f9d011383c280834 - Merge branch &apos;master&apos; into searchIndex-finish</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#7f394dd683d14aba9f6131a7f9d011383c280834</link>
        <description>Merge branch &apos;master&apos; into searchIndex-finish* master: (55 commits)  Translation update (pt-br)  Bump phpseclib/phpseclib from 3.0.49 to 3.0.50  &#55358;&#56598; Update deleted files  strict value comparison in auth session check. fixes #4602  Translation update (pt-br)  Translation update (pt-br)  remove utf8_encode() from authad plugin  todo checker action: ignore vendor  updated rector and applied it  removed another php 7.4 workaround  removed an old PHP 5 workaround in HTTPClient  remove checks for mbstring.func_overload  removed php 8 polyfills  ignore HTML validation issue with skipped headline levels  declare PrefCookie constant visibility  update slika which fixes another php 8.5 deprecation issue  fix http tests  fix destructuring false returns from changelog functions  avoid using null as cache key  Fix deprecation warning in UTF8/Conversion  ...

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Sun, 05 Apr 2026 09:15:35 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
<item>
        <title>8ae94493764af24070e5e96ffb0e17c6afb6e411 - update SearchIndex concept doc</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#8ae94493764af24070e5e96ffb0e17c6afb6e411</link>
        <description>update SearchIndex concept doc

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Thu, 30 Oct 2025 13:56:50 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;gohr@cosmocode.de&gt;</dc:creator>
    </item>
<item>
        <title>596d5287d7a816d606ef4153ef9e0f4704bf8f73 - Working fulltext collection and search</title>
        <link>http://127.0.0.1:8080/history/dokuwiki/inc/Search/concept.txt#596d5287d7a816d606ef4153ef9e0f4704bf8f73</link>
        <description>Working fulltext collection and searchThis finalizes the FulltextCollection and FulltextCollectionSearchclasses. Proper locking is implemented, tests have been enhanced.It should be possible to reimplement the page full text search on top ofit.

            List of files:
            /dokuwiki/inc/Search/concept.txt</description>
        <pubDate>Thu, 11 May 2023 10:55:00 +0000</pubDate>
        <dc:creator>Andreas Gohr &lt;andi@splitbrain.org&gt;</dc:creator>
    </item>
</channel>
</rss>
