Feature request: allow writing a DEP in Markdown as well as rST #85
Description
Reflecting on #28 and my first draft DEP in #84 – I’d like the ability to write a DEP in Markdown, as Jacob suggested on the forum: Updating our DEP process / DEP 1. There are a few reasons for this:
- It’s how I write all of my content on the Django Forum, which is where I’ll usually flesh out technical discussions before going for a DEP.
- It’s how I write content in GitHub comments on issues and pull requests, which is also how I flesh out technical discussions before going for a DEP.
I believe it would greatly simplify drafting DEPs if people were able to write them in a language that they’re more familiar with than reStructuredText. It also creates a significant amount of friction if we have to always convert syntax between a forum post and a DEP. We don’t have to rewrite existing DEPs, they’re fine as-is in rST. We would need to:
- Update DEP 1 to allow writing in Markdown
- Agree on how to do the DEP’s metadata fields in Markdown – either a table (identical output to reStructuredText), or YAML frontmatter
- Add a template for Markdown DEPs (same content, different formatting)
DEP 1 on format
Here is what DEP 1 has to say about format for reference:
DEPs must be written in `reStructuredText <http://docutils.sourceforge.net/rst.html>`_
(the same format as Django's documentation).
Each DEP should have the following parts:
[…]
#. A preamble -- a rST `field list <http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#field-lists>`_
containing metadata about the DEP, including the DEP number, the names of the
various members of the `DEP team <#forming- the-team>`_, and so forth. See
`DEP Metadata`_ below for specific details.
I’d also recommend dropping the requirement to hard-wrap lines at 80 characters for prose, for future Markdown and reStructuredText DEPs. It makes it harder to read content in the DEP’s source format, and creates silly diffs. If we want to retain specific line break guidelines, I would recommend Semantic Line Breaks.