diff --git a/.chglog/CHANGELOG.tpl.md b/.chglog/CHANGELOG.tpl.md index a58b0e452e..0d3ec1ba26 100644 --- a/.chglog/CHANGELOG.tpl.md +++ b/.chglog/CHANGELOG.tpl.md @@ -3,14 +3,18 @@ ## [Unreleased] {{ if .Unreleased.CommitGroups -}} {{ range .Unreleased.CommitGroups -}} -### {{ .Title }} +{{ .Title }} {{ range .Commits -}} +{{- if .Subject -}} - {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} +{{- end -}} {{ end }} {{ end -}} {{ else }} {{ range .Unreleased.Commits -}} +{{- if .Subject -}} - {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} +{{- end -}} {{ end }} {{ end -}} {{ end -}} @@ -20,20 +24,24 @@ ## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }} {{ if .CommitGroups -}} {{ range .CommitGroups -}} -### {{ .Title }} +{{ .Title }} {{ range .Commits -}} +{{- if .Subject -}} - {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} +{{- end -}} {{ end }} {{ end -}} {{ else }} {{ range .Commits -}} +{{- if .Subject -}} - {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} +{{- end -}} {{ end }} {{ end -}} {{- if .NoteGroups -}} {{ range .NoteGroups -}} -### {{ .Title }} +{{ .Title }} {{ range .Notes }} {{ .Body }} {{ end }} diff --git a/Makefile b/Makefile index 0a9dd897e7..652a4f00e9 100644 --- a/Makefile +++ b/Makefile @@ -4,6 +4,7 @@ SEMTAG=tools/semtag CHANGELOG_FILE=CHANGELOG.md OLD_CHANGELOG_LAST_TAG=v10.0.0 +OLD_CHANGELOG_LAST_TAG_REGEX='\[$(OLD_CHANGELOG_LAST_TAG)\]|name="$(OLD_CHANGELOG_LAST_TAG)"' TAG_QUERY=$(OLD_CHANGELOG_LAST_TAG).. BEGIN_PLACEHOLDER:= @@ -17,13 +18,13 @@ SED:=$(shell which gsed) scope ?= "minor" changelog-unrelease: - git-chglog $(TAG_QUERY) | grep -v $(OLD_CHANGELOG_LAST_TAG) > $(TMPFILE) + git-chglog $(TAG_QUERY) | grep -vE $(OLD_CHANGELOG_LAST_TAG_REGEX) | $(SED) 'N;s/\n$$//g;P;D' > $(TMPFILE) $(SED) '/$(BEGIN_PLACEHOLDER)/,/$(END_PLACEHOLDER)/{//!d}' $(CHANGELOG_FILE) > $(TMPFILE_CHANGELOG) $(SED) -i '/$(BEGIN_PLACEHOLDER)/r $(TMPFILE)' $(TMPFILE_CHANGELOG) mv $(TMPFILE_CHANGELOG) $(CHANGELOG_FILE) && rm -f $(TMPFILE) changelog: - git-chglog --next-tag `$(SEMTAG) final -s $(scope) -o -f` $(TAG_QUERY) | grep -v $(OLD_CHANGELOG_LAST_TAG) > $(TMPFILE) + git-chglog --next-tag `$(SEMTAG) final -s $(scope) -o -f` $(TAG_QUERY) | grep -vE $(OLD_CHANGELOG_LAST_TAG_REGEX) | $(SED) 'N;s/\n$$//g;P;D' > $(TMPFILE) $(SED) '/$(BEGIN_PLACEHOLDER)/,/$(END_PLACEHOLDER)/{//!d}' $(CHANGELOG_FILE) > $(TMPFILE_CHANGELOG) $(SED) -i '/$(BEGIN_PLACEHOLDER)/r $(TMPFILE)' $(TMPFILE_CHANGELOG) mv $(TMPFILE_CHANGELOG) $(CHANGELOG_FILE) && rm -f $(TMPFILE)