denoland/deno_doc

GitHub Pages: Jekyll causes URLs containing `~` to 404

Opened this issue · 1 comments

On GitHub Pages, Jekyll causes URLs containing ~ to 404. Related: The url contains '~' seems to be routed to 404

Links to documentation of the various functions/interfaces/etc are nested under docs/~ or docs/<filename>/~, so with the default GitHub Pages setup, none of those pages can be viewed.

Workaround: Add an empty .nojekyll at the GitHub Pages root (project root or docs/) on the relevant branch; if GitHub Pages root is docs/, recreate this file every time after running deno doc --html (currently, deno doc --html deletes everything under docs/, so it has to be replaced every time).

Possible fixes:

  • Change ~ directory name to something else
  • Keep ~ as default directory name but make it configurable
  • Generate .nojekyll under docs/
  • Generate .nojekyll under project root
  • Generate .nojekyll in both places (!)
  • Don't generate .nojekyll, but automatically replace it if it already happens to exist in docs/
  • Add a config option for where to generate .nojekyll, if at all
  • Add a config option for whether to delete unrecognized dotfiles under docs/ (or even finer-grained config, e.g. a glob pattern for files to leave unchanged in docs/)
  • Do nothing and require userland workarounds
  • Other?

I personally would say "do nothing". jekyll is an external tool, and we cannot start accomodating for various scenarios of different distribution systems. I wouldn't really be in favour of adding .nojekyll. The ~ divider was decided on being the only really viable character that could be used. This however is probably something we should mention in docs.deno.com