diff --git a/xtask/src/publish.rs b/xtask/src/publish.rs index 7faae9b20c..f5d765d7c9 100644 --- a/xtask/src/publish.rs +++ b/xtask/src/publish.rs @@ -9,6 +9,15 @@ impl flags::PublishReleaseNotes { pub(crate) fn run(self, sh: &Shell) -> anyhow::Result<()> { let asciidoc = sh.read_file(&self.changelog)?; let mut markdown = notes::convert_asciidoc_to_markdown(std::io::Cursor::new(&asciidoc))?; + if !markdown.starts_with("# Changelog") { + bail!("changelog Markdown should start with `# Changelog`"); + } + const NEWLINES: &str = "\n\n"; + let Some(idx) = markdown.find(NEWLINES) else { + bail!("missing newlines after changelog title"); + }; + markdown.replace_range(0..idx + NEWLINES.len(), ""); + let file_name = check_file_name(self.changelog)?; let tag_name = &file_name[0..10]; let original_changelog_url = create_original_changelog_url(&file_name);