Bumps the npm-dependencies group with 8 updates in the /sources directory: | Package | From | To | | --- | --- | --- | | [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) | `2.0.1` | `2.0.2` | | [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) | `6.0.1` | `7.0.0` | | [@actions/http-client](https://github.com/actions/toolkit/tree/HEAD/packages/http-client) | `3.0.0` | `3.0.1` | | [@actions/tool-cache](https://github.com/actions/toolkit/tree/HEAD/packages/tool-cache) | `2.0.2` | `3.0.0` | | @gradle-tech/develocity-agent | `3.0.0` | `3.0.1` | | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.0.3` | `25.0.9` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.51.0` | `8.53.0` | | [prettier](https://github.com/prettier/prettier) | `3.7.4` | `3.8.0` | Updates `@actions/core` from 2.0.1 to 2.0.2 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md"><code>@actions/core</code>'s changelog</a>.</em></p> <blockquote> <h1><code>@actions/core</code> Releases</h1> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/actions/toolkit/commits/HEAD/packages/core">compare view</a></li> </ul> </details> <br /> Updates `@actions/github` from 6.0.1 to 7.0.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md"><code>@actions/github</code>'s changelog</a>.</em></p> <blockquote> <h3>7.0.0</h3> <ul> <li>Update to v3.0.1 of <code>@actions/http-client</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/actions/toolkit/commits/HEAD/packages/github">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@actions/github</code> since your current version.</p> </details> <br /> Updates `@actions/http-client` from 3.0.0 to 3.0.1 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/toolkit/blob/main/packages/http-client/RELEASES.md"><code>@actions/http-client</code>'s changelog</a>.</em></p> <blockquote> <h2>3.0.1</h2> <ul> <li>Add support for ACTIONS_ORCHESTRATION_ID in user-agent and default user-agent <a href="https://redirect.github.com/actions/toolkit/pull/2229">#2229</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/actions/toolkit/commits/HEAD/packages/http-client">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@actions/http-client</code> since your current version.</p> </details> <br /> Updates `@actions/tool-cache` from 2.0.2 to 3.0.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/toolkit/blob/main/packages/tool-cache/RELEASES.md"><code>@actions/tool-cache</code>'s changelog</a>.</em></p> <blockquote> <h3>3.0.0</h3> <ul> <li>Update to v2.0.1 of <code>@actions/core</code></li> <li>Update to v2.0.0 of <code>@actions/exec</code></li> <li>Update to v3.0.1 of <code>@actions/http-client</code></li> <li>Update to v2.0.0 of <code>@actions/io</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/actions/toolkit/commits/HEAD/packages/tool-cache">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@actions/tool-cache</code> since your current version.</p> </details> <br /> Updates `@gradle-tech/develocity-agent` from 3.0.0 to 3.0.1 Updates `@types/node` from 25.0.3 to 25.0.9 <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 8.51.0 to 8.53.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/eslint-plugin</code>'s releases</a>.</em></p> <blockquote> <h2>v8.53.0</h2> <h2>8.53.0 (2026-01-12)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unused-vars] add a fixer to remove unused imports (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11922">#11922</a>)</li> <li><strong>eslint-plugin:</strong> add rule [strict-void-return] (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9707">#9707</a>)</li> <li><strong>project-service:</strong> allow passing <code>Partial<ts.server.ServerHost></code> to project service (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11932">#11932</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> replace unclear "<code>error</code> typed" with more helpful description (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11704">#11704</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] fix false positive for parameters corresponding to a rest parameter (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11916">#11916</a>)</li> <li><strong>typescript-estree:</strong> forbid type-only import with both default and named specifiers (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11930">#11930</a>)</li> <li><strong>typescript-estree:</strong> fix syntax check for <code>using</code> declaration (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11910">#11910</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid class implements (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11934">#11934</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid "import equals" declaration (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11936">#11936</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid <code>extends</code> and <code>implements</code> in interface declaration (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11935">#11935</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>auvred <a href="https://github.com/auvred"><code>@auvred</code></a></li> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>Josh Goldberg</li> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger</li> <li>Niki <a href="https://github.com/phaux"><code>@phaux</code></a></li> <li>Nikita</li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Will Harney <a href="https://github.com/wjhsf"><code>@wjhsf</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.52.0</h2> <h2>8.52.0 (2026-01-05)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> [no-multiple-lines-of-errors] add rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11899">#11899</a>)</li> <li><strong>typescript-estree:</strong> add tseslint.com redirects for CLI outputs (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11895">#11895</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] handle conditional initializer (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11908">#11908</a>)</li> <li><strong>eslint-plugin:</strong> [no-base-to-string] detect @<a href="https://github.com/toPrimitive"><code>@toPrimitive</code></a> and valueOf (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11901">#11901</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.53.0 (2026-01-12)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> add rule [strict-void-return] (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9707">#9707</a>)</li> <li><strong>eslint-plugin:</strong> [no-unused-vars] add a fixer to remove unused imports (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11922">#11922</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] fix false positive for parameters corresponding to a rest parameter (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11916">#11916</a>)</li> <li><strong>eslint-plugin:</strong> replace unclear "<code>error</code> typed" with more helpful description (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11704">#11704</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid <code>extends</code> and <code>implements</code> in interface declaration (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11935">#11935</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid class implements (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11934">#11934</a>)</li> <li><strong>typescript-estree:</strong> forbid type-only import with both default and named specifiers (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11930">#11930</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>Josh Goldberg</li> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger</li> <li>Niki <a href="https://github.com/phaux"><code>@phaux</code></a></li> <li>Nikita</li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Will Harney <a href="https://github.com/wjhsf"><code>@wjhsf</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.52.0 (2026-01-05)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> [no-multiple-lines-of-errors] add rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11899">#11899</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-base-to-string] detect @<a href="https://github.com/toPrimitive"><code>@toPrimitive</code></a> and valueOf (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11901">#11901</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] handle conditional initializer (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11908">#11908</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Ulrich Stark</li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="3021ede961"><code>3021ede</code></a> chore(release): publish 8.53.0</li> <li><a href="722ab62547"><code>722ab62</code></a> fix(eslint-plugin): [no-useless-default-assignment] fix false positive for pa...</li> <li><a href="92fcf3ee71"><code>92fcf3e</code></a> feat(eslint-plugin): add rule [strict-void-return] (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/9707">#9707</a>)</li> <li><a href="3fb03817d6"><code>3fb0381</code></a> docs(eslint-plugin): [no-useless-default-assignment] fix misformatted link (#...</li> <li><a href="62ee26ead9"><code>62ee26e</code></a> feat(eslint-plugin): [no-unused-vars] add a fixer to remove unused imports (#...</li> <li><a href="c4d5a56925"><code>c4d5a56</code></a> fix(eslint-plugin): replace unclear "<code>error</code> typed" with more helpful descrip...</li> <li><a href="3ac7735511"><code>3ac7735</code></a> fix(typescript-estree): forbid invalid <code>extends</code> and <code>implements</code> in interfac...</li> <li><a href="a8b924b3cd"><code>a8b924b</code></a> fix(typescript-estree): forbid invalid class implements (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11934">#11934</a>)</li> <li><a href="a98ec1f393"><code>a98ec1f</code></a> fix(typescript-estree): forbid type-only import with both default and named s...</li> <li><a href="9ddd571268"><code>9ddd571</code></a> chore(release): publish 8.52.0</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.53.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `prettier` from 3.7.4 to 3.8.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/prettier/prettier/releases">prettier's releases</a>.</em></p> <blockquote> <h2>3.8.0</h2> <ul> <li>Support Angular v21.1</li> </ul> <p><a href="https://github.com/prettier/prettier/compare/3.7.4...3.8.0">diff</a></p> <p>🔗 <a href="https://prettier.io/blog/2026/01/14/3.8.0">Release note "Prettier 3.8: Support for Angular v21.1"</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md">prettier's changelog</a>.</em></p> <blockquote> <h1>3.8.0</h1> <p><a href="https://github.com/prettier/prettier/compare/3.7.4...3.8.0">diff</a></p> <p>🔗 <a href="https://prettier.io/blog/2026/01/14/3.8.0">Release Notes</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="812a4d0071"><code>812a4d0</code></a> Release 3.8.0</li> <li><a href="6cc1be31e2"><code>6cc1be3</code></a> Consistent title</li> <li><a href="6d9bef0514"><code>6d9bef0</code></a> Apply automated changes</li> <li><a href="3744a1840e"><code>3744a18</code></a> Update code example</li> <li><a href="9a3edde022"><code>9a3edde</code></a> Update</li> <li><a href="82dc52cdee"><code>82dc52c</code></a> Regenerate</li> <li><a href="dc2de1a6e7"><code>dc2de1a</code></a> Regenerate</li> <li><a href="5aa69662b4"><code>5aa6966</code></a> Regenerate</li> <li><a href="daeeb51af9"><code>daeeb51</code></a> Another version</li> <li><a href="a282985860"><code>a282985</code></a> Add blog post</li> <li>Additional commits viewable in <a href="https://github.com/prettier/prettier/compare/3.7.4...3.8.0">compare view</a></li> </ul> </details> <br /> <details> <summary>Most Recent Ignore Conditions Applied to This Pull Request</summary> | Dependency Name | Ignore Conditions | | --- | --- | | @types/node | [>= 22.a, < 23] | </details> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
GitHub Actions for Gradle builds
This repository contains a set of GitHub Actions that are useful for building Gradle projects on GitHub.
The setup-gradle action
The setup-gradle action can be used to configure Gradle for optimal execution on any platform supported by GitHub Actions.
This replaces the previous gradle/gradle-build-action, which now delegates to this implementation.
The recommended way to execute any Gradle build is with the help of the Gradle Wrapper, and the examples assume that the Gradle Wrapper has been configured for the project. See this example if your project doesn't use the Gradle Wrapper.
Example usage
name: Build
on:
push:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Build with Gradle
run: ./gradlew build
See the full action documentation for more advanced usage scenarios.
The dependency-submission action
Generates and submits a dependency graph for a Gradle project, allowing GitHub to alert about reported vulnerabilities in your project dependencies.
The following workflow will generate a dependency graph for a Gradle project and submit it immediately to the repository via the Dependency Submission API. For most projects, this default configuration should be all that you need.
Simply add this as a new workflow file to your repository (eg .github/workflows/dependency-submission.yml).
name: Dependency Submission
on:
push:
branches: [ 'main' ]
permissions:
contents: write
jobs:
dependency-submission:
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Generate and submit dependency graph
uses: gradle/actions/dependency-submission@v5
See the full action documentation for more advanced usage scenarios.
The wrapper-validation action
The wrapper-validation action validates the checksums of all Gradle Wrapper JAR files present in the repository and fails if any unknown Gradle Wrapper JAR files are found.
The action should be run in the root of the repository, as it will recursively search for any files named gradle-wrapper.jar.
Starting with v4 the setup-gradle action will perform wrapper validation on each execution.
If you are using setup-gradle in your workflows, it is unlikely that you will need to use the wrapper-validation action.
Example workflow
name: "Validate Gradle Wrapper"
on:
push:
pull_request:
jobs:
validation:
name: "Validation"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gradle/actions/wrapper-validation@v5
See the full action documentation for more advanced usage scenarios.