From: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
To: Linux Doc Mailing List <linux-doc@vger.kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>,
Mauro Carvalho Chehab <mchehab@infradead.org>,
linux-kernel@vger.kernel.org, Jonathan Corbet <corbet@lwn.net>
Subject: [PATCH RFC 0/6] Produce ABI guide without escaping ReST source files
Date: Fri, 21 Jun 2019 09:32:00 -0300 [thread overview]
Message-ID: <cover.1561118631.git.mchehab+samsung@kernel.org> (raw)
Hi Greg,
As you proposed to give it a try on removing the escape code from the
script which parses the ReST file, I changed a few things there,
adding the capability of selectively enabling to output an ABI sub-dir
without escaping things that would crash Sphinx.
PS.: As for now this is just a RFC, I'm not getting the ABI file
maintainers, copying just LKML, linux-doc ML, plus you and Jon.
I also manually fixed the contents of ABI/stable, in order for it to
pass without causing troubles.
I added all patches from ABI and features at this branch:
https://git.linuxtv.org/mchehab/experimental.git/log/?h=abi_patches_v4.1
The html output is at https://www.infradead.org/~mchehab/rst_features/,
and you can see the resulting ABI guide on:
https://www.infradead.org/~mchehab/rst_features/admin-guide/abi.html
No Sphinx crashes/warnings happen when building it.
That's my personal notes about such work:
1) Documentation/ABI/stable/sysfs-class-infiniband
It had some title captions inside it, like:
Errors info:
-----------
For one of the "What:"
Sphinx is really pick with title markups. As the entire Documentation/stable is
parsed as if it were a single document, there should be a coherency on what
character is used to markup a level-one title. I mean, if one document uses:
foo
----
For the first level, all other documents should use "---...-" as well.
The alternative would be to have one entry for every single file at
Documentation/admin-guide/abi-*.rst, with, IMHO, it would be a lot
harder to maintain.
So, the best seems to let clear at ABI/README about how titles/subtitles
should be used inside files, if any.
2) Some documents there use a "Values:" tag, with is not defined as a
valid one at ABI/README. The script handles it as part of the description,
so no harm done;
3) Among the 47 files under ABI/stable, 14 of them names the file
contents, using a valid ReST markup for the document title. That is shown
at the index at:
https://www.infradead.org/~mchehab/rst_features/admin-guide/abi.html
- ABI stable symbols
- sysfs interface for Mellanox ConnectX HCA IB driver (mlx4)
- sysfs interface for Intel IB driver qib
- sysfs interface for Intel(R) X722 iWARP i40iw driver
- sysfs interface for QLogic qedr NIC Driver
- sysfs interface for NetEffect RNIC Low-Level iWARP driver (nes)
- sysfs interface for Cisco VIC (usNIC) Verbs Driver
- sysfs interface for Chelsio T3 RDMA Driver (cxgb3)
- sysfs interface for Chelsio T4/T5 RDMA driver (cxgb4)
- sysfs interface for Intel Omni-Path driver (HFI1)
- sysfs interface for VMware Paravirtual RDMA driver
- sysfs interface for Mellanox Connect-IB HCA driver mlx5
- sysfs interface for Emulex RoCE HCA Driver
- sysfs interface for Broadcom NetXtreme-E RoCE driver
- sysfs interface for Mellanox IB HCA low-level driver (mthca)
I liked that, but ideally all ABI files should either use it or not.
4) I was expecting to have troubles with asterisk characters inside the
ABI files. That was not the case: I had to escape just one occurrence on
a single file of the 47 ones inside ABI/stable.
-
My conclusion from this experiment is that it is worth cleaning the ABI
files for them to be parsed without needing to escape non-ReST compliant
parts of the ABI file.
Perhaps we could keep rst-compliant the stable, obsolete and removed
directories only, and gradually moving stuff from ABI/testing to ABI/stable,
while fixing them to be rst-compliant.
Mauro Carvalho Chehab (6):
get_abi.pl: fix parsing on ReST mode
ABI: sysfs-driver-mlxreg-io: fix the what fields
ABI: README: specify that files should be ReST compatible
ABI: stable: make files ReST compatible
docs: ABI: make it parse ABI/stable as ReST-compatible files
docs: abi: create a 2-depth index for ABI
Documentation/ABI/README | 10 +-
Documentation/ABI/stable/firewire-cdev | 4 +
Documentation/ABI/stable/sysfs-acpi-pmprofile | 22 +++--
Documentation/ABI/stable/sysfs-bus-firewire | 3 +
Documentation/ABI/stable/sysfs-bus-nvmem | 19 ++--
Documentation/ABI/stable/sysfs-bus-usb | 6 +-
.../ABI/stable/sysfs-class-backlight | 1 +
.../ABI/stable/sysfs-class-infiniband | 97 +++++++++++++------
Documentation/ABI/stable/sysfs-class-rfkill | 13 ++-
Documentation/ABI/stable/sysfs-class-tpm | 90 ++++++++---------
Documentation/ABI/stable/sysfs-devices | 5 +-
Documentation/ABI/stable/sysfs-driver-ib_srp | 1 +
.../ABI/stable/sysfs-driver-mlxreg-io | 45 ++++-----
.../ABI/stable/sysfs-firmware-efi-vars | 4 +
.../ABI/stable/sysfs-firmware-opal-dump | 5 +
.../ABI/stable/sysfs-firmware-opal-elog | 2 +
Documentation/ABI/stable/sysfs-hypervisor-xen | 3 +
Documentation/ABI/stable/vdso | 5 +-
Documentation/admin-guide/abi-stable.rst | 1 +
Documentation/admin-guide/abi.rst | 2 +-
Documentation/sphinx/kernel_abi.py | 9 +-
scripts/get_abi.pl | 30 +++---
22 files changed, 231 insertions(+), 146 deletions(-)
--
2.21.0
next reply other threads:[~2019-06-21 12:32 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-21 12:32 Mauro Carvalho Chehab [this message]
2019-06-21 12:32 ` [PATCH RFC 1/6] get_abi.pl: fix parsing on ReST mode Mauro Carvalho Chehab
2019-06-21 12:32 ` [PATCH RFC 2/6] ABI: sysfs-driver-mlxreg-io: fix the what fields Mauro Carvalho Chehab
2019-06-21 12:32 ` [PATCH RFC 3/6] ABI: README: specify that files should be ReST compatible Mauro Carvalho Chehab
2019-06-21 12:32 ` [PATCH RFC 4/6] ABI: stable: make files " Mauro Carvalho Chehab
2019-06-21 12:32 ` [PATCH RFC 5/6] docs: ABI: make it parse ABI/stable as ReST-compatible files Mauro Carvalho Chehab
2019-06-21 12:32 ` [PATCH RFC 6/6] docs: abi: create a 2-depth index for ABI Mauro Carvalho Chehab
2019-06-21 12:39 ` [PATCH RFC 0/6] Produce ABI guide without escaping ReST source files Mauro Carvalho Chehab
2019-06-21 13:04 ` Mauro Carvalho Chehab
2019-06-21 15:37 ` Mauro Carvalho Chehab
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=cover.1561118631.git.mchehab+samsung@kernel.org \
--to=mchehab+samsung@kernel.org \
--cc=corbet@lwn.net \
--cc=gregkh@linuxfoundation.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mchehab@infradead.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.