Commit graph

250 commits

Author SHA1 Message Date
e1afa22e0a
ci: mdbooks binary is missing (#245) 2025-08-24 17:16:40 +02:00
f077b647e7
ci: separate renovate manager for toml (#244) 2025-08-24 15:07:58 +00:00
44b76e55f8
ci: allow regex manager in toml files for mise (#243) 2025-08-24 14:56:11 +00:00
e83a7c9a23
ci: mise cleanup (#242)
- Renovate does not find the "github:*" dependencies in `mise.toml`
- The `mdbooks` tools was still installed manually with our own action,
  this is removed and mise is used instead.
2025-08-24 14:52:01 +00:00
renovate[bot]
563885899c
deps: update actions/checkout action to v5 (#239)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-24 16:46:49 +02:00
renovate[bot]
16ba2c6b09
deps: update module github.com/google/go-github/v72 to v74 (#241)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-24 16:46:16 +02:00
renovate[bot]
e6c8f3f93b
deps: update actions/upload-pages-artifact action to v4 (#240)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-24 16:45:41 +02:00
e6503da93a
refactor(cmd): use factories instead of global cobra command structs (#238)
This enables us to create new commands for e2e tests.
2025-08-24 14:44:05 +00:00
renovate[bot]
5b5b29c0b5
deps: update dependency go to v1.25.0 (#222)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-24 13:50:59 +00:00
c768260a2e
chore: use mise to install all tools in CI and locally (#237)
Makes sure that I have the same versions locally as CI
2025-08-24 15:49:23 +02:00
b3cb9e128c
chore(main): release v0.7.0 (#232) 2025-08-23 23:05:30 +02:00
d259921215
fix(github): duplicate release pr when process is stopped at wrong moment (#236)
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 23:00:52 +02:00
48b1894cac
feat: highlight breaking changes in release notes (#234)
Add a `**BREAKING**` prefix to any entries in the changelog that are
marked as breaking changes.

Closes #225
2025-08-23 22:40:28 +02:00
5306e2dd35
fix: filter out empty updaters in input (#235) 2025-08-23 22:38:24 +02:00
f1aa1a2ef4
refactor: let updaters define the files they want to run on (#233)
This change reverses the responsibility for which files the updaters are
run on. Now each updater can specify the list of files and wether the
files should be created when they do not exist yet. This simplifies the
handling of each update in releaserpleaser.go, as we can just iterate
over all updaters and call it for each file of that updater.

Also update the flags to allow users to easily define which updaters
should run.
2025-08-23 22:14:34 +02:00
Mattis Krämer
1e9e0aa5d9
feat: add updater for package.json (#213) 2025-08-23 22:05:52 +02:00
renovate[bot]
6237c9b666
deps: update codecov/codecov-action digest to fdcc847 (#229)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-23 20:23:41 +02:00
renovate[bot]
2f7e8b9afe
deps: update actions/checkout digest to 08eba0b (#220)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-23 20:23:12 +02:00
renovate[bot]
73d9c877b0
deps: update module gitlab.com/gitlab-org/api/client-go to v0.142.0 (#231)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-21 17:57:43 +00:00
renovate[bot]
014ec7b723
deps: update module gitlab.com/gitlab-org/api/client-go to v0.141.2 (#230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-20 17:46:15 +00:00
renovate[bot]
dbde726d15
deps: update module gitlab.com/gitlab-org/api/client-go to v0.141.1 (#228)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-18 22:53:08 +00:00
renovate[bot]
6e2c754376
deps: update module gitlab.com/gitlab-org/api/client-go to v0.140.0 (#227)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-18 17:25:07 +00:00
renovate[bot]
eb6c687737
deps: update module gitlab.com/gitlab-org/api/client-go to v0.139.2 (#226)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-14 10:09:38 +00:00
renovate[bot]
2fe0f0e5b6
deps: update dependency golangci/golangci-lint to v2.4.0 (#224)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-14 00:57:48 +00:00
renovate[bot]
fd903e056c
deps: update module gitlab.com/gitlab-org/api/client-go to v0.139.0 (#223)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-13 09:51:56 +00:00
renovate[bot]
763a5defac
deps: update module gitlab.com/gitlab-org/api/client-go to v0.138.0 (#221)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-12 13:44:44 +00:00
renovate[bot]
e73bf82a92
deps: update dependency go to v1.24.6 (#219)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-06 21:26:34 +00:00
renovate[bot]
1fad5e6264
deps: update dependency golangci/golangci-lint to v2.3.1 (#216)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-03 00:47:54 +00:00
renovate[bot]
785c29deb2
deps: update module github.com/yuin/goldmark to v1.7.13 (#218)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-22 21:14:29 +00:00
renovate[bot]
273107b9af
deps: update module gitlab.com/gitlab-org/api/client-go to v0.137.0 (#217)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-21 22:36:38 +00:00
renovate[bot]
64874f9089
deps: update dependency rust-lang/mdbook to v0.4.52 (#214)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-15 02:12:30 +00:00
renovate[bot]
942aa80aa9
deps: update dependency golangci/golangci-lint to v2.2.2 (#212)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 16:02:05 +00:00
8eb7eadc4e
chore(main): release v0.6.1 (#211) 2025-07-11 11:32:09 +02:00
Zadkiel AHARONIAN
bcca36e856
fix(gitlab): support fast-forward merges (#210)
This change allows detecting that the releaser-pleaser PR is well merged. 

As of today, it fails with "ERR failed to create pending releases: pull request is missing the merge commit".
2025-07-11 11:23:21 +02:00
renovate[bot]
75fe90ab6e
deps: update dependency go to v1.24.5 (#209)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-09 00:02:06 +00:00
renovate[bot]
3e77b7e0d9
deps: update module gitlab.com/gitlab-org/api/client-go to v0.134.0 (#208)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-07 16:50:20 +00:00
renovate[bot]
a7347bc191
deps: update module gitlab.com/gitlab-org/api/client-go to v0.133.0 (#206)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-03 12:13:44 +00:00
renovate[bot]
6e97e0d601
deps: update module gitlab.com/gitlab-org/api/client-go to v0.132.0 (#205)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-02 16:10:25 +00:00
renovate[bot]
48b8696efc
deps: update module gitlab.com/gitlab-org/api/client-go to v0.131.0 (#204)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-01 19:53:10 +00:00
renovate[bot]
dfe39868ac
deps: update dependency golangci/golangci-lint to v2.2.1 (#203)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-29 22:15:32 +00:00
renovate[bot]
5a273f9ab5
deps: update dependency golangci/golangci-lint to v2.2.0 (#202)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-28 21:42:14 +00:00
fc1ee70c28
chore(main): release v0.6.0 (#189) 2025-06-14 16:47:17 +02:00
0de242a4e6
ci: only build single platform for local releaser-pleaser jobs (#200)
The image is never pushed and only executed on linux/amd64 hosts, so
building linux/arm64 is a waste of time and resources.
2025-06-14 14:34:26 +00:00
d540e2221d
docs: describe concurrency and conflict considerations (#199)
Describe the issue with concurrency, the global state and what went into
the recent changes in #196, #197 and #198.
2025-06-14 14:24:16 +00:00
2d3a960939
feat: run one job concurrently to reduce chance of conflicts (#198)
Each run of releaser-pleaser acts on the same global state in the
forge. Therefore, parallel runs are unnecessary.

This commit also communicates to the GitHub and GitLab CI pipelines that
the releaser-pleaser jobs can be cancelled as early as possible.

- On GitHub Actions this can be guaranteed through the workflow
  settings. These settings are copied into each repository that uses
  releaser-pleaser, so users need to update this manually. I will add a
  note to the release notes for this.
- On GitLab CI/CD this requires the user to configure a project level setting to
  "auto-cancel redundant pipelines". We will not recommend user to set
  this, as it is quite invasive and can break their regular CI pipelines.
2025-06-14 13:43:35 +00:00
d24ae7de98
feat: detect changed pull request description and retry process (#197)
If the release PR description was changed by a human after
releaser-pleaser fetched the PR for the first time, releaser-pleaser
would revert the users changes accidentally.

This commit introduces an additional check right before updating the
pull request description, to make sure we do not accidentally loose user
changes. There is still the potential for a conflict in between us
checking the description is the same, and updating the description. The
time window for this should be reduced from multiple seconds-minutes to
a few hundred milliseconds at most.

In case a conflict is detected, we retry the whole process up to 2
times, to make sure that the users changes are reflected as soon as
possible. This is especially important on GitLab CI/CD because a changed
pull (merge) request description does not cause another job to run.

With this change, the branch is still pushed, as the user is not
expected to make any changes to it.

Fixes #151
2025-06-14 13:23:05 +00:00
08d35f2f57
feat: graceful shutdown when CI job is cancelled (#196)
By listening on SIGINT and SIGTERM signals we can stop executing as soon
as reasonably possible. This helps to avoid uncessary work and stop the
job earlier.

Right now we have no manual checks for cancelled contexts, and rely on
the http client to check for it while making requests.
2025-06-14 13:19:34 +00:00
eae0045359
feat: colorize log output (#195)
Makes it easier to read, uses lmittmann/tint.
2025-06-14 13:11:28 +00:00
50b2762dca
fix: missing push when files were changed (#193)
The whole check to avoid pushes when they were only rebases was broken
and compared the wrong things. Unfortunately this worked for nearly all
unit tests, except for one were I used the wrong assertion.

This fixed the check by comparing the right things and inverting the
assertion in the unit test to make sure things do not break again in the
future.

Bug was introduced in #114.
2025-06-14 13:03:04 +02:00
renovate[bot]
983162d26e
deps: update module gitlab.com/gitlab-org/api/client-go to v0.130.1 (#192)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-12 03:44:02 +00:00