Page MenuHomePhabricator

Update Doxygen in CI to 1.8.17 or greater
Closed, ResolvedPublic

Description

Similar to T239482: Update Doxygen in CI to 1.8.15 or greater.

Relevant changelog:
  • Add a new @noop command that that Doxygen will ignore when processing annotations.

This will unblock T233788.

Event Timeline

Krinkle created this task.Jan 7 2020, 8:22 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJan 7 2020, 8:22 PM
Krinkle updated the task description. (Show Details)
Krinkle updated the task description. (Show Details)

Doxygen 1.8.17 is being packaged in Debian under the experimental branch so it is not entirely ready. A few days ago it got some build failure fixed, unfortunately that lacks a debian tag to build from. I have contacted the developer to have it added.

  • 12dcaa1 - (debian/master, debian/HEAD) release to experimental (9 days ago) <Paolo Greppi>
  • 3c56103 - Fix sass compilation error (9 days ago) <Paolo Greppi>
  • 6586480 - (tag: debian/1.8.17-1_exp1) release to experimental (3 months ago) <Paolo Greppi>

The fix is for a build failure with unstable ( https://bugs.debian.org/954677 ) but maybe we are not affected under Buster.

I will have merge their debian work into our Buster backport branch debian/buster-wikimedia

Change 589416 had a related patch set uploaded (by Hashar; owner: Hashar):
[operations/debs/doxygen@debian/buster-wikimedia] Merge tag 'debian/1.8.17-1_exp1' into debian/buster-wikimedia

https://gerrit.wikimedia.org/r/589416

Good news, the few modifications I had to do to build on Buster got fixed upstream, so our fork is a bit simpler now.

The missing tag is not needed (T242155#6064021 above), the fix is for unstable and does not affect Buster.

The CI build passed: https://integration.wikimedia.org/ci/job/debian-glue/1852/ and has the resulting debian package attached if one wanna try it on Buster: https://integration.wikimedia.org/ci/job/debian-glue/1852/artifact/doxygen_1.8.17-1%7Eexp4%7Edeb10+wmf1+0%7E20200416203000.1852+buster+wikimedia%7E1.gbpd455f1_amd64.deb

So I guess we can test it, review my backport patch (Gerrit 589416) then handle it to SRE :]

Change 589416 had a related patch set uploaded (by Hashar; owner: Hashar):
[operations/debs/doxygen@debian/buster-wikimedia] Merge tag 'debian/1.8.17-1_exp1' into debian/buster-wikimedia

https://gerrit.wikimedia.org/r/589416

hashar added a comment.EditedMay 4 2020, 7:09 PM

1.8.17 has been tagged for Debian unstable and I have rebased my patch on it.

I build the MediaWiki documentation with the CI generated package and it seems to work. Recipe:

FROM docker-registry.wikimedia.org/releng/doxygen:0.6.1-s1

COPY doxygen_1.8.17-1~deb10+wmf1+0~20200504173100.1872+buster+wikimedia~1.gbp62715f_amd64.deb doxygen.deb
USER root
RUN dpkg -i doxygen.deb && rm doxygen.deb
USER nobody
LocalSettings.php
<?php
$wgServer = "http://127.0.0.1";
$ docker build -t foo .
$ install --directory --mode 777 docs
$ docker run \
  -v "$(pwd)/docs":/docs \
  -v ~/projects/mediawiki/core:/src \
  -v "$(pwd)/LocalSettings.php":/src/LocalSettings.php \
  --workdir /src \
  --entrypoint=/usr/bin/php foo:latest \
  maintenance/mwdocgen.php --output /docs

Then I have browsed the generated html and dot files ;)

The update is https://gerrit.wikimedia.org/r/#/c/operations/debs/doxygen/+/589416/ and is for Buster. I have tested the CI generated package and it works.

Once rebuild, the package should be uploaded on apt.wikimedia.org buster-wikimedia component/ci.

Change 589416 merged by jenkins-bot:
[operations/debs/doxygen@debian/buster-wikimedia] Merge tag 'debian/1.8.17-1' into debian/buster-wikimedia

https://gerrit.wikimedia.org/r/589416

Joe added a subscriber: Joe.May 25 2020, 1:49 PM

The package has been uploaded.

Change 598483 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] dockerfiles: rebuild for doxygen 1.8.17

https://gerrit.wikimedia.org/r/598483

Change 598483 merged by jenkins-bot:
[integration/config@master] dockerfiles: rebuild for doxygen 1.8.17

https://gerrit.wikimedia.org/r/598483

Change 598489 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] jjb: switch jobs to use doxygen 1.8.17

https://gerrit.wikimedia.org/r/598489

hashar closed this task as Resolved.May 25 2020, 2:09 PM

I have updated all the Jenkins jobs to use the new container.

Change 598489 merged by jenkins-bot:
[integration/config@master] jjb: switch jobs to use doxygen 1.8.17

https://gerrit.wikimedia.org/r/598489

Mentioned in SAL (#wikimedia-releng) [2020-05-25T14:21:32Z] <hashar> Built image releng/doxygen:0.7.0 for Doxygen 1.8.17 # T242155

Change 598980 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Rollback mwext-doxygen-publish to Doxygen 1.8.16

https://gerrit.wikimedia.org/r/598980

Change 598980 merged by jenkins-bot:
[integration/config@master] Rollback mwext-doxygen-publish to Doxygen 1.8.16

https://gerrit.wikimedia.org/r/598980

Doxygen 1.8.17 has a bunch of issues, notably on Wikibase. T253723 has some details and gdb stacktraces.

1.8.18 is apparently not affected. So I will file another task for it.