Description
Enabling man_make_section_directory
by default in #8284 breaks projects relying on the previous behavior. This is a serious problem for Linux distributions that will end up with misplaced and unusable man pages. Please consider keeping it disabled by default; the benefit of being able to use MANPATH in the output directory does not justify this kind of breakage.
I also noticed that the current implementation generates paths like <builddir>/1
instead of <builddir>/man1
. Only the latter can be used with MANPATH which appears to be the main motivation behind #7996.
Examples of breakage I've seen so far (and we've only had sphinx 4.0.x in Arch Linux for three days):
fish-shell does not expect the section subdirectory and results in man pages for built-in shell commands being installed to usr/share/fish/man/man1/1
instead of usr/share/fish/man/man1
and also fails to filter out fish.1
, fish_indent.1
and fish_key_reader.1
which are meant to be installed to usr/share/man/man1
.
llvm-project copies the output directory to usr/share/man/man1
resulting in paths like usr/share/man/man1/1/foo.1
(note the additional 1
directory).
Activity
Fix sphinx-doc#9217: manpage: Dirname of man_make_section_directory i…
tk0miya commentedon May 16, 2021
Thank you for letting us know. I just reverted the change of default setting in #9232. It will be released as 4.0.2 soon. And I'll change the directory name in #9231. It will be released as 4.1.0.
Fix sphinx-doc#9217: manpage: Dirname of man_make_section_directory i…
Merge pull request #9231 from tk0miya/9217_manpage_section_directory