# Buildsheet autogenerated by ravenadm tool -- Do not edit.
NAMEBASE= python-xml2rfc
VERSION= 3.24.0
KEYWORDS= python
VARIANTS= v12 v13
SDESC[v12]= Request For Comment authoring with XML (3.12)
SDESC[v13]= Request For Comment authoring with XML (3.13)
HOMEPAGE= https://github.com/ietf-tools/xml2rfc
CONTACT= Python_Automaton[python@ironwolf.systems]
DOWNLOAD_GROUPS= main
SITES[main]= PYPI/x/xml2rfc
DISTFILE[1]= xml2rfc-3.24.0.tar.gz:main
DIST_SUBDIR= python-src
DF_INDEX= 1
SPKGS[v12]= single
SPKGS[v13]= single
OPTIONS_AVAILABLE= PY312 PY313
OPTIONS_STANDARD= none
VOPTS[v12]= PY312=ON PY313=OFF
VOPTS[v13]= PY312=OFF PY313=ON
DISTNAME= xml2rfc-3.24.0
GENERATED= yes
[PY312].BUILDRUN_DEPENDS_ON= python-platformdirs:single:v12
python-ConfigArgParse:single:v12
python-google-i18n-address:single:v12
python-intervaltree:single:v12
python-Jinja2:single:v12
python-lxml:single:v12
python-pycountry:single:v12
python-PyYAML:single:v12
python-requests:single:v12
python-setuptools:single:v12
python-wcwidth:single:v12
[PY312].USES_ON= python:v12,sutools
[PY313].BUILDRUN_DEPENDS_ON= python-platformdirs:single:v13
python-ConfigArgParse:single:v13
python-google-i18n-address:single:v13
python-intervaltree:single:v13
python-Jinja2:single:v13
python-lxml:single:v13
python-pycountry:single:v13
python-PyYAML:single:v13
python-requests:single:v13
python-setuptools:single:v13
python-wcwidth:single:v13
[PY313].USES_ON= python:v13,sutools
[FILE:3377:descriptions/desc.single]
[image]
[Release]
[License]
[![PyPI - Version]](https://pypi.org/project/xml2rfc/)
[![PyPI - Status]](https://pypi.org/project/xml2rfc/)
[![PyPI - Format]](https://pypi.org/project/xml2rfc/)
##### Generate RFCs and IETF drafts from document source in XML according
to the IETF xml2rfc v2 and v3 vocabularies
- [Changelog]
- [Installation]
- [Usage]
- [Contributing]
- [Getting Started]
- [Git Cloning Tips]
- [Docker Dev Environment]
- [Release Procedure]
---
### Introduction
The [IETF] uses a specific format for the standards and other documents it
publishes as [RFCs], and for the draft documents which are produced when
developing documents for publications. There exists a number of different
tools to facilitate the formatting of drafts and RFCs according to the
existing rules, and this tool, **xml2rfc**, is one of them. It takes as
input an xml file that contains the text and meta-information about author
names etc., and transforms it into suitably formatted output. The input xml
file should follow the grammars in [RFC7749] *(for v2 documents)* or
[RFC7991] *(for v3 documents)*. Note that the grammar for v3 is still being
refined, and changes will eventually be captured in the [bis draft for
7991]. Changes not yet captured can be seen in the xml2rfc source [v3.rng],
or in the [documentation xml2rfc produces] with its `--doc` flag.
**xml2rfc** provides a variety of output formats. See the command line help
for a full list of formats. It also provides conversion from v2 to v3, and
can run the [preptool] on its input.
### Installation
Installation of the python package is done as usual with `pip install
xml2rfc`, using appropriate switches.
#### Installation of support libraries for the PDF-formatter
In order to generate PDFs, **xml2rfc** uses the [WeasyPrint] module, which
depends on external libraries that must be installed as native packages on
your platform, separately from the **xml2rfc** install.
1. First, install the **Pango**, and other required libraries on your
system. See installation instructions on the [WeasyPrint Docs].
2. Next, install WeasyPrint python modules using pip.
```sh
pip install xml2rfc[pdf]
```
3. Finally, install the required fonts:
* Download latest fonts from [xml2rfc-fonts].
* In the **Assets** section, download either the `tar.gz` or the `zip`
archive.
* Extract the contents of the downloaded `xml2rfc-fonts` archive.
* Install the fonts found in the `noto` and `roboto_mono` directories to
your operating system.
With these installed and available to **xml2rfc**, the `--pdf` switch will
be enabled.
### Usage
**xml2rfc** accepts a single XML document as input and outputs to one or
more conversion formats.
#### Basic Usage
```sh
xml2rfc SOURCE [options] FORMATS...
```
Run `xml2rfc --help` for a full listing of command-line options.
### Getting Started
This project is following the standard **Git Feature Workflow** development
model. Learn about all the various steps of the development workflow, from
creating a fork to submitting a pull request, in the [Contributing] guide.
> Make sure to read the [Styleguides] section to ensure a cohesive code
format across the project.
You can submit bug reports, enhancements and new feature requests in the
[discussions] area. Accepted tickets will be converted to issues.
[FILE:111:distinfo]
db04c29ab45ef66e3ad780d2c68acfe0364e0de78d06932dfc9938e4286f422f 2702101 python-src/xml2rfc-3.24.0.tar.gz