From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Eduardo Habkost <ehabkost@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>,
Gabriel Barreto <sbarreto.gabriel@gmail.com>,
qemu-devel@nongnu.org, "Emilio G. Cota" <cota@braap.org>,
Stefan Hajnoczi <stefanha@redhat.com>,
Cleber Rosa <crosa@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>, John Snow <jsnow@redhat.com>
Subject: Re: [Qemu-devel] Introducing GSoC project: API Documentation Generation
Date: Tue, 21 May 2019 09:53:50 +0100 [thread overview]
Message-ID: <20190521085350.GF25835@redhat.com> (raw)
In-Reply-To: <20190520184108.GA10764@habkost.net>
On Mon, May 20, 2019 at 03:41:08PM -0300, Eduardo Habkost wrote:
> Please welcome GSoC student Gabriel Barreto. Gabriel is going to
> work on QEMU API Documentation Generation[1].
>
> Gabriel's first task is to evaluate our options for extract doc
> comments from C source code and integrate them into Sphinx
> documentation. I saw that Peter has experimented with kernel-doc
> in the past[2][3]. Has anybody evaluated other alternatives?
> (e.g. Hawkmoth[4])
In the past I tested both GTK-DOC and Doxygen.
GTK-DOC has assumptions that you're following "normal" GTK/GLib style and
can't cope with many C type decls if you diverge, which rules it out on
practical grounds.
Doxygen can parse more or less anything which I really dislike the output
structure it generates for docs as it is not at all friendly to browser and
find the info you actually want compared to other docs tools
Hawkmoth seems pretty attractive in its output format, but doesn't appear
to be part of either Debian or Fedora distros, so we would have to bundle
it in QEMU I expect. My big concern there is that there have only been
2 contributors to Hawkmoth in its entire 3 year existance, which makes
me fear for its long term viability if the main author gives up.
QEMU should pick a tool which is well established / widely used & thus
stands a good chance of being maintained for the long term, as we don't
want to end up relying on abandonware in 5 years time. The kernel-doc
project is not widely used, but its main user is significant enough that
it isn't likely to die through lack of maintainers.
If we're using sphinx for the rest of our docs, then I think it is pretty
compelling to have a docs tool that integrates well with sphinx.
I personally don't care much about the source comment annotation syntax.
It is mostly just a matter of bikeshed colour picking, and no matter
which tool we pick will require updates to the source. The style /
layout / readability of the output is more important to me.
> [1] https://wiki.qemu.org/Google_Summer_of_Code_2019#API_documentation_generation
> [2] https://www.mail-archive.com/qemu-devel@nongnu.org/msg411643.html
> [3] https://www.mail-archive.com/qemu-devel@nongnu.org/msg411841.html
> [4] https://readthedocs.org/projects/hawkmoth/
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2019-05-21 9:02 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-20 18:41 [Qemu-devel] Introducing GSoC project: API Documentation Generation Eduardo Habkost
2019-05-20 18:48 ` John Snow
2019-05-21 8:53 ` Daniel P. Berrangé [this message]
2019-05-21 9:43 ` Peter Maydell
2019-05-21 11:06 ` Daniel P. Berrangé
2019-05-21 10:55 ` Paolo Bonzini
2019-05-21 15:18 ` Markus Armbruster
2019-05-21 15:25 ` Daniel P. Berrangé
2019-05-21 15:27 ` Peter Maydell
2019-05-21 17:14 ` Paolo Bonzini
2019-05-21 20:32 ` John Snow
2019-05-21 20:37 ` Eduardo Habkost
2019-05-22 8:20 ` Paolo Bonzini
2019-05-23 12:20 ` John Snow
2019-05-24 18:34 ` Paolo Bonzini
2019-05-24 19:08 ` Eduardo Habkost
2019-05-24 20:02 ` Paolo Bonzini
2019-05-21 16:17 ` Eduardo Habkost
2019-05-21 17:14 ` Paolo Bonzini
2019-05-21 9:42 ` Peter Maydell
2019-05-21 11:01 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190521085350.GF25835@redhat.com \
--to=berrange@redhat.com \
--cc=cota@braap.org \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jsnow@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=sbarreto.gabriel@gmail.com \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).