Commit Graph

72 Commits

Author SHA1 Message Date
Jamie Tanna c0a76247d6 fix(manager/github-actions): match actions/setup- actions referenced by an https:// URL
Via #35777, we have cases where a self-hosted user who doesn't run against
github.com leads to cases where they can't update the builtin Actions
when they're referenced by an `https://` URL.

As we already handle this for community actions, we can also handle this
for the builtin ones.

Co-Authored-By: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-09-11 13:06:37 +01:00
Jamie Tanna c252cd2ce5 feat(manager/github-actions): support actions/setup-java's java-version
Where we are able to support Java distributions that follow a
straightforward release cadence, we opt these distributions in, and skip
others as `unsupported`.

As the Temurin/Adopt distributions can be reliably tracked by the
`java-version` Datasource, backed by Adoptium, we can support them.

We can also use the `java-package` key to look up whether we want a JRE
or JDK.

Co-Authored-By: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-09-11 13:04:08 +01:00
Jamie Tanna e396107f03 feat(manager/github-actions): support actions/setup-dotnet's dotnet-version
In the case a multi-line `dotnet-version` is specified to install
multiple SDKs at once, we skip it as `invalid-version`, as we don't
currently have a way to update multiple values in the field.

Co-Authored-By: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-09-11 13:04:02 +01:00
Jamie Tanna 6580ef4f97 feat(manager/github-actions): support renovatebot/github-action renovate-image (#45873)
While looking at [0], I noticed that we didn't have support for our own
GitHub Action's configuration.

We can make sure that we support upgrading the `renovate-image` for
folks specifying an image (with optional digest) for the Renovate CLI
version to upgrade.

Co-authored-by: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-09-11 10:47:21 +00:00
Jamie Tanna e4307d526a feat(manager/github-actions): support renovatebot/github-action's renovate-version (#45872)
While looking at [0], I noticed that we didn't have support for our own
GitHub Action's configuration.

We can make sure that we support upgrading the `renovate-version` for
the CLI version in use, whether it's quoted or unquoted (which YAML
parses as a number).

Co-Authored-By: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>

[0]: https://github.com/renovatebot/github-action/issues/1035
2026-09-11 10:47:21 +00:00
Adam Setch 6d67f70cd2 feat(manager/github-actions): extract expo GitHub actions' eas-version (#45846)
feat: github actions for expo cli version

