html_url,issue_url,id,node_id,user,user_label,created_at,updated_at,author_association,body,reactions,issue,issue_label,performed_via_github_app https://github.com/simonw/datasette/issues/680#issuecomment-691526635,https://api.github.com/repos/simonw/datasette/issues/680,691526635,MDEyOklzc3VlQ29tbWVudDY5MTUyNjYzNQ==,9599,simonw,2020-09-12T18:18:50Z,2020-09-12T18:18:50Z,OWNER,"I'm happy with the not-quite-automated way I'm doing this, so I'm going to close this issue. That's documented here https://docs.datasette.io/en/0.48/contributing.html#release-process - I use https://euangoddard.github.io/clipboard2markdown/ to create the GitHub releases markdown version.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",569275763,Release automation: automate the bit that posts the GitHub release, https://github.com/simonw/datasette/issues/680#issuecomment-590106416,https://api.github.com/repos/simonw/datasette/issues/680,590106416,MDEyOklzc3VlQ29tbWVudDU5MDEwNjQxNg==,9599,simonw,2020-02-23T19:26:40Z,2020-02-23T19:26:40Z,OWNER,"I think this should go a step further: I'd like some extra tests that run when a new build is being shipped and confirm that it has release notes in the right place. So this is a Travis CI responsibility.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",569275763,Release automation: automate the bit that posts the GitHub release, https://github.com/simonw/datasette/issues/680#issuecomment-590030425,https://api.github.com/repos/simonw/datasette/issues/680,590030425,MDEyOklzc3VlQ29tbWVudDU5MDAzMDQyNQ==,9599,simonw,2020-02-23T05:53:48Z,2020-02-23T05:53:48Z,OWNER,"For the actual implementation: I think this is a GitHub Action. It looks for new tags, and when a tag is created it builds the docs using Sphinx, extracts the latest HTML changelog entry using BeautifulSoup, cleans it up a bit (I think the only thing that needs doing is turning relative links into absolute ones), runs it through pypandoc to create `gfm`, then uses the GitHub releases API to post the changelog as a release. https://developer.github.com/v3/repos/releases/#create-a-release","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",569275763,Release automation: automate the bit that posts the GitHub release, https://github.com/simonw/datasette/issues/680#issuecomment-590030258,https://api.github.com/repos/simonw/datasette/issues/680,590030258,MDEyOklzc3VlQ29tbWVudDU5MDAzMDI1OA==,9599,simonw,2020-02-23T05:51:04Z,2020-02-23T05:51:04Z,OWNER,Did a bunch of research in a Jupyter notebook and it looks like I can use `pypandoc` to achieve this conversion without too much trouble: https://gist.github.com/simonw/41d56712427e6a4178fc6495d664005f,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",569275763,Release automation: automate the bit that posts the GitHub release, https://github.com/simonw/datasette/issues/680#issuecomment-589914711,https://api.github.com/repos/simonw/datasette/issues/680,589914711,MDEyOklzc3VlQ29tbWVudDU4OTkxNDcxMQ==,9599,simonw,2020-02-22T03:51:47Z,2020-02-22T03:51:47Z,OWNER,"I considered just updating the GitHub release with a link to the release notes, but I'm building other things against the GitHub releases API such that it's nicer to have the release notes live there. I bet I could use pandoc to automate the conversion of the formats in one or other direction.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",569275763,Release automation: automate the bit that posts the GitHub release,