Created attachment 184865 [details] A patch file for the textproc/py-sphinx port that would fix the problem When building the Glasgow Haskell Compiler version 8.x that now uses Sphinx to generate its HTML documentation, the following error is got: ~~~~~ [output trimmed to show the end of the build log] writing output... [ 40%] gone_wrong writing output... [ 42%] index writing output... [ 45%] intro writing output... [ 48%] lang writing output... [ 51%] license writing output... [ 54%] packages /tmp/ghc-8.0.2/docs/users_guide/packages.rst:839: WARNING: Could not lex literal_block as "haskell". Highlighting skipped. writing output... [ 57%] parallel writing output... [ 60%] phases writing output... [ 62%] profiling Exception occurred: File "/usr/local/lib/python2.7/site-packages/docutils/writers/_html_base.py", line 671, in depart_document assert not self.context, 'len(context) = %s' % len(self.context) AssertionError: len(context) = 1 The full traceback has been saved in /tmp/ghc-8.0.2/tmp/sphinx-err-4JgATb.log, if you want to report the issue to the developers. Please also report this if it was a user error, so that a better error message can be provided next time. A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks! gmake[2]: *** [docs/users_guide/ghc.mk:18: docs/users_guide/build-html/users_guide/index.html] Error 1 gmake[2]: *** Deleting file 'docs/users_guide/build-html/users_guide/index.html' gmake[1]: *** [Makefile:134: all] Error 2 gmake[1]: Leaving directory '/tmp/ghc-8.0.2' *** Error code 1 ~~~~ Apparently that is due to some problems with the interaction between Sphinx and docutils 0.13.1, which was then reported and resolved as #3212 [1]. Unfortunately, the FreeBSD port does not have the fix for this problem, which could then break the planned update of the lang/ghc port to its version 8.0.2. I am attaching a patch file that would bring the fix to this issue and make the build of lang/ghc possible. [1] https://github.com/sphinx-doc/sphinx/issues/3212
Thank you Gabor. Could you update the patch to a diff of the port produced after generating the files/patch-file via make makepatch? This should also be MFH'd
Created attachment 184889 [details] Actual change to the ports tree All right, there you go.
Created attachment 184891 [details] Actual change to the ports tree Sorry, I uploaded an incorrect version of the patch. That should be fine now.
Thank you! Note: PORTREVISION ought to be bumped too
Created attachment 184892 [details] Actual change to the ports tree Yes, apparently I forgot to do that. Now I am updating the patch.
Comment on attachment 184892 [details] Actual change to the ports tree Approved by: portmgr (blanket, build/run fix)
@Gabor Attachment 184892 [details] is a blanket approval candidate (@bugmeister/triage) Please confirm this change passes QA (poudriere in particular) prior to commit/merge and if you don't mind, add a comment to the header of the patch with upstream description, issue/commit links, etc. Reporter is committer, assign accordingly
I'm ok with the patch, you can go ahead and commit it, approved by myself.
A commit references this bug: Author: pgj Date: Thu Aug 3 18:49:46 UTC 2017 New revision: 447275 URL: https://svnweb.freebsd.org/changeset/ports/447275 Log: Backport fix for issue #3212 PR: 221116 Submitted by: pgj Approved by: araujo (maintainer) Obtained from: https://github.com/sphinx-doc/sphinx/issues/3212 MFH: 2017Q3 Changes: head/textproc/py-sphinx/Makefile head/textproc/py-sphinx/files/patch-sphinx_writers_html.py
A commit references this bug: Author: feld Date: Thu Aug 17 12:50:58 UTC 2017 New revision: 448092 URL: https://svnweb.freebsd.org/changeset/ports/448092 Log: MFH: r447275 Backport fix for issue #3212 PR: 221116 Submitted by: pgj Approved by: araujo (maintainer) Obtained from: https://github.com/sphinx-doc/sphinx/issues/3212 Approved by: ports-secteam (with hat) Changes: _U branches/2017Q3/ branches/2017Q3/textproc/py-sphinx/Makefile branches/2017Q3/textproc/py-sphinx/files/patch-sphinx_writers_html.py
This could be closed now.