Skip to content

feat: add Conventional Changelog provider - #44

Merged
HiDeoo merged 3 commits into
HiDeoo:mainfrom
jonahsnider:conventional-changelog
Sep 8, 2026
Merged

feat: add Conventional Changelog provider#44
HiDeoo merged 3 commits into
HiDeoo:mainfrom
jonahsnider:conventional-changelog

Conversation

@jonahsnider

Copy link
Copy Markdown
Contributor

Adds a Conventional Changelog provider, which is used by a bunch of tools (ex. Release Please)

Signed-off-by: Jonah Snider <jonah@jonahsnider.com>
@changeset-bot

changeset-bot Bot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: edacf11

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
starlight-changelogs Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@HiDeoo

HiDeoo commented Sep 4, 2026

Copy link
Copy Markdown
Owner

Thanks for the contribution.

I did not review the code yet but I have some high-level questions about Conventional Changelog:

  • They don't have some kind of spec or something similar regarding the output format? I couldn't really find anything in the docs (I guess it would make sense if anything is managed using presets and each preset would have its own output format?).
  • I see that multiple presets are available by default, I guess we would need to support all of them using a preset option?

@jonahsnider

Copy link
Copy Markdown
Contributor Author

They don't have some kind of spec or something similar regarding the output format?

Correct, no formal output spec, just whatever the official providers emit as a reference

I see that multiple presets are available by default, I guess we would need to support all of them using a preset option?

Both of the official presets use the same heading format, so in this case we don't need any kind of special parsing logic for them

@HiDeoo

HiDeoo commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Both of the official presets use the same heading format, so in this case we don't need any kind of special parsing logic for them

According to the doc, I think there may be a difference in version heading level?

Conventional Commits preset Angular Preset
image image

@jonahsnider

Copy link
Copy Markdown
Contributor Author

Ah yeah, the headings are different depending on output format but since we define versionHeadingLevel: [1, 2, 3] it handles both variants

@netlify

netlify Bot commented Sep 8, 2026

Copy link
Copy Markdown

Deploy Preview for starlight-changelogs ready!

Name Link
🔨 Latest commit edacf11
🔍 Latest deploy log https://app.netlify.com/projects/starlight-changelogs/deploys/6aa00ad50d65250008df483f
😎 Deploy Preview https://deploy-preview-44--starlight-changelogs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@HiDeoo HiDeoo left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah yeah, the headings are different depending on output format but since we define versionHeadingLevel: [1, 2, 3] it handles both variants

I see, thanks for the clarification and taking the time to go with me through the details.

This looks great to me. I pushed a small refactor unifying versionHeadingLevel and isVersionHeading to a single function as it felt a bit more natural to me to only have one place to define the logic for identifying version headings.

Thanks for the contribution 🙌

@HiDeoo
HiDeoo merged commit 572978e into HiDeoo:main Sep 8, 2026
6 checks passed
@github-actions github-actions Bot mentioned this pull request Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants