The IETF Comments Processor
Handling comments from the IESG, multiple directorate reviews, and in AUTH48 can be burdensome for document authors, because of the sheer number of comments, and because they come in an unstructured format that has to be manually processed.
This package installs two commands:
ietf-commentsprocesses comments from the IESG and directorates in a markdown-based format.rfced-commentsprocesses comments from the RFC Editor in RFC XML files.
Both can be used to create GitHub issues for the comments they find. When used properly, they can help automate formerly tiresome tasks.
For IESG and directorate comments, this tool uses the IETF Comment Markdown format, which is a semi-structured format that is similar to that which ADs and directorates use now. Ideally, they will create comments in that format for easy processing, but even when they don't, most comments can easily be transformed into it for processing.
Online Validator
If you just need to validate markdown comments, see the online comments validator.
Installation
To install ietf-comments, you'll need Python.
The best way to install it is using pipx, because that will automatically create an isolated environment for the dependencies:
pipx install ietf-comments
Note that to use rfced-comments, you'll need Python 3.10 or greater. To assure that Python 3.10 is being used, you may need to use something like:
pipx install ietf-comments --python /path/to/python3.10
Use
Processing AD and Directorate Comments
To validate a AD or Directorate review in the IETF Comment Markdown format and see the identified issues, run:
ietf-comments filename
To create a GitHub issue for each issue, set GITHUB_ACCESS_TOKEN in your environment to a GitHub Personal Access Token and run:
ietf-comments -g owner/repo filename
... where owner/repo is the repo owner and name, separated by a slash.
If you'd like these issues to have a specific label, run:
ietf-comments -g owner/repo filename -l labelname
If you'd like discuss, comment, and nit labels added as appropriate, along with a review label, pass -a:
ietf-comments -g owner/repo filename -a
Processing RFC Editor Comments
To validate RFC Editor comments in a local RFC XML file and see the identified issues, run:
rfced-comments filename
Alternatively, if you're in AUTH48 and the RFC Editor has published a draft of your RFC-to-be, you can just run
rfced-comments NNNN
where NNNN is the RFC number.
To create a GitHub issue for each issue, set GITHUB_ACCESS_TOKEN in your environment to a GitHub Personal Access Token and run:
rfced-comments -g owner/repo NNNN_or_filename
... where owner/repo is the repo owner and name, separated by a slash.
If you'd like these issues to have a specific label, run:
rfced-comments -g owner/repo NNNN_or_filename -l labelname
Special Features
The following features are currently supported (more soon!):
- When recognised, internal section references (e.g.,
Section 2.4) are auto-linked in created issues. - Likewise, references to external RFCs (e.g.,
Section 5.3 of [RFC1234]) will also be auto-linked in created issues when recognised. - Text in blockquotes (preceded by
>) in comments will be checked for presence in the document; if they aren't found, a warning will be raised.
Release files for ietf-comments 0.2.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ietf_comments-0.2.6.tar.gz | 6.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ietf_comments-0.2.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.4 kB
Release files / ietf_comments-0.2.6.tar.gz
| Download URL | ietf_comments-0.2.6.tar.gz |
|---|---|
| Size | 6.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
416169d4adf3bb73979a209c0a49e6329be3262095c851cbaf5e27f72c3de998
|
|
BLAKE2b-256 checksum How to use checksums |
a62b2fa8d68ad51203e8da1979fcd4fc642ad531fe665e56ebf385d9ad41f393
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 10, 2026.
Transparency logRelease files / ietf_comments-0.2.6-py3-none-any.whl
| Download URL | ietf_comments-0.2.6-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
786f62aa932aef411b2f7450cb530a651aeeaa1f3911ca794280267c59d9b4cd
|
|
BLAKE2b-256 checksum How to use checksums |
028414b330e5d499d0ebfa191cd005eeb6324f6028a966c5ae299f7657418a8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 10, 2026.
Transparency log