Bug 241183

Summary: cad/kicad-doc: Fails to build randomly/intermittently apparently due to build parallelism
Product: Ports & Packages Reporter: dgilbert
Component: Individual Port(s)Assignee: Christoph Moench-Tegeder <cmt>
Status: Closed FIXED    
Severity: Affects Only Me Keywords: needs-patch, needs-qa
Priority: --- Flags: cmt: maintainer-feedback+
cmt: merge-quarterly+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
poudirere build log.
none
Another build log with different failure, same sources. none

Description dgilbert 2019-10-10 18:17:34 UTC
Created attachment 208229 [details]
poudirere build log.

The russian documentation fails and scuttles the whole build.

build log attached.
Comment 1 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2019-10-10 20:50:54 UTC
In this case, it was the english (-o is the output) documentation which failed:
 a2x: ERROR: "dblatex" -t pdf -p "/usr/local/etc/asciidoc/dblatex/asciidoc-dblatex.xsl" -s "/usr/local/etc/asciidoc/dblatex/asciidoc-dblatex.sty" -P latex.output.revhistory=0 -P doc.publisher.show=0 -s /wrkdirs/usr/ports/cad/kicad-doc/work/kicad-doc-5.1.4/CMakeSupport/pdf-cover-dblatex.sty -b xetex -p /wrkdirs/usr/ports/cad/kicad-doc/work/kicad-doc-5.1.4/src/eeschema/../../xsl/dblatex-pdf-ru.xsl -o /wrkdirs/usr/ports/cad/kicad-doc/work/.build/src/eeschema/en/eeschema.pdf  "/wrkdirs/usr/ports/cad/kicad-doc/work/.build/src/eeschema/en/eeschema.xml" returned non-zero exit status 1

Unfortunately, dblatex seems to be rather brittle and tends to fail under load (reducing poudriere parallelism increases the likelyhood of kicad-doc finishing a lot). If it was only russian, I'd have no qualms just disabling it in this build, but I've seen failures in nearly all languages - including english, as demonstrated above, and once we remove that, this port will be useless for the majority of users (not to mention that english seems to be the reference language of the documentation).

Now, if someone could upgrade our tex stack and check if that improves matters... (ENOTIME on my side).
Comment 2 dgilbert 2019-10-10 21:14:20 UTC
I get what you're saying.  I'm uploading another log.  Didn't change anything.  This is with poudriere only compiling one port --- this one.  Maybe the port should turn off parallelism?  I dunno.  Pain that it's always failing.
Comment 3 dgilbert 2019-10-10 21:14:51 UTC
Created attachment 208234 [details]
Another build log with different failure, same sources.
Comment 4 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2019-10-12 16:32:50 UTC
(In reply to dgilbert from comment #2)
In my tests, MAKE_JOBS_UNSAFE didn't improve matters - it failed at about the same rate, but took longer to do so. But then, it doesn't fail that often in my setup... You could try that in your builds - if it helps, I'm fine with using that. Otherwise, we should really fix the reliability problem in dblatex (or whatever is causing the problem down the stack).
Comment 5 commit-hook freebsd_committer freebsd_triage 2020-03-01 18:04:59 UTC
A commit references this bug:

Author: cmt
Date: Sun Mar  1 18:04:32 UTC 2020
New revision: 527565
URL: https://svnweb.freebsd.org/changeset/ports/527565

Log:
  switch kicad-doc from source to pre-built docs

  The build process is rather unstable on our asciidoc toolchain, but
  then the doc files are completely independent of OS and machine
  architecture, so there's nothing which stops us from just taking the
  ready-built files from upstream. At the same time this enables two
  additional documentation languages (polnish and chinese) - their
  build process was even more unstable than the rest in my environment.

  PR:		241183
  MFH:		2020Q1

Changes:
  head/cad/kicad-doc/Makefile
  head/cad/kicad-doc/distinfo
  head/cad/kicad-doc/pkg-plist
Comment 6 commit-hook freebsd_committer freebsd_triage 2020-03-01 18:11:01 UTC
A commit references this bug:

Author: cmt
Date: Sun Mar  1 18:10:41 UTC 2020
New revision: 527566
URL: https://svnweb.freebsd.org/changeset/ports/527566

Log:
  MFH: r527565

  switch kicad-doc from source to pre-built docs

  The build process is rather unstable on our asciidoc toolchain, but
  then the doc files are completely independent of OS and machine
  architecture, so there's nothing which stops us from just taking the
  ready-built files from upstream. At the same time this enables two
  additional documentation languages (polnish and chinese) - their
  build process was even more unstable than the rest in my environment.

  PR:		241183

  Approved by:	ports-secteam (joneum@)

Changes:
_U  branches/2020Q1/
  branches/2020Q1/cad/kicad-doc/Makefile
  branches/2020Q1/cad/kicad-doc/distinfo
  branches/2020Q1/cad/kicad-doc/pkg-plist
Comment 7 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2020-03-01 18:14:03 UTC
given up hope of fixing asciidoc/dblatex/whatever toolchain, switched to pre-built docs.

committed ports r527565 and ports r527566 (MFH).
Thanks for your patience.