question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

SDK manpages bad-whatis-entry

See original GitHub issue

Describe the bug

Manpages for multi-level commands for dotnet violate Debian’s lintian rule for use by whatis and apropos.

To Reproduce

I’m not sure how to reproduce this directly, but I do know attempting to build 6.0.102 from https://github.com/dotnet/installer making use of debmake and sbuild, at the end of a successful build, every man, with exception to dotnet-vstest.1, and dotnet.1 give a lintian warning of bad-whatis-entry, as the name for the multi-level commands are space separated, while it is suggested they be separated instead by an underscore, so they can be properly discovered by whatis and apropos. As an example, if I am understanding this correctly, for dotnet-add-package.1, instead of the line \f[C]dotnet add package\f[R]..., it should be \f[C]dotnet_add_package\f[R]....

Further technical details

https://lintian.debian.org/tags/bad-whatis-entry

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:19 (8 by maintainers)

github_iconTop GitHub Comments

1reaction
TheJayManncommented, Jun 6, 2022

After trying this myself, I found that it wasn’t quite as simple as I thought. The dsc file also contains hashes and sizes of the archive files. After manually updating that with the new hash and file size, I was able to run it. The result shows all the bad-whatis-entry messages gone, with only the groff-message remaining, all mostly the same, as well as one new one for dotnet.1.gz.

W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet-new.1.gz (line 1) 312: warning [p 2, 1.2i, div '3tbd19,3', 0.0i]: cannot adjust line
W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet-new.1.gz (line 2) 389: warning [p 2, 1.2i, div '3tbd26,3', 0.0i]: cannot adjust line
W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet.1.gz (line 1) page 3: table text block will not fit on one page
W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet-new-sdk-templates.1.gz (line 1) 258: warning [p 1, 3.0i, div '3tbd19,3', 0.0i]: cannot adjust line
W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet-new-sdk-templates.1.gz (line 2) 335: warning [p 1, 3.0i, div '3tbd26,3', 0.0i]: cannot adjust line
W: dotnet-sdk-manpages: groff-message usr/share/man/man1/dotnet-new-sdk-templates.1.gz (line 3) 434: warning [p 1, 3.0i, div '3tbd36,1', 0.0i]: cannot adjust line

I’m not sure how much of an issue these are. They all appear to be related to tables possibly being too large for a display. However, with the rather large terminal screen size that I have, I don’t see any issue with the pages. Even when using XTerm in order to get a smaller terminal screen size (as I’m not sure how native terminal can be resized, and, for some reason, I can’t resize QTerminal), it is still legible enough.

1reaction
TheJayManncommented, Jun 2, 2022

Here is the source package, made up of three files. The two .zip files are not actually zip files, I just added the extension to it so that it could be uploaded. The dotnet-sdk-manpages_1.0.0.orig.tar.gz file contains the manpages from source build 6.0.102 with the patch from the PR applied. Ideally, you would replace that with a file with the same name and same internal directory layout with updated files. I was able to run sbuild with only these three files by running sbuild dotnet-sdk-manpages_1.0.0-1.dsc -d unstable, while already having an sbuild schroot of Debian unstable already set up. Alternatively, you can extract the contents of dotnet-sdk-manpages_1.0.0.orig.tar.gz and dotnet-sdk-manpages_1.0.0-1.debian.tar.xz into the same directory and just run sbuild from that directory. I’m sure you can also use another build system, such as debuild, pbuild, or dpkg-buildpackage. If lintian is not automatically run after the build, you can manually run lintian specifying the produced deb package. dotnet-sdk-manpages_1.0.0.orig.tar.gz dotnet-sdk-manpages_1.0.0-1.debian.tar.xz.zip dotnet-sdk-manpages_1.0.0-1.dsc.zip

Read more comments on GitHub >

github_iconTop Results From Across the Web

bad-whatis-entry
Manual pages for multiple programs, functions, or files should list each separated by a comma and a space, followed by - and a...
Read more >
libpmemcto1-debug_1.4.1-0ubuntu1~18.04.1_amd64.deb
NOTE: This is an experimental API and should not be used in production environments. ... patch to fix the manpage-has-bad-whatis-entry lintian warning.
Read more >
Bug #1817336 “[MIR] runc” : Bugs : runc package : Ubuntu
The missing manpage for recvtty could be created somewhat easily via the recvtty --help output, which looks very much like a manpage already....
Read more >
Log - HEAD - pub/scm/libs/libcap/ ...
... a408930 Improve style in man page function prototypes by Emanuele Torre · 4 ... 44ab72a Update documentation for all API functions. by...
Read more >
changelog.txt
TH macros generated by asciidoc Make shadow man pages generated by asciidoc ... Merge branch 'input-api' Bump to 1.3.99 Remove refcnt initialization from ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found