Signed-off-by: Adam Setch <adam.setch@outlook.com>
2026-09-10 12:29:02 +00:00
Sebastian Poxhofer 05e1271376 test: use expect().resolves instead of awaiting inside expect (#45672)
Enables the vitest/prefer-expect-resolves oxlint rule and applies its
autofix across the spec suite.
2026-09-04 10:40:46 +00:00
Sebastian Poxhofer 2fc46bdcfa test(manager): replace file snapshots with explicit assertions (#45656)
* test(manager): replace file snapshots with explicit assertions

* test(manager): replace inline snapshots with explicit assertions

* test(manager): assert on relevant sections instead of full bodies

* test(manager): drop assertions implied by full equality

* test(manager): address review feedback

* test(manager): assert depType and versioning in the regex matcher
2026-09-04 06:36:39 +00:00
Sebastian Poxhofer 6e03e8326f refactor(linters): add rule to enforce inline single use fixtures (#45230)
* feat(lint): add renovate/prefer-is-helpers and renovate/prefer-is-object rules

Flag ad-hoc type checks that have @sindresorhus/is equivalents:
- .filter(Boolean) -> .filter(isTruthy)
- typeof x === 'string' -> isString(x)
- x === null || x === undefined -> isNullOrUndefined(x) (and negation)

The typeof x === 'object' shape lives in a separate suggestion-only rule
(renovate/prefer-is-object, kept at warn) because isObject()/isPlainObject()
are not drop-in equivalents: null, arrays and functions behave differently.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: fix renovate/prefer-is-helpers violations

Replace ad-hoc type checks with @sindresorhus/is helpers across lib/:
- 13x .filter(Boolean) -> .filter(isTruthy)
- 36x typeof x ==/!== 'string' -> isString(x) / !isString(x)
- 6x x === null || x === undefined -> isNullOrUndefined(x) (and negation)

Promote renovate/prefer-is-helpers to error now that the codebase is clean.
renovate/prefer-is-object stays at warn: its 15 remaining sites guard
parsed YAML/JSON or unknown values where isObject()/isPlainObject() are
not provably equivalent (null/array/function semantics).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: enforce renovate/prefer-is-object at error level

Resolve the 15 remaining warnings and raise the rule from warn to error:

- Migrate 10 sites to isObject() where the guarded value provably cannot
  be a function (parsed YAML/JSON, typed exec command arguments, or
  test-controlled fixtures): helm-values, woodpecker, bun, pre-commit
  managers, exec utils, file package cache, and the github http spec.
  In the bun manager this also fixes a latent crash where a null
  `workspaces` value would throw on the `in` operator.
- Keep 5 sites as reasoned oxlint-disable comments where excluding
  functions is load-bearing: the byte-exact fingerprint canonicalizer
  (2), the circularity walker, the zod result guard, and the generic
  hasKey helper.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat(lint): add renovate/inline-single-use-fixtures rule

In spec files, a module-scope const fixture that is referenced from
exactly one it()/test() block should be inlined into that test so the
test is self-contained. The rule is a warn-level nudge (naming for
clarity is a valid exception) with no autofix (moving code is risky).

Uses oxlint jsPlugins scope analysis (getDeclaredVariables) for exact,
shadowing-safe reference counting and bails out conservatively: only
top-level non-exported single-declarator consts with multiline,
non-function initializers whose every reference sits inside the callback
function of one and the same test call are flagged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: inline single-use spec fixtures into their tests

Fix 26 renovate/inline-single-use-fixtures warnings in specs where the
move is mechanical and value-preserving: codeBlock fixtures were
re-indented uniformly (codeBlock strips the common indentation, so the
produced string is unchanged) and Fixtures.get() calls resolve relative
to the spec file, so relocating them inside the test body has no effect.

The remaining 59 warnings are left for per-site judgment, as the rule is
a warn-level nudge by design.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: inline remaining relocation-safe single-use spec fixtures

Move the 24 remaining single-use module-scope fixtures whose initializer
is a codeBlock tagged template or a Fixtures accessor call into the one
it() block that uses them. Both shapes are value-preserving to relocate:
codeBlock strips the common leading indentation, so the uniformly
re-indented templates produce identical strings, and Fixtures.get()
resolves relative to the spec file, not the call site's position in it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat(lint): enforce inline-single-use-fixtures as error

Narrow the rule to the initializer shapes where moving the declaration
into the test body is provably value-preserving and unambiguously an
improvement: codeBlock/stripIndent tagged templates (indentation-
normalizing, so re-indenting is safe) and Fixtures accessor calls
(resolve relative to the spec file). Plain object/array literals,
untagged template literals (whose leading-newline formatting would need
ugly re-indentation) and arbitrary call expressions remain per-site
judgment calls and are no longer flagged.

With the rule reduced to true defects and all remaining violations
inlined, bump it from warn to error in the spec override block.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: inline contents of fixtures relocated into single-use tests

The previous commits moved single-use module-scope Fixtures.get() consts
into their one it() block, which only relocated the file indirection.
Replace those relocated Fixtures.get() calls with the fixture file's
actual content — codeBlock tagged templates for text fixtures — so the
tests are self-contained, and delete the fixture files that no longer
have any references. Relocated fixtures too large to inline comfortably
(terraform-provider releases, sbt private-variable file, nuget v2 pkg
list, bundled package-lock) keep their Fixtures.get() calls.

Value preservation was verified by unchanged vitest results for every
touched spec; all consumers parse the content, so codeBlock's trailing
newline normalization is behavior-neutral.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: inline remaining large single-use fixtures

Inline the four Fixtures.get() sites that were previously exempted for
size, so every single-use fixture is now inlined regardless of size:

- nuget v2_withoutProjectUrl.xml -> codeBlock (served via http mock)
- terraform-provider releaseBackendIndexGoogleBeta.json -> plain object
  literal passed to the nock reply
- npm locked-dependency bundled.package-lock.json -> codeBlock JSON
  string (consumed as raw lockFileContent)
- sbt private-variable-dependency-file.scala -> codeBlock

All consumers parse the content, so codeBlock's trailing-newline
normalization is behavior-neutral; vitest results are unchanged for
every touched spec, including the two pre-existing nuget failures.

The nuget, terraform-provider and sbt fixture files have no remaining
references and are deleted. bundled.package-lock.json is kept because
package-lock/get-locked.spec.ts still reads it via Fixtures.getJson().

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* refactor: keep large bundled package-lock fixture in a file

The bundled package-lock.json inlined into the "fails remediation if
bundled" test is ~150 KB (~4,400 lines); inlining it as a codeBlock
hurts readability more than it helps. Read it via Fixtures.get inside
the test block instead — the inline-single-use-fixtures rule permits a
Fixtures.get() call in test scope, and the fixture file is still present.

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

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-09-03 07:42:45 +00:00
Sebastian Poxhofer 69e05233e8 feat(manager/github-actions): add workflow depType for reusable workflow calls (#45443)
* feat(manager/github-actions): add `workflow` depType for reusable workflow calls

A job-level `uses:` pointing at `owner/repo/.github/workflows/<file>.yml@<ref>`
calls a reusable workflow rather than running an action, but both got the
`action` depType, so `matchDepTypes` could not tell them apart.

Give a reference whose sub-path is exactly `.github/workflows/<file>.yml|.yaml`
the new `workflow` depType. Every other sub-path, such as
`github/codeql-action/init`, stays an action.

The existing depType-keyed sites now accept both values, so nothing else
changes behaviour: the `actions.lock` file records reusable workflow calls too,
and `helpers:pinGitHubActionDigests` pinned them before this split.

* Apply suggestions from code review

Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2026-08-25 11:52:05 +00:00
Lukas Backström 481f9b6d46 fix(github-actions): support ratchet comments for nested actions (#45210)
The `ratchet:` alternative in the pin-comment regex only allowed
`owner/repo`, so a ratchet marker for an action in a subdirectory
(`owner/repo/path@ref`) never matched. Such comments fell through to the
bare-token branch, which made `currentValue` the entire marker string,
e.g. `ratchet:actions/cache/restore@v4`. That is not version-like, so
the dep was switched to the `github-digest` datasource, which cannot
resolve the marker as a tag or branch and logs "Could not determine new
digest for update". The dep then gets no updates at all.

Allow further path segments after `owner/repo` so that nested actions
are extracted the same way as their top-level counterparts, with
`currentValue: v4` and the `github-tags` datasource.

Assisted-by: Claude:claude-opus-5
2026-08-12 22:15:52 +00:00
Jamie Tanna fba1a9de30 feat(manager/github-actions): add support for Actions Lockfiles (#45199)
* refactor(manager/github-actions): make `extractPackageFile` async

As part of follow-up changes we'll need to read `.github/workflows/actions.lock`
while extracting, which requires we are an async function.

To reduce the diff, we can prefactor this change first.

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

* feat(manager/github-actions): add support for Actions Lockfiles

In June, GitHub announced a public preview for the GitHub Actions
lockfile functionality[0].

To add support for this, we can extend our support for GitHub Actions to
handle the presence of an `actions.lock` file, and if so, update it
after updating other manager files.

Although our ideal case would be to have a pure Typescript-based parsing
and updating of the `actions.lock`, due to the early nature of the
Actions Lockfile syntax, and its lack of stability, we can invoke the
`gh actions-lock` extension when updating.

After the schema has reached a v1 release, we can then migrate to
Typescript.

To make sure that the version of the `actions-lock` extension is always
version pinned, we can expose a `constraints` to control the version,
but allow Renovate to keep the pinned default updated as needed.

This doesn't imply that we have support for `lockFileMaintenance`, as we
are only updating the lockfile when there is a dependency update, not
periodically recreating the lockfile from the current ranges.

`gh actions-lock` re-reads every workflow from disk and rewrites the
whole lockfile, so it does not fit `updateArtifacts`, which is called
once per updated package file.

We can instead follow the shape the `npm` manager uses for its
lock files, and have `processBranch` invoke this once per branch, after
every updated package file has been written to disk.

We skip workflows that aren't onboarded to the lockfile, but still run
for any other package file, as a local composite action can be a
transitive dependency of a workflow which is.

`gh actions-lock` rewrites the workflows it manages back to plain refs
when it regenerates them, which strips out any inline digest pin:

```diff
-        uses: actions/setup-java@1bcf9fb12c # v5.4.0
+        uses: actions/setup-java@v5.7.0
```

This would lead to a repository with `pinDigests` set "flip flopping",
and would cause a lot of erroneous noise for repository owners.

Instead, we can make sure that:

- we don't suggest a `pinDigest` for workflows that are managed by the
  lockfile
- digest pinning is still enabled for `docker://` references
- already-committed digests are updated when they're present - we only
  avoid suggesting /new/ digests to be pinned

Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
Co-authored-by: Claude Opus 5 <jamie.tanna+claude-code@mend.io>
Co-authored-by: Claude Fable 5 <jamie.tanna+claude-code@mend.io>

[0]: https://github.com/github/actions-lockfile

* coverage

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

* fixup! feat(manager/github-actions): add support for Actions Lockfiles

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

---------

Co-authored-by: Claude Opus 5 <jamie.tanna+claude-code@mend.io>
2026-08-11 11:55:06 +00:00
Sebastian Poxhofer fa17e59984 feat(github-actions): add support for pnpm/setup (#45094)
* refactor(manager/github-actions): return dependency arrays from community `with:` schemas

A `withSchema` now yields `PackageDependency[]` directly, instead of a
`{ val, ...meta }` object whose extra fields were merged in through an untyped
`Record<string, unknown>`. Schemas describe the dependency they find, and a
single step may yield more than one.

`isInvalid` moves out of `CommunityActionConfig` into `valSchema`, its only
caller. The config fields are now applied to every dependency a schema yields.

No behavior change.

* feat(manager/github-actions): support `pnpm/setup`

`pnpm/setup` replaces `pnpm/action-setup` for pnpm 11+. Its `version:` input
resolves as the `pnpm` package, and its `runtime:` input as the JavaScript
runtime to install - `node`, `bun` or `deno`, named as `<name>@<version>` to
match pnpm's `packageManager` field syntax.

An unknown runtime name is skipped as `invalid-name`, so a typo does not pass
silently.
2026-08-06 05:05:41 +00:00
Ville Skyttä fdd3d0231d feat(github-actions): support UpCloudLtd/upcloud-cli-action ver input (#44947)
feat(github-actions): support UpCloudLtd/upcloud-cli-action version input

Extract with.version as UpCloudLtd/upcloud-cli GitHub releases
dependency.

Ref https://github.com/UpCloudLtd/upcloud-cli-action#inputs
2026-07-29 16:35:13 +00:00
Gregor Zeitlinger 7700d62238 feat(github-actions): update mise checksums (#44876)
* fix(github-actions): update mise checksums

* test(github-actions): reject uppercase mise checksums
2026-07-27 11:34:46 +00:00
Ville Skyttä f01f1b5994 feat(github-actions): support sigstore/cosign-installer version input (#44766)
Extract `with.cosign-release` as `sigstore/cosign` GitHub releases
dependency.

Ref https://github.com/sigstore/cosign-installer#usage
2026-07-22 07:55:56 +00:00
Tobias Bieniek 2c7060849d feat(github-actions): support jdx/mise-action version input (#44660)
This extracts `with.version` as a `jdx/mise` GitHub Releases dependency while keeping the action reference independent.
2026-07-17 11:35:43 +00:00
Sebastian Poxhofer a84fb3de11 feat(manager/github-actions): support parallel steps (#44341) 2026-07-02 13:44:38 +00:00
Nahrin 7c256166b3 test(manager/github-actions): add missing community action tests (#44018)
Add test coverage for community actions that had no corresponding
tests: azure/setup-helm, docker/setup-buildx-action,
docker/setup-compose-action, helm/chart-testing-action, and
sigoden/install-binary.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-16 05:45:22 +00:00
Tobias Bieniek a73e4d1adc feat(manager/github-actions): support dtolnay/rust-toolchain toolchain input (#43956)
* feat(manager/github-actions): support dtolnay/rust-toolchain `toolchain` input

Extract the `toolchain` input of `dtolnay/rust-toolchain` as a `rust` dependency via the `rust-version` datasource, mirroring the rust-toolchain manager. Sliding-window expressions like `stable 18 months ago` are extracted as-is and rejected by the `rust-release-channel` versioning during lookup.

* feat(manager/github-actions): add rust-version datasource to `supportedDatasources`
2026-06-13 08:04:51 +00:00
Martin Costello 40450a840e feat(datasource/github-runners): add macOS Intel labels (#43540)
* feat(datasource/github-runners): add macOS Intel labels

Add `macos-15-intel` and `macos-26-intel` runner labels to the datasource.

* feat(datasource/github-runners): add tests

Add test for upgrading macos-*-intel runners.

* chore(datasource/github-runners): split tests

Split-up the tests into different operating system families.
2026-06-11 20:28:57 +00:00
Michael Kriese 27a3f5871f feat(github-actions): add community actions (#43821)
* feat(github-actions): add community actions

* test: fix test
2026-06-05 08:23:11 +00:00
Martin Costello 8986a794be feat(datasource/github-runners): stabilize arm64 (#43538)
* feat(datasource/github-runners): stabilize arm64

Mark the Ubuntu ARM runners as stable.

* feat(datasource/github-runners): add test

Add test for upgrading ubuntu-22.04-arm runners.
2026-05-22 18:28:07 +00:00
Martin Costello a0c9453e24 feat(datasource/github-runners): add windows-11-arm label (#43539)
* feat(datasource/github-runners): add windows-11-arm label

Add support for Windows 11 ARM runners in the GitHub Runners datasource.

* feat(datasource/github-runners): add test

Add test for extracting windows-11-arm runners.

* feat(datasource/github-runners): fix test

Update expected length.
2026-05-22 14:15:26 +00:00
Sebastian Poxhofer 03baf6ee4a test(noNewURL): add new rule enforcing parseUrl() from 'lib/util/url.ts' (#43247)
* test(noNewURL): add new rule enforcing parseUrl() from 'lib/util/url.ts'

* replace newURL with parseUrl

* remove non-null assertions marks if appropiate

* test: add additional tests

* test: add additional tests and ignore where it makes sense

* implement suggestions

* test: further improve coverage

* apply suggestion
2026-05-13 16:23:10 +00:00
Pierluigi Lenoci e11c22b033 feat(github-actions): extract Docker version from setup-docker-action (#42880)
Signed-off-by: Pierluigi Lenoci <pierluigilenoci@gmail.com>
2026-04-27 07:25:10 +00:00
Jamie Tanna 57d5fb3142 feat(manager/github-actions): use github-actions versioning by default (#42713)
As a re-attempt for #42331, and to support the migration for Actions
publishing Immutable Releases.
2026-04-21 11:45:52 +00:00
Michael Kriese 70895fa838 feat(github-actions): add aquasecurity trivy actions (#42782) 2026-04-21 09:11:59 +00:00
Michael Kriese a277aadf88 refactor(github-actions): simplify community action schema (#42778)
* refactor(github-actions): simplify comunity action schema

* refactor rename function

* refactor: rename and remove default versionings
2026-04-21 08:32:54 +00:00
Trim21 9510d133df feat(github-actions): add support for jakebailey/pyright-action version option (#42744) 2026-04-19 14:08:15 +00:00
Jamie Tanna db64cc6de0 fix(manager/github-actions): revert recent changes (#42707)
* Revert "fix(manager/github-actions): override `versioning` for Actions with Immutable Tags (#42690)"

This reverts commit 1b0785bbe0.

* Revert "feat(replacements): migrate users to astral/setup-uv v8 (#42683)"

This reverts commit f5859c2671.

* Revert "feat(manager/github-actions): use `semver-partial` as default versioning (#42685)"

This reverts commit da04b8edac.
2026-04-17 07:10:18 +00:00
Jamie Tanna 1b0785bbe0 fix(manager/github-actions): override versioning for Actions with Immutable Tags (#42690)
The changes in da04b8edac mostly worked,
but given `astral-sh/setup-uv` is now using Immutable Tags it _must_ be
resolved as `versioning=semver`, to make sure that version updates are
correctly raised.

However, we can't treat it as `versioning=semver`, as that will then
fail to parse the current version correctly.

Instead, we must use a `regex` versioning scheme, which allows us to
optionally parse the minor and patch versions.

This allows `newVersion` to be pinned accordingly to SemVer, but does
not require previous versions to be so.

We can do this - for now - with an explicit allowlist.
2026-04-16 16:59:10 +00:00
Jamie Tanna da04b8edac feat(manager/github-actions): use semver-partial as default versioning (#42685)
As per #42331, we should migrate to using `semver-partial` for GitHub
Actions' tags versions, instead of `docker`.

This mirrors actual usage of the way that the ecosystem tags Action
versions, and also has the benefit of automagically migrating users of
Actions that have enabled Immutable Tags, which now must be a full
SemVer tagged version.

As we're now specifying the `versioning: semver-partial`, we don't need
to specify it in `pinGitHubActionDigestsToSemver`.
2026-04-16 10:59:58 +00:00
Jamie Tanna ea1e60e912 fix(github-actions): use correct datasource for Zizmor version (#42587)
As the Docker image needs to be published before we can use it in the
Action.
2026-04-13 09:18:50 +00:00
Shaan Majid 47807ea2a0 fix(manager/github-actions): disable updates for bare SHA pins without version comment (#42398)
* fix(manager/github-actions): disable updates for naked SHA pins without version comment

* docs(manager/github-actions): document disabled updates for bare SHA pins

* test(manager/github-actions): use single toEqual for version comment assertions

* docs(manager/github-actions): recommend version comment as primary fix for bare SHA pins

* fix(manager/github-actions): add skipReason for naked SHA pins

* docs(manager/github-actions): remove package rule example for re-enabling bare SHA updates

Co-authored-by: Jamie Tanna <github@jamietanna.co.uk>

---------

Co-authored-by: Jamie Tanna <github@jamietanna.co.uk>
2026-04-07 15:34:28 +00:00
Jamie Tanna ff6b16a468 feat(github-actions): extract Zizmor version automagically (#42415) 2026-04-07 10:47:35 +00:00
Sergei Zharinov e983daa75d feat(github-actions): Support digests for non-semver refs (#40225)
* feat(github-actions): Support non-semver refs (tags and branches)

* refactor(github-actions): drop ref= prefix, use bare token comments

Address review feedback: use bare `# cargo-llvm-cov` instead of
`# ref=cargo-llvm-cov` for non-semver pin comments, consistent with
how version comments work (`# v4.0.0`).

- Rename pinnedVersionRe -> pinTokenRe, add bareTokenRe fallback
- Add `ref` field to CommentData, separate from pinnedVersion
- Guard replaceString extension to only use ref for SHA-pinned actions
- Remove redundant autoReplaceStringTemplate override
- Deduplicate versionLikeRe (export from parse.ts)
- Add datasource assertions to non-semver tests

* refactor(github-actions): remove unreachable parseComment branch

* test(github-actions): add coverage for non-version ref fallback
2026-03-20 05:57:41 +00:00
Trim21 71674b73bf feat(github-actions): support golangci-lint version defined in golangci-lint-action (#41632)
* feat: support golangci-lint version defined in golangci-lint-action

* feat: add golangci-lint-action to supported community actions
2026-03-03 18:02:01 +00:00
Sergei Zharinov 9d857c1f68 refactor(lint): Organize imports with biome (#40966) 2026-02-06 13:40:01 +00:00
Sergei Zharinov 930cf6633c refactor: Rewrite imports with .ts extensions (#40700)
fix: Additional vi.mock path corrections and prettier formatting
2026-01-26 22:48:17 +00:00
Sergei Zharinov fb80abbadd refactor(github-actions): Simplify line parsing (#40216) 2025-12-30 19:29:54 +00:00
Matthew Gamble fef1439916 fix(github-actions): handling of quoted Docker image references (#39635)
* fix: handling of quoted Docker image references in Github Actions

The problem with the use of '\s' is that it swallows the newline at the
end of the line, meaning the $ anchor doesn't have anything to match
against, which results in it failing to match quoted entries. By simply
switching to a dot (which doesn't match newlines), the issue is
resolved for all references.

* fix: further modify regex for docker image refs in github actions
2025-12-15 08:25:26 +00:00
Aspen ed5ad43e2b feat(managers/github-actions): extract and update version for pypa/hatch@install action (#38674)
* feat(github-actions): extract and update version for `pypa/hatch@install` action

* docs(managers/github-actions): add pypa install action to community uses-with list
2025-10-27 09:45:52 +00:00
Adam Setch 804f9aefcc fix(github-actions): uses-with action versions for ruby, deno, bun) (#38294)
* fix(github-actions): uses-with action versions for ruby, deno, bun)

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* fix(github-actions): uses-with action versions for ruby, deno, bun)

Signed-off-by: Adam Setch <adam.setch@outlook.com>

---------

Signed-off-by: Adam Setch <adam.setch@outlook.com>
2025-09-30 14:36:34 +00:00
Adam Setch fcc9d79b56 feat(github-actions): uses-with action versions for ruby, deno, bun (#38132)
Signed-off-by: Adam Setch <adam.setch@outlook.com>
2025-09-20 16:37:53 +00:00
Trim21 ff290b2ed3 feat(github-actions): add some community action support (#34791)
Co-authored-by: Michael Kriese <michael.kriese@gmx.de>
2025-08-07 16:17:21 +00:00
Patrick Schratz 6c2bd9d197 feat: add forgejo as a standalone platform (#37075)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2025-07-21 14:24:07 +00:00
Jack Baldry d4a25ff8ac feat(github-actions): Also allow forward slash to separate semantic version from a tag prefix (#35431)
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
2025-05-07 11:00:13 +00:00
Michael Kriese 89700e8433 fix(github-action): fix actions schema (#35054) 2025-03-28 14:00:03 +00:00
Michael Kriese ed7d148a40 feat(github-actions): extract versioned actions from composite actions (#34993) 2025-03-25 10:06:52 +00:00