diff --git a/.github/changelog-processor.py b/.github/changelog-processor.py index 29e86bd3ea..43ad132fed 100755 --- a/.github/changelog-processor.py +++ b/.github/changelog-processor.py @@ -45,6 +45,8 @@ lines = changelog.readlines() if args.validate_changelog: + versions = set() + for line in lines: if line.startswith("##"): if line.startswith("###"): @@ -57,6 +59,13 @@ print("Only Major.Minor.Patch are supported as versioning") print(line) sys.exit(-1) + else: + version = line.strip().removeprefix("## [").split("]")[0] + if version in versions: + print("Found version '" + version + "' more than once") + sys.exit(-1) + else: + versions.add(version) elif line.startswith("#"): if line.strip() != "# Changelog": print("Line starting with `#` is only allowed for `# Changelog`") diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c9470ebd3..f083d6a5bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - RFC-5: Add request revenue info ([runtimes#381](https://github.com/polkadot-fellows/runtimes/pull/381), [SDK v1.14 #3940](https://github.com/paritytech/polkadot-sdk/pull/3940)). - Core-Fellowship: new `promote_fast` call ([runtimes#381](https://github.com/polkadot-fellows/runtimes/pull/381), [SDK v1.14 #4877](https://github.com/paritytech/polkadot-sdk/pull/4877)). - Pallet ranked collective: max member count per rank ([runtimes#381](https://github.com/polkadot-fellows/runtimes/pull/381), [SDK v1.14 #4807](https://github.com/paritytech/polkadot-sdk/pull/4807)). - - All runtimes: XcmPaymentApi and DryRunApi ([polkadot-fellows/runtimes#380](https://github.com/polkadot-fellows/runtimes/pull/380)) #### From [#322](https://github.com/polkadot-fellows/runtimes/pull/322):