No description
Find a file
Julian Tölle 9775cb8850 fix(github): duplicate release pr when process is stopped at wrong moment
In a timing issue, the release pull request may be created but the
releaser-pleaser labels not added. On the next run releaser-pleaser
then creates a second release pull request. We try to reduce the chance
of this happening by checking the context cancellation at the top, and
if its not cancelled we run both API requests without passing along any
cancellations from the parent context.

Closes #215
2025-08-23 22:58:46 +02:00
.github deps: update codecov/codecov-action digest to fdcc847 (#229) 2025-08-23 20:23:41 +02:00
cmd/rp fix: filter out empty updaters in input (#235) 2025-08-23 22:38:24 +02:00
docs refactor: let updaters define the files they want to run on (#233) 2025-08-23 22:14:34 +02:00
internal fix(github): duplicate release pr when process is stopped at wrong moment 2025-08-23 22:58:46 +02:00
templates refactor: let updaters define the files they want to run on (#233) 2025-08-23 22:14:34 +02:00
.gitattributes docs: add all current features (#34) 2024-08-25 22:13:56 +02:00
.gitlab-ci.yml deps: update registry.gitlab.com/gitlab-org/release-cli docker tag to v0.24.0 (#179) 2025-06-02 21:27:02 +00:00
.golangci.yaml chore: update golangci-lint to v2 and fix breakage (#184) 2025-06-07 16:39:18 +00:00
.ko.yaml feat: add shell to container image (#59) 2024-09-15 18:46:45 +02:00
action.yml refactor: let updaters define the files they want to run on (#233) 2025-08-23 22:14:34 +02:00
CHANGELOG.md chore(main): release v0.6.1 (#211) 2025-07-11 11:32:09 +02:00
go.mod deps: update module gitlab.com/gitlab-org/api/client-go to v0.142.0 (#231) 2025-08-21 17:57:43 +00:00
go.sum deps: update module gitlab.com/gitlab-org/api/client-go to v0.142.0 (#231) 2025-08-21 17:57:43 +00:00
LICENSE chore: working releasable commits 2024-07-12 14:51:24 +02:00
prbody.go feat: edit commit message after merging through PR (#43) 2024-09-06 23:17:06 +02:00
prbody_test.go feat: edit commit message after merging through PR (#43) 2024-09-06 23:17:06 +02:00
README.md docs: GitLab tutorial and CI/CD component reference (#72) 2024-09-25 11:23:04 +02:00
releaserpleaser.go refactor: let updaters define the files they want to run on (#233) 2025-08-23 22:14:34 +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.

Badge: Documentation Badge: Stable Release Badge: License GPL-3.0

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.

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).