-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support "standard-version" changelog format #5181
Comments
Are you sure that it's even finding the CHANGELOG? What are the logs for when it's retrieving it? |
Assuming the source repo CHANGELOG is being found but not parsed correctly, a good next step would be to create a work-in-progress PR that adds your file to https://github.com/renovatebot/renovate/tree/master/test/workers/pr/_fixtures plus a failing test case. |
How do I know? Looking at one of the job logs for that PR I can't find anything pertaining CHANGELOG or release notes. See for instance job 132030815 |
Also, where would the changelog file need to be located for Renovate to be able to pick it up? Currently it's in the root folder of the repo and it's bundled in the package. But, for instance, the package is transpiled and the output goes to a Here's what the package contents looks like:
|
In the simplest case Renovate:
If this is a private repository on GitHub.com then it means you must have installed Renovate into it for Renovate to have authorization to access that repo to get the changelog. I think that the format you're using is likely to confuse Renovate's parser. I find it to be a strange format, even if it's commonly used. Typically "features" should be a subheading of a release and not at the same level. e.g. in the example you gave, they both use
It makes no sense to me why the release couldn't be a But anyway of course Renovate could be enhanced to detect this, but it takes a test case first and then someone to do it. |
The changelog I showed is generated entirely automatically by https://github.com/conventional-changelog/standard-version/. And indeed I notice now that the markdown headers are somewhat inconsistent, not sure if intentionally or because of a bug, but I find the same even in their own changelog. I have a feeling they use different headings for different semver types of releases (major/minor/patch), which kinda makes sense. See their changelog here: https://github.com/conventional-changelog/standard-version/blob/master/CHANGELOG.md This is pretty standard tooling, I would expect Renovate to be able to parse it :) |
I've transferred this issue into the main repo as a feature request and added the latest standard-version changelog as a text fixture in this branch: https://github.com/renovatebot/renovate/tree/feat/standard-version-changelog-support Still needs:
|
Is there anything else I can provide? |
You could submit a pull request to that branch adding a failing test case for the standard-version fixture. Example test case: renovate/test/workers/pr/changelog/release-notes.spec.ts Lines 149 to 165 in 982d5e9
In this case though it is not enough to just check that it's not null. We need to check that the patch versions in the new fixture are included, e.g. |
Ok done that, but the test doesn't fail and I would use some help to figure out what's wrong. The CHANGELOG is parsed, but it seems it's simply parsed, not sure how to check that all the versions are being picked up. |
Tests are now failing in that branch |
@rarkins I see you merged my PR. In that PR the checks were all green, how do I see the tests failing for the branch the PR merged into? On GH actions all seems good as far as I can see |
Actually I just merged it in order for me to make some changes to your tests to get them to fail. See 66213cb |
Thanks! |
@rarkins - i was briefly exploring this this morning and it looks like Renovate does support standard-version changelogs
Anything left on this or should we close it? |
Which Renovate are you using? x the right box:
Which platform are you using? x the right box:
What would you like to do?
Show releases notes from the target package's CHANGELOG.md file formatted using semantic versioning tooling.
Right now, if the target package has a CHANGELOG.md file formatted in a way similar to this (using the
standard-version
toolchain):In a Renovate PR for bumping that package version, say from 0.1.12 to 0.1.13 I get something similar to this:
Meaning that it can somehow pick some version information, but I would like to see the actual features introduced similarly to what's in the CHANGELOG.md file rather than just the version number and a link to the diff.
The text was updated successfully, but these errors were encountered: