docusaurus-search-local icon indicating copy to clipboard operation
docusaurus-search-local copied to clipboard

Problem with docs-only-mode and trailingSlash configuration

Open axelhzf opened this issue 2 years ago • 2 comments

I am trying to configure the plugin, but I am not able to generate the index correctly. I am not sure if I am configuring the plugin incorrectly or if there is some kind of bug.

Here is a minimal reproduction repository: https://github.com/axelhzf/docusaurus-local-search-trailing-slash-problem

The problematic configuration is docs-only-mode and trailingSlash: true. With this configuration, the index is not being generated. If I set the trailingSlash: false the index file is generated correctly.

axelhzf avatar Aug 29 '22 09:08 axelhzf

Running the debug mode (DEBUG=search-local:* npm run build) I get this output

  search-local:verbose versionData: Map(1) {
  '/Users/axelhernandezferrera/dev/docusaurus-local-search-trailing-slash-bug/build' => Set(9) {
    '/intro',
    '/tutorial-basics/congratulations',
    '/tutorial-basics/create-a-blog-post',
    '/tutorial-basics/create-a-document',
    '/tutorial-basics/create-a-page',
    '/tutorial-basics/deploy-your-site',
    '/tutorial-basics/markdown-features',
    '/tutorial-extras/manage-docs-versions',
    '/tutorial-extras/translate-your-site'
  }
} +2ms
  search-local:info parsing documents +3ms

And this is the output with trailingSlash: false

  search-local:verbose versionData: Map(1) {
  '/Users/axelhernandezferrera/dev/docusaurus-local-search-trailing-slash-bug/build' => Set(9) {
    '/intro',
    '/tutorial-basics/congratulations',
    '/tutorial-basics/create-a-blog-post',
    '/tutorial-basics/create-a-document',
    '/tutorial-basics/create-a-page',
    '/tutorial-basics/deploy-your-site',
    '/tutorial-basics/markdown-features',
    '/tutorial-extras/manage-docs-versions',
    '/tutorial-extras/translate-your-site'
  }
} +2ms
  search-local:info parsing documents +3ms
  search-local:verbose parsing docs file 'build/intro.html' of '/intro' +1ms
  search-local:verbose parsing docs file 'build/tutorial-basics/congratulations.html' of '/tutorial-basics/congratulations' +0ms
  search-local:verbose parsing docs file 'build/tutorial-basics/create-a-blog-post.html' of '/tutorial-basics/create-a-blog-post' +0ms
  search-local:verbose parsing docs file 'build/tutorial-basics/create-a-document.html' of '/tutorial-basics/create-a-document' +0ms
  search-local:verbose parsing docs file 'build/tutorial-basics/create-a-page.html' of '/tutorial-basics/create-a-page' +1ms
  search-local:verbose parsing docs file 'build/tutorial-basics/deploy-your-site.html' of '/tutorial-basics/deploy-your-site' +0ms
  search-local:verbose parsing docs file 'build/tutorial-basics/markdown-features.html' of '/tutorial-basics/markdown-features' +0ms
  search-local:verbose parsing docs file 'build/tutorial-extras/manage-docs-versions.html' of '/tutorial-extras/manage-docs-versions' +0ms
  search-local:verbose parsing docs file 'build/tutorial-extras/translate-your-site.html' of '/tutorial-extras/translate-your-site' +0ms

axelhzf avatar Aug 29 '22 09:08 axelhzf

I think I have identified a problem here

https://github.com/easyops-cn/docusaurus-search-local/blob/master/docusaurus-search-local/src/server/utils/processDocInfos.ts#L119

The docs set has the URLs without the trailingslash

image

But the url variable has the trailing slash

image

axelhzf avatar Aug 29 '22 10:08 axelhzf

@axelhzf Could you try v0.32.1 to see if this is fixed?

weareoutman avatar Oct 08 '22 01:10 weareoutman

I will close it now, feel free to reopen it if the issue still exists.

weareoutman avatar Oct 09 '22 01:10 weareoutman