axodotdev / cargo-dist

📦 shippable application packaging
https://axodotdev.github.io/cargo-dist/
Apache License 2.0
1.49k stars 70 forks source link

Don't assume release notes are markdown? #71

Open Gankra opened 1 year ago

Gankra commented 1 year ago

Currently we'll detect and slurp up RELEASES.rst but then embed the contents in markdown. Oops!

I don't know if Github Releases supports not-markdown, or if we actually need to convert the user's notes to markdown.

ashleygwilliams commented 1 year ago

as far as i know, github only supports markdown for display on github websites (same with readmes), and will display everything else as raw text. (https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github)

this could be a nice way for us to give people more flexible options than github. i am curious how many people use non-markdown tho? i'll admit i have not seen much in the wild, tho i am usually looking on github, which would be a pretty massive filter bias.

Aloso commented 1 year ago

@ashleygwilliams GitHub can display quite a few markup languages (Markdown, reStructuredText, AsciiDoc, etc.) as documented here.

GitHub uses the file extension to decide how to parse a file. However, GitHub releases don't have a file extension (like issues and discussions), so they are assumed to be Markdown. So while a RELEASES.rst file is displayed correctly, its contents can't be copied into a GitHub release without breaking the formatting.

If converting the file format to Markdown is not possible, I think cargo dist should display an error message, preferably when initializing the CI workflow.