ChangelogParser class abstract final

Parses Keep-a-Changelog-style markdown into ChangelogEntrys.

Recognized version header forms:

  • ## [1.2.0] - 2026-01-15
  • ## 1.2.0
  • ### 1.2.0 (Hotfix)

Everything else becomes a bullet of the current version. Bullet lines starting with - , * , or + keep their markdown intact (bold, links, etc.) so renderers like prism_markdown can style them.

const changelog = '''
## [1.2.0] - 2026-01-15
- Dark mode support
- Faster sync engine

## [1.1.0] - 2025-12-01
- Initial public release
''';
final entries = ChangelogParser.parse(changelog);

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

fromAsset(String assetPath, {AssetBundle? bundle}) → Future<List<ChangelogEntry>>
Convenience: loads and parses assetPath from bundle (defaults to the ambient asset bundle).
parse(String source) → List<ChangelogEntry>
Parses source into entries, newest first.