-
-
Notifications
You must be signed in to change notification settings - Fork 11
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
Add Release Drafter #45
Comments
No strong opinions here, but I’m a fan of manually releasing + writing release notes 🤷♂️ |
I agree the release publishing should be manual, but the labour of adding issue numbers, author names, titles, etc., to a draft release is something that could and should be automated, imho. |
I add issue, pr, and commit references, plus author / reviewer names, etc, to commits. Example: wooorm/xdm@f9c3108. |
Yes, conventional commits are nice when enforced. I just don't have the time nor energy to enforce them and thus Release Drafter is an easy way out. |
That's what CommitLint is for 🙂 (https://commitlint.js.org) An example integration with GitHub action: https://github.com/uPortal-Project/uPortal-web-components/blob/1dfd1788a9f935e274b026e69ad95266bbcf24b2/.github/workflows/CI.yml#L39-L40 |
Sorry, the last comment was posted in error. I'll have a look @ChristianMurphy. |
With #50 merged, I thought this would be a good time to create a new release and with all the merges now being squashed, the job of creating the release notes has become even more tiresome, as the Git log no longer contains the merge messages with the PR number. I don't want the release notes to only enumerate what's new, I want a reference to the PR that implemented the change and who implemented it. Release Drafter automates all of this. Even with CommitLint set up, the work of creating the release notes needs help from a tool. I'm not going to be manually finding the source PR of each commit on the I hope you have suggestions for how to deal with this, because the current situation makes me not want to create any releases. |
@asbjorn I think it's ok if you don't want to cut releases. Let me know when you want me to do so, and how I can do that with your current set up of the repo |
It's not that I don't want to cut releases period, I just don't have the time to cut them as things are now without any help from tooling such as Release Drafter. If you can agree to give it a try, I'll happily create releases going forward. |
I suggest to the following release process:
|
The GitHub release is auto created on tag pushed by Changesets Action https://github.com/mdx-js/vscode-mdx/blob/master/.github/workflows/release.yml https://github.com/mdx-js/vscode-mdx/blob/master/.github/workflows/version.yml We only need to focus on changesets. |
The difficult and boring task is to create the changelog that goes into the releases, not creating the release itself. Release Drafter can be used to automatically aggregate all pull requests that are merged into a changelog, so the changelog doesn't have to be punched in manually. |
changesets changelog can be added with help its not comment or cli, and the content is always editable before release, instead of depends on commit message only. PR related links like author and original author are referenced automatically instead. Changesets is a great tool to me personally, although adding changeset needs some verbose action, but it's very scalable. |
The content Release Drafter creates is also editable. What it does is that whenever a pull request is merged, if a drafted release does not exists, it is created. The release is created in draft state so it is not published or available publicly. While pull requests are being merged, the draft release is updated with new content, adding to the changelog. All automatically. Once the release is ready to go, someone goes through it and sees that it looks good, gives it a proper version number and turns it from "draft" to "published" state, making it public and available to the world. Release Drafter only needs one configuration file and doesn't need anything to be done in every pull request to indicate that "this should go into the release". It's much easier to just have every pull request added automatically and then delete stuff that shouldn't be there right before publishing the release. Release Drafter is a great tool and I don't understand the resistance to use it while at the same time embracing changesets, which seems like a much heavier and more complex solution to me. |
Seems it's also sweet, I'll give it a try in my projects later, thanks for points. |
Closing, agreeing with Remco above.
GH does that. And our commit messages include that info.
Using commit history also allows for this. |
Ok, you do releases then. I’m out. |
Subject of the feature
With Release Drafter, creating GitHub releases becomes mostly automatic.
Problem
It requires quite a bit of manual labour to create release notes. Release Drafter automates most of this labour, making the creation of new releases much easier.
Expected behavior
The creation of releases should not be a tiresome, manual ordeal.
Alternatives
GitReleaseManager is an option, but it's more heavy-handed than Release Drafter. There exists a lot of other alternatives as well, but I have not familiarized myself with them.
The text was updated successfully, but these errors were encountered: