Bug 257877 - security/cyrus-sasl2 error building man pages with sphinx
Summary: security/cyrus-sasl2 error building man pages with sphinx
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Hajimu UMEMOTO
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-08-15 23:17 UTC by Marcin Gryszkalis
Modified: 2021-08-22 12:14 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (ume)


Attachments
without sphinx build (528 bytes, patch)
2021-08-16 17:45 UTC, Hajimu UMEMOTO
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Marcin Gryszkalis 2021-08-15 23:17:23 UTC
cyrus-sasl-2.1.27
py38-sphinx-3.5.2,1

gmake[4]: Entering directory '/usr/ports/security/cyrus-sasl2/work/cyrus-sasl-2.1.27'
test x"." = x"." || \
        (cd . && tar cf - --mode=gu+w docsrc) | tar xf -
/usr/local/bin/sphinx-build -d docsrc/.doctrees -n -q -b cyrman ./docsrc ./man

Extension error:
Could not import extension sphinxlocal.builders.manpage (exception: cannot import name 'NoUri' from 'sphinx.environment' (/usr/local/lib/python3.8/site-packages/sphinx/environment/__init__.py))


Seems to be known problem:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=955095
https://bugs.launchpad.net/ubuntu/+source/cyrus-sasl2/+bug/1894907
https://aur.archlinux.org/pkgbase/cyrus-imapd/?O=0&PP=10

Ubuntu's bug says: cyrus-sasl2 ships with a sphinx extension to build its documentation, and this extension was based on a very old sphinx version.

Not sure about proper way to address it but many packages depends now on this (as result of dependency from openldap) - like php*-ldap etc.
Comment 1 Hajimu UMEMOTO freebsd_committer freebsd_triage 2021-08-16 17:45:03 UTC
Created attachment 227250 [details]
without sphinx build

Thank you for your report.
Unfortunately, I don't have python38 environment but have python39, for now.
So, I tried to reproduce it with py39-sphinx-3.5.2,1 without any success.
However, I found --with-sphinx-build option.
Could you try the attached patch?
Comment 2 Marcin Gryszkalis 2021-08-17 23:34:18 UTC
--with-sphinx-build=no fixed the build.

I also digged a bit and because I could not reproduce the problem on other system: I found following piece in configure:

if  test -n "$SPHINX_BUILD" -a x"$have_ppvr" = xyes; then
  HAVE_SPHINX_BUILD_TRUE=
  HAVE_SPHINX_BUILD_FALSE='#'
else
  HAVE_SPHINX_BUILD_TRUE='#'
  HAVE_SPHINX_BUILD_FALSE=
fi


and mysterious have_ppvr is check for perl package: Pod::POM::View::Restructured - which was installed on the system where build was failing. On the box without it the sphinx build was disabled (I removed the package (textproc/p5-Pod-POM-View-Restructured) to test this case and it helped. The package is build dependency for sysutils/parallel.

Anyway - setting with-sphinx-build=no should do the job.
Comment 3 commit-hook freebsd_committer freebsd_triage 2021-08-22 12:12:16 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9a7faada9222f97a8acdc61602fbf38017881dc6

commit 9a7faada9222f97a8acdc61602fbf38017881dc6
Author:     Hajimu UMEMOTO <ume@FreeBSD.org>
AuthorDate: 2021-08-22 12:05:07 +0000
Commit:     Hajimu UMEMOTO <ume@FreeBSD.org>
CommitDate: 2021-08-22 12:09:49 +0000

    security/cyrus-sasl2: Disable sphinx build.

    PR:             257877

 security/cyrus-sasl2/Makefile.common | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 4 Hajimu UMEMOTO freebsd_committer freebsd_triage 2021-08-22 12:14:45 UTC
Thanks, committed.