No description
Find a file
Julian Tölle 971b6e6ef7
feat: less repetitive entries for for prerelease changelogs (#37)
Right now we always show all new releasable commits since the last
_stable_ release.

If a project publishes multiple pre-releases in a row, they all repeat
the same lines with a few new additions.

On the other hand, when we cut a stable release, we do want to show all
changes since the last stable release, as we can not expect users to
read the changelog of pre-releases.

As a compromise, the code now looks at the type of release that is being
created, and decides based on that if we will look at STABLE..HEAD
(stable release) or LATEST..HEAD (pre-release).

Close #33
2024-08-30 19:44:51 +02:00
.github/workflows docs: add all current features (#34) 2024-08-25 22:13:56 +02:00
cmd/rp feat(cli): add --version flag (#29) 2024-08-25 13:47:55 +02:00
docs docs: add link to github repo 2024-08-25 22:31:39 +02:00
internal chore: enable some more linters (#16) 2024-08-23 22:35:06 +02:00
.gitattributes docs: add all current features (#34) 2024-08-25 22:13:56 +02:00
.golangci.yaml chore: enable some more linters (#16) 2024-08-23 22:35:06 +02:00
.ko.yaml ci: setup release workflow 2024-08-05 19:41:52 +02:00
action.yml chore(main): release v0.2.0 (#24) 2024-08-25 23:01:48 +02:00
changelog.go refactor: move changelog file to updater interface (#15) 2024-08-23 22:17:38 +02:00
CHANGELOG.md chore(main): release v0.2.0 (#24) 2024-08-25 23:01:48 +02:00
changelog.md.tpl feat(releasepr): release PRs can be updated 2024-08-04 20:22:15 +02:00
changelog_test.go refactor: move changelog file to updater interface (#15) 2024-08-23 22:17:38 +02:00
commits.go refactor: move commit analyzing out of forge 2024-08-20 17:37:46 +02:00
commits_test.go refactor: move commit analyzing out of forge 2024-08-20 17:37:46 +02:00
forge.go chore: enable some more linters (#16) 2024-08-23 22:35:06 +02:00
git.go refactor: remove unused code 2024-08-20 17:37:46 +02:00
git_test.go chore: cleanup unused git functionality 2024-08-02 20:52:19 +02:00
go.mod chore: go mod tidy 2024-08-24 14:49:30 +02:00
go.sum chore: go mod tidy 2024-08-24 14:49:30 +02:00
LICENSE chore: working releasable commits 2024-07-12 14:51:24 +02:00
README.md docs: add proper readme 2024-08-03 01:41:05 +02:00
releasepr.go feat: less repetitive entries for for prerelease changelogs (#37) 2024-08-30 19:44:51 +02:00
releasepr.md.tpl refactor: Various cleanup (#11) 2024-08-08 19:01:44 +02:00
releasepr_test.go refactor: Various cleanup (#11) 2024-08-08 19:01:44 +02:00
releaserpleaser.go feat: less repetitive entries for for prerelease changelogs (#37) 2024-08-30 19:44:51 +02:00
updater.go refactor: move changelog file to updater interface (#15) 2024-08-23 22:17:38 +02:00
updater_test.go refactor: move changelog file to updater interface (#15) 2024-08-23 22:17:38 +02:00
versioning.go refactor: various cleanups (#18) 2024-08-23 23:50:12 +02:00
versioning_test.go refactor: move commit analyzing out of forge 2024-08-20 17:37:46 +02:00

releaser-pleaser

releaser-pleaser is a tool designed to automate versioning and changelog management for your projects. Building on the concepts of release-please, it streamlines the release process through GitHub Actions or GitLab CI.

Features

  • Automated Pull Requests: Opens a PR when releasable changes are detected.
  • Smart Versioning: Suggests new versions based on conventional commits and semantic versioning.
  • Version Reference Updates: Automatically updates committed version references in the PR.
  • Changelog Generation: Creates new changelog entries based on commits.
  • Automated Releases: Upon PR merge, creates tags and GitHub/GitLab Releases with appropriate messages.
  • Version Overrides: Allows manual override of the suggested version.
  • Prerelease Support: Offers options to create alpha, beta, or release candidate versions.

releaser-pleaser simplifies release management, allowing maintainers to focus on development while ensuring consistent and well-documented releases.

Status

This project is still under active development. You can not reasonably use it right now and not all features advertised above work. Keep your eyes open for any releases.

Relation to release-please

After using release-please for 1.5 years, I've found it to be the best tool for low-effort releases currently available. While I appreciate many of its features, I identified several additional capabilities that would significantly enhance my workflow. Although it might be possible to incorporate these features into release-please, I decided to channel my efforts into creating a new tool that specifically addresses my needs.

Key differences in releaser-pleaser include:

  • Support for multiple forges (both GitHub and GitLab)
  • Better support for pre-releases

One notable limitation of release-please is its deep integration with the GitHub API, making the addition of support for other platforms (like GitLab) a substantial undertaking. releaser-pleaser aims to overcome this limitation by design, offering a more versatile solution for automated release management across different platforms and project requirements.

License

This project is licensed under the GNU General Public License v3.0 (GPL-3.0).