Commit Graph

15 Commits

Author SHA1 Message Date
renovate[bot] 7840681f13 chore(deps): update dependency astral-sh/setup-uv to v9 (main) (#45100)
chore(deps): update dependency astral-sh/setup-uv to v9

| datasource  | package            | from   | to     |
| ----------- | ------------------ | ------ | ------ |
| github-tags | astral-sh/setup-uv | v8.3.2 | v9.0.0 |

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-06 07:57:38 +00:00
renovate[bot] 6f1dc71a61 docs: update references to astral-sh/setup-uv to v8.3.2 (main) (#44516)
docs: update references to astral-sh/setup-uv to v8.3.2

| datasource  | package            | from   | to     |
| ----------- | ------------------ | ------ | ------ |
| github-tags | astral-sh/setup-uv | v8.3.0 | v8.3.2 |

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-13 00:32:05 +00:00
renovate[bot] 59e96e1cf3 docs: update references to astral-sh/setup-uv to v8.3.0 (main) (#44373)
docs: update references to astral-sh/setup-uv to v8.3.0

| datasource  | package            | from   | to     |
| ----------- | ------------------ | ------ | ------ |
| github-tags | astral-sh/setup-uv | v8.2.0 | v8.3.0 |

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-06 00:31:51 +00:00
Nahrin cc32f48c9c docs(versioning): replace bare links with descriptive markdown links in urls (#43951)
* fix(versioning): replace bare links with descriptive markdown links in urls

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: export markdownLinkRegex from common.ts and import in test

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-15 06:30:54 +00:00
renovate[bot] 813132441d docs: update references to astral-sh/setup-uv to v8.2.0 (main) (#43857)
docs: update references to astral-sh/setup-uv to v8.2.0

| datasource  | package            | from   | to     |
| ----------- | ------------------ | ------ | ------ |
| github-tags | astral-sh/setup-uv | v8.1.0 | v8.2.0 |

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-08 00:26:59 +00:00
Sebastian Poxhofer d004b52a91 test: add coverage for lines detected by pnpm check (#43589)
tests: add coverage for lines detected by pnpm check
2026-05-26 07:53:07 +00:00
Michael Kriese 92521f5ea9 fix(versioning/github-actions): ensure stable sorting for v prefix and short versions (#43111) 2026-05-06 08:38:38 +00:00
Jamie Tanna f07b09fd92 fix(github-actions): handle {major}.{minor}-{prerelease} version (#42926)
As noted in #42899, some Actions use a version such as `v2.2-rc.1` which
we weren't handling or updating.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-04-27 10:25:54 +00:00
Jamie Tanna b81bf5dade fix(versioning/github-actions): don't parse allowedVersion-style ranges as a range (#42831)
* fix(versioning/github-actions): don't parse `allowedVersion`-style ranges as a range

As noted in #42824, when using a range for `allowedVersion`, changes to
how ranges are parsed with `semver.coerce` led to incorrectly matching
this as a version that would like to be updated to.

We can guard this by making sure a SemVer style version number is used.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* perf(versioning/github-actions): create constants for regexes

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* test: skip coverage

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* fixup

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

---------

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-04-23 09:37:08 +00:00
Jamie Tanna 498a50fd0d fix(versioning/github-actions): treat floating tags as equal (#42809)
* fix(versioning/github-actions): treat floating tags as equal

As noted in #42662, if a floating tag `@v2` is used, Renovate currently
tries to roll it back to `@v1`, as it doesn't see that `@v2 === @v2`.

* fix(versioning/github-actions): allow `v` prefix matching too
2026-04-22 09:33:24 +00:00
Jamie Tanna 413d94178d fix(versioning/github-actions): correctly handle major.minor and major (#42769)
* fix(versioning/github-actions): correctly handle `major.minor` and `major`

As part of the final set of changes needed to support Immutable Releases
with GitHub Actions and the `github-actions` versioning, we need to
modify how our versioning works to handle correctly surfacing the
shortest version available.

To make this more resilient, and help us test-drive the change, we'll
also add an integration test that:

- extracts from a GitHub Actions workflow
- performs a lookup (with mocked data)
- determines the available updates that would be proposed

This provides more confidence in the change itself, as well as
validates the intended changes.

This also moves `prefix` and `minLevel` to a single definition.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* fixup! fix(versioning/github-actions): correctly handle `major.minor` and `major`

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* fixup! fix(versioning/github-actions): correctly handle `major.minor` and `major`

---------

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-04-21 11:29:43 +00:00
Jamie Tanna 0c21df1e22 perf(workers/repository): use a Set for allReleaseVersions (#42779)
So all lookups downstream can be performed in `O(1)` time.

Suggested by Claude Sonnet.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-04-21 08:55:41 +00:00
Jamie Tanna 95a7cab7f3 fix(versioning/github-actions): allow v1 to be treated as a version (#42762)
* fix(versioning/github-actions): allow `v1` to be treated as a version

As a similar change to 2ab41fa709, we also
need to allow a major-only version to be treated as a valid version.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* chore: remove accidental JSDoc

Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>

---------

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2026-04-20 10:21:18 +00:00
Jamie Tanna 673fb8e7a9 fix(versioning/github-actions): allow v1.2 to be treated as a version (#42761)
When using `docker` versioning, we correctly treat a `v1.2` -> `v1.3`
version update as valid.

However, when using the previous implementation of `github-actions`'
versioning, we would silently ignore them, filtering them in
`filterValidVersions`.

This leads to cases where a `v1.2` would be upgraded to `v1.3.0`, which
wasn't correct.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-04-20 09:21:32 +00:00
Jamie Tanna d508716886 feat(versioning): add a github-actions versioning (#42712)
GitHub Actions' versioning somewhat mirrors the SemVer-style versioning,
but doesn't quite.

This is in the case that it's common to use (mutable) tags like `v7` or
`v4.2`, as well as full SemVer style` `v1.2.3` and `v1.3.4-rc2`, doesn't
quite match it.

In addition, with GitHub's recent move to introduce Immutable Tags,
these require new releases to be a full SemVer `major.minor.patch` tag.

However, we don't currently have a way to take users from `@v7` to
`@v8.1.1`, in the case they're using Immutable Tags.

Given this isn't currently straightforward with any of our existing
SemVer-y versioning modules like `semver-coerced` or `semver-partial`,
we should instead introduce a specific Versioning module.

This mostly covers the functionality that `semver-partial` has, but
needs to take advantage of the `allVersions` parameter to find the
"shortest" possible tag for a given resolved Semantic Version.

This was previously attempted in previous changes, but reverted in
db64cc6de0 due to additional complexity.

We won't turn it on by default right now, but as a future change.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-04-17 19:07:45 +00:00