-
Notifications
You must be signed in to change notification settings - Fork 2.5k
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
get changelog from npm #9061
Comments
I think this has enough positives that it's worth doing. Some downsides to note:
In my experience CHANGELOG entries often are updated post-release. Given these points, I wouldn't replace any of our existing logic with this, but instead supplement it just specifically for the npm case. I think we could use it as a fallback for fetching the changelog file if we can't fetch it through our usual means (e.g. it's on a supported platform, and we are able to locate the file). What do you think? |
Sounds great @rarkins! As you said, I think it would be valuable to have npm as a fallback source if the better options (GitHub/GitLab) fail.
That's definitely a drawback, but if this is the last resort then I think showing something is better than nothing. And if the package has a CI process to generate a changelog alongside the release then this won't be an issue. |
Yes, I agree. There are still a few unknowns to explore here - for example we usually try to avoid datasource-specific logic in lib/workers/* files - but I think this is acceptable to move ahead to development with, if you or someone else is willing. |
This will also fix changelog generation for packages in public npm, published from a private repo. I'd be willing to help out. Are you suggesting @rarkins that we just add fetch changelog last attempt in the global changelog fetching logic? Which I think is in: lib/workers/pr/changelog/index.ts ? |
Yes, i think here
something like: if (!res) {
res = await sourceUnpkg.getChangeLogJSON({ ...args, releases });
} |
Hi there, Help us by making a minimal reproduction repository. Before we can start work on your issue we first need to know exactly what's causing the current behavior. A minimal reproduction helps us with this. To get started, please read our guide on creating a minimal reproduction to understand what is needed. We may close the issue if you (or someone else) have not provided a minimal reproduction within two weeks. If you need more time, or are stuck, please ask for help or more time in a comment. Good luck, The Renovate team |
A reproduction is still needed which demonstrates an update where the changelog is not found by Renovate today but is available via npm/unpkg |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
What would you like Renovate to be able to do?
To be able to fetch the changelog from the npm package itself, if renovate can't find it on GitHub or GitLab.
If npm sees a
CHANGELOG
file, it will always publish it. This makes it potentially a more reliable than searching through the repo for tags, releases or changelog-like files.This had advantages over the current approach because:
repository.directory
in package.json (like@aws-amplify/auth
)typedoc-plugin-markdown
and@aws-amplify/auth
are some examples where the current approach fails, but fetching from NPM would work.Did you already have any implementation ideas?
If getting the changelog from GitHub or GitLab fails, use
The text was updated successfully, but these errors were encountered: