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.
Metadata
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 | Provenance | Actions |
|---|---|---|---|---|
| ietf_comments-0.2.6.tar.gz | 6.5 kB | With provenance | Details for ietf_comments-0.2.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| ietf_comments-0.2.6-py3-none-any.whl | Python 3 | none | any | Details for ietf_comments-0.2.6-py3-none-any.whl |
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 logSecurity for ietf-comments 0.2.6
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.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for ietf_comments-0.2.6.tar.gz
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 logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.