
Security News
New Website “Is It Really FOSS?” Tracks Transparency in Open Source Distribution Models
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.
= AsciiRFC: Writing Internet-Drafts and RFCs in AsciiDoc :source-highlighter: coderay :icons: font
metanorma-ietf
lets you write IETF Internet-Drafts and RFCs via Metanorma.
image:https://img.shields.io/gem/v/metanorma-ietf.svg["Gem Version", link="https://rubygems.org/gems/metanorma-ietf"] image:https://github.com/metanorma/metanorma-ietf/workflows/rake/badge.svg["Build Status", link="https://github.com/metanorma/metanorma-ietf/actions?workflow=rake"] image:https://codeclimate.com/github/metanorma/metanorma-ietf/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-ietf"] image:https://img.shields.io/github/issues-pr-raw/metanorma/metanorma-ietf.svg["Pull Requests", link="https://github.com/metanorma/metanorma-ietf/pulls"] image:https://img.shields.io/github/commits-since/metanorma/metanorma-ietf/latest.svg["Commits since latest",link="https://github.com/metanorma/metanorma-ietf/releases"]
== Functionality
This gem processes https://www.metanorma.com[Metanorma documents] following a template for generating IETF deliverables.
Metanorma-IETF adheres to AsciiRFC syntax, an AsciiDoc syntax for writing IETF documents developed by the Metanorma team.
The gem currently inherits from the https://github.com/metanorma/metanorma-standoc gem, and aligns closely to it.
The following outputs are generated:
doctype
: ietf
** Metanorma file extension: xmlrfc
(not xml
!)The "xml2rfc
" Vocabulary (hereinafter "RFC XML
") is an XML-based language
used for writing
https://www.ietf.org/id-info/guidelines.html[Internet-Drafts]
and https://tools.ietf.org/html/rfc7322[RFCs (RFC7322)].
This gem allows you to author these types of documents in AsciiDoc, and outputs RFC XML output in v3 format:
Its syntax is designed to be "native-asciidoctor
" as much as possible, with
some templated use of attributes to convey added information for RFC XML
output.
For further information about the markup used, please refer to the https://www.metanorma.org/author/ietf/[Writing IETF I-Ds and RFCs using AsciiDoc & Metanorma].
== Usage
The preferred way to invoke this gem is via the metanorma
command:
The gem translates the document into IETF XML RFC format. By default, the gem
then runs the xml2rfc
tool to generate text and HTML versions as well.
== Installation
=== Metanorma
Please visit https://www.metanorma.com for installation instructions for all platforms.
=== Gem usage
Add this line to your application's Gemfile:
And then execute:
== Quick Start / Template
Clone the https://github.com/metanorma/rfc-asciirfc-minimal[`rfc-asciirfc-minimal`] repository as a template, and populate it for your Asciidoc RFCs and Internet-Drafts:
See the https://github.com/metanorma/rfc-asciirfc-minimal[README] of that document for more information.
== Documentation
See https://www.metanorma.com/author/ietf/[Writing IETF I-Ds and RFCs using AsciiDoc & Metanorma].
== Usage
Converting your AsciiDoc to RFC XML is a simple as running the appropriate
metanorma
command.
Once processing completes, you should see the RFC XML file draft-example-00.xml
in the
same directory.
=== RFC XML v3 Example
endif::[]
== Development
We follow Sandi Metz's Rules for this gem, you can read the http://robots.thoughtbot.com/post/50655960596/sandi-metz-rules-for-developers[description of the rules here].
All new code should follow these rules. If you make changes in a pre-existing file that violates these rules you should fix the violations as part of your contribution.
=== Setup
Clone the repository.
Setup your environment.
Run the test suite
== Contributing
First, thank you for contributing! We love pull requests from everyone. By participating in this project, you hereby grant https://www.ribose.com[Ribose Inc.] the right to grant or transfer an unlimited number of non exclusive licenses or sub-licenses to third parties, under the copyright covering the contribution to use the contribution by all means.
Here are a few technical guidelines to follow:
. Open an https://github.com/metanorma/metanorma-ietf/issues[issue] to discuss a new feature. . Write tests to support your new feature. . Make sure the entire test suite passes locally and on CI. . Open a Pull Request. . https://github.com/thoughtbot/guides/tree/master/protocol/git#write-a-feature[Squash your commits] after receiving feedback. . Party!
== Credits
This gem is developed, maintained and funded by https://www.ribose.com[Ribose Inc.]
== Examples
Example documents are avalable at the https://github.com/metanorma/mn-samples-ietf[mn-samples-ietf] repository.
Document templates are available at the https://github.com/metanorma/mn-templates-ietf[mn-templates-ietf] repository.
== Notes
Metanorma-IETF was formerly published as the asciidoctor-rfc
gem.
FAQs
Unknown package
We found that metanorma-ietf demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.
Security News
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
Security News
The Latio podcast explores how static and runtime reachability help teams prioritize exploitable vulnerabilities and streamline AppSec workflows.