Thanks Max for the fix [1], we were able to remove the previous doc versions from the search index, and it's already live!
While working on this, we found two follow-up issues: 1. Duplicate results -- There's another duplicate issue causing 2 identical results to appear. I have a fix ready here [2]. 2. "Nightly" vs. "Latest" docs -- Both the "Docs" tab on https://iceberg.apache.org/ and the search index currently point to "nightly" (the most up-to-date documentation based on the main branch). This could be confusing if it includes changes that haven't been released yet. I'd suggest updating both to link to "latest" (the most recent release version) instead. Thoughts? Best, Kevin Liu [1] https://github.com/apache/iceberg/pull/16368 [2] https://github.com/apache/iceberg/pull/16371 On Sat, May 16, 2026 at 9:49 AM Kevin Liu <[email protected]> wrote: > Thanks for looking into this, Max. Yes please create a PR, I'll take a > look. This is a great quick win for our docs :) > > > On Fri, May 15, 2026 at 7:18 PM Max Konstantinov < > [email protected]> wrote: > >> > mkdocs-exclude-search (https://github.com/chrieke/mkdocs-exclude-search) >> seems promising >> >> Hey Kevin, >> >> I tried the mkdocs-exclude-search approach and it works: >> >> mkdocs-exclude-search==0.6.6 >> >> - exclude-search: >> exclude: >> - 'docs/latest/*' >> - 'docs/1*/*' >> exclude_unreferenced: true >> >> Config above leaves only nightly present in the index. Should I create a >> PR? >> >> > I've looked into this before, the best solution I found is to migrate >> over to `mike` (see the tracking issue >> https://github.com/apache/iceberg/issues/14521) It's a lot of work >> though and I didn't want to risk breaking the site. >> >> Let's decide if we want a quick solution for search as >> described above and then I can look into this large task with a version >> selector? >> >> >> On Thu, May 14, 2026 at 9:59 AM Kevin Liu <[email protected]> wrote: >> >>> mkdocs-exclude-search (https://github.com/chrieke/mkdocs-exclude-search) >>> seems promising >>> >>> We can try something like this to exclude all the versioned paths: >>> ``` >>> plugins: >>> - search >>> - exclude-search: >>> exclude: >>> - "*/[0-9]*/**" >>> ``` >>> >>> Note that nightly and latest are symlinks. >>> >>> >>> >>> >>> On Thu, May 14, 2026 at 9:54 AM Kevin Liu <[email protected]> wrote: >>> >>>> +1 to only indexing the latest/nightly >>>> mkdoc is using the `search` plugin [1]. And like you mentioned, we can >>>> use its `exclude ` property to configure exclusion paths. >>>> >>>> >>>> > Is there a way we can add a Version dropdown to the search? >>>> "Latests, 1.11, etc ...." >>>> >>>> I've looked into this before, the best solution I found is to migrate >>>> over to `mike` (see the tracking issue >>>> https://github.com/apache/iceberg/issues/14521) It's a lot of work >>>> though and I didn't want to risk breaking the site. >>>> >>>> Best, >>>> Kevin Liu >>>> >>>> >>>> [1] >>>> https://github.com/apache/iceberg/blob/87a7e4b13470b238e86872e5b194b80c3a89a80f/site/mkdocs.yml#L51 >>>> [2] >>>> https://squidfunk.github.io/mkdocs-material/plugins/search/#meta.search.exclude >>>> >>>> >>>> >>>> On Thu, May 14, 2026 at 9:33 AM Max Konstantinov < >>>> [email protected]> wrote: >>>> >>>>> That was my first idea too. I did some research and it seems it will >>>>> be more complicated to implement and might require an overhaul of the site >>>>> build process or/and site structure. Let me look into that again and get >>>>> back with an overview of potential changes. >>>>> >>>>> On Thu, May 14, 2026 at 9:13 AM Russell Spitzer < >>>>> [email protected]> wrote: >>>>> >>>>>> Is there a way we can add a Version dropdown to the search? "Latests, >>>>>> 1.11, etc ...." >>>>>> >>>>>> On Thu, May 14, 2026 at 10:26 AM Max Konstantinov < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> I looked into options for resolving that and the easiest solution I >>>>>>> found is to exclude all md files from search for all Icerbrg >>>>>>> documentation >>>>>>> versions, except for the just one, nightly probably being the best >>>>>>> candidate as it is a defult landing version of documentation. That can >>>>>>> be >>>>>>> achieved by adding a mkdocs-material's YAML frontmatter property to md >>>>>>> files during the site build process: >>>>>>> >>>>>>> --- >>>>>>> <https://squidfunk.github.io/mkdocs-material/setup/setting-up-site-search/#__codelineno-6-2>search: >>>>>>> >>>>>>> <https://squidfunk.github.io/mkdocs-material/setup/setting-up-site-search/#__codelineno-6-3> >>>>>>> exclude: true >>>>>>> <https://squidfunk.github.io/mkdocs-material/setup/setting-up-site-search/#__codelineno-6-4>--- >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Thu, May 14, 2026 at 1:39 AM Robin Moffatt via dev < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> I agree, the current behaviour is not ideal for the end-user. The >>>>>>>> results don't indicate the version either so you end up with literal >>>>>>>> duplicates: >>>>>>>> [image: CleanShot 2026-05-14 at [email protected]] >>>>>>>> >>>>>>>> On Thu, 14 May 2026 at 07:17, Max Konstantinov < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi all, >>>>>>>>> >>>>>>>>> >>>>>>>>> Problem statement >>>>>>>>> If you open https://iceberg.apache.org/ >>>>>>>>> <https://urldefense.com/v3/__https://iceberg.apache.org/__;!!Ayb5sqE7!oRqHG1ZbjiQCzTf4geY7acwJ5T348ItdBhCxA93gVPFAC7C6I6nQHtkpxvkEN1zEBSfkq7BdqNaJnYBf6wfaUGD1HAZo$> >>>>>>>>> and >>>>>>>>> use a search bar to look for anything, ex: "rewrite", you get >>>>>>>>> duplicated >>>>>>>>> results because results(ex: rewrite_table_path) are found multiple >>>>>>>>> times, >>>>>>>>> once for each version of Iceberg documentation(1.4 to 1.10), all these >>>>>>>>> versions are present on the website under the previous section in the >>>>>>>>> navigation tab and all of them are indexed. >>>>>>>>> >>>>>>>>> Question >>>>>>>>> Is that a bug and does it need to be addressed? I have a >>>>>>>>> suggestion on how to approach this. >>>>>>>>> >>>>>>>>> Notes >>>>>>>>> Iceberg's site build uses mkdocs and mkdocs-material which in turn >>>>>>>>> utilize lunrjs for search. >>>>>>>>> >>>>>>>>> >>>>>>>>> Max. >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>
