From 868bdc154ff5e1b295948b9dabdf794446d6ef80 Mon Sep 17 00:00:00 2001
From: Tyler Jang
Date: Thu, 30 Jan 2025 10:52:52 -0800
Subject: [PATCH 01/24] (Docs): Add lint ignore conversion guide (#969)
A user requested a comparison of ignore capabilities and styles for some
of our top python linters.
For now, I've added repo docs on this for:
- ruff
- mypy
- markdownlint
- eslint
---
.../workflows/upload_results.reusable.yaml | 2 +-
.trunk/trunk.yaml | 3 +
linters/eslint/README.md | 73 ++++++++++++++++
linters/markdownlint/README.md | 84 +++++++++++++++++++
linters/mypy/README.md | 67 +++++++++++++++
linters/ruff/README.md | 67 +++++++++++++++
6 files changed, 295 insertions(+), 1 deletion(-)
create mode 100644 linters/markdownlint/README.md
create mode 100644 linters/mypy/README.md
create mode 100644 linters/ruff/README.md
diff --git a/.github/workflows/upload_results.reusable.yaml b/.github/workflows/upload_results.reusable.yaml
index 8e19d284f..5f525e709 100644
--- a/.github/workflows/upload_results.reusable.yaml
+++ b/.github/workflows/upload_results.reusable.yaml
@@ -115,7 +115,7 @@ jobs:
- type: section
text:
type: mrkdwn
- text: "Failure: "
+ text: "Failure: "
- name: Setup Node
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml
index 9178fddea..3ed794d01 100644
--- a/.trunk/trunk.yaml
+++ b/.trunk/trunk.yaml
@@ -53,6 +53,9 @@ lint:
paths:
- "**/test_data" # required for golangci-lint, which runs on directories
- "**/test_data/**"
+ threshold:
+ - linters: [trunk]
+ level: high
actions:
# Uncomment to enable more verbose action logs
diff --git a/linters/eslint/README.md b/linters/eslint/README.md
index cb23b3e87..744247919 100644
--- a/linters/eslint/README.md
+++ b/linters/eslint/README.md
@@ -6,3 +6,76 @@
[migration guide](https://eslint.org/docs/latest/use/migrate-to-9.0.0#flat-config)) in order to run.
Trunk will automatically detect which config file you have and by default will only enable a
compatible version.
+
+## Ignores
+
+Here is a conversion guide for
+[ESLint-style ignores](https://eslint.org/docs/latest/use/configure/rules#disabling-rules) and
+[trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-and-files):
+
+### Same Line
+
+```typescript
+alert("foo"); // trunk-ignore(eslint)
+
+alert("foo"); // eslint-disable-line
+```
+
+### Next Line
+
+```typescript
+// trunk-ignore(eslint)
+alert("foo");
+
+/* eslint-disable-next-line */
+alert("foo");
+```
+
+### Specific Issue
+
+```typescript
+// trunk-ignore(eslint/no-alert)
+alert("foo");
+
+/* eslint-disable-next-line no-alert */
+alert("foo");
+```
+
+### Multiple Issues
+
+```typescript
+// trunk-ignore(eslint/no-alert,eslint/quotes)
+alert("foo");
+
+/* eslint-disable-next-line no-alert, quotes */
+alert("foo");
+```
+
+### Blocks
+
+```typescript
+// trunk-ignore-begin(eslint/no-alert)
+alert("foo");
+// trunk-ignore-end(eslint/no-alert)
+
+/* eslint-disable no-alert */
+alert("foo");
+/* eslint-enable no-alert */
+```
+
+### Whole File
+
+```typescript
+// trunk-ignore-all(eslint/no-alert)
+alert("foo");
+
+/* eslint-disable no-alert */
+alert("foo");
+```
+
+### Notes
+
+Only `eslint-disable-line` and `eslint-disable-next-line` support `//` comments. All other
+ESLint-style ignores must use `/* */` comments. The full set of rules and their applicable files can
+be configured in an
+[eslint config file](https://eslint.org/docs/latest/use/configure/rules#using-configuration-files).
diff --git a/linters/markdownlint/README.md b/linters/markdownlint/README.md
new file mode 100644
index 000000000..542413ee3
--- /dev/null
+++ b/linters/markdownlint/README.md
@@ -0,0 +1,84 @@
+# markdownlint
+
+## Ignores
+
+Here is a conversion guide for
+[markdownlint-style ignores](https://github.com/DavidAnson/markdownlint/blob/main/README.md#configuration)
+and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-and-files):
+
+### Same Line
+
+```markdown
+# (name)[link]
+
+# (name)[link]
+```
+
+### Next Line
+
+```markdown
+
+
+# (name)[link]
+
+
+
+# (name)[link]
+```
+
+### Specific Issue
+
+```markdown
+
+
+# (name)[link]
+
+
+
+# (name)[link]
+```
+
+### Multiple Issues
+
+```markdown
+
+
+# (name)[link]
+
+
+
+# (name)[link]
+```
+
+### Blocks
+
+```markdown
+
+
+# (name)[link]
+
+
+
+
+
+# (name)[link]
+
+
+```
+
+### Whole File
+
+```markdown
+
+
+# (name)[link]
+
+
+
+# (name)[link]
+```
+
+### Notes
+
+Specific rules and multi-file ignores can be specified in a
+[markdownlint config file](https://github.com/DavidAnson/markdownlint#optionsconfig).
diff --git a/linters/mypy/README.md b/linters/mypy/README.md
new file mode 100644
index 000000000..f3a84699a
--- /dev/null
+++ b/linters/mypy/README.md
@@ -0,0 +1,67 @@
+# mypy
+
+## Ignores
+
+Here is a conversion guide for
+[mypy-style ignores](https://mypy.readthedocs.io/en/stable/common_issues.html#spurious-errors-and-locally-silencing-the-checker)
+and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-and-files):
+
+### Same Line
+
+```python
+x: str = 1 # trunk-ignore(mypy)
+
+x: str = 1 # type: ignore
+```
+
+### Next Line
+
+```python
+# trunk-ignore(mypy)
+x: str = 1
+
+# Unsupported in mypy
+x: str = 1
+```
+
+### Specific Issue
+
+```python
+x: str = 1 # trunk-ignore(mypy/assignment)
+
+x: str = 1 # type: ignore[assignment]
+```
+
+### Multiple Issues
+
+```python
+x: str = 1 # trunk-ignore(mypy/assignment,mypy/note)
+
+x: str = 1 # type: ignore[assignment, note]
+```
+
+### Blocks
+
+```python
+# trunk-ignore-begin(mypy/assigment)
+x: str = 1
+# trunk-ignore-end(mypy/assigment)
+
+# Unsupported in mypy
+x: str = 1
+```
+
+### Whole File
+
+```python
+# trunk-ignore-all(mypy/assigment)
+x: str = 1
+
+# mypy: disable-error-code="assignment"
+x: str = 1
+```
+
+### Notes
+
+The applied linter rules can be specified in a
+[mypy config file](https://mypy.readthedocs.io/en/stable/config_file.html#example-mypy-ini).
diff --git a/linters/ruff/README.md b/linters/ruff/README.md
new file mode 100644
index 000000000..5df30efa7
--- /dev/null
+++ b/linters/ruff/README.md
@@ -0,0 +1,67 @@
+# ruff
+
+## Ignores
+
+Here is a conversion guide for
+[ruff-style ignores](https://docs.astral.sh/ruff/linter/#disabling-fixes) and
+[trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-and-files):
+
+### Same Line
+
+```python
+x = 1 # trunk-ignore(ruff)
+
+x = 1 # noqa
+```
+
+### Next Line
+
+```python
+# trunk-ignore(ruff)
+x = 1
+
+# Unsupported in ruff
+x = 1
+```
+
+### Specific Issue
+
+```python
+x = 1 # trunk-ignore(ruff/F841)
+
+x = 1 # noqa: F841
+```
+
+### Multiple Issues
+
+```python
+x = 1 # trunk-ignore(ruff/E741,ruff/F841)
+
+x = 1 # noqa: E741, F841
+```
+
+### Blocks
+
+```python
+# trunk-ignore-begin(ruff/F841)
+x = 1
+# trunk-ignore-end(ruff/F841)
+
+# Unsupported in ruff
+x = 1
+```
+
+### Whole File
+
+```python
+# trunk-ignore-all(ruff/F841)
+x = 1
+
+# ruff: noqa: F841
+x = 1
+```
+
+### Notes
+
+You can also configure which rules to use and which files to apply them to using
+[ruff config files](https://docs.astral.sh/ruff/settings/#lint_per-file-ignores).
From 91572a8f48cbde0d5fdee6f0c7cb7fab614ededa Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Feb 2025 00:05:49 -0800
Subject: [PATCH 02/24] Bump the dependencies group with 2 updates (#971)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 2 updates:
[github/codeql-action](https://github.com/github/codeql-action) and
[actions/setup-node](https://github.com/actions/setup-node).
Updates `github/codeql-action` from 3.28.5 to 3.28.8
Release notes
Sourced from github/codeql-action's
releases.
v3.28.8
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
See the full CHANGELOG.md
for more information.
v3.28.7
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.7 - 29 Jan 2025
No user facing changes.
See the full CHANGELOG.md
for more information.
v3.28.6
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
3.28.3 - 22 Jan 2025
- Update default CodeQL bundle version to 2.20.2. #2707
- Fix an issue downloading the CodeQL Bundle from a GitHub Enterprise
Server instance which occurred when the CodeQL Bundle had been synced to
the instance using the CodeQL Action
sync tool and the Actions runner did not have Zstandard installed.
#2710
- Uploading debug artifacts for CodeQL analysis is temporarily
disabled. #2712
3.28.2 - 21 Jan 2025
No user facing changes.
3.28.1 - 10 Jan 2025
- CodeQL Action v2 is now deprecated, and is no longer updated or
supported. For better performance, improved security, and new features,
upgrade to v3. For more information, see this
changelog post. #2677
- Update default CodeQL bundle version to 2.20.1. #2678
3.28.0 - 20 Dec 2024
- Bump the minimum CodeQL bundle version to 2.15.5. #2655
- Don't fail in the unusual case that a file is on the search path. #2660.
3.27.9 - 12 Dec 2024
... (truncated)
Commits
dd74661
Merge pull request #2746
from github/update-v3.28.8-a91a3f767
3210a3c
Fix Kotlin version in changelog
72f9d02
Update changelog for v3.28.8
a91a3f7
Merge pull request #2744
from github/igfoo/kot2.1.10
c520fb5
Merge pull request #2745
from github/mergeback/v3.28.7-to-main-6e545590
3879c57
Add changelog entry
0c21937
Run "npm run build"
5a61bf0
Kotlin: The 2.20.3 release supports Kotlin 2.1.10.
163d119
Update checked-in dependencies
bcf5cec
Update changelog and version after v3.28.7
- Additional commits viewable in compare
view
Updates `actions/setup-node` from 4.1.0 to 4.2.0
Release notes
Sourced from actions/setup-node's
releases.
v4.2.0
What's Changed
New Contributors
Full Changelog: https://github.com/actions/setup-node/compare/v4...v4.2.0
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/repo_tests.reusable.yaml | 2 +-
.github/workflows/scorecard.yml | 2 +-
.github/workflows/upload_results.reusable.yaml | 4 ++--
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 11780764e..5b8106048 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5
+ uses: github/codeql-action/init@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5
+ uses: github/codeql-action/autobuild@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5
+ uses: github/codeql-action/analyze@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
diff --git a/.github/workflows/repo_tests.reusable.yaml b/.github/workflows/repo_tests.reusable.yaml
index e22591ab7..61a2ad01a 100644
--- a/.github/workflows/repo_tests.reusable.yaml
+++ b/.github/workflows/repo_tests.reusable.yaml
@@ -28,7 +28,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Setup node
- uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
+ uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: 18
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index 011b6861a..d953de6e9 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5
+ uses: github/codeql-action/upload-sarif@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
with:
sarif_file: results.sarif
diff --git a/.github/workflows/upload_results.reusable.yaml b/.github/workflows/upload_results.reusable.yaml
index 5f525e709..56fbb1273 100644
--- a/.github/workflows/upload_results.reusable.yaml
+++ b/.github/workflows/upload_results.reusable.yaml
@@ -118,7 +118,7 @@ jobs:
text: "Failure: "
- name: Setup Node
- uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
+ uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: 18
@@ -227,7 +227,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Setup Node
- uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
+ uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: 18
From 29226b7676264f2cc5cc72ced9033f1e74afad2c Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Feb 2025 00:06:15 -0800
Subject: [PATCH 03/24] Bump the dependencies group with 5 updates (#972)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `22.10.10` | `22.13.0` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.21.0` | `8.22.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.21.0` | `8.22.0` |
| [semver](https://github.com/npm/node-semver) | `7.6.3` | `7.7.0` |
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.21.0` | `8.22.0` |
Updates `@types/node` from 22.10.10 to 22.13.0
Commits
Updates `@typescript-eslint/eslint-plugin` from 8.21.0 to 8.22.0
Release notes
Sourced from @typescript-eslint/eslint-plugin
's
releases.
v8.22.0
8.22.0 (2025-01-27)
🚀 Features
- parser: add standalone isolatedDeclarations option
(#10499)
🩹 Fixes
- eslint-plugin: [prefer-nullish-coalescing] doesn't
report on ternary but on equivalent || (#10517)
- eslint-plugin: [no-duplicate-type-constituents]
handle nested types (#10638)
- eslint-plugin: [no-shadow] don't report
unnecessarily on valid ways of using module augmentation (#10616)
- eslint-plugin: [no-extraneous-class] handle
accessor keyword (#10678)
- eslint-plugin: [prefer-readonly] autofixer doesn't
add type to property that is mutated in the constructor (#10552)
- eslint-plugin: [no-unnecessary-template-expression]
handle template literal type (#10612)
- type-utils: support matching intersection types in
TypeOrValueSpecifier
with a PackageSpecifier
(#10667)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/eslint-plugin
's
changelog.
8.22.0 (2025-01-27)
🩹 Fixes
- eslint-plugin: [no-unnecessary-template-expression]
handle template literal type (#10612)
- eslint-plugin: [prefer-readonly] autofixer doesn't
add type to property that is mutated in the constructor (#10552)
- eslint-plugin: [no-extraneous-class] handle
accessor keyword (#10678)
- eslint-plugin: [no-shadow] don't report
unnecessarily on valid ways of using module augmentation (#10616)
- eslint-plugin: [no-duplicate-type-constituents]
handle nested types (#10638)
- eslint-plugin: [prefer-nullish-coalescing] doesn't
report on ternary but on equivalent || (#10517)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Commits
94e8098
chore(release): publish 8.22.0
9f0ce90
docs: add FAQ and docs around verbatimModuleSyntax
and
similar options (#10...
f1e9a5d
fix(eslint-plugin): [no-unnecessary-template-expression] handle template
lite...
acab0a9
fix(eslint-plugin): [prefer-readonly] autofixer doesn't add type to
property ...
a3a157c
fix(eslint-plugin): [no-extraneous-class] handle accessor keyword (#10678)
586e7eb
fix(eslint-plugin): [no-shadow] don't report unnecessarily on valid ways
of u...
9e8828b
fix(eslint-plugin): [no-duplicate-type-constituents] handle nested types
(#10...
74c4155
chore: correct docs test snapshot for no-unused-vars
1e2305e
fix(eslint-plugin): [prefer-nullish-coalescing] doesn't report on
ternary but...
974f2b1
docs(eslint-plugin): [no-unused-vars] add types-only values FAQ (#10690)
- Additional commits viewable in compare
view
Updates `@typescript-eslint/parser` from 8.21.0 to 8.22.0
Release notes
Sourced from @typescript-eslint/parser
's
releases.
v8.22.0
8.22.0 (2025-01-27)
🚀 Features
- parser: add standalone isolatedDeclarations option
(#10499)
🩹 Fixes
- eslint-plugin: [prefer-nullish-coalescing] doesn't
report on ternary but on equivalent || (#10517)
- eslint-plugin: [no-duplicate-type-constituents]
handle nested types (#10638)
- eslint-plugin: [no-shadow] don't report
unnecessarily on valid ways of using module augmentation (#10616)
- eslint-plugin: [no-extraneous-class] handle
accessor keyword (#10678)
- eslint-plugin: [prefer-readonly] autofixer doesn't
add type to property that is mutated in the constructor (#10552)
- eslint-plugin: [no-unnecessary-template-expression]
handle template literal type (#10612)
- type-utils: support matching intersection types in
TypeOrValueSpecifier
with a PackageSpecifier
(#10667)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/parser
's
changelog.
8.22.0 (2025-01-27)
🚀 Features
- parser: add standalone isolatedDeclarations option
(#10499)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Commits
Updates `semver` from 7.6.3 to 7.7.0
Release notes
Sourced from semver's
releases.
v7.7.0
7.7.0
(2025-01-29)
Features
Bug Fixes
Documentation
Chores
Changelog
Sourced from semver's
changelog.
7.7.0
(2025-01-29)
Features
Bug Fixes
Documentation
Chores
Commits
2cfcbb5
chore: release 7.7.0 (#750)
d588e37
fix(diff): fix prerelease to stable version diff logic (#755)
753e02b
chore: bump @npmcli/template-oss
from 4.23.3 to 4.23.4 (#747)
8a34bde
fix: add identifier validation to inc()
(#754)
0864b3c
feat: add "release" inc type (#753)
67e5478
docs(readme): added missing period for consistency (#756)
868d4bb
docs: clarify comment about obsolete prefixes (#749)
145c554
chore: bump @npmcli/eslint-config
from 4.0.5 to 5.0.0
0b812d5
chore: postinstall for dependabot template-oss PR
6502a15
chore: bump @npmcli/template-oss
from 4.23.1 to
4.23.3
- Additional commits viewable in compare
view
Updates `typescript-eslint` from 8.21.0 to 8.22.0
Release notes
Sourced from typescript-eslint's
releases.
v8.22.0
8.22.0 (2025-01-27)
🚀 Features
- parser: add standalone isolatedDeclarations option
(#10499)
🩹 Fixes
- eslint-plugin: [prefer-nullish-coalescing] doesn't
report on ternary but on equivalent || (#10517)
- eslint-plugin: [no-duplicate-type-constituents]
handle nested types (#10638)
- eslint-plugin: [no-shadow] don't report
unnecessarily on valid ways of using module augmentation (#10616)
- eslint-plugin: [no-extraneous-class] handle
accessor keyword (#10678)
- eslint-plugin: [prefer-readonly] autofixer doesn't
add type to property that is mutated in the constructor (#10552)
- eslint-plugin: [no-unnecessary-template-expression]
handle template literal type (#10612)
- type-utils: support matching intersection types in
TypeOrValueSpecifier
with a PackageSpecifier
(#10667)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from typescript-eslint's
changelog.
8.22.0 (2025-01-27)
This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 119 +++++++++++++++++++++++-----------------------
package.json | 10 ++--
2 files changed, 65 insertions(+), 64 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index f61099fff..213b25ca2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,10 +16,10 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.10.10",
+ "@types/node": "^22.13.0",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.21.0",
- "@typescript-eslint/parser": "^8.21.0",
+ "@typescript-eslint/eslint-plugin": "^8.22.0",
+ "@typescript-eslint/parser": "^8.22.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
@@ -35,13 +35,13 @@
"jest": "^29.3.1",
"jest-junit": "^16.0.0",
"jest-specific-snapshot": "^8.0.0",
- "semver": "^7.6.3",
+ "semver": "^7.7.0",
"simple-git": "^3.27.0",
"ts-jest": "^29.2.5",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.21.0",
+ "typescript-eslint": "^8.22.0",
"yaml": "^2.7.0"
},
"engines": {
@@ -1469,9 +1469,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.10.10",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.10.tgz",
- "integrity": "sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww==",
+ "version": "22.13.0",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.0.tgz",
+ "integrity": "sha512-ClIbNe36lawluuvq3+YYhnIN2CELi+6q8NpnM7PYp4hBn/TatfboPgVSm2rwKRfnV2M+Ty9GWDFI64KEe+kysA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1503,17 +1503,17 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.21.0.tgz",
- "integrity": "sha512-eTH+UOR4I7WbdQnG4Z48ebIA6Bgi7WO8HvFEneeYBxG8qCOYgTOFPSg6ek9ITIDvGjDQzWHcoWHCDO2biByNzA==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.22.0.tgz",
+ "integrity": "sha512-4Uta6REnz/xEJMvwf72wdUnC3rr4jAQf5jnTkeRQ9b6soxLxhDEbS/pfMPoJLDfFPNVRdryqWUIV/2GZzDJFZw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.21.0",
- "@typescript-eslint/type-utils": "8.21.0",
- "@typescript-eslint/utils": "8.21.0",
- "@typescript-eslint/visitor-keys": "8.21.0",
+ "@typescript-eslint/scope-manager": "8.22.0",
+ "@typescript-eslint/type-utils": "8.22.0",
+ "@typescript-eslint/utils": "8.22.0",
+ "@typescript-eslint/visitor-keys": "8.22.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1533,16 +1533,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.21.0.tgz",
- "integrity": "sha512-Wy+/sdEH9kI3w9civgACwabHbKl+qIOu0uFZ9IMKzX3Jpv9og0ZBJrZExGrPpFAY7rWsXuxs5e7CPPP17A4eYA==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.22.0.tgz",
+ "integrity": "sha512-MqtmbdNEdoNxTPzpWiWnqNac54h8JDAmkWtJExBVVnSrSmi9z+sZUt0LfKqk9rjqmKOIeRhO4fHHJ1nQIjduIQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.21.0",
- "@typescript-eslint/types": "8.21.0",
- "@typescript-eslint/typescript-estree": "8.21.0",
- "@typescript-eslint/visitor-keys": "8.21.0",
+ "@typescript-eslint/scope-manager": "8.22.0",
+ "@typescript-eslint/types": "8.22.0",
+ "@typescript-eslint/typescript-estree": "8.22.0",
+ "@typescript-eslint/visitor-keys": "8.22.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1558,14 +1558,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.21.0.tgz",
- "integrity": "sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.22.0.tgz",
+ "integrity": "sha512-/lwVV0UYgkj7wPSw0o8URy6YI64QmcOdwHuGuxWIYznO6d45ER0wXUbksr9pYdViAofpUCNJx/tAzNukgvaaiQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.21.0",
- "@typescript-eslint/visitor-keys": "8.21.0"
+ "@typescript-eslint/types": "8.22.0",
+ "@typescript-eslint/visitor-keys": "8.22.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1576,14 +1576,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.21.0.tgz",
- "integrity": "sha512-95OsL6J2BtzoBxHicoXHxgk3z+9P3BEcQTpBKriqiYzLKnM2DeSqs+sndMKdamU8FosiadQFT3D+BSL9EKnAJQ==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.22.0.tgz",
+ "integrity": "sha512-NzE3aB62fDEaGjaAYZE4LH7I1MUwHooQ98Byq0G0y3kkibPJQIXVUspzlFOmOfHhiDLwKzMlWxaNv+/qcZurJA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.21.0",
- "@typescript-eslint/utils": "8.21.0",
+ "@typescript-eslint/typescript-estree": "8.22.0",
+ "@typescript-eslint/utils": "8.22.0",
"debug": "^4.3.4",
"ts-api-utils": "^2.0.0"
},
@@ -1600,9 +1600,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.21.0.tgz",
- "integrity": "sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.22.0.tgz",
+ "integrity": "sha512-0S4M4baNzp612zwpD4YOieP3VowOARgK2EkN/GBn95hpyF8E2fbMT55sRHWBq+Huaqk3b3XK+rxxlM8sPgGM6A==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1614,14 +1614,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.21.0.tgz",
- "integrity": "sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.22.0.tgz",
+ "integrity": "sha512-SJX99NAS2ugGOzpyhMza/tX+zDwjvwAtQFLsBo3GQxiGcvaKlqGBkmZ+Y1IdiSi9h4Q0Lr5ey+Cp9CGWNY/F/w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.21.0",
- "@typescript-eslint/visitor-keys": "8.21.0",
+ "@typescript-eslint/types": "8.22.0",
+ "@typescript-eslint/visitor-keys": "8.22.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1667,16 +1667,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.21.0.tgz",
- "integrity": "sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.22.0.tgz",
+ "integrity": "sha512-T8oc1MbF8L+Bk2msAvCUzjxVB2Z2f+vXYfcucE2wOmYs7ZUwco5Ep0fYZw8quNwOiw9K8GYVL+Kgc2pETNTLOg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.21.0",
- "@typescript-eslint/types": "8.21.0",
- "@typescript-eslint/typescript-estree": "8.21.0"
+ "@typescript-eslint/scope-manager": "8.22.0",
+ "@typescript-eslint/types": "8.22.0",
+ "@typescript-eslint/typescript-estree": "8.22.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1691,13 +1691,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.21.0.tgz",
- "integrity": "sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.22.0.tgz",
+ "integrity": "sha512-AWpYAXnUgvLNabGTy3uBylkgZoosva/miNd1I8Bz3SjotmQPbVqhO4Cczo8AsZ44XVErEBPr/CRSgaj8sG7g0w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.21.0",
+ "@typescript-eslint/types": "8.22.0",
"eslint-visitor-keys": "^4.2.0"
},
"engines": {
@@ -5699,10 +5699,11 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.0.tgz",
+ "integrity": "sha512-DrfFnPzblFmNrIZzg5RzHegbiRWg7KMR7btwi2yjHwx06zsUbO5g613sVwEV7FTwmzJu+Io0lJe2GJ3LxqpvBQ==",
"dev": true,
+ "license": "ISC",
"bin": {
"semver": "bin/semver.js"
},
@@ -6324,15 +6325,15 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.21.0.tgz",
- "integrity": "sha512-txEKYY4XMKwPXxNkN8+AxAdX6iIJAPiJbHE/FpQccs/sxw8Lf26kqwC3cn0xkHlW8kEbLhkhCsjWuMveaY9Rxw==",
+ "version": "8.22.0",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.22.0.tgz",
+ "integrity": "sha512-Y2rj210FW1Wb6TWXzQc5+P+EWI9/zdS57hLEc0gnyuvdzWo8+Y8brKlbj0muejonhMI/xAZCnZZwjbIfv1CkOw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.21.0",
- "@typescript-eslint/parser": "8.21.0",
- "@typescript-eslint/utils": "8.21.0"
+ "@typescript-eslint/eslint-plugin": "8.22.0",
+ "@typescript-eslint/parser": "8.22.0",
+ "@typescript-eslint/utils": "8.22.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
diff --git a/package.json b/package.json
index aaf3e6c6f..4e27ce0f8 100644
--- a/package.json
+++ b/package.json
@@ -14,10 +14,10 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.10.10",
+ "@types/node": "^22.13.0",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.21.0",
- "@typescript-eslint/parser": "^8.21.0",
+ "@typescript-eslint/eslint-plugin": "^8.22.0",
+ "@typescript-eslint/parser": "^8.22.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
@@ -33,13 +33,13 @@
"jest": "^29.3.1",
"jest-junit": "^16.0.0",
"jest-specific-snapshot": "^8.0.0",
- "semver": "^7.6.3",
+ "semver": "^7.7.0",
"simple-git": "^3.27.0",
"ts-jest": "^29.2.5",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.21.0",
+ "typescript-eslint": "^8.22.0",
"yaml": "^2.7.0"
},
"bundleDependencies": [
From face9068147dbbd604718925690a126868a234ea Mon Sep 17 00:00:00 2001
From: Tyler Jang
Date: Mon, 3 Feb 2025 11:19:38 -0800
Subject: [PATCH 04/24] (Docs): Add instructions on comment style (#970)
Follow-up to #969. Adds instructions on adding comments with ignores, as
requested by user.
---
.trunk/trunk.yaml | 2 ++
linters/eslint/README.md | 10 ++++++++++
linters/markdownlint/README.md | 17 ++++++++++++-----
linters/mypy/README.md | 8 ++++++++
linters/ruff/README.md | 8 ++++++++
tests/parse/index.ts | 5 ++++-
6 files changed, 44 insertions(+), 6 deletions(-)
diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml
index 3ed794d01..d5c628e64 100644
--- a/.trunk/trunk.yaml
+++ b/.trunk/trunk.yaml
@@ -53,6 +53,8 @@ lint:
paths:
- "**/test_data" # required for golangci-lint, which runs on directories
- "**/test_data/**"
+ - linters: [prettier]
+ paths: [linters/markdownlint/README.md]
threshold:
- linters: [trunk]
level: high
diff --git a/linters/eslint/README.md b/linters/eslint/README.md
index 744247919..d876f9bcb 100644
--- a/linters/eslint/README.md
+++ b/linters/eslint/README.md
@@ -31,6 +31,16 @@ alert("foo");
alert("foo");
```
+### With Comments
+
+```typescript
+// trunk-ignore(eslint): Expected alert
+alert("foo");
+
+/* eslint-disable-next-line -- Expected alert */
+alert("foo");
+```
+
### Specific Issue
```typescript
diff --git a/linters/markdownlint/README.md b/linters/markdownlint/README.md
index 542413ee3..4555d5de4 100644
--- a/linters/markdownlint/README.md
+++ b/linters/markdownlint/README.md
@@ -18,11 +18,19 @@ and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-a
```markdown
-
# (name)[link]
+# (name)[link]
+```
+
+### With Comments
+
+```markdown
+
+# (name)[link]
+
# (name)[link]
```
@@ -30,11 +38,9 @@ and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-a
```markdown
-
# (name)[link]
-
# (name)[link]
```
@@ -42,11 +48,9 @@ and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-a
```markdown
-
# (name)[link]
-
# (name)[link]
```
@@ -80,5 +84,8 @@ and [trunk-ignores](https://docs.trunk.io/code-quality/linters/ignoring-issues-a
### Notes
+By default, prettier will add empty lines between markdown content and comments.
+For this reason, we recommend using next-line ignores with [prettier ignores](https://prettier.io/docs/ignore/#range-ignore) or using ignore bocks.
+
Specific rules and multi-file ignores can be specified in a
[markdownlint config file](https://github.com/DavidAnson/markdownlint#optionsconfig).
diff --git a/linters/mypy/README.md b/linters/mypy/README.md
index f3a84699a..dcaf70946 100644
--- a/linters/mypy/README.md
+++ b/linters/mypy/README.md
@@ -24,6 +24,14 @@ x: str = 1
x: str = 1
```
+### With Comments
+
+```python
+x: str = 1 # trunk-ignore(mypy): Expected type
+
+x: str = 1 # Unsupported in mypy
+```
+
### Specific Issue
```python
diff --git a/linters/ruff/README.md b/linters/ruff/README.md
index 5df30efa7..fc5556747 100644
--- a/linters/ruff/README.md
+++ b/linters/ruff/README.md
@@ -24,6 +24,14 @@ x = 1
x = 1
```
+### With Comments
+
+```python
+x = 1 # trunk-ignore(ruff): Expected var
+
+x = 1 # noqa Expected var
+```
+
### Specific Issue
```python
diff --git a/tests/parse/index.ts b/tests/parse/index.ts
index d53cf2424..fa5d2eab2 100644
--- a/tests/parse/index.ts
+++ b/tests/parse/index.ts
@@ -17,6 +17,7 @@ const RESULTS_FILE = path.resolve(REPO_ROOT, "results.json");
const FAILURES_FILE = path.resolve(REPO_ROOT, "failures.yaml");
const RERUN_FILE = path.resolve(REPO_ROOT, "reruns.txt");
+const EXCLUDED_RERUN_LINTERS: string[] = ["snyk"];
const VALIDATED_LINTER_BLOCKLIST: string[] = [];
const RUN_ID = process.env.RUN_ID ?? "";
@@ -357,12 +358,14 @@ const writeTestResults = (testResults: TestResultSummary) => {
const allMetadata = Array.from(testFailureMetadata.values());
// Must have at least one assertion_failure and no other failure types in order to proactively generate snapshot.
const shouldRerunTest =
+ !EXCLUDED_RERUN_LINTERS.includes(linter) &&
allMetadata.every(
(failureMode) =>
failureMode === "assertion_failure" ||
failureMode === "skipped" ||
failureMode === "passed",
- ) && allMetadata.find((failureMode) => failureMode === "assertion_failure") !== undefined;
+ ) &&
+ allMetadata.find((failureMode) => failureMode === "assertion_failure") !== undefined;
if (shouldRerunTest) {
rerunPaths.push(testFilePath);
}
From 69bd1c859905609c054491d1de6c175d87a7d332 Mon Sep 17 00:00:00 2001
From: "trunk-open-pr-bot[bot]"
<131314627+trunk-open-pr-bot[bot]@users.noreply.github.com>
Date: Wed, 5 Feb 2025 11:34:00 -0800
Subject: [PATCH 05/24] Upgrade trunk to 1.22.10-beta.7 (#947)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[](https://trunk.io)
cli upgraded: 1.22.8-beta.6 → 1.22.10-beta.7
1 linter was upgraded:
- eslint 9.16.0 → 9.19.0
1 plugin was upgraded:
- trunk-io/configs v1.0.9 → v1.0.10
2 tools were upgraded:
- clangd 18.1.3 → 19.1.2
- clangd-indexing-tools 18.1.3 → 19.1.2
This PR was generated by the [Trunk Action]. For more info, see our
[docs] or reach out on [Slack].
[Trunk Action]: https://github.com/trunk-io/trunk-action
[docs]: https://docs.trunk.io
[Slack]: https://slack.trunk.io/
Co-authored-by: TylerJang27 <42743566+TylerJang27@users.noreply.github.com>
---
.trunk/trunk.yaml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml
index d5c628e64..d7d41c9ed 100644
--- a/.trunk/trunk.yaml
+++ b/.trunk/trunk.yaml
@@ -2,7 +2,7 @@ version: 0.1
# version used for local trunk runs and testing
cli:
- version: 1.22.8-beta.6
+ version: 1.22.10-beta.7
shell_hooks:
enforce: true
@@ -17,7 +17,7 @@ plugins:
- id: configs
uri: https://github.com/trunk-io/configs
- ref: v1.0.9
+ ref: v1.0.10
lint:
files:
@@ -42,7 +42,7 @@ lint:
enabled:
# enabled linters inherited from github.com/trunk-io/configs plugin
- definition-checker
- - eslint@9.16.0
+ - eslint@9.19.0
- trunk-toolbox@0.5.4
disabled:
- pylint # pylint diagnostics are too strict
@@ -107,8 +107,8 @@ actions:
- tool-test-helper
tools:
enabled:
- - clangd-indexing-tools@18.1.3
- - clangd@18.1.3
+ - clangd-indexing-tools@19.1.2
+ - clangd@19.1.2
runtimes:
# expose shims in .trunk/tools
- node
From ad9645357249f032295e1191134ede686a7a0692 Mon Sep 17 00:00:00 2001
From: "trunk-open-pr-bot[bot]"
<131314627+trunk-open-pr-bot[bot]@users.noreply.github.com>
Date: Thu, 6 Feb 2025 09:42:28 -0800
Subject: [PATCH 06/24] Auto-add missing snapshots (#973)
Create new snapshots from
https://github.com/trunk-io/plugins/actions/runs/13176286038
Co-authored-by: TylerJang27 <42743566+TylerJang27@users.noreply.github.com>
---
.../buildifier_v8.0.3_basic_check.check.shot | 171 ++++++++++++++++++
...config.test_data.add_tables.BUILD.fmt.shot | 39 ++++
...0.3_no_config.test_data.basic.bzl.fmt.shot | 11 ++
...config.test_data.add_tables.BUILD.fmt.shot | 39 ++++
4 files changed, 260 insertions(+)
create mode 100644 linters/buildifier/test_data/buildifier_v8.0.3_basic_check.check.shot
create mode 100644 linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.add_tables.BUILD.fmt.shot
create mode 100644 linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.basic.bzl.fmt.shot
create mode 100644 linters/buildifier/test_data/buildifier_v8.0.3_with_config.test_data.add_tables.BUILD.fmt.shot
diff --git a/linters/buildifier/test_data/buildifier_v8.0.3_basic_check.check.shot b/linters/buildifier/test_data/buildifier_v8.0.3_basic_check.check.shot
new file mode 100644
index 000000000..730ef74be
--- /dev/null
+++ b/linters/buildifier/test_data/buildifier_v8.0.3_basic_check.check.shot
@@ -0,0 +1,171 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter buildifier test basic_check 1`] = `
+{
+ "issues": [
+ {
+ "code": "native-sh-library",
+ "column": "1",
+ "file": "test_data/add_tables.BUILD",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#native-sh-library",
+ "level": "LEVEL_HIGH",
+ "line": "13",
+ "linter": "buildifier",
+ "message": "Function "sh_library" is not global anymore and needs to be loaded from "@rules_shell//shell:sh_library.bzl".",
+ "targetType": "bazel-build",
+ },
+ {
+ "code": "native-sh-library",
+ "column": "1",
+ "file": "test_data/add_tables.BUILD",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#native-sh-library",
+ "level": "LEVEL_HIGH",
+ "line": "18",
+ "linter": "buildifier",
+ "message": "Function "sh_library" is not global anymore and needs to be loaded from "@rules_shell//shell:sh_library.bzl".",
+ "targetType": "bazel-build",
+ },
+ {
+ "code": "native-sh-binary",
+ "column": "1",
+ "file": "test_data/add_tables.BUILD",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#native-sh-binary",
+ "level": "LEVEL_HIGH",
+ "line": "23",
+ "linter": "buildifier",
+ "message": "Function "sh_binary" is not global anymore and needs to be loaded from "@rules_shell//shell:sh_binary.bzl".",
+ "targetType": "bazel-build",
+ },
+ {
+ "code": "module-docstring",
+ "column": "1",
+ "file": "test_data/basic.bzl",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#module-docstring",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "buildifier",
+ "message": "The file has no module docstring.
+A module docstring is a string literal (not a comment) which should be the first statement of a file (it may follow comment lines).",
+ "targetType": "starlark",
+ },
+ {
+ "code": "load",
+ "column": "26",
+ "file": "test_data/basic.bzl",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#load",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "buildifier",
+ "message": "Loaded symbol "a" is unused. Please remove it.
+To disable the warning, add '@unused' in a comment.
+If you want to re-export a symbol, use the following pattern:
+
+ load(..., _a = "a", ...)
+ a = _a",
+ "targetType": "starlark",
+ },
+ {
+ "code": "load",
+ "column": "26",
+ "file": "test_data/basic.bzl",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://github.com/bazelbuild/buildtools/blob/main/WARNINGS.md#load",
+ "level": "LEVEL_HIGH",
+ "line": "2",
+ "linter": "buildifier",
+ "message": "Loaded symbol "b" is unused. Please remove it.
+To disable the warning, add '@unused' in a comment.
+If you want to re-export a symbol, use the following pattern:
+
+ load(..., _b = "b", ...)
+ b = _b",
+ "targetType": "starlark",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "fix",
+ "fileGroupName": "bazel-build",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/add_tables.BUILD",
+ ],
+ "verb": "TRUNK_VERB_FMT",
+ },
+ {
+ "command": "fix",
+ "fileGroupName": "starlark",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/basic.bzl",
+ ],
+ "verb": "TRUNK_VERB_FMT",
+ },
+ {
+ "command": "warn",
+ "fileGroupName": "bazel-build",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/add_tables.BUILD",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "warn",
+ "fileGroupName": "starlark",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/basic.bzl",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "warn",
+ "fileGroupName": "bazel-build",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/add_tables.BUILD",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "warn",
+ "fileGroupName": "starlark",
+ "linter": "buildifier",
+ "paths": [
+ "test_data/basic.bzl",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [
+ {
+ "column": "1",
+ "file": "test_data/add_tables.BUILD",
+ "issueClass": "ISSUE_CLASS_UNFORMATTED",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "buildifier",
+ "message": "Incorrect formatting, autoformat by running 'trunk fmt'",
+ },
+ {
+ "column": "1",
+ "file": "test_data/basic.bzl",
+ "issueClass": "ISSUE_CLASS_UNFORMATTED",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "buildifier",
+ "message": "Incorrect formatting, autoformat by running 'trunk fmt'",
+ },
+ ],
+}
+`;
diff --git a/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.add_tables.BUILD.fmt.shot b/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.add_tables.BUILD.fmt.shot
new file mode 100644
index 000000000..5ee7d8e85
--- /dev/null
+++ b/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.add_tables.BUILD.fmt.shot
@@ -0,0 +1,39 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing formatter buildifier test no_config 1`] = `
+"load("@rules_shell//shell:sh_binary.bzl", "sh_binary")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
+
+foo_macro(
+ fizz = [
+ ":lib2",
+ ":lib1",
+ ],
+)
+
+filegroup(
+ name = "files",
+ srcs = glob(["**"]),
+)
+
+sh_library(
+ name = "lib1",
+ srcs = ["src1.sh"],
+)
+
+sh_library(
+ name = "lib2",
+ srcs = ["src1.sh"],
+)
+
+sh_binary(
+ name = "foo",
+ srcs = ["foo.sh"],
+ deps = [
+ ":lib1",
+ ":lib2",
+ ],
+)
+"
+`;
diff --git a/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.basic.bzl.fmt.shot b/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.basic.bzl.fmt.shot
new file mode 100644
index 000000000..0f9da3bb5
--- /dev/null
+++ b/linters/buildifier/test_data/buildifier_v8.0.3_no_config.test_data.basic.bzl.fmt.shot
@@ -0,0 +1,11 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing formatter buildifier test no_config 1`] = `
+"# Misformatted file
+def eponymous_name():
+ name = native.package_name()
+
+ return name[name.rfind("/") + 1:]
+"
+`;
diff --git a/linters/buildifier/test_data/buildifier_v8.0.3_with_config.test_data.add_tables.BUILD.fmt.shot b/linters/buildifier/test_data/buildifier_v8.0.3_with_config.test_data.add_tables.BUILD.fmt.shot
new file mode 100644
index 000000000..f0e17ff72
--- /dev/null
+++ b/linters/buildifier/test_data/buildifier_v8.0.3_with_config.test_data.add_tables.BUILD.fmt.shot
@@ -0,0 +1,39 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing formatter buildifier test with_config 1`] = `
+"load("@rules_shell//shell:sh_binary.bzl", "sh_binary")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
+
+foo_macro(
+ fizz = [
+ ":lib1",
+ ":lib2",
+ ],
+)
+
+filegroup(
+ name = "files",
+ srcs = glob(["**"]),
+)
+
+sh_library(
+ name = "lib1",
+ srcs = ["src1.sh"],
+)
+
+sh_library(
+ name = "lib2",
+ srcs = ["src1.sh"],
+)
+
+sh_binary(
+ name = "foo",
+ srcs = ["foo.sh"],
+ deps = [
+ ":lib1",
+ ":lib2",
+ ],
+)
+"
+`;
From 8b553adaa71d29a4313f3c1f41e73bfa9c08f802 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 9 Feb 2025 15:14:45 -0800
Subject: [PATCH 07/24] Bump github/codeql-action from 3.28.8 to 3.28.9 in the
dependencies group (#974)
Bumps the dependencies group with 1 update:
[github/codeql-action](https://github.com/github/codeql-action).
Updates `github/codeql-action` from 3.28.8 to 3.28.9
Release notes
Sourced from github/codeql-action's
releases.
v3.28.9
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
3.28.3 - 22 Jan 2025
- Update default CodeQL bundle version to 2.20.2. #2707
- Fix an issue downloading the CodeQL Bundle from a GitHub Enterprise
Server instance which occurred when the CodeQL Bundle had been synced to
the instance using the CodeQL Action
sync tool and the Actions runner did not have Zstandard installed.
#2710
- Uploading debug artifacts for CodeQL analysis is temporarily
disabled. #2712
3.28.2 - 21 Jan 2025
No user facing changes.
3.28.1 - 10 Jan 2025
- CodeQL Action v2 is now deprecated, and is no longer updated or
supported. For better performance, improved security, and new features,
upgrade to v3. For more information, see this
changelog post. #2677
- Update default CodeQL bundle version to 2.20.1. #2678
3.28.0 - 20 Dec 2024
- Bump the minimum CodeQL bundle version to 2.15.5. #2655
... (truncated)
Commits
9e8d078
Merge pull request #2757
from github/update-v3.28.9-24e1c2d33
43d9be6
Update changelog for v3.28.9
24e1c2d
Merge pull request #2753
from github/update-bundle/codeql-bundle-v2.20.4
57a08c0
Add changelog note
52189d2
Update default bundle to codeql-bundle-v2.20.4
08bc0cf
Merge pull request #2751
from github/henrymercer/fix-init-post-without-config
cf7c687
Send init-post
status report in absence of config
ad42dbd
Merge pull request #2750
from github/dependabot/npm_and_yarn/npm-768bd9b555
a8f5935
Merge pull request #2749
from github/dependabot/github_actions/actions-29d379...
9660df3
Update checked-in dependencies
- Additional commits viewable in compare
view
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/scorecard.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 5b8106048..e7dfeae3d 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
+ uses: github/codeql-action/init@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
+ uses: github/codeql-action/autobuild@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
+ uses: github/codeql-action/analyze@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index d953de6e9..5e0479eb6 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
+ uses: github/codeql-action/upload-sarif@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
with:
sarif_file: results.sarif
From 766d2522618659af5546e09a620c88cc4da0db9d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 9 Feb 2025 15:15:05 -0800
Subject: [PATCH 08/24] Bump the dependencies group with 5 updates (#975)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `22.13.0` | `22.13.1` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.22.0` | `8.23.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.22.0` | `8.23.0` |
| [semver](https://github.com/npm/node-semver) | `7.7.0` | `7.7.1` |
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.22.0` | `8.23.0` |
Updates `@types/node` from 22.13.0 to 22.13.1
Commits
Updates `@typescript-eslint/eslint-plugin` from 8.22.0 to 8.23.0
Release notes
Sourced from @typescript-eslint/eslint-plugin
's
releases.
v8.23.0
8.23.0 (2025-02-03)
🚀 Features
- eslint-plugin:
[no-unnecessary-boolean-literal-compare] enforce strictNullChecks (#10712)
- types: add strict
parent
types for
function-declaration, default-export and named-export nodes (#10685)
🩹 Fixes
- bump ts-api-utils to ^2.0.1 (#10761)
- deps: update eslint monorepo to v9.19.0 (#10752)
- eslint-plugin: [no-unnecessary-type-assertion]
should report readonly class properties with a literal initializer (#10618)
- eslint-plugin: [switch-exhaustiveness-check]
suggest with qualified name (#10697)
- eslint-plugin: [no-unnecessary-template-expression]
allow interpolating type parameter in type context (#10739)
- eslint-plugin: [prefer-nullish-coalescing] fix
missing return (#10732)
- eslint-plugin: [dot-notation] handle
noPropertyAccessFromIndexSignature true (#10644)
- eslint-plugin: [no-restricted-imports] support
regex option (#10699)
- eslint-plugin: [no-shadow] ignore declare variables
in definition files shadowing global variables (#10710)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/eslint-plugin
's
changelog.
8.23.0 (2025-02-03)
🚀 Features
- eslint-plugin:
[no-unnecessary-boolean-literal-compare] enforce strictNullChecks (#10712)
🩹 Fixes
- eslint-plugin: [no-shadow] ignore declare variables
in definition files shadowing global variables (#10710)
- eslint-plugin: [no-restricted-imports] support
regex option (#10699)
- eslint-plugin: [dot-notation] handle
noPropertyAccessFromIndexSignature true (#10644)
- eslint-plugin: [prefer-nullish-coalescing] fix
missing return (#10732)
- bump ts-api-utils to ^2.0.1 (#10761)
- eslint-plugin: [no-unnecessary-template-expression]
allow interpolating type parameter in type context (#10739)
- eslint-plugin: [switch-exhaustiveness-check]
suggest with qualified name (#10697)
- eslint-plugin: [no-unnecessary-type-assertion]
should report readonly class properties with a literal initializer (#10618)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Commits
2a96020
chore(release): publish 8.23.0
06925f8
feat(eslint-plugin): [no-unnecessary-boolean-literal-compare] enforce
strictN...
884995d
fix(eslint-plugin): [no-shadow] ignore declare variables in definition
files ...
cd15629
docs(eslint-plugin): [class-methods-use-this] refresh options docs (#10728)
a9cbcc9
fix(eslint-plugin): [no-restricted-imports] support regex option (#10699)
3e44913
fix(eslint-plugin): [dot-notation] handle
noPropertyAccessFromIndexSignature ...
82cb00d
fix(eslint-plugin): [prefer-nullish-coalescing] fix missing return (#10732)
c58d816
fix: bump ts-api-utils to ^2.0.1 (#10761)
345e82e
docs(eslint-plugin): remove duplicate option descriptions on various
rules (#...
77df70d
fix(eslint-plugin): [no-unnecessary-template-expression] allow
interpolating ...
- Additional commits viewable in compare
view
Updates `@typescript-eslint/parser` from 8.22.0 to 8.23.0
Release notes
Sourced from @typescript-eslint/parser
's
releases.
v8.23.0
8.23.0 (2025-02-03)
🚀 Features
- eslint-plugin:
[no-unnecessary-boolean-literal-compare] enforce strictNullChecks (#10712)
- types: add strict
parent
types for
function-declaration, default-export and named-export nodes (#10685)
🩹 Fixes
- bump ts-api-utils to ^2.0.1 (#10761)
- deps: update eslint monorepo to v9.19.0 (#10752)
- eslint-plugin: [no-unnecessary-type-assertion]
should report readonly class properties with a literal initializer (#10618)
- eslint-plugin: [switch-exhaustiveness-check]
suggest with qualified name (#10697)
- eslint-plugin: [no-unnecessary-template-expression]
allow interpolating type parameter in type context (#10739)
- eslint-plugin: [prefer-nullish-coalescing] fix
missing return (#10732)
- eslint-plugin: [dot-notation] handle
noPropertyAccessFromIndexSignature true (#10644)
- eslint-plugin: [no-restricted-imports] support
regex option (#10699)
- eslint-plugin: [no-shadow] ignore declare variables
in definition files shadowing global variables (#10710)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/parser
's
changelog.
8.23.0 (2025-02-03)
This was a version bump only for parser to align it with other
projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
Updates `semver` from 7.7.0 to 7.7.1
Release notes
Sourced from semver's
releases.
v7.7.1
7.7.1
(2025-02-03)
Bug Fixes
Changelog
Sourced from semver's
changelog.
7.7.1
(2025-02-03)
Bug Fixes
Commits
Updates `typescript-eslint` from 8.22.0 to 8.23.0
Release notes
Sourced from typescript-eslint's
releases.
v8.23.0
8.23.0 (2025-02-03)
🚀 Features
- eslint-plugin:
[no-unnecessary-boolean-literal-compare] enforce strictNullChecks (#10712)
- types: add strict
parent
types for
function-declaration, default-export and named-export nodes (#10685)
🩹 Fixes
- bump ts-api-utils to ^2.0.1 (#10761)
- deps: update eslint monorepo to v9.19.0 (#10752)
- eslint-plugin: [no-unnecessary-type-assertion]
should report readonly class properties with a literal initializer (#10618)
- eslint-plugin: [switch-exhaustiveness-check]
suggest with qualified name (#10697)
- eslint-plugin: [no-unnecessary-template-expression]
allow interpolating type parameter in type context (#10739)
- eslint-plugin: [prefer-nullish-coalescing] fix
missing return (#10732)
- eslint-plugin: [dot-notation] handle
noPropertyAccessFromIndexSignature true (#10644)
- eslint-plugin: [no-restricted-imports] support
regex option (#10699)
- eslint-plugin: [no-shadow] ignore declare variables
in definition files shadowing global variables (#10710)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from typescript-eslint's
changelog.
8.23.0 (2025-02-03)
This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 131 +++++++++++++++++++++++-----------------------
package.json | 10 ++--
2 files changed, 71 insertions(+), 70 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 213b25ca2..b460c9357 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,10 +16,10 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.0",
+ "@types/node": "^22.13.1",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.22.0",
- "@typescript-eslint/parser": "^8.22.0",
+ "@typescript-eslint/eslint-plugin": "^8.23.0",
+ "@typescript-eslint/parser": "^8.23.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
@@ -35,13 +35,13 @@
"jest": "^29.3.1",
"jest-junit": "^16.0.0",
"jest-specific-snapshot": "^8.0.0",
- "semver": "^7.7.0",
+ "semver": "^7.7.1",
"simple-git": "^3.27.0",
"ts-jest": "^29.2.5",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.22.0",
+ "typescript-eslint": "^8.23.0",
"yaml": "^2.7.0"
},
"engines": {
@@ -1469,9 +1469,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.13.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.0.tgz",
- "integrity": "sha512-ClIbNe36lawluuvq3+YYhnIN2CELi+6q8NpnM7PYp4hBn/TatfboPgVSm2rwKRfnV2M+Ty9GWDFI64KEe+kysA==",
+ "version": "22.13.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.1.tgz",
+ "integrity": "sha512-jK8uzQlrvXqEU91UxiK5J7pKHyzgnI1Qnl0QDHIgVGuolJhRb9EEl28Cj9b3rGR8B2lhFCtvIm5os8lFnO/1Ew==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1503,21 +1503,21 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.22.0.tgz",
- "integrity": "sha512-4Uta6REnz/xEJMvwf72wdUnC3rr4jAQf5jnTkeRQ9b6soxLxhDEbS/pfMPoJLDfFPNVRdryqWUIV/2GZzDJFZw==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.23.0.tgz",
+ "integrity": "sha512-vBz65tJgRrA1Q5gWlRfvoH+w943dq9K1p1yDBY2pc+a1nbBLZp7fB9+Hk8DaALUbzjqlMfgaqlVPT1REJdkt/w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.22.0",
- "@typescript-eslint/type-utils": "8.22.0",
- "@typescript-eslint/utils": "8.22.0",
- "@typescript-eslint/visitor-keys": "8.22.0",
+ "@typescript-eslint/scope-manager": "8.23.0",
+ "@typescript-eslint/type-utils": "8.23.0",
+ "@typescript-eslint/utils": "8.23.0",
+ "@typescript-eslint/visitor-keys": "8.23.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
- "ts-api-utils": "^2.0.0"
+ "ts-api-utils": "^2.0.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1533,16 +1533,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.22.0.tgz",
- "integrity": "sha512-MqtmbdNEdoNxTPzpWiWnqNac54h8JDAmkWtJExBVVnSrSmi9z+sZUt0LfKqk9rjqmKOIeRhO4fHHJ1nQIjduIQ==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.23.0.tgz",
+ "integrity": "sha512-h2lUByouOXFAlMec2mILeELUbME5SZRN/7R9Cw2RD2lRQQY08MWMM+PmVVKKJNK1aIwqTo9t/0CvOxwPbRIE2Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.22.0",
- "@typescript-eslint/types": "8.22.0",
- "@typescript-eslint/typescript-estree": "8.22.0",
- "@typescript-eslint/visitor-keys": "8.22.0",
+ "@typescript-eslint/scope-manager": "8.23.0",
+ "@typescript-eslint/types": "8.23.0",
+ "@typescript-eslint/typescript-estree": "8.23.0",
+ "@typescript-eslint/visitor-keys": "8.23.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1558,14 +1558,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.22.0.tgz",
- "integrity": "sha512-/lwVV0UYgkj7wPSw0o8URy6YI64QmcOdwHuGuxWIYznO6d45ER0wXUbksr9pYdViAofpUCNJx/tAzNukgvaaiQ==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.23.0.tgz",
+ "integrity": "sha512-OGqo7+dXHqI7Hfm+WqkZjKjsiRtFUQHPdGMXzk5mYXhJUedO7e/Y7i8AK3MyLMgZR93TX4bIzYrfyVjLC+0VSw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.22.0",
- "@typescript-eslint/visitor-keys": "8.22.0"
+ "@typescript-eslint/types": "8.23.0",
+ "@typescript-eslint/visitor-keys": "8.23.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1576,16 +1576,16 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.22.0.tgz",
- "integrity": "sha512-NzE3aB62fDEaGjaAYZE4LH7I1MUwHooQ98Byq0G0y3kkibPJQIXVUspzlFOmOfHhiDLwKzMlWxaNv+/qcZurJA==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.23.0.tgz",
+ "integrity": "sha512-iIuLdYpQWZKbiH+RkCGc6iu+VwscP5rCtQ1lyQ7TYuKLrcZoeJVpcLiG8DliXVkUxirW/PWlmS+d6yD51L9jvA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.22.0",
- "@typescript-eslint/utils": "8.22.0",
+ "@typescript-eslint/typescript-estree": "8.23.0",
+ "@typescript-eslint/utils": "8.23.0",
"debug": "^4.3.4",
- "ts-api-utils": "^2.0.0"
+ "ts-api-utils": "^2.0.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1600,9 +1600,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.22.0.tgz",
- "integrity": "sha512-0S4M4baNzp612zwpD4YOieP3VowOARgK2EkN/GBn95hpyF8E2fbMT55sRHWBq+Huaqk3b3XK+rxxlM8sPgGM6A==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.23.0.tgz",
+ "integrity": "sha512-1sK4ILJbCmZOTt9k4vkoulT6/y5CHJ1qUYxqpF1K/DBAd8+ZUL4LlSCxOssuH5m4rUaaN0uS0HlVPvd45zjduQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1614,20 +1614,20 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.22.0.tgz",
- "integrity": "sha512-SJX99NAS2ugGOzpyhMza/tX+zDwjvwAtQFLsBo3GQxiGcvaKlqGBkmZ+Y1IdiSi9h4Q0Lr5ey+Cp9CGWNY/F/w==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.23.0.tgz",
+ "integrity": "sha512-LcqzfipsB8RTvH8FX24W4UUFk1bl+0yTOf9ZA08XngFwMg4Kj8A+9hwz8Cr/ZS4KwHrmo9PJiLZkOt49vPnuvQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.22.0",
- "@typescript-eslint/visitor-keys": "8.22.0",
+ "@typescript-eslint/types": "8.23.0",
+ "@typescript-eslint/visitor-keys": "8.23.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
"minimatch": "^9.0.4",
"semver": "^7.6.0",
- "ts-api-utils": "^2.0.0"
+ "ts-api-utils": "^2.0.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1667,16 +1667,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.22.0.tgz",
- "integrity": "sha512-T8oc1MbF8L+Bk2msAvCUzjxVB2Z2f+vXYfcucE2wOmYs7ZUwco5Ep0fYZw8quNwOiw9K8GYVL+Kgc2pETNTLOg==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.23.0.tgz",
+ "integrity": "sha512-uB/+PSo6Exu02b5ZEiVtmY6RVYO7YU5xqgzTIVZwTHvvK3HsL8tZZHFaTLFtRG3CsV4A5mhOv+NZx5BlhXPyIA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.22.0",
- "@typescript-eslint/types": "8.22.0",
- "@typescript-eslint/typescript-estree": "8.22.0"
+ "@typescript-eslint/scope-manager": "8.23.0",
+ "@typescript-eslint/types": "8.23.0",
+ "@typescript-eslint/typescript-estree": "8.23.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1691,13 +1691,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.22.0.tgz",
- "integrity": "sha512-AWpYAXnUgvLNabGTy3uBylkgZoosva/miNd1I8Bz3SjotmQPbVqhO4Cczo8AsZ44XVErEBPr/CRSgaj8sG7g0w==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.23.0.tgz",
+ "integrity": "sha512-oWWhcWDLwDfu++BGTZcmXWqpwtkwb5o7fxUIGksMQQDSdPW9prsSnfIOZMlsj4vBOSrcnjIUZMiIjODgGosFhQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.22.0",
+ "@typescript-eslint/types": "8.23.0",
"eslint-visitor-keys": "^4.2.0"
},
"engines": {
@@ -5699,9 +5699,9 @@
}
},
"node_modules/semver": {
- "version": "7.7.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.0.tgz",
- "integrity": "sha512-DrfFnPzblFmNrIZzg5RzHegbiRWg7KMR7btwi2yjHwx06zsUbO5g613sVwEV7FTwmzJu+Io0lJe2GJ3LxqpvBQ==",
+ "version": "7.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
"dev": true,
"license": "ISC",
"bin": {
@@ -6091,10 +6091,11 @@
}
},
"node_modules/ts-api-utils": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.0.tgz",
- "integrity": "sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz",
+ "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=18.12"
},
@@ -6325,15 +6326,15 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.22.0",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.22.0.tgz",
- "integrity": "sha512-Y2rj210FW1Wb6TWXzQc5+P+EWI9/zdS57hLEc0gnyuvdzWo8+Y8brKlbj0muejonhMI/xAZCnZZwjbIfv1CkOw==",
+ "version": "8.23.0",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.23.0.tgz",
+ "integrity": "sha512-/LBRo3HrXr5LxmrdYSOCvoAMm7p2jNizNfbIpCgvG4HMsnoprRUOce/+8VJ9BDYWW68rqIENE/haVLWPeFZBVQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.22.0",
- "@typescript-eslint/parser": "8.22.0",
- "@typescript-eslint/utils": "8.22.0"
+ "@typescript-eslint/eslint-plugin": "8.23.0",
+ "@typescript-eslint/parser": "8.23.0",
+ "@typescript-eslint/utils": "8.23.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
diff --git a/package.json b/package.json
index 4e27ce0f8..2ff5d81f6 100644
--- a/package.json
+++ b/package.json
@@ -14,10 +14,10 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.0",
+ "@types/node": "^22.13.1",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.22.0",
- "@typescript-eslint/parser": "^8.22.0",
+ "@typescript-eslint/eslint-plugin": "^8.23.0",
+ "@typescript-eslint/parser": "^8.23.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
@@ -33,13 +33,13 @@
"jest": "^29.3.1",
"jest-junit": "^16.0.0",
"jest-specific-snapshot": "^8.0.0",
- "semver": "^7.7.0",
+ "semver": "^7.7.1",
"simple-git": "^3.27.0",
"ts-jest": "^29.2.5",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.22.0",
+ "typescript-eslint": "^8.23.0",
"yaml": "^2.7.0"
},
"bundleDependencies": [
From 56e5f990072700415d2460db22406dc40eb0ae5f Mon Sep 17 00:00:00 2001
From: "trunk-open-pr-bot[bot]"
<131314627+trunk-open-pr-bot[bot]@users.noreply.github.com>
Date: Thu, 13 Feb 2025 12:16:51 -0800
Subject: [PATCH 09/24] Auto-add missing snapshots (#978)
Create new snapshots from
https://github.com/trunk-io/plugins/actions/runs/13305109901
Co-authored-by: TylerJang27 <42743566+TylerJang27@users.noreply.github.com>
---
.../golangci_lint_v1.64.4_all.check.shot | 97 +++++++++++++++++++
.../golangci_lint_v1.64.4_empty.check.shot | 73 ++++++++++++++
...langci_lint_v1.64.4_unbuildable.check.shot | 31 ++++++
3 files changed, 201 insertions(+)
create mode 100644 linters/golangci-lint/test_data/golangci_lint_v1.64.4_all.check.shot
create mode 100644 linters/golangci-lint/test_data/golangci_lint_v1.64.4_empty.check.shot
create mode 100644 linters/golangci-lint/test_data/golangci_lint_v1.64.4_unbuildable.check.shot
diff --git a/linters/golangci-lint/test_data/golangci_lint_v1.64.4_all.check.shot b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_all.check.shot
new file mode 100644
index 000000000..cddddc14c
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_all.check.shot
@@ -0,0 +1,97 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter golangci-lint test all 1`] = `
+{
+ "issues": [
+ {
+ "code": "error",
+ "file": "test_data",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "linter": "golangci-lint",
+ "message": "exportloopref: This linter is fully inactivated: it will not produce any reports.",
+ "targetType": "go",
+ },
+ {
+ "code": "godot",
+ "column": "1",
+ "file": "test_data/basic.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "5",
+ "linter": "golangci-lint",
+ "message": "Comment should end in a period",
+ "targetType": "go",
+ },
+ {
+ "code": "errcheck",
+ "column": "12",
+ "file": "test_data/basic.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "golangci-lint",
+ "message": "Error return value of \`time.Parse\` is not checked",
+ "targetType": "go",
+ },
+ {
+ "code": "unused",
+ "column": "6",
+ "file": "test_data/unused_func.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "5",
+ "linter": "golangci-lint",
+ "message": "func \`helper\` is unused",
+ "targetType": "go",
+ },
+ {
+ "code": "error",
+ "file": "test_data/wrapper",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "linter": "golangci-lint",
+ "message": "exportloopref: This linter is fully inactivated: it will not produce any reports.",
+ "targetType": "go",
+ },
+ {
+ "code": "typecheck",
+ "file": "test_data/wrapper/printer.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint",
+ "message": ": # golangcilint_linter_test/wrapper
+wrapper/printer.go:12:23: undefined: Wrapper2",
+ "targetType": "go",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint",
+ "paths": [
+ "test_data",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint",
+ "paths": [
+ "test_data/wrapper",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/golangci-lint/test_data/golangci_lint_v1.64.4_empty.check.shot b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_empty.check.shot
new file mode 100644
index 000000000..715447f29
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_empty.check.shot
@@ -0,0 +1,73 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter golangci-lint test empty 1`] = `
+{
+ "issues": [
+ {
+ "code": "error",
+ "file": "test_data",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "linter": "golangci-lint",
+ "message": "exportloopref: This linter is fully inactivated: it will not produce any reports.",
+ "targetType": "go",
+ },
+ {
+ "code": "typecheck",
+ "column": "1",
+ "file": "test_data/empty.go",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint",
+ "message": "expected 'package', found 'EOF'",
+ "targetType": "go",
+ },
+ {
+ "code": "error",
+ "file": "test_data/wrapper",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "linter": "golangci-lint",
+ "message": "exportloopref: This linter is fully inactivated: it will not produce any reports.",
+ "targetType": "go",
+ },
+ {
+ "code": "typecheck",
+ "file": "test_data/wrapper/printer.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint",
+ "message": ": # golangcilint_linter_test/wrapper
+wrapper/printer.go:12:23: undefined: Wrapper2",
+ "targetType": "go",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint",
+ "paths": [
+ "test_data",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint",
+ "paths": [
+ "test_data/wrapper",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/golangci-lint/test_data/golangci_lint_v1.64.4_unbuildable.check.shot b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_unbuildable.check.shot
new file mode 100644
index 000000000..5e14a0891
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint_v1.64.4_unbuildable.check.shot
@@ -0,0 +1,31 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter golangci-lint test unbuildable 1`] = `
+{
+ "issues": [
+ {
+ "code": "error",
+ "file": ".",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "level": "LEVEL_HIGH",
+ "linter": "golangci-lint",
+ "message": "typechecking error: build constraints exclude all Go files in /tmp/plugins_",
+ "targetType": "go",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint",
+ "paths": [
+ ".",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
From 1f94fe5ac082a8745d1dd4fd805b7d623d2ebfdd Mon Sep 17 00:00:00 2001
From: "trunk-open-pr-bot[bot]"
<131314627+trunk-open-pr-bot[bot]@users.noreply.github.com>
Date: Wed, 19 Feb 2025 15:04:19 -0800
Subject: [PATCH 10/24] Auto-add missing snapshots (#980)
Create new snapshots from
https://github.com/trunk-io/plugins/actions/runs/13409932853
Co-authored-by: TylerJang27 <42743566+TylerJang27@users.noreply.github.com>
---
.../test_data/scalafmt_v3.9.0_basic.fmt.shot | 10 +++++++++
.../scalafmt_v3.9.0_empty.check.shot | 21 +++++++++++++++++++
2 files changed, 31 insertions(+)
create mode 100644 linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot
create mode 100644 linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot
diff --git a/linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot b/linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot
new file mode 100644
index 000000000..7a1381573
--- /dev/null
+++ b/linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot
@@ -0,0 +1,10 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing formatter scalafmt test basic 1`] = `
+"case class Demo(a: String,
+ b: Int,
+ c: Char
+ )
+"
+`;
diff --git a/linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot b/linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot
new file mode 100644
index 000000000..7e4002a3f
--- /dev/null
+++ b/linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot
@@ -0,0 +1,21 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter scalafmt test empty 1`] = `
+{
+ "issues": [],
+ "lintActions": [
+ {
+ "command": "format",
+ "fileGroupName": "scala",
+ "linter": "scalafmt",
+ "paths": [
+ "test_data/empty.in.scala",
+ ],
+ "verb": "TRUNK_VERB_FMT",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
From 5effc246739081eb5d3ff8257a57b01952099b15 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 23 Feb 2025 19:33:56 -0800
Subject: [PATCH 11/24] Bump the dependencies group across 1 directory with 6
updates (#982)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 6 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `22.13.1` | `22.13.5` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.23.0` | `8.24.1` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.23.0` | `8.24.1` |
|
[eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript)
| `3.7.0` | `3.8.3` |
| [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.2.5` | `29.2.6`
|
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.23.0` | `8.24.1` |
Updates `@types/node` from 22.13.1 to 22.13.5
Commits
Updates `@typescript-eslint/eslint-plugin` from 8.23.0 to 8.24.1
Release notes
Sourced from @typescript-eslint/eslint-plugin
's
releases.
v8.24.1
8.24.1 (2025-02-17)
🩹 Fixes
- deps: update eslint monorepo to v9.20.0 (#10834)
- eslint-plugin: [no-inferrable-types] handle
accessor (#10780)
- eslint-plugin: [no-unnecessary-template-expression]
ignore enum and enum members (#10782)
- eslint-plugin: [no-unsafe-assignment] report on an
any
value assigned as an initializer of an
accessor
property (#10785)
- eslint-plugin: [consistent-generic-constructors]
check
accessor
class properties (#10789)
- eslint-plugin: [prefer-return-this-type] check
accessor
properties with a function initializer (#10794)
- eslint-plugin: [explicit-module-boundary-types]
check
accessor
class properties with a function initializer
(#10804)
- eslint-plugin: [explicit-member-accessibility]
check
accessor
class properties for missing accessibility
modifier (#10805)
- eslint-plugin: [no-deprecated] don't report on
deprecated
accessor
property declaration (#10813)
- eslint-plugin: [no-misused-promises] don't report
on
static
accessor
properties (#10814)
- eslint-plugin: [class-methods-use-this] check
accessor
methods with a function initializer (#10796)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.24.0
8.24.0 (2025-02-10)
🚀 Features
- eslint-plugin: [no-unnecessary-condition] make
allowConstantLoopConditions
more granular (#10639)
- utils: add
reportUnusedInlineConfigs
to LinterOptions (#10718)
🩹 Fixes
- ast-spec: correct YieldExpression.argument type (#10799)
- eslint-plugin: [restrict-plus-operands] report
adding bigints to strings when
allowNumberAndString
is
false
(#10737)
- eslint-plugin: [no-misused-spread] correct and
elaborate string spread report message (#10751)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/eslint-plugin
's
changelog.
8.24.1 (2025-02-17)
🩹 Fixes
- eslint-plugin: [class-methods-use-this] check
accessor
methods with a function initializer (#10796)
- eslint-plugin: [no-misused-promises] don't report
on
static
accessor
properties (#10814)
- eslint-plugin: [no-deprecated] don't report on
deprecated
accessor
property declaration (#10813)
- eslint-plugin: [explicit-member-accessibility]
check
accessor
class properties for missing accessibility
modifier (#10805)
- eslint-plugin: [explicit-module-boundary-types]
check
accessor
class properties with a function initializer
(#10804)
- eslint-plugin: [prefer-return-this-type] check
accessor
properties with a function initializer (#10794)
- eslint-plugin: [consistent-generic-constructors]
check
accessor
class properties (#10789)
- eslint-plugin: [no-unsafe-assignment] report on an
any
value assigned as an initializer of an
accessor
property (#10785)
- eslint-plugin: [no-unnecessary-template-expression]
ignore enum and enum members (#10782)
- eslint-plugin: [no-inferrable-types] handle
accessor (#10780)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
8.24.0 (2025-02-10)
🚀 Features
- eslint-plugin: [no-unnecessary-condition] make
allowConstantLoopConditions
more granular (#10639)
🩹 Fixes
- eslint-plugin: [no-misused-spread] correct and
elaborate string spread report message (#10751)
- eslint-plugin: [restrict-plus-operands] report
adding bigints to strings when
allowNumberAndString
is
false
(#10737)
❤️ Thank You
- Josh Goldberg ✨
- noah
- Ronen Amiel
You can read about our versioning
strategy and releases
on our website.
Commits
3646ec0
chore(release): publish 8.24.1
9a78e40
fix(eslint-plugin): [class-methods-use-this] check accessor
methods with a ...
e43cf46
docs: [prefer-optional-chain] fix examples (#10835)
e33da81
fix(eslint-plugin): [no-misused-promises] don't report on
static
accessor
...
744f166
fix(eslint-plugin): [no-deprecated] don't report on deprecated
accessor
pro...
41245f3
fix(eslint-plugin): [explicit-member-accessibility] check
accessor
class pr...
d995fbc
fix(eslint-plugin): [explicit-module-boundary-types] check
accessor
class p...
02d4779
fix(eslint-plugin): [prefer-return-this-type] check
accessor
properties wit...
e98f234
fix(eslint-plugin): [consistent-generic-constructors] check
accessor
class ...
b694683
fix(eslint-plugin): [no-unsafe-assignment] report on an any
value assigned ...
- Additional commits viewable in compare
view
Updates `@typescript-eslint/parser` from 8.23.0 to 8.24.1
Release notes
Sourced from @typescript-eslint/parser
's
releases.
v8.24.1
8.24.1 (2025-02-17)
🩹 Fixes
- deps: update eslint monorepo to v9.20.0 (#10834)
- eslint-plugin: [no-inferrable-types] handle
accessor (#10780)
- eslint-plugin: [no-unnecessary-template-expression]
ignore enum and enum members (#10782)
- eslint-plugin: [no-unsafe-assignment] report on an
any
value assigned as an initializer of an
accessor
property (#10785)
- eslint-plugin: [consistent-generic-constructors]
check
accessor
class properties (#10789)
- eslint-plugin: [prefer-return-this-type] check
accessor
properties with a function initializer (#10794)
- eslint-plugin: [explicit-module-boundary-types]
check
accessor
class properties with a function initializer
(#10804)
- eslint-plugin: [explicit-member-accessibility]
check
accessor
class properties for missing accessibility
modifier (#10805)
- eslint-plugin: [no-deprecated] don't report on
deprecated
accessor
property declaration (#10813)
- eslint-plugin: [no-misused-promises] don't report
on
static
accessor
properties (#10814)
- eslint-plugin: [class-methods-use-this] check
accessor
methods with a function initializer (#10796)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.24.0
8.24.0 (2025-02-10)
🚀 Features
- eslint-plugin: [no-unnecessary-condition] make
allowConstantLoopConditions
more granular (#10639)
- utils: add
reportUnusedInlineConfigs
to LinterOptions (#10718)
🩹 Fixes
- ast-spec: correct YieldExpression.argument type (#10799)
- eslint-plugin: [restrict-plus-operands] report
adding bigints to strings when
allowNumberAndString
is
false
(#10737)
- eslint-plugin: [no-misused-spread] correct and
elaborate string spread report message (#10751)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from @typescript-eslint/parser
's
changelog.
8.24.1 (2025-02-17)
This was a version bump only for parser to align it with other
projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
8.24.0 (2025-02-10)
This was a version bump only for parser to align it with other
projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
Updates `eslint-import-resolver-typescript` from 3.7.0 to 3.8.3
Release notes
Sourced from eslint-import-resolver-typescript's
releases.
v3.8.3
Patch Changes
v3.8.2
Patch Changes
v3.8.1
Patch Changes
v3.8.0
Minor Changes
-
#345
fcc8883
Thanks @carlocorradini
!
- Enable the mapper function just for a set of allowed files. Improves
project discovery using glob and POSIX separator.
-
#346
c124e87
Thanks @carlocorradini
!
- Update get-tsconfig to the the latest version. We now support the
${configDir}
variable, introduced in TypeScript 5.5.
Changelog
Sourced from eslint-import-resolver-typescript's
changelog.
3.8.3
Patch Changes
3.8.2
Patch Changes
3.8.1
Patch Changes
3.8.0
Minor Changes
-
#345
fcc8883
Thanks @carlocorradini
!
- Enable the mapper function just for a set of allowed files. Improves
project discovery using glob and POSIX separator.
-
#346
c124e87
Thanks @carlocorradini
!
- Update get-tsconfig to the the latest version. We now support the
${configDir}
variable, introduced in TypeScript 5.5.
Commits
b61fb4a
chore: release eslint-import-resolver-typescript (#362)
8192976
fix: force tiniglobby to expand dot directories (#360)
4f47f8a
chore: release eslint-import-resolver-typescript (#358)
5fd349e
chore(deps): update tinyglobby to the latest version (#357)
5c374a9
chore: release eslint-import-resolver-typescript (#355)
0c6303d
Fix issue 348 (#352)
ca140a5
chore(ci): matrix.os added windows-latest and macos-latest (#353)
e9bceed
docs: from eslint-plugin-i to eslint-plugin-import-x (#350)
332affb
chore: release eslint-import-resolver-typescript (#347)
c124e87
chore(deps): update get-tsconfig to latest version (#346)
- Additional commits viewable in compare
view
Updates `ts-jest` from 29.2.5 to 29.2.6
Release notes
Sourced from ts-jest's
releases.
v29.2.6
Please refer to CHANGELOG.md
for details.
Changelog
Sourced from ts-jest's
changelog.
29.2.6
(2025-02-22)
Bug Fixes
- fix: escape dot for
JS_TRANSFORM_PATTERN
regex (8c91c60)
- fix: escape dot for
TS_JS_TRANSFORM_PATTERN
regex (3eea850)
- fix: escape dot for
TS_TRANSFORM_PATTERN
regex (80d3e4d),
closes #4579
Commits
6a38767
chore(release): 29.2.6
36e50e4
docs: update transform regex
8c91c60
fix: escape dot for JS_TRANSFORM_PATTERN
regex
3eea850
fix: escape dot for TS_JS_TRANSFORM_PATTERN
regex
80d3e4d
fix: escape dot for TS_TRANSFORM_PATTERN
regex
4811d42
build(deps): Update JamesIves/github-pages-deploy-action action to
v4.7.3
82d1116
build(deps): Update babel monorepo to ^7.26.9
ab058a9
build(deps): Update dependency @types/node
to
v20.17.19
399e918
build(deps): Update dependency @formatjs/ts-transformer
to
^3.13.32
54181f1
build(deps): Update dependency @vitejs/plugin-react-swc
to
^3.8.0
- Additional commits viewable in compare
view
Updates `typescript-eslint` from 8.23.0 to 8.24.1
Release notes
Sourced from typescript-eslint's
releases.
v8.24.1
8.24.1 (2025-02-17)
🩹 Fixes
- deps: update eslint monorepo to v9.20.0 (#10834)
- eslint-plugin: [no-inferrable-types] handle
accessor (#10780)
- eslint-plugin: [no-unnecessary-template-expression]
ignore enum and enum members (#10782)
- eslint-plugin: [no-unsafe-assignment] report on an
any
value assigned as an initializer of an
accessor
property (#10785)
- eslint-plugin: [consistent-generic-constructors]
check
accessor
class properties (#10789)
- eslint-plugin: [prefer-return-this-type] check
accessor
properties with a function initializer (#10794)
- eslint-plugin: [explicit-module-boundary-types]
check
accessor
class properties with a function initializer
(#10804)
- eslint-plugin: [explicit-member-accessibility]
check
accessor
class properties for missing accessibility
modifier (#10805)
- eslint-plugin: [no-deprecated] don't report on
deprecated
accessor
property declaration (#10813)
- eslint-plugin: [no-misused-promises] don't report
on
static
accessor
properties (#10814)
- eslint-plugin: [class-methods-use-this] check
accessor
methods with a function initializer (#10796)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.24.0
8.24.0 (2025-02-10)
🚀 Features
- eslint-plugin: [no-unnecessary-condition] make
allowConstantLoopConditions
more granular (#10639)
- utils: add
reportUnusedInlineConfigs
to LinterOptions (#10718)
🩹 Fixes
- ast-spec: correct YieldExpression.argument type (#10799)
- eslint-plugin: [restrict-plus-operands] report
adding bigints to strings when
allowNumberAndString
is
false
(#10737)
- eslint-plugin: [no-misused-spread] correct and
elaborate string spread report message (#10751)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Changelog
Sourced from typescript-eslint's
changelog.
8.24.1 (2025-02-17)
This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
8.24.0 (2025-02-10)
This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 189 +++++++++++++++++++++++++++++-----------------
package.json | 12 +--
2 files changed, 124 insertions(+), 77 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index b460c9357..e40be4abe 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,15 +16,15 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.1",
+ "@types/node": "^22.13.5",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.23.0",
- "@typescript-eslint/parser": "^8.23.0",
+ "@typescript-eslint/eslint-plugin": "^8.24.1",
+ "@typescript-eslint/parser": "^8.24.1",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
"eslint-config-prettier": "^10.0.1",
- "eslint-import-resolver-typescript": "^3.7.0",
+ "eslint-import-resolver-typescript": "^3.8.3",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-import-x": "^4.6.1",
"eslint-plugin-jest": "^28.11.0",
@@ -37,11 +37,11 @@
"jest-specific-snapshot": "^8.0.0",
"semver": "^7.7.1",
"simple-git": "^3.27.0",
- "ts-jest": "^29.2.5",
+ "ts-jest": "^29.2.6",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.23.0",
+ "typescript-eslint": "^8.24.1",
"yaml": "^2.7.0"
},
"engines": {
@@ -1469,9 +1469,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.13.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.1.tgz",
- "integrity": "sha512-jK8uzQlrvXqEU91UxiK5J7pKHyzgnI1Qnl0QDHIgVGuolJhRb9EEl28Cj9b3rGR8B2lhFCtvIm5os8lFnO/1Ew==",
+ "version": "22.13.5",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz",
+ "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1503,17 +1503,17 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.23.0.tgz",
- "integrity": "sha512-vBz65tJgRrA1Q5gWlRfvoH+w943dq9K1p1yDBY2pc+a1nbBLZp7fB9+Hk8DaALUbzjqlMfgaqlVPT1REJdkt/w==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.24.1.tgz",
+ "integrity": "sha512-ll1StnKtBigWIGqvYDVuDmXJHVH4zLVot1yQ4fJtLpL7qacwkxJc1T0bptqw+miBQ/QfUbhl1TcQ4accW5KUyA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.23.0",
- "@typescript-eslint/type-utils": "8.23.0",
- "@typescript-eslint/utils": "8.23.0",
- "@typescript-eslint/visitor-keys": "8.23.0",
+ "@typescript-eslint/scope-manager": "8.24.1",
+ "@typescript-eslint/type-utils": "8.24.1",
+ "@typescript-eslint/utils": "8.24.1",
+ "@typescript-eslint/visitor-keys": "8.24.1",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1533,16 +1533,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.23.0.tgz",
- "integrity": "sha512-h2lUByouOXFAlMec2mILeELUbME5SZRN/7R9Cw2RD2lRQQY08MWMM+PmVVKKJNK1aIwqTo9t/0CvOxwPbRIE2Q==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.24.1.tgz",
+ "integrity": "sha512-Tqoa05bu+t5s8CTZFaGpCH2ub3QeT9YDkXbPd3uQ4SfsLoh1/vv2GEYAioPoxCWJJNsenXlC88tRjwoHNts1oQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.23.0",
- "@typescript-eslint/types": "8.23.0",
- "@typescript-eslint/typescript-estree": "8.23.0",
- "@typescript-eslint/visitor-keys": "8.23.0",
+ "@typescript-eslint/scope-manager": "8.24.1",
+ "@typescript-eslint/types": "8.24.1",
+ "@typescript-eslint/typescript-estree": "8.24.1",
+ "@typescript-eslint/visitor-keys": "8.24.1",
"debug": "^4.3.4"
},
"engines": {
@@ -1558,14 +1558,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.23.0.tgz",
- "integrity": "sha512-OGqo7+dXHqI7Hfm+WqkZjKjsiRtFUQHPdGMXzk5mYXhJUedO7e/Y7i8AK3MyLMgZR93TX4bIzYrfyVjLC+0VSw==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.24.1.tgz",
+ "integrity": "sha512-OdQr6BNBzwRjNEXMQyaGyZzgg7wzjYKfX2ZBV3E04hUCBDv3GQCHiz9RpqdUIiVrMgJGkXm3tcEh4vFSHreS2Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.23.0",
- "@typescript-eslint/visitor-keys": "8.23.0"
+ "@typescript-eslint/types": "8.24.1",
+ "@typescript-eslint/visitor-keys": "8.24.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1576,14 +1576,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.23.0.tgz",
- "integrity": "sha512-iIuLdYpQWZKbiH+RkCGc6iu+VwscP5rCtQ1lyQ7TYuKLrcZoeJVpcLiG8DliXVkUxirW/PWlmS+d6yD51L9jvA==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.24.1.tgz",
+ "integrity": "sha512-/Do9fmNgCsQ+K4rCz0STI7lYB4phTtEXqqCAs3gZW0pnK7lWNkvWd5iW545GSmApm4AzmQXmSqXPO565B4WVrw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.23.0",
- "@typescript-eslint/utils": "8.23.0",
+ "@typescript-eslint/typescript-estree": "8.24.1",
+ "@typescript-eslint/utils": "8.24.1",
"debug": "^4.3.4",
"ts-api-utils": "^2.0.1"
},
@@ -1600,9 +1600,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.23.0.tgz",
- "integrity": "sha512-1sK4ILJbCmZOTt9k4vkoulT6/y5CHJ1qUYxqpF1K/DBAd8+ZUL4LlSCxOssuH5m4rUaaN0uS0HlVPvd45zjduQ==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.24.1.tgz",
+ "integrity": "sha512-9kqJ+2DkUXiuhoiYIUvIYjGcwle8pcPpdlfkemGvTObzgmYfJ5d0Qm6jwb4NBXP9W1I5tss0VIAnWFumz3mC5A==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1614,14 +1614,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.23.0.tgz",
- "integrity": "sha512-LcqzfipsB8RTvH8FX24W4UUFk1bl+0yTOf9ZA08XngFwMg4Kj8A+9hwz8Cr/ZS4KwHrmo9PJiLZkOt49vPnuvQ==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.24.1.tgz",
+ "integrity": "sha512-UPyy4MJ/0RE648DSKQe9g0VDSehPINiejjA6ElqnFaFIhI6ZEiZAkUI0D5MCk0bQcTf/LVqZStvQ6K4lPn/BRg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.23.0",
- "@typescript-eslint/visitor-keys": "8.23.0",
+ "@typescript-eslint/types": "8.24.1",
+ "@typescript-eslint/visitor-keys": "8.24.1",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1667,16 +1667,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.23.0.tgz",
- "integrity": "sha512-uB/+PSo6Exu02b5ZEiVtmY6RVYO7YU5xqgzTIVZwTHvvK3HsL8tZZHFaTLFtRG3CsV4A5mhOv+NZx5BlhXPyIA==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.24.1.tgz",
+ "integrity": "sha512-OOcg3PMMQx9EXspId5iktsI3eMaXVwlhC8BvNnX6B5w9a4dVgpkQZuU8Hy67TolKcl+iFWq0XX+jbDGN4xWxjQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.23.0",
- "@typescript-eslint/types": "8.23.0",
- "@typescript-eslint/typescript-estree": "8.23.0"
+ "@typescript-eslint/scope-manager": "8.24.1",
+ "@typescript-eslint/types": "8.24.1",
+ "@typescript-eslint/typescript-estree": "8.24.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1691,13 +1691,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.23.0.tgz",
- "integrity": "sha512-oWWhcWDLwDfu++BGTZcmXWqpwtkwb5o7fxUIGksMQQDSdPW9prsSnfIOZMlsj4vBOSrcnjIUZMiIjODgGosFhQ==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.24.1.tgz",
+ "integrity": "sha512-EwVHlp5l+2vp8CoqJm9KikPZgi3gbdZAtabKT9KPShGeOcJhsv4Zdo3oc8T8I0uKEmYoU4ItyxbptjF08enaxg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.23.0",
+ "@typescript-eslint/types": "8.24.1",
"eslint-visitor-keys": "^4.2.0"
},
"engines": {
@@ -2799,19 +2799,19 @@
}
},
"node_modules/eslint-import-resolver-typescript": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.7.0.tgz",
- "integrity": "sha512-Vrwyi8HHxY97K5ebydMtffsWAn1SCR9eol49eCd5fJS4O1WV7PaAjbcjmbfJJSMz/t4Mal212Uz/fQZrOB8mow==",
+ "version": "3.8.3",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.8.3.tgz",
+ "integrity": "sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==",
"dev": true,
+ "license": "ISC",
"dependencies": {
"@nolyfill/is-core-module": "1.0.39",
"debug": "^4.3.7",
"enhanced-resolve": "^5.15.0",
- "fast-glob": "^3.3.2",
- "get-tsconfig": "^4.7.5",
+ "get-tsconfig": "^4.10.0",
"is-bun-module": "^1.0.2",
- "is-glob": "^4.0.3",
- "stable-hash": "^0.0.4"
+ "stable-hash": "^0.0.4",
+ "tinyglobby": "^0.2.12"
},
"engines": {
"node": "^14.18.0 || >=16.0.0"
@@ -3614,10 +3614,11 @@
}
},
"node_modules/get-tsconfig": {
- "version": "4.8.1",
- "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.1.tgz",
- "integrity": "sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==",
+ "version": "4.10.0",
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz",
+ "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"resolve-pkg-maps": "^1.0.0"
},
@@ -6066,6 +6067,51 @@
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
"dev": true
},
+ "node_modules/tinyglobby": {
+ "version": "0.2.12",
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz",
+ "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fdir": "^6.4.3",
+ "picomatch": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/SuperchupuDev"
+ }
+ },
+ "node_modules/tinyglobby/node_modules/fdir": {
+ "version": "6.4.3",
+ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz",
+ "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "picomatch": "^3 || ^4"
+ },
+ "peerDependenciesMeta": {
+ "picomatch": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/tinyglobby/node_modules/picomatch": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
+ "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
"node_modules/tmpl": {
"version": "1.0.5",
"dev": true,
@@ -6104,10 +6150,11 @@
}
},
"node_modules/ts-jest": {
- "version": "29.2.5",
- "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.5.tgz",
- "integrity": "sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==",
+ "version": "29.2.6",
+ "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.6.tgz",
+ "integrity": "sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"bs-logger": "^0.2.6",
"ejs": "^3.1.10",
@@ -6116,7 +6163,7 @@
"json5": "^2.2.3",
"lodash.memoize": "^4.1.2",
"make-error": "^1.3.6",
- "semver": "^7.6.3",
+ "semver": "^7.7.1",
"yargs-parser": "^21.1.1"
},
"bin": {
@@ -6326,15 +6373,15 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.23.0",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.23.0.tgz",
- "integrity": "sha512-/LBRo3HrXr5LxmrdYSOCvoAMm7p2jNizNfbIpCgvG4HMsnoprRUOce/+8VJ9BDYWW68rqIENE/haVLWPeFZBVQ==",
+ "version": "8.24.1",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.24.1.tgz",
+ "integrity": "sha512-cw3rEdzDqBs70TIcb0Gdzbt6h11BSs2pS0yaq7hDWDBtCCSei1pPSUXE9qUdQ/Wm9NgFg8mKtMt1b8fTHIl1jA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.23.0",
- "@typescript-eslint/parser": "8.23.0",
- "@typescript-eslint/utils": "8.23.0"
+ "@typescript-eslint/eslint-plugin": "8.24.1",
+ "@typescript-eslint/parser": "8.24.1",
+ "@typescript-eslint/utils": "8.24.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
diff --git a/package.json b/package.json
index 2ff5d81f6..65f524386 100644
--- a/package.json
+++ b/package.json
@@ -14,15 +14,15 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.1",
+ "@types/node": "^22.13.5",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.23.0",
- "@typescript-eslint/parser": "^8.23.0",
+ "@typescript-eslint/eslint-plugin": "^8.24.1",
+ "@typescript-eslint/parser": "^8.24.1",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
"eslint-config-prettier": "^10.0.1",
- "eslint-import-resolver-typescript": "^3.7.0",
+ "eslint-import-resolver-typescript": "^3.8.3",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-import-x": "^4.6.1",
"eslint-plugin-jest": "^28.11.0",
@@ -35,11 +35,11 @@
"jest-specific-snapshot": "^8.0.0",
"semver": "^7.7.1",
"simple-git": "^3.27.0",
- "ts-jest": "^29.2.5",
+ "ts-jest": "^29.2.6",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
"typescript": "^5.7.3",
- "typescript-eslint": "^8.23.0",
+ "typescript-eslint": "^8.24.1",
"yaml": "^2.7.0"
},
"bundleDependencies": [
From 87eefab6563878dacf39be302bb0c736408ada44 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 23 Feb 2025 19:34:26 -0800
Subject: [PATCH 12/24] Bump the dependencies group with 4 updates (#983)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 4 updates:
[github/codeql-action](https://github.com/github/codeql-action),
[actions/cache](https://github.com/actions/cache),
[actions/upload-artifact](https://github.com/actions/upload-artifact)
and [ossf/scorecard-action](https://github.com/ossf/scorecard-action).
Updates `github/codeql-action` from 3.28.9 to 3.28.10
Release notes
Sourced from github/codeql-action's
releases.
v3.28.10
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5. #2772
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS. #2768
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5. #2772
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS. #2768
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
3.28.3 - 22 Jan 2025
- Update default CodeQL bundle version to 2.20.2. #2707
- Fix an issue downloading the CodeQL Bundle from a GitHub Enterprise
Server instance which occurred when the CodeQL Bundle had been synced to
the instance using the CodeQL Action
sync tool and the Actions runner did not have Zstandard installed.
#2710
- Uploading debug artifacts for CodeQL analysis is temporarily
disabled. #2712
3.28.2 - 21 Jan 2025
No user facing changes.
3.28.1 - 10 Jan 2025
- CodeQL Action v2 is now deprecated, and is no longer updated or
supported. For better performance, improved security, and new features,
upgrade to v3. For more information, see this
changelog post. #2677
... (truncated)
Commits
b56ba49
Merge pull request #2778
from github/update-v3.28.10-9856c48b1
60c9c77
Update changelog for v3.28.10
9856c48
Merge pull request #2773
from github/redsun82/rust
9572e09
Rust: fix log string
1a52936
Rust: special case default setup
cf7e909
Merge pull request #2772
from github/update-bundle/codeql-bundle-v2.20.5
b7006aa
Merge branch 'main' into update-bundle/codeql-bundle-v2.20.5
cfedae7
Rust: throw configuration errors if requested and not correctly
enabled
3971ed2
Merge branch 'main' into redsun82/rust
d38c6e6
Merge pull request #2775
from github/angelapwen/bump-octokit
- Additional commits viewable in compare
view
Updates `actions/cache` from 4.2.0 to 4.2.1
Release notes
Sourced from actions/cache's
releases.
v4.2.1
What's Changed
[!IMPORTANT]
As a reminder, there were important backend changes to release v4.2.0,
see those
release notes and the
announcement for more details.
New Contributors
Full Changelog: https://github.com/actions/cache/compare/v4.2.0...v4.2.1
Changelog
Sourced from actions/cache's
changelog.
Releases
4.2.1
- Bump
@actions/cache
to v4.0.1
4.2.0
TLDR; The cache backend service has been rewritten from the ground up
for improved performance and reliability. actions/cache now integrates
with the new cache service (v2) APIs.
The new service will gradually roll out as of February 1st,
2025. The legacy service will also be sunset on the same date.
Changes in these release are fully backward
compatible.
We are deprecating some versions of this action. We
recommend upgrading to version v4
or v3
as
soon as possible before February 1st, 2025. (Upgrade
instructions below).
If you are using pinned SHAs, please use the SHAs of versions
v4.2.0
or v3.4.0
If you do not upgrade, all workflow runs using any of the deprecated
actions/cache will
fail.
Upgrading to the recommended versions will not break your
workflows.
4.1.2
- Add GitHub Enterprise Cloud instances hostname filters to inform API
endpoint choices - #1474
- Security fix: Bump braces from 3.0.2 to 3.0.3 - #1475
4.1.1
- Restore original behavior of
cache-hit
output - #1467
4.1.0
- Ensure
cache-hit
output is set when a cache is missed -
#1404
- Deprecate
save-always
input - #1452
4.0.2
- Fixed restore
fail-on-cache-miss
not working.
4.0.1
4.0.0
- Updated minimum runner version support from node 12 -> node
20
3.4.0
- Integrated with the new cache service (v2) APIs
... (truncated)
Commits
0c907a7
Merge pull request #1554
from actions/robherley/v4.2.1
710893c
bump @actions/cache
to v4.0.1
9fa7e61
Update force deletion docs due a recent deprecation (#1500)
36f1e14
docs: Make the "always save prime numbers" example more clear
(#1525)
53aa38c
Correct GitHub Spelling in caching-strategies.md (#1526)
- See full diff in compare
view
Updates `actions/upload-artifact` from 4.6.0 to 4.6.1
Release notes
Sourced from actions/upload-artifact's
releases.
v4.6.1
What's Changed
Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v4.6.1
Commits
4cec3d8
Merge pull request #673
from actions/yacaovsnc/artifact_2.2.2
e9fad96
license cache update for artifact
b26fd06
Update to use artifact 2.2.2 package
- See full diff in compare
view
Updates `ossf/scorecard-action` from 2.4.0 to 2.4.1
Release notes
Sourced from ossf/scorecard-action's
releases.
v2.4.1
What's Changed
- This update bumps the Scorecard version to the v5.1.1 release. For a
complete list of changes, please refer to the v5.1.0
and v5.1.1
release notes.
- Publishing results now uses half the API quota as before. The exact
savings depends on the repository in question.
- Some errors were made into annotations to make them more visible
- There is now an optional
file_mode
input which controls
how repository files are fetched from GitHub. The default is
archive
, but git
produces the most accurate
results for repositories with .gitattributes
files at the
cost of analysis speed.
- The underlying container for the action is now hosted
on GitHub Container Registry. There should be no functional changes.
Docs
New Contributors
Commits
f49aabe
bump docker to ghcr v2.4.1 (#1478)
30a595b
:seedling: Bump github.com/sigstore/cosign/v2 from 2.4.2 to 2.4.3 (#1515)
69ae593
omit vcs info from build (#1514)
6a62a1c
add input for specifying --file-mode
(#1509)
2722664
:seedling: Bump the github-actions group with 2 updates (#1510)
ae0ef31
:seedling: Bump github.com/spf13/cobra from 1.8.1 to 1.9.1 (#1512)
3676bbc
:seedling: Bump golang from 1.23.6 to 1.24.0 in the docker-images group
(#1513)
ae7548a
Limit codeQL push trigger to main branch (#1507)
9165624
upgrade scorecard to v5.1.0 (#1508)
620fd28
:seedling: Bump the github-actions group with 2 updates (#1505)
- Additional commits viewable in compare
view
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/nightly.yaml | 8 ++++----
.github/workflows/pr.yaml | 4 ++--
.github/workflows/scorecard.yml | 6 +++---
.github/workflows/windows_nightly.yaml | 4 ++--
5 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index e7dfeae3d..36fa0742a 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
+ uses: github/codeql-action/init@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
+ uses: github/codeql-action/autobuild@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
+ uses: github/codeql-action/analyze@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml
index 57a1fc226..e9846d116 100644
--- a/.github/workflows/nightly.yaml
+++ b/.github/workflows/nightly.yaml
@@ -43,7 +43,7 @@ jobs:
- name: Cache tool downloads
# ubuntu runner has persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -149,7 +149,7 @@ jobs:
- name: Cache tool downloads
# ubuntu, mac runners have persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -182,7 +182,7 @@ jobs:
- name: Upload Test Outputs for Upload Job
# Only upload results from latest. Always run, except when cancelled.
if: (failure() || success()) && matrix.linter-version == 'Latest'
- uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
+ uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
with:
name: ${{ matrix.results-file }}-test-results
path: ${{ matrix.results-file }}-res.json
@@ -244,7 +244,7 @@ jobs:
- name: Upload Test Outputs for Notification Job
# Always run, except when cancelled.
if: (failure() || success())
- uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
+ uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
with:
name: tools-${{ matrix.results-file }}-test-results
path: ${{ matrix.results-file }}-res.json
diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index 3b5b72a1a..62ad05194 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -253,7 +253,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
@@ -283,7 +283,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index 5e0479eb6..d039dbb2c 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -35,7 +35,7 @@ jobs:
persist-credentials: false
- name: Run analysis
- uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0
+ uses: ossf/scorecard-action@f49aabe0b5af0936a0987cfb85d86b75731b0186 # v2.4.1
with:
results_file: results.sarif
results_format: sarif
@@ -57,7 +57,7 @@ jobs:
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: Upload artifact
- uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
+ uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
with:
name: SARIF file
path: results.sarif
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@9e8d0789d4a0fa9ceb6b1738f7e269594bdd67f0 # v3.28.9
+ uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
with:
sarif_file: results.sarif
diff --git a/.github/workflows/windows_nightly.yaml b/.github/workflows/windows_nightly.yaml
index 68ff0bb43..c752cc262 100644
--- a/.github/workflows/windows_nightly.yaml
+++ b/.github/workflows/windows_nightly.yaml
@@ -21,7 +21,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -63,7 +63,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
+ uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
From 13ab0b0a756bea23747a949b5e2397caf55eafd8 Mon Sep 17 00:00:00 2001
From: "trunk-open-pr-bot[bot]"
<131314627+trunk-open-pr-bot[bot]@users.noreply.github.com>
Date: Mon, 24 Feb 2025 09:25:52 -0800
Subject: [PATCH 13/24] Upgrade trunk to 1.22.11-beta.4 (#977)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[](https://trunk.io)
cli upgraded: 1.22.10-beta.7 → 1.22.11-beta.4
1 linter was upgraded:
- eslint 9.19.0 → 9.20.1
This PR was generated by the [Trunk Action]. For more info, see our
[docs] or reach out on [Slack].
[Trunk Action]: https://github.com/trunk-io/trunk-action
[docs]: https://docs.trunk.io
[Slack]: https://slack.trunk.io/
Co-authored-by: TylerJang27 <42743566+TylerJang27@users.noreply.github.com>
Co-authored-by: Tyler Jang
---
.trunk/trunk.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml
index d7d41c9ed..c0e243dec 100644
--- a/.trunk/trunk.yaml
+++ b/.trunk/trunk.yaml
@@ -2,7 +2,7 @@ version: 0.1
# version used for local trunk runs and testing
cli:
- version: 1.22.10-beta.7
+ version: 1.22.11-beta.4
shell_hooks:
enforce: true
@@ -42,7 +42,7 @@ lint:
enabled:
# enabled linters inherited from github.com/trunk-io/configs plugin
- definition-checker
- - eslint@9.19.0
+ - eslint@9.20.1
- trunk-toolbox@0.5.4
disabled:
- pylint # pylint diagnostics are too strict
From 4dbfeaba88cf7017c2a15e1a808aad9ae9c53442 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 2 Mar 2025 15:46:54 -0800
Subject: [PATCH 14/24] Bump the dependencies group with 2 updates (#988)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 2 updates:
[actions/cache](https://github.com/actions/cache) and
[actions/download-artifact](https://github.com/actions/download-artifact).
Updates `actions/cache` from 4.2.1 to 4.2.2
Release notes
Sourced from actions/cache's
releases.
v4.2.2
What's Changed
[!IMPORTANT]
As a reminder, there were important backend changes to release v4.2.0,
see those
release notes and the
announcement for more details.
Full Changelog: https://github.com/actions/cache/compare/v4.2.1...v4.2.2
Changelog
Sourced from actions/cache's
changelog.
Releases
4.2.2
- Bump
@actions/cache
to v4.0.2
4.2.1
- Bump
@actions/cache
to v4.0.1
4.2.0
TLDR; The cache backend service has been rewritten from the ground up
for improved performance and reliability. actions/cache now integrates
with the new cache service (v2) APIs.
The new service will gradually roll out as of February 1st,
2025. The legacy service will also be sunset on the same date.
Changes in these release are fully backward
compatible.
We are deprecating some versions of this action. We
recommend upgrading to version v4
or v3
as
soon as possible before February 1st, 2025. (Upgrade
instructions below).
If you are using pinned SHAs, please use the SHAs of versions
v4.2.0
or v3.4.0
If you do not upgrade, all workflow runs using any of the deprecated
actions/cache will
fail.
Upgrading to the recommended versions will not break your
workflows.
4.1.2
- Add GitHub Enterprise Cloud instances hostname filters to inform API
endpoint choices - #1474
- Security fix: Bump braces from 3.0.2 to 3.0.3 - #1475
4.1.1
- Restore original behavior of
cache-hit
output - #1467
4.1.0
- Ensure
cache-hit
output is set when a cache is missed -
#1404
- Deprecate
save-always
input - #1452
4.0.2
- Fixed restore
fail-on-cache-miss
not working.
4.0.1
4.0.0
- Updated minimum runner version support from node 12 -> node
20
... (truncated)
Commits
d4323d4
Merge pull request #1560
from actions/robherley/v4.2.2
da26677
bump @actions/cache
to v4.0.2, prep for v4.2.2
release
7921ae2
Merge pull request #1557
from actions/robherley/ia-workflow-released
3937731
Update publish-immutable-actions.yml
- See full diff in compare
view
Updates `actions/download-artifact` from 4.1.8 to 4.1.9
Release notes
Sourced from actions/download-artifact's
releases.
v4.1.9
What's Changed
New Contributors
Full Changelog: https://github.com/actions/download-artifact/compare/v4...v4.1.9
Commits
cc20338
Merge pull request #380
from actions/yacaovsnc/release_4_1_9
1fc0fee
Update artifact package to 2.2.2
7fba951
Merge pull request #372
from andyfeller/patch-1
f9ceb77
Update MIGRATION.md
533298b
Merge pull request #370
from froblesmartin/patch-1
d06289e
docs: small migration fix
d0ce8fd
Merge pull request #354
from actions/Jcambass-patch-1
1ce0d91
Add workflow file for publishing releases to immutable action
package
- See full diff in compare
view
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/nightly.yaml | 4 ++--
.github/workflows/pr.yaml | 4 ++--
.github/workflows/upload_results.reusable.yaml | 6 +++---
.github/workflows/windows_nightly.yaml | 4 ++--
4 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml
index e9846d116..7fb9033a1 100644
--- a/.github/workflows/nightly.yaml
+++ b/.github/workflows/nightly.yaml
@@ -43,7 +43,7 @@ jobs:
- name: Cache tool downloads
# ubuntu runner has persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -149,7 +149,7 @@ jobs:
- name: Cache tool downloads
# ubuntu, mac runners have persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index 62ad05194..f444be5cb 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -253,7 +253,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
@@ -283,7 +283,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
diff --git a/.github/workflows/upload_results.reusable.yaml b/.github/workflows/upload_results.reusable.yaml
index 56fbb1273..2d2653306 100644
--- a/.github/workflows/upload_results.reusable.yaml
+++ b/.github/workflows/upload_results.reusable.yaml
@@ -64,14 +64,14 @@ jobs:
- name: Retrieve Test Outputs ubuntu
id: download-ubuntu
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
+ uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
continue-on-error: true
with:
name: ${{ inputs.results-prefix }}ubuntu-latest-test-results
- name: Retrieve Test Outputs macOS
id: download-macos
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
+ uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
continue-on-error: true
with:
name: ${{ inputs.results-prefix }}macos-latest-test-results
@@ -79,7 +79,7 @@ jobs:
# TODO(Tyler): Re-add Windows runners.
# - name: Retrieve Test Outputs Windows
# id: download-windows
- # uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
+ # uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
# continue-on-error: true
# with:
# name: ${{ inputs.results-prefix }}windows-latest-test-results
diff --git a/.github/workflows/windows_nightly.yaml b/.github/workflows/windows_nightly.yaml
index c752cc262..688fc2149 100644
--- a/.github/workflows/windows_nightly.yaml
+++ b/.github/workflows/windows_nightly.yaml
@@ -21,7 +21,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -63,7 +63,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
+ uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
From 8725d804b8bc57117af7c9ca4e994ce55b9e7211 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Mar 2025 08:58:33 -0700
Subject: [PATCH 15/24] Bump the dependencies group across 1 directory with 7
updates (#992)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 7 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `22.13.5` | `22.13.10` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.24.1` | `8.26.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.24.1` | `8.26.0` |
|
[eslint-config-prettier](https://github.com/prettier/eslint-config-prettier)
| `10.0.1` | `10.1.1` |
| [eslint-plugin-n](https://github.com/eslint-community/eslint-plugin-n)
| `17.15.1` | `17.16.2` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.7.3` |
`5.8.2` |
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.24.1` | `8.26.0` |
Updates `@types/node` from 22.13.5 to 22.13.10
Commits
Updates `@typescript-eslint/eslint-plugin` from 8.24.1 to 8.26.0
Release notes
Sourced from @typescript-eslint/eslint-plugin
's
releases.
v8.26.0
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
- eslint-plugin: [no-unnecessary-type-parameters]
special case tuples and parameter location arrays as single-use (#9536)
- eslint-plugin: [no-unused-var] handle implicit
exports in declaration files (#10714)
- eslint-plugin: [explicit-module-boundary-types] add
an option to ignore overload implementations (#10889)
- eslint-plugin: [unified-signatures] support
ignoring overload signatures with different JSDoc comments (#10781)
- rule-tester: export
TestLanguageOptions
(#10892)
- scope-manager: only call Object.entries once for
each lib (#10647)
🩹 Fixes
- deps: update dependency typedoc-plugin-markdown to
v4.4.2 (#10877)
- eslint-plugin: [unified-signatures] does not
differentiate truly private methods (#10806)
- eslint-plugin: [no-invalid-void-type] report
accessor
properties with an invalid void
type
(#10864)
- eslint-plugin: [no-unnecessary-type-assertion]
handle unknown (#10875)
- rule-tester: Add missing
parser
dependency (#10909)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.25.0
8.25.0 (2025-02-24)
🚀 Features
- eslint-plugin: [no-misused-spread] add suggestions
(#10719)
🩹 Fixes
- ast-spec: replace
attributes
with
options
property in TSImportType
(#10691)
- eslint-plugin: [unified-signatures] handle
getter-setter (#10818)
- eslint-plugin: [no-deprecated] report usage of
deprecated private identifiers (#10844)
- eslint-plugin: [prefer-nullish-coalescing] report
on chain expressions in a ternary (#10708)
- typescript-estree: align TS module nodes to
namespaces (#10504)
- visitor-keys: update keys for
ImportAttribute
(#10649)
... (truncated)
Changelog
Sourced from @typescript-eslint/eslint-plugin
's
changelog.
8.26.0 (2025-03-03)
🚀 Features
- eslint-plugin: [unified-signatures] support
ignoring overload signatures with different JSDoc comments (#10781)
- eslint-plugin: [explicit-module-boundary-types] add
an option to ignore overload implementations (#10889)
- eslint-plugin: [no-unused-var] handle implicit
exports in declaration files (#10714)
- support TypeScript 5.8 (#10903)
- eslint-plugin: [no-unnecessary-type-parameters]
special case tuples and parameter location arrays as single-use (#9536)
🩹 Fixes
- eslint-plugin: [no-unnecessary-type-assertion]
handle unknown (#10875)
- eslint-plugin: [no-invalid-void-type] report
accessor
properties with an invalid void
type
(#10864)
- eslint-plugin: [unified-signatures] does not
differentiate truly private methods (#10806)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
8.25.0 (2025-02-24)
🚀 Features
- eslint-plugin: [no-misused-spread] add suggestions
(#10719)
🩹 Fixes
- eslint-plugin: [prefer-nullish-coalescing] report
on chain expressions in a ternary (#10708)
- eslint-plugin: [no-deprecated] report usage of
deprecated private identifiers (#10844)
- eslint-plugin: [unified-signatures] handle
getter-setter (#10818)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
Commits
bc6d19f
chore(release): publish 8.26.0
02d9d73
feat(eslint-plugin): [unified-signatures] support ignoring overload
signature...
84af50e
feat(eslint-plugin): [explicit-module-boundary-types] add an option to
ignore...
a03b7ef
fix(eslint-plugin): [no-unnecessary-type-assertion] handle unknown (#10875)
4082ad0
docs(eslint-plugin): [consistent-return] add link to
noImplicitReturns
docs...
d8d4b3c
feat(eslint-plugin): [no-unused-var] handle implicit exports in
declaration f...
9674629
feat: support TypeScript 5.8 (#10903)
3c7b8ff
chore: fix integration-tests (#10906)
735064a
fix(eslint-plugin): [no-invalid-void-type] report accessor
properties with ...
a6feb59
fix(eslint-plugin): [unified-signatures] does not differentiate truly
private...
- Additional commits viewable in compare
view
Updates `@typescript-eslint/parser` from 8.24.1 to 8.26.0
Release notes
Sourced from @typescript-eslint/parser
's
releases.
v8.26.0
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
- eslint-plugin: [no-unnecessary-type-parameters]
special case tuples and parameter location arrays as single-use (#9536)
- eslint-plugin: [no-unused-var] handle implicit
exports in declaration files (#10714)
- eslint-plugin: [explicit-module-boundary-types] add
an option to ignore overload implementations (#10889)
- eslint-plugin: [unified-signatures] support
ignoring overload signatures with different JSDoc comments (#10781)
- rule-tester: export
TestLanguageOptions
(#10892)
- scope-manager: only call Object.entries once for
each lib (#10647)
🩹 Fixes
- deps: update dependency typedoc-plugin-markdown to
v4.4.2 (#10877)
- eslint-plugin: [unified-signatures] does not
differentiate truly private methods (#10806)
- eslint-plugin: [no-invalid-void-type] report
accessor
properties with an invalid void
type
(#10864)
- eslint-plugin: [no-unnecessary-type-assertion]
handle unknown (#10875)
- rule-tester: Add missing
parser
dependency (#10909)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.25.0
8.25.0 (2025-02-24)
🚀 Features
- eslint-plugin: [no-misused-spread] add suggestions
(#10719)
🩹 Fixes
- ast-spec: replace
attributes
with
options
property in TSImportType
(#10691)
- eslint-plugin: [unified-signatures] handle
getter-setter (#10818)
- eslint-plugin: [no-deprecated] report usage of
deprecated private identifiers (#10844)
- eslint-plugin: [prefer-nullish-coalescing] report
on chain expressions in a ternary (#10708)
- typescript-estree: align TS module nodes to
namespaces (#10504)
- visitor-keys: update keys for
ImportAttribute
(#10649)
... (truncated)
Changelog
Sourced from @typescript-eslint/parser
's
changelog.
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
8.25.0 (2025-02-24)
This was a version bump only for parser to align it with other
projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
Updates `eslint-config-prettier` from 10.0.1 to 10.1.1
Release notes
Sourced from eslint-config-prettier's
releases.
v10.1.1
Patch Changes
-
#309
eb56a5e
Thanks @JounQin
!
- fix: separate the /flat
entry for compatibility
For flat config users, the previous
"eslint-config-prettier"
entry still works, but
"eslint-config-prettier/flat"
adds a new
name
property for config-inspector,
we just can't add it for the default entry for compatibility.
See also prettier/eslint-config-prettier#308
// before
import eslintConfigPrettier from "eslint-config-prettier";
// after
import eslintConfigPrettier from
"eslint-config-prettier/flat";
v10.1.0
Minor Changes
v10.0.3
Patch Changes
New Contributors
Full Changelog: https://github.com/prettier/eslint-config-prettier/compare/v10.0.2...v10.0.3
v10.0.2
Patch Changes
Changelog
Sourced from eslint-config-prettier's
changelog.
10.1.1
Patch Changes
-
#309
eb56a5e
Thanks @JounQin
!
- fix: separate the /flat
entry for compatibility
For flat config users, the previous
"eslint-config-prettier"
entry still works, but
"eslint-config-prettier/flat"
adds a new
name
property for config-inspector,
we just can't add it for the default entry for compatibility.
See also prettier/eslint-config-prettier#308
// before
import eslintConfigPrettier from "eslint-config-prettier";
// after
import eslintConfigPrettier from
"eslint-config-prettier/flat";
10.1.0
Minor Changes
10.0.3
Patch Changes
10.0.2
Patch Changes
10.0.0
Major Changes
Versions before 10.0.0
Version 9.1.0 (2023-12-02)
- Added: [unicorn/template-indent], (as a [special
rule][unicorn/template-indent-special]). Thanks to Gürgün Dayıoğlu (
@gurgunday
)!
- Changed: All the [formatting rules that were deprecated in ESLint
8.53.0][deprecated-8.53.0] are now excluded if you set the
ESLINT_CONFIG_PRETTIER_NO_DEPRECATED
environment
variable.
... (truncated)
Commits
Updates `eslint-plugin-n` from 17.15.1 to 17.16.2
Release notes
Sourced from eslint-plugin-n's
releases.
v17.16.2
🩹 Fixes
- Revert "feat: add support for ignoring sync methods from
certain locations" (#416)
(0779e2f)
v17.16.1
🩹 Fixes
🧹 Chores
- package: explicitly declare js module type (#410)
(9f09931)
v17.16.0
🌟 Features
- add support for ignoring sync methods from certain locations (#392)
(5544f20)
🩹 Fixes
- False-positive
no-extraneous-import
when using the
tsconfig > paths
alias import (#408)
(f486492)
🧹 Chores
Changelog
Sourced from eslint-plugin-n's
changelog.
🩹 Fixes
- Revert "feat: add support for ignoring sync methods from
certain locations" (#416)
(0779e2f)
🩹 Fixes
🧹 Chores
- package: explicitly declare js module type (#410)
(9f09931)
🌟 Features
- add support for ignoring sync methods from certain locations (#392)
(5544f20)
🩹 Fixes
- False-positive
no-extraneous-import
when using the
tsconfig > paths
alias import (#408)
(f486492)
🧹 Chores
Commits
067b9bf
chore(master): release 17.16.2 (#417)
0779e2f
fix: Revert "feat: add support for ignoring sync methods from
certain locatio...
90de242
chore(master): release 17.16.1 (#412)
9f09931
chore(package): explicitly declare js module type (#410)
340312e
fix: patch new eslint options types (#411)
17a60cd
chore(master): release 17.16.0 (#402)
f486492
fix: False-positive no-extraneous-import
when using the
tsconfig > paths
...
5544f20
feat: add support for ignoring sync methods from certain locations (#392)
4efe60f
perf: improve prefer-node-protocol
's performance (#406)
86a5242
refactor: eslint v8 compat (#397)
- See full diff in compare
view
Updates `typescript` from 5.7.3 to 5.8.2
Release notes
Sourced from typescript's
releases.
TypeScript 5.8
For release notes, check out the release
announcement.
Downloads are available on:
TypeScript 5.8 RC
For release notes, check out the release
announcement.
Downloads are available on:
TypeScript 5.8 Beta
For release notes, check out the release
announcement.
Downloads are available on:
Commits
beb69e4
Bump version to 5.8.2 and LKG
8fdbd54
🤖 Pick PR #61210
(Fix mistakenly disallowed default e...) into release-5.8 (#...
f4a3a8a
🤖 Pick PR #61175
(Ban import=require and export= unde...) into release-5.8 (#...
420ff06
Bump version to 5.8.1-rc and LKG
48eb13f
Update LKG
fb59c19
Merge remote-tracking branch 'origin/main' into release-5.8
df342b7
Fixed rewriteRelativeImportExtensions
for
import()
within call expression...
775412a
Bump github/codeql-action from 3.28.8 to 3.28.9 in the github-actions
group (...
e1629e5
Pass ignoreErrors=true to more resolveEntityName callers (#61144)
6fd1799
Update LKG
- Additional commits viewable in compare
view
Updates `typescript-eslint` from 8.24.1 to 8.26.0
Release notes
Sourced from typescript-eslint's
releases.
v8.26.0
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
- eslint-plugin: [no-unnecessary-type-parameters]
special case tuples and parameter location arrays as single-use (#9536)
- eslint-plugin: [no-unused-var] handle implicit
exports in declaration files (#10714)
- eslint-plugin: [explicit-module-boundary-types] add
an option to ignore overload implementations (#10889)
- eslint-plugin: [unified-signatures] support
ignoring overload signatures with different JSDoc comments (#10781)
- rule-tester: export
TestLanguageOptions
(#10892)
- scope-manager: only call Object.entries once for
each lib (#10647)
🩹 Fixes
- deps: update dependency typedoc-plugin-markdown to
v4.4.2 (#10877)
- eslint-plugin: [unified-signatures] does not
differentiate truly private methods (#10806)
- eslint-plugin: [no-invalid-void-type] report
accessor
properties with an invalid void
type
(#10864)
- eslint-plugin: [no-unnecessary-type-assertion]
handle unknown (#10875)
- rule-tester: Add missing
parser
dependency (#10909)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
v8.25.0
8.25.0 (2025-02-24)
🚀 Features
- eslint-plugin: [no-misused-spread] add suggestions
(#10719)
🩹 Fixes
- ast-spec: replace
attributes
with
options
property in TSImportType
(#10691)
- eslint-plugin: [unified-signatures] handle
getter-setter (#10818)
- eslint-plugin: [no-deprecated] report usage of
deprecated private identifiers (#10844)
- eslint-plugin: [prefer-nullish-coalescing] report
on chain expressions in a ternary (#10708)
- typescript-estree: align TS module nodes to
namespaces (#10504)
- visitor-keys: update keys for
ImportAttribute
(#10649)
... (truncated)
Changelog
Sourced from typescript-eslint's
changelog.
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
❤️ Thank You
You can read about our versioning
strategy and releases
on our website.
8.25.0 (2025-02-24)
This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.
You can read about our versioning
strategy and releases
on our website.
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 361 ++++++++++++++++++++++++++++++++++++++--------
package.json | 14 +-
2 files changed, 306 insertions(+), 69 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index e40be4abe..469391833 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,19 +16,19 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.5",
+ "@types/node": "^22.13.10",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.24.1",
- "@typescript-eslint/parser": "^8.24.1",
+ "@typescript-eslint/eslint-plugin": "^8.26.0",
+ "@typescript-eslint/parser": "^8.26.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
- "eslint-config-prettier": "^10.0.1",
+ "eslint-config-prettier": "^10.1.1",
"eslint-import-resolver-typescript": "^3.8.3",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-import-x": "^4.6.1",
"eslint-plugin-jest": "^28.11.0",
- "eslint-plugin-n": "^17.15.1",
+ "eslint-plugin-n": "^17.16.2",
"eslint-plugin-prettier": "^5.2.3",
"eslint-plugin-simple-import-sort": "^12.1.1",
"fast-sort": "^3.4.1",
@@ -40,8 +40,8 @@
"ts-jest": "^29.2.6",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
- "typescript": "^5.7.3",
- "typescript-eslint": "^8.24.1",
+ "typescript": "^5.8.2",
+ "typescript-eslint": "^8.26.0",
"yaml": "^2.7.0"
},
"engines": {
@@ -1469,9 +1469,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.13.5",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz",
- "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==",
+ "version": "22.13.10",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz",
+ "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1503,17 +1503,17 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.24.1.tgz",
- "integrity": "sha512-ll1StnKtBigWIGqvYDVuDmXJHVH4zLVot1yQ4fJtLpL7qacwkxJc1T0bptqw+miBQ/QfUbhl1TcQ4accW5KUyA==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.26.0.tgz",
+ "integrity": "sha512-cLr1J6pe56zjKYajK6SSSre6nl1Gj6xDp1TY0trpgPzjVbgDwd09v2Ws37LABxzkicmUjhEeg/fAUjPJJB1v5Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.24.1",
- "@typescript-eslint/type-utils": "8.24.1",
- "@typescript-eslint/utils": "8.24.1",
- "@typescript-eslint/visitor-keys": "8.24.1",
+ "@typescript-eslint/scope-manager": "8.26.0",
+ "@typescript-eslint/type-utils": "8.26.0",
+ "@typescript-eslint/utils": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1529,20 +1529,83 @@
"peerDependencies": {
"@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0",
"eslint": "^8.57.0 || ^9.0.0",
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.0.tgz",
+ "integrity": "sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.0.tgz",
+ "integrity": "sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.0.tgz",
+ "integrity": "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "eslint-visitor-keys": "^4.2.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
+ "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.24.1.tgz",
- "integrity": "sha512-Tqoa05bu+t5s8CTZFaGpCH2ub3QeT9YDkXbPd3uQ4SfsLoh1/vv2GEYAioPoxCWJJNsenXlC88tRjwoHNts1oQ==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.26.0.tgz",
+ "integrity": "sha512-mNtXP9LTVBy14ZF3o7JG69gRPBK/2QWtQd0j0oH26HcY/foyJJau6pNUez7QrM5UHnSvwlQcJXKsk0I99B9pOA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.24.1",
- "@typescript-eslint/types": "8.24.1",
- "@typescript-eslint/typescript-estree": "8.24.1",
- "@typescript-eslint/visitor-keys": "8.24.1",
+ "@typescript-eslint/scope-manager": "8.26.0",
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/typescript-estree": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1554,7 +1617,70 @@
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.0.tgz",
+ "integrity": "sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.0.tgz",
+ "integrity": "sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.0.tgz",
+ "integrity": "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "eslint-visitor-keys": "^4.2.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
+ "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
"node_modules/@typescript-eslint/scope-manager": {
@@ -1576,14 +1702,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.24.1.tgz",
- "integrity": "sha512-/Do9fmNgCsQ+K4rCz0STI7lYB4phTtEXqqCAs3gZW0pnK7lWNkvWd5iW545GSmApm4AzmQXmSqXPO565B4WVrw==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.26.0.tgz",
+ "integrity": "sha512-ruk0RNChLKz3zKGn2LwXuVoeBcUMh+jaqzN461uMMdxy5H9epZqIBtYj7UiPXRuOpaALXGbmRuZQhmwHhaS04Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.24.1",
- "@typescript-eslint/utils": "8.24.1",
+ "@typescript-eslint/typescript-estree": "8.26.0",
+ "@typescript-eslint/utils": "8.26.0",
"debug": "^4.3.4",
"ts-api-utils": "^2.0.1"
},
@@ -1596,7 +1722,7 @@
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
}
},
"node_modules/@typescript-eslint/types": {
@@ -1614,14 +1740,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.24.1.tgz",
- "integrity": "sha512-UPyy4MJ/0RE648DSKQe9g0VDSehPINiejjA6ElqnFaFIhI6ZEiZAkUI0D5MCk0bQcTf/LVqZStvQ6K4lPn/BRg==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.0.tgz",
+ "integrity": "sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.24.1",
- "@typescript-eslint/visitor-keys": "8.24.1",
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1637,7 +1763,39 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.0.tgz",
+ "integrity": "sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.0.tgz",
+ "integrity": "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "eslint-visitor-keys": "^4.2.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
}
},
"node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
@@ -1650,6 +1808,19 @@
"balanced-match": "^1.0.0"
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/eslint-visitor-keys": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
+ "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
@@ -1667,16 +1838,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.24.1.tgz",
- "integrity": "sha512-OOcg3PMMQx9EXspId5iktsI3eMaXVwlhC8BvNnX6B5w9a4dVgpkQZuU8Hy67TolKcl+iFWq0XX+jbDGN4xWxjQ==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.0.tgz",
+ "integrity": "sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.24.1",
- "@typescript-eslint/types": "8.24.1",
- "@typescript-eslint/typescript-estree": "8.24.1"
+ "@typescript-eslint/scope-manager": "8.26.0",
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/typescript-estree": "8.26.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1687,7 +1858,70 @@
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.0.tgz",
+ "integrity": "sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "@typescript-eslint/visitor-keys": "8.26.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.0.tgz",
+ "integrity": "sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.0.tgz",
+ "integrity": "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.26.0",
+ "eslint-visitor-keys": "^4.2.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/eslint-visitor-keys": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
+ "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
@@ -2769,12 +3003,13 @@
}
},
"node_modules/eslint-config-prettier": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.0.1.tgz",
- "integrity": "sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==",
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.1.tgz",
+ "integrity": "sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==",
"dev": true,
+ "license": "MIT",
"bin": {
- "eslint-config-prettier": "build/bin/cli.js"
+ "eslint-config-prettier": "bin/cli.js"
},
"peerDependencies": {
"eslint": ">=7.0.0"
@@ -3046,10 +3281,11 @@
}
},
"node_modules/eslint-plugin-n": {
- "version": "17.15.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-17.15.1.tgz",
- "integrity": "sha512-KFw7x02hZZkBdbZEFQduRGH4VkIH4MW97ClsbAM4Y4E6KguBJWGfWG1P4HEIpZk2bkoWf0bojpnjNAhYQP8beA==",
+ "version": "17.16.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-17.16.2.tgz",
+ "integrity": "sha512-iQM5Oj+9o0KaeLoObJC/uxNGpktZCkYiTTBo8PkRWq3HwNcRxwpvSDFjBhQ5+HLJzBTy+CLDC5+bw0Z5GyhlOQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.1",
"enhanced-resolve": "^5.17.1",
@@ -6360,10 +6596,11 @@
}
},
"node_modules/typescript": {
- "version": "5.7.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz",
- "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==",
+ "version": "5.8.2",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
+ "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
"dev": true,
+ "license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -6373,15 +6610,15 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.24.1",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.24.1.tgz",
- "integrity": "sha512-cw3rEdzDqBs70TIcb0Gdzbt6h11BSs2pS0yaq7hDWDBtCCSei1pPSUXE9qUdQ/Wm9NgFg8mKtMt1b8fTHIl1jA==",
+ "version": "8.26.0",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.26.0.tgz",
+ "integrity": "sha512-PtVz9nAnuNJuAVeUFvwztjuUgSnJInODAUx47VDwWPXzd5vismPOtPtt83tzNXyOjVQbPRp786D6WFW/M2koIA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.24.1",
- "@typescript-eslint/parser": "8.24.1",
- "@typescript-eslint/utils": "8.24.1"
+ "@typescript-eslint/eslint-plugin": "8.26.0",
+ "@typescript-eslint/parser": "8.26.0",
+ "@typescript-eslint/utils": "8.26.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -6392,7 +6629,7 @@
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
- "typescript": ">=4.8.4 <5.8.0"
+ "typescript": ">=4.8.4 <5.9.0"
}
},
"node_modules/unbox-primitive": {
diff --git a/package.json b/package.json
index 65f524386..1aa047127 100644
--- a/package.json
+++ b/package.json
@@ -14,19 +14,19 @@
"@types/debug": "^4.1.12",
"@types/jest": "^29.5.14",
"@types/jest-specific-snapshot": "^0.5.9",
- "@types/node": "^22.13.5",
+ "@types/node": "^22.13.10",
"@types/semver": "^7.5.8",
- "@typescript-eslint/eslint-plugin": "^8.24.1",
- "@typescript-eslint/parser": "^8.24.1",
+ "@typescript-eslint/eslint-plugin": "^8.26.0",
+ "@typescript-eslint/parser": "^8.26.0",
"caller": "^1.1.0",
"debug": "^4.4.0",
"eslint": "9.14.0",
- "eslint-config-prettier": "^10.0.1",
+ "eslint-config-prettier": "^10.1.1",
"eslint-import-resolver-typescript": "^3.8.3",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-import-x": "^4.6.1",
"eslint-plugin-jest": "^28.11.0",
- "eslint-plugin-n": "^17.15.1",
+ "eslint-plugin-n": "^17.16.2",
"eslint-plugin-prettier": "^5.2.3",
"eslint-plugin-simple-import-sort": "^12.1.1",
"fast-sort": "^3.4.1",
@@ -38,8 +38,8 @@
"ts-jest": "^29.2.6",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.1.2",
- "typescript": "^5.7.3",
- "typescript-eslint": "^8.24.1",
+ "typescript": "^5.8.2",
+ "typescript-eslint": "^8.26.0",
"yaml": "^2.7.0"
},
"bundleDependencies": [
From d23b50344e1996c61ed57ce683941378d554c960 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Mar 2025 08:59:25 -0700
Subject: [PATCH 16/24] Bump github/codeql-action from 3.28.10 to 3.28.11 in
the dependencies group (#991)
Bumps the dependencies group with 1 update:
[github/codeql-action](https://github.com/github/codeql-action).
Updates `github/codeql-action` from 3.28.10 to 3.28.11
Release notes
Sourced from github/codeql-action's
releases.
v3.28.11
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.11 - 07 Mar 2025
- Update default CodeQL bundle version to 2.20.6. #2793
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.11 - 07 Mar 2025
- Update default CodeQL bundle version to 2.20.6. #2793
3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5. #2772
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS. #2768
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
3.28.3 - 22 Jan 2025
- Update default CodeQL bundle version to 2.20.2. #2707
- Fix an issue downloading the CodeQL Bundle from a GitHub Enterprise
Server instance which occurred when the CodeQL Bundle had been synced to
the instance using the CodeQL Action
sync tool and the Actions runner did not have Zstandard installed.
#2710
- Uploading debug artifacts for CodeQL analysis is temporarily
disabled. #2712
3.28.2 - 21 Jan 2025
No user facing changes.
... (truncated)
Commits
6bb031a
Merge pull request #2798
from github/update-v3.28.11-56b25d5d5
6bca7dd
Update changelog for v3.28.11
56b25d5
Merge pull request #2793
from github/update-bundle/codeql-bundle-v2.20.6
256aa16
Merge branch 'main' into update-bundle/codeql-bundle-v2.20.6
911d845
Merge pull request #2796
from github/nickfyson/adjust-rate-error-string
7b7ed63
adjust string for handling rate limit error
608ccd6
Merge pull request #2794
from github/update-supported-enterprise-server-versions
35d04d3
Update supported GitHub Enterprise Server versions
ec3b221
Update supported GitHub Enterprise Server versions
8dc01f6
Add changelog note
- Additional commits viewable in compare
view
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/scorecard.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 36fa0742a..eb1867653 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
+ uses: github/codeql-action/init@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
+ uses: github/codeql-action/autobuild@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
+ uses: github/codeql-action/analyze@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index d039dbb2c..2cacc4839 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
+ uses: github/codeql-action/upload-sarif@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
with:
sarif_file: results.sarif
From 027e6a419f843b8b3fb211e9f430e150aba149fe Mon Sep 17 00:00:00 2001
From: Tomasz Janiszewski
Date: Fri, 14 Mar 2025 03:35:02 +0100
Subject: [PATCH 17/24] Update kube-linter to 0.7.2 (#993)
---
linters/kube-linter/plugin.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/linters/kube-linter/plugin.yaml b/linters/kube-linter/plugin.yaml
index d040b35fc..35d39188d 100644
--- a/linters/kube-linter/plugin.yaml
+++ b/linters/kube-linter/plugin.yaml
@@ -5,7 +5,7 @@ tools:
runtime: go
package: golang.stackrox.io/kube-linter/cmd/kube-linter
shims: [kube-linter]
- known_good_version: 0.6.4
+ known_good_version: 0.7.2
lint:
definitions:
- name: kube-linter
@@ -20,5 +20,5 @@ lint:
environment:
- name: PATH
list: ["${linter}"]
- known_good_version: 0.6.4
+ known_good_version: 0.7.2
suggest_if: never
From 6dae87cc1775467486041f490aaf40e67af0121c Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sun, 23 Mar 2025 18:32:37 -0700
Subject: [PATCH 18/24] Bump the dependencies group with 5 updates (#995)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [github/codeql-action](https://github.com/github/codeql-action) |
`3.28.11` | `3.28.12` |
| [actions/cache](https://github.com/actions/cache) | `4.2.2` | `4.2.3`
|
| [actions/upload-artifact](https://github.com/actions/upload-artifact)
| `4.6.1` | `4.6.2` |
| [actions/setup-node](https://github.com/actions/setup-node) | `4.2.0`
| `4.3.0` |
|
[actions/download-artifact](https://github.com/actions/download-artifact)
| `4.1.9` | `4.2.1` |
Updates `github/codeql-action` from 3.28.11 to 3.28.12
Release notes
Sourced from github/codeql-action's
releases.
v3.28.12
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.12 - 19 Mar 2025
- Dependency caching should now cache more dependencies for Java
build-mode: none
extractions. This should speed up
workflows and avoid inconsistent alerts in some cases.
- Update default CodeQL bundle version to 2.20.7. #2810
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.12 - 19 Mar 2025
- Dependency caching should now cache more dependencies for Java
build-mode: none
extractions. This should speed up
workflows and avoid inconsistent alerts in some cases.
- Update default CodeQL bundle version to 2.20.7. #2810
3.28.11 - 07 Mar 2025
- Update default CodeQL bundle version to 2.20.6. #2793
3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5. #2772
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS. #2768
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
3.28.3 - 22 Jan 2025
- Update default CodeQL bundle version to 2.20.2. #2707
- Fix an issue downloading the CodeQL Bundle from a GitHub Enterprise
Server instance which occurred when the CodeQL Bundle had been synced to
the instance using the CodeQL Action
sync tool and the Actions runner did not have Zstandard installed.
#2710
... (truncated)
Commits
5f8171a
Merge pull request #2814
from github/update-v3.28.12-6349095d1
bb59f77
Update changelog for v3.28.12
6349095
Merge pull request #2810
from github/update-bundle/codeql-bundle-v2.20.7
d7d03fd
Add changelog note
4e3a534
Update default bundle to codeql-bundle-v2.20.7
55f0237
Merge pull request #2802
from github/mbg/dependency-caching/java-buildless
6a151cd
Merge pull request #2811
from github/dependabot/github_actions/actions-c2c311...
7866bcd
Manually bump workflow to match autogenerated file
611289e
build(deps): bump ruby/setup-ruby in the actions group
4c409a5
Remove temporary dependency directory in analyze
post
action
- Additional commits viewable in compare
view
Updates `actions/cache` from 4.2.2 to 4.2.3
Release notes
Sourced from actions/cache's
releases.
v4.2.3
What's Changed
- Update to use
@actions/cache
4.0.3 package &
prepare for new release by @salmanmkc
in actions/cache#1577
(SAS tokens for cache entries are now masked in debug logs)
New Contributors
Full Changelog: https://github.com/actions/cache/compare/v4.2.2...v4.2.3
Changelog
Sourced from actions/cache's
changelog.
Releases
4.2.3
- Bump
@actions/cache
to v4.0.3 (obfuscates SAS token in
debug logs for cache entries)
4.2.2
- Bump
@actions/cache
to v4.0.2
4.2.1
- Bump
@actions/cache
to v4.0.1
4.2.0
TLDR; The cache backend service has been rewritten from the ground up
for improved performance and reliability. actions/cache now integrates
with the new cache service (v2) APIs.
The new service will gradually roll out as of February 1st,
2025. The legacy service will also be sunset on the same date.
Changes in these release are fully backward
compatible.
We are deprecating some versions of this action. We
recommend upgrading to version v4
or v3
as
soon as possible before February 1st, 2025. (Upgrade
instructions below).
If you are using pinned SHAs, please use the SHAs of versions
v4.2.0
or v3.4.0
If you do not upgrade, all workflow runs using any of the deprecated
actions/cache will
fail.
Upgrading to the recommended versions will not break your
workflows.
4.1.2
- Add GitHub Enterprise Cloud instances hostname filters to inform API
endpoint choices - #1474
- Security fix: Bump braces from 3.0.2 to 3.0.3 - #1475
4.1.1
- Restore original behavior of
cache-hit
output - #1467
4.1.0
- Ensure
cache-hit
output is set when a cache is missed -
#1404
- Deprecate
save-always
input - #1452
4.0.2
- Fixed restore
fail-on-cache-miss
not working.
4.0.1
... (truncated)
Commits
Updates `actions/upload-artifact` from 4.6.1 to 4.6.2
Release notes
Sourced from actions/upload-artifact's
releases.
v4.6.2
What's Changed
New Contributors
Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v4.6.2
Commits
ea165f8
Merge pull request #685
from salmanmkc/salmanmkc/3-new-upload-artifacts-release
0839620
Prepare for new release of actions/upload-artifact with new toolkit
cache ver...
- See full diff in compare
view
Updates `actions/setup-node` from 4.2.0 to 4.3.0
Release notes
Sourced from actions/setup-node's
releases.
v4.3.0
What's Changed
Dependency updates
New Contributors
Full Changelog: https://github.com/actions/setup-node/compare/v4...v4.3.0
Commits
Updates `actions/download-artifact` from 4.1.9 to 4.2.1
Release notes
Sourced from actions/download-artifact's
releases.
v4.2.1
What's Changed
Full Changelog: https://github.com/actions/download-artifact/compare/v4.2.0...v4.2.1
v4.2.0
What's Changed
New Contributors
Full Changelog: https://github.com/actions/download-artifact/compare/v4.1.9...v4.2.0
Commits
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/nightly.yaml | 8 ++++----
.github/workflows/pr.yaml | 4 ++--
.github/workflows/repo_tests.reusable.yaml | 2 +-
.github/workflows/scorecard.yml | 4 ++--
.github/workflows/upload_results.reusable.yaml | 10 +++++-----
.github/workflows/windows_nightly.yaml | 4 ++--
7 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index eb1867653..1b2cb186a 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
+ uses: github/codeql-action/init@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
+ uses: github/codeql-action/autobuild@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
+ uses: github/codeql-action/analyze@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml
index 7fb9033a1..0f742fc01 100644
--- a/.github/workflows/nightly.yaml
+++ b/.github/workflows/nightly.yaml
@@ -43,7 +43,7 @@ jobs:
- name: Cache tool downloads
# ubuntu runner has persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -149,7 +149,7 @@ jobs:
- name: Cache tool downloads
# ubuntu, mac runners have persistent cache
if: matrix.os == 'windows-latest'
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -182,7 +182,7 @@ jobs:
- name: Upload Test Outputs for Upload Job
# Only upload results from latest. Always run, except when cancelled.
if: (failure() || success()) && matrix.linter-version == 'Latest'
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
+ uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: ${{ matrix.results-file }}-test-results
path: ${{ matrix.results-file }}-res.json
@@ -244,7 +244,7 @@ jobs:
- name: Upload Test Outputs for Notification Job
# Always run, except when cancelled.
if: (failure() || success())
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
+ uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: tools-${{ matrix.results-file }}-test-results
path: ${{ matrix.results-file }}-res.json
diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index f444be5cb..7040c3b86 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -253,7 +253,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
@@ -283,7 +283,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
key: trunk-${{ runner.os }}
diff --git a/.github/workflows/repo_tests.reusable.yaml b/.github/workflows/repo_tests.reusable.yaml
index 61a2ad01a..5a1ad9169 100644
--- a/.github/workflows/repo_tests.reusable.yaml
+++ b/.github/workflows/repo_tests.reusable.yaml
@@ -28,7 +28,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Setup node
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
+ uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: 18
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index 2cacc4839..1f37ddbce 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -57,7 +57,7 @@ jobs:
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: Upload artifact
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
+ uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: SARIF file
path: results.sarif
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
+ uses: github/codeql-action/upload-sarif@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
with:
sarif_file: results.sarif
diff --git a/.github/workflows/upload_results.reusable.yaml b/.github/workflows/upload_results.reusable.yaml
index 2d2653306..94fe278cc 100644
--- a/.github/workflows/upload_results.reusable.yaml
+++ b/.github/workflows/upload_results.reusable.yaml
@@ -64,14 +64,14 @@ jobs:
- name: Retrieve Test Outputs ubuntu
id: download-ubuntu
- uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
+ uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1
continue-on-error: true
with:
name: ${{ inputs.results-prefix }}ubuntu-latest-test-results
- name: Retrieve Test Outputs macOS
id: download-macos
- uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
+ uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1
continue-on-error: true
with:
name: ${{ inputs.results-prefix }}macos-latest-test-results
@@ -79,7 +79,7 @@ jobs:
# TODO(Tyler): Re-add Windows runners.
# - name: Retrieve Test Outputs Windows
# id: download-windows
- # uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
+ # uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1
# continue-on-error: true
# with:
# name: ${{ inputs.results-prefix }}windows-latest-test-results
@@ -118,7 +118,7 @@ jobs:
text: "Failure: "
- name: Setup Node
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
+ uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: 18
@@ -227,7 +227,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Setup Node
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
+ uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: 18
diff --git a/.github/workflows/windows_nightly.yaml b/.github/workflows/windows_nightly.yaml
index 688fc2149..53313f2ec 100644
--- a/.github/workflows/windows_nightly.yaml
+++ b/.github/workflows/windows_nightly.yaml
@@ -21,7 +21,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
@@ -63,7 +63,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Cache tool downloads
- uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
+ uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: /tmp/plugins_testing_download_cache
# No need to key on trunk version unless we change how we store downloads.
From 64dfa5898a93034b328ef615261ea757d7571959 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 1 Apr 2025 20:45:49 +0000
Subject: [PATCH 19/24] Bump github/codeql-action from 3.28.12 to 3.28.13 in
the dependencies group (#998)
Bumps the dependencies group with 1 update:
[github/codeql-action](https://github.com/github/codeql-action).
Updates `github/codeql-action` from 3.28.12 to 3.28.13
Release notes
Sourced from github/codeql-action's
releases.
v3.28.13
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
3.28.13 - 24 Mar 2025
No user facing changes.
See the full CHANGELOG.md
for more information.
Changelog
Sourced from github/codeql-action's
changelog.
CodeQL Action Changelog
See the releases
page for the relevant changes to the CodeQL CLI and language
packs.
[UNRELEASED]
No user facing changes.
3.28.13 - 24 Mar 2025
No user facing changes.
3.28.12 - 19 Mar 2025
- Dependency caching should now cache more dependencies for Java
build-mode: none
extractions. This should speed up
workflows and avoid inconsistent alerts in some cases.
- Update default CodeQL bundle version to 2.20.7. #2810
3.28.11 - 07 Mar 2025
- Update default CodeQL bundle version to 2.20.6. #2793
3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5. #2772
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS. #2768
3.28.9 - 07 Feb 2025
- Update default CodeQL bundle version to 2.20.4. #2753
3.28.8 - 29 Jan 2025
- Enable support for Kotlin 2.1.10 when running with CodeQL CLI
v2.20.3. #2744
3.28.7 - 29 Jan 2025
No user facing changes.
3.28.6 - 27 Jan 2025
- Re-enable debug artifact upload for CLI versions 2.20.3 or greater.
#2726
3.28.5 - 24 Jan 2025
- Update default CodeQL bundle version to 2.20.3. #2717
3.28.4 - 23 Jan 2025
No user facing changes.
... (truncated)
Commits
1b549b9
Merge pull request #2819
from github/update-v3.28.13-e0ea14102
82630c8
Update changelog for v3.28.13
e0ea141
Merge pull request #2818
from github/cklin/empty-pr-diff-range
b361a91
Diff-informed analysis: fix empty PR handling
bd1d9ab
Merge pull request #2816
from github/cklin/overlay-file-list
b98ae6c
Add overlay-database-utils tests
9825184
Add getFileOidsUnderPath() tests
ac67cff
Merge pull request #2817
from github/cklin/default-setup-diff-informed
9c674ba
build: refresh js files
d109dd5
Detect PR branches for Default Setup
- Additional commits viewable in compare
view
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
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)
---
Dependabot commands and options
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 ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore ` will
remove the ignore condition of the specified dependency and ignore
conditions
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/codeql.yml | 6 +++---
.github/workflows/scorecard.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 1b2cb186a..d3accc356 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -34,7 +34,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
+ uses: github/codeql-action/init@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
# Override language selection by uncommenting this and choosing your languages
with:
languages: javascript
@@ -42,7 +42,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild
- uses: github/codeql-action/autobuild@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
+ uses: github/codeql-action/autobuild@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -56,4 +56,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
+ uses: github/codeql-action/analyze@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml
index 1f37ddbce..3c5333b64 100644
--- a/.github/workflows/scorecard.yml
+++ b/.github/workflows/scorecard.yml
@@ -65,6 +65,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: Upload to code-scanning
- uses: github/codeql-action/upload-sarif@5f8171a638ada777af81d42b55959a643bb29017 # v3.28.12
+ uses: github/codeql-action/upload-sarif@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
with:
sarif_file: results.sarif
From 16cb0888e3d0db3830a0397f0480b29375c61a98 Mon Sep 17 00:00:00 2001
From: Tyler Jang
Date: Wed, 2 Apr 2025 13:31:18 -0700
Subject: [PATCH 20/24] (Fix): Change dockerfile regex to match re2 (#999)
Reverts #943 and also adds an ignore to handle the original request
Fixes the error log `Error parsing
'(?i)(?:^|/)Dockerfile\.(?!.*\.dockerignore$).+$': invalid perl
operator: (?!`, since re2 doesn't support negative matches. Tested that
the log is no longer there and `trunk check query` produces the correct
LQRs
---
.../hadolint_v2.10.0_CUSTOM.check.shot | 38 +++++++++++++++++++
.../hadolint_v2.12.1-beta_CUSTOM.check.shot | 38 +++++++++++++++++++
linters/plugin.yaml | 6 ++-
3 files changed, 80 insertions(+), 2 deletions(-)
diff --git a/linters/hadolint/test_data/hadolint_v2.10.0_CUSTOM.check.shot b/linters/hadolint/test_data/hadolint_v2.10.0_CUSTOM.check.shot
index 4fe2209ca..e5b0d64c0 100644
--- a/linters/hadolint/test_data/hadolint_v2.10.0_CUSTOM.check.shot
+++ b/linters/hadolint/test_data/hadolint_v2.10.0_CUSTOM.check.shot
@@ -26,6 +26,15 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
],
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/Dockerfile.empty",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -44,6 +53,15 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
],
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/nested/Dockerfile.debug",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -72,6 +90,16 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
"upstream": true,
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/Dockerfile.empty",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -92,6 +120,16 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
"upstream": true,
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/nested/Dockerfile.debug",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
diff --git a/linters/hadolint/test_data/hadolint_v2.12.1-beta_CUSTOM.check.shot b/linters/hadolint/test_data/hadolint_v2.12.1-beta_CUSTOM.check.shot
index 4fe2209ca..e5b0d64c0 100644
--- a/linters/hadolint/test_data/hadolint_v2.12.1-beta_CUSTOM.check.shot
+++ b/linters/hadolint/test_data/hadolint_v2.12.1-beta_CUSTOM.check.shot
@@ -26,6 +26,15 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
],
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/Dockerfile.empty",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -44,6 +53,15 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
],
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/nested/Dockerfile.debug",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -72,6 +90,16 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
"upstream": true,
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/Dockerfile.empty",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
@@ -92,6 +120,16 @@ exports[`Testing linter hadolint test CUSTOM 1`] = `
"upstream": true,
"verb": "TRUNK_VERB_CHECK",
},
+ {
+ "command": "lint",
+ "fileGroupName": "docker",
+ "linter": "hadolint",
+ "paths": [
+ "test_data/nested/Dockerfile.debug",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
{
"command": "lint",
"fileGroupName": "docker",
diff --git a/linters/plugin.yaml b/linters/plugin.yaml
index c57210920..e6fa05042 100644
--- a/linters/plugin.yaml
+++ b/linters/plugin.yaml
@@ -221,8 +221,7 @@ lint:
# ?: is a non-capturing group, so that the RE2 DFA is more memory efficient
# NOTE(Tyler): This is more strict than it realistically needs to be, but this partial match
# and the file extensions provide a general enough capture.
- # Note that re2 does not support ?!, so this does not capture all correct cases.
- - (?i)(?:^|/)Dockerfile\.(?!.*\.dockerignore$).+$
+ - (?i)(?:^|/)Dockerfile\..+$
filenames:
- dockerfile
- Dockerfile
@@ -707,3 +706,6 @@ lint:
- linters: [osv-scanner]
paths: ["**/go.sum"]
+
+ - linters: [checkov, hadolint, snyk, terrascan, trivy]
+ paths: ["**/*.dockerignore"]
From 001e89e5cfd9e7073657de655a264965629d1431 Mon Sep 17 00:00:00 2001
From: Tyler Jang
Date: Wed, 9 Apr 2025 10:30:01 -0700
Subject: [PATCH 21/24] (Chore): Various repo cleanup and additional support
(#1003)
- Adds `golangci-lint2`. This requires a new linter definition because
of the new parser type and a different package install. Fixes
https://github.com/trunk-io/plugins/issues/1000. Now recommend this
linter instead of `golangci-lint`
- Fixes ansible-lint snapshots
- Fixes scalafmt snapshots
- Fixes psscriptanalyzer download URL
- Fixes snyk test flakiness
---
.../ansible_lint_v25.2.0_FQCN.check.shot | 595 ++++++++++++++++++
.../ansible_lint_v25.2.0_non_FQCN.check.shot | 583 +++++++++++++++++
linters/golangci-lint/golangci_lint.test.ts | 62 +-
linters/golangci-lint/plugin.yaml | 59 ++
.../golangci-lint/test_data/.golangci2.yml | 24 +
.../golangci_lint2_v2.0.0_all.check.shot | 67 ++
.../golangci_lint2_v2.0.0_empty.check.shot | 55 ++
...langci_lint2_v2.0.0_unbuildable.check.shot | 20 +
linters/psscriptanalyzer/plugin.yaml | 6 +
linters/scalafmt/plugin.yaml | 2 +-
...mt.shot => scalafmt_v3.9.1_basic.fmt.shot} | 5 +-
....shot => scalafmt_v3.9.1_empty.check.shot} | 12 +-
linters/semgrep/plugin.yaml | 2 +-
linters/snyk/snyk.test.ts | 5 +-
.../{SqlInjectionLess4.java => java.in.java} | 0
linters/snyk/test_data/{index.js => js.in.js} | 0
.../test_data/snyk_v1.1295.0_basic.check.shot | 145 -----
.../test_data/snyk_v1.1295.0_java.check.shot | 46 ++
.../test_data/snyk_v1.1295.0_js.check.shot | 103 +++
tests/repo_tests/config_check.test.ts | 2 +-
20 files changed, 1629 insertions(+), 164 deletions(-)
create mode 100644 linters/ansible-lint/test_data/ansible_lint_v25.2.0_FQCN.check.shot
create mode 100644 linters/ansible-lint/test_data/ansible_lint_v25.2.0_non_FQCN.check.shot
create mode 100644 linters/golangci-lint/test_data/.golangci2.yml
create mode 100644 linters/golangci-lint/test_data/golangci_lint2_v2.0.0_all.check.shot
create mode 100644 linters/golangci-lint/test_data/golangci_lint2_v2.0.0_empty.check.shot
create mode 100644 linters/golangci-lint/test_data/golangci_lint2_v2.0.0_unbuildable.check.shot
rename linters/scalafmt/test_data/{scalafmt_v3.9.0_basic.fmt.shot => scalafmt_v3.9.1_basic.fmt.shot} (61%)
rename linters/scalafmt/test_data/{scalafmt_v3.9.0_empty.check.shot => scalafmt_v3.9.1_empty.check.shot} (56%)
rename linters/snyk/test_data/{SqlInjectionLess4.java => java.in.java} (100%)
rename linters/snyk/test_data/{index.js => js.in.js} (100%)
delete mode 100644 linters/snyk/test_data/snyk_v1.1295.0_basic.check.shot
create mode 100644 linters/snyk/test_data/snyk_v1.1295.0_java.check.shot
create mode 100644 linters/snyk/test_data/snyk_v1.1295.0_js.check.shot
diff --git a/linters/ansible-lint/test_data/ansible_lint_v25.2.0_FQCN.check.shot b/linters/ansible-lint/test_data/ansible_lint_v25.2.0_FQCN.check.shot
new file mode 100644
index 000000000..cdb54c019
--- /dev/null
+++ b/linters/ansible-lint/test_data/ansible_lint_v25.2.0_FQCN.check.shot
@@ -0,0 +1,595 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter ansible-lint test FQCN 1`] = `
+{
+ "issues": [
+ {
+ "code": "fqcn[action-core]",
+ "column": "7",
+ "file": "jboss-standalone/demo-aws-launch.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "29",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.wait_for\` or \`ansible.legacy.wait_for\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/demo-aws-launch.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "5",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[play]",
+ "column": "1",
+ "file": "jboss-standalone/deploy-application.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[play]",
+ "level": "LEVEL_HIGH",
+ "line": "4",
+ "linter": "ansible-lint",
+ "message": "All plays should be named.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "14",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copy application WAR file to host",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "15",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "2",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copy application WAR file to host",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "20",
+ "linter": "ansible-lint",
+ "message": "Action \`jboss\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "ansible-lint",
+ "message": "Action \`jboss\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "2",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: restart jboss",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "7",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: restart iptables",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "12",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Download JBoss from jboss.org",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "13",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.get_url\` or \`ansible.legacy.get_url\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "18",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.unarchive\` or \`ansible.legacy.unarchive\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "22",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "26",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.command\` or \`ansible.legacy.command\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.dnf\` or \`ansible.legacy.dnf\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "31",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copying standalone.xml configuration file",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "32",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.template\` or \`ansible.legacy.template\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "38",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.group\` or \`ansible.legacy.group\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "42",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.user\` or \`ansible.legacy.user\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "48",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.file\` or \`ansible.legacy.file\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "53",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "56",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[octal-values]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[octal-values]",
+ "level": "LEVEL_HIGH",
+ "line": "59",
+ "linter": "ansible-lint",
+ "message": "Forbidden implicit octal value "0755"",
+ "targetType": "yaml",
+ },
+ {
+ "code": "command-instead-of-module",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#command-instead-of-module",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "ignore-errors",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#ignore-errors",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "no-changed-when",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#no-changed-when",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "62",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.shell\` or \`ansible.legacy.shell\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "63",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "66",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "68",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "71",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy iptables rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "71",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy iptables rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "72",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.template\` or \`ansible.legacy.template\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "79",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.dnf\` or \`ansible.legacy.dnf\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "85",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "90",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy firewalld rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "91",
+ "linter": "ansible-lint",
+ "message": "Action \`firewalld\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "92",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "95",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[play]",
+ "column": "1",
+ "file": "jboss-standalone/site.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[play]",
+ "level": "LEVEL_HIGH",
+ "line": "4",
+ "linter": "ansible-lint",
+ "message": "All plays should be named.",
+ "targetType": "yaml",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/demo-aws-launch.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/deploy-application.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/java-app/tasks/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/site.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/ansible-lint/test_data/ansible_lint_v25.2.0_non_FQCN.check.shot b/linters/ansible-lint/test_data/ansible_lint_v25.2.0_non_FQCN.check.shot
new file mode 100644
index 000000000..a993e1d2a
--- /dev/null
+++ b/linters/ansible-lint/test_data/ansible_lint_v25.2.0_non_FQCN.check.shot
@@ -0,0 +1,583 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+// trunk-upgrade-validation:RELEASE
+
+exports[`Testing linter ansible-lint test non_FQCN 1`] = `
+{
+ "issues": [
+ {
+ "code": "syntax-check[unknown-module]",
+ "column": "7",
+ "file": "jboss-standalone/demo-aws-launch.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#syntax-check[unknown-module]",
+ "level": "LEVEL_HIGH",
+ "line": "12",
+ "linter": "ansible-lint",
+ "message": "couldn't resolve module/action 'ec2'. This often indicates a misspelling, missing collection, or incorrect module path.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[play]",
+ "column": "1",
+ "file": "jboss-standalone/deploy-application.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[play]",
+ "level": "LEVEL_HIGH",
+ "line": "4",
+ "linter": "ansible-lint",
+ "message": "All plays should be named.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "14",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copy application WAR file to host",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "15",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "2",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copy application WAR file to host",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "20",
+ "linter": "ansible-lint",
+ "message": "Action \`jboss\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/java-app/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "ansible-lint",
+ "message": "Action \`jboss\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "2",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: restart jboss",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "7",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: restart iptables",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "12",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Download JBoss from jboss.org",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "13",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.get_url\` or \`ansible.legacy.get_url\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "18",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.unarchive\` or \`ansible.legacy.unarchive\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "22",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "26",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.command\` or \`ansible.legacy.command\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "3",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.dnf\` or \`ansible.legacy.dnf\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "31",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Copying standalone.xml configuration file",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "32",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.template\` or \`ansible.legacy.template\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "38",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.group\` or \`ansible.legacy.group\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "42",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.user\` or \`ansible.legacy.user\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "48",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.file\` or \`ansible.legacy.file\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "53",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "56",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.copy\` or \`ansible.legacy.copy\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[octal-values]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[octal-values]",
+ "level": "LEVEL_HIGH",
+ "line": "59",
+ "linter": "ansible-lint",
+ "message": "Forbidden implicit octal value "0755"",
+ "targetType": "yaml",
+ },
+ {
+ "code": "command-instead-of-module",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#command-instead-of-module",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "ignore-errors",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#ignore-errors",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "no-changed-when",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#no-changed-when",
+ "level": "LEVEL_HIGH",
+ "line": "61",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: Workaround for systemd bug",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "62",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.shell\` or \`ansible.legacy.shell\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "63",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "66",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "68",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "risky-file-permissions",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#risky-file-permissions",
+ "level": "LEVEL_HIGH",
+ "line": "71",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy iptables rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "71",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy iptables rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "72",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.template\` or \`ansible.legacy.template\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "79",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.dnf\` or \`ansible.legacy.dnf\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action-core]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action-core]",
+ "level": "LEVEL_HIGH",
+ "line": "85",
+ "linter": "ansible-lint",
+ "message": "Use \`ansible.builtin.service\` or \`ansible.legacy.service\` instead.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[casing]",
+ "column": "9",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[casing]",
+ "level": "LEVEL_HIGH",
+ "line": "90",
+ "linter": "ansible-lint",
+ "message": "Task/Handler: deploy firewalld rules",
+ "targetType": "yaml",
+ },
+ {
+ "code": "fqcn[action]",
+ "column": "3",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#fqcn[action]",
+ "level": "LEVEL_HIGH",
+ "line": "91",
+ "linter": "ansible-lint",
+ "message": "Action \`firewalld\` is not FQCN.",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "92",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "yaml[truthy]",
+ "column": "1",
+ "file": "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#yaml[truthy]",
+ "level": "LEVEL_HIGH",
+ "line": "95",
+ "linter": "ansible-lint",
+ "message": "Truthy value should be one of [false, true]",
+ "targetType": "yaml",
+ },
+ {
+ "code": "name[play]",
+ "column": "1",
+ "file": "jboss-standalone/site.yml",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://ansible-lint.readthedocs.io/en/latest/default_rules.html#name[play]",
+ "level": "LEVEL_HIGH",
+ "line": "4",
+ "linter": "ansible-lint",
+ "message": "All plays should be named.",
+ "targetType": "yaml",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/demo-aws-launch.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/deploy-application.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/java-app/tasks/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/jboss-standalone/handlers/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/roles/jboss-standalone/tasks/main.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "ansible-lint",
+ "paths": [
+ "jboss-standalone/site.yml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/golangci-lint/golangci_lint.test.ts b/linters/golangci-lint/golangci_lint.test.ts
index 9a5ba201a..43fadf223 100644
--- a/linters/golangci-lint/golangci_lint.test.ts
+++ b/linters/golangci-lint/golangci_lint.test.ts
@@ -1,11 +1,59 @@
import path from "path";
+import semver from "semver";
import { customLinterCheckTest } from "tests";
import { TrunkLintDriver } from "tests/driver";
import { skipOS, TEST_DATA } from "tests/utils";
+const testGenerator = ({
+ args,
+ testName,
+ preCheck,
+ skipTestIf,
+}: {
+ args: string;
+ testName: string;
+ preCheck?: (driver: TrunkLintDriver) => void;
+ skipTestIf?: (version?: string) => boolean;
+}) => {
+ const skipTest = (v1: boolean) => (version?: string) => {
+ if (v1 && semver.gte(version ?? "", "2.0.0")) {
+ return true;
+ } else if (!v1 && semver.lt(version ?? "", "2.0.0")) {
+ return true;
+ }
+
+ if (skipTestIf) {
+ return skipTestIf(version);
+ }
+ return false;
+ };
+
+ const preCheckV2 = (driver: TrunkLintDriver) => {
+ driver.moveFile(path.join(TEST_DATA, ".golangci.yml"), ".golangci2.yml");
+ if (preCheck) {
+ preCheck(driver);
+ }
+ };
+
+ customLinterCheckTest({
+ linterName: "golangci-lint",
+ args,
+ testName,
+ preCheck,
+ skipTestIf: skipTest(true),
+ });
+
+ customLinterCheckTest({
+ linterName: "golangci-lint2",
+ args,
+ testName,
+ preCheck: preCheckV2,
+ skipTestIf: skipTest(false),
+ });
+};
+
// Don't run on Windows since the typecheck errors are dependent on system libs, and the set of diagnostics seems to vary.
-customLinterCheckTest({
- linterName: "golangci-lint",
+testGenerator({
args: `${TEST_DATA} -y`,
testName: "all",
skipTestIf: skipOS(["win32"]),
@@ -18,12 +66,11 @@ const addEmpty = (driver: TrunkLintDriver) => {
// Don't run on Windows since the typecheck errors are dependent on system libs, and for the sake of these tests
// it is easier to simply skip these tests than handle additional setup.
-customLinterCheckTest({
- linterName: "golangci-lint",
- testName: "empty",
+testGenerator({
args: TEST_DATA,
- preCheck: addEmpty,
+ testName: "empty",
skipTestIf: skipOS(["win32"]),
+ preCheck: addEmpty,
});
// Having an ignored file and no other files causes an error diagnostic to be surfaced.
@@ -32,8 +79,7 @@ const setupUnbuildable = (driver: TrunkLintDriver) => {
driver.deleteFile(TEST_DATA);
};
-customLinterCheckTest({
- linterName: "golangci-lint",
+testGenerator({
testName: "unbuildable",
args: "unbuildable.go",
preCheck: setupUnbuildable,
diff --git a/linters/golangci-lint/plugin.yaml b/linters/golangci-lint/plugin.yaml
index e9311d3ba..361bf75f1 100644
--- a/linters/golangci-lint/plugin.yaml
+++ b/linters/golangci-lint/plugin.yaml
@@ -7,6 +7,11 @@ tools:
package: github.com/golangci/golangci-lint/cmd/golangci-lint
shims: [golangci-lint]
known_good_version: 1.46.2
+ - name: golangci-lint2
+ runtime: go
+ package: github.com/golangci/golangci-lint/v2/cmd/golangci-lint
+ shims: [golangci-lint]
+ known_good_version: 2.0.0
lint:
definitions:
@@ -50,6 +55,60 @@ lint:
run_from: ${root_or_parent_with(go.mod)}
# TODO(Tyler): Audit golangci-lint running on upstream once sandboxing and relative path fix is landed.
disable_upstream: true
+ suggest_if: never
+ direct_configs:
+ - .golangci.json
+ - .golangci.toml
+ - .golangci.yaml
+ - .golangci.yml
+ affects_cache:
+ - go.mod
+ - go.sum
+ issue_url_format: https://golangci-lint.run/usage/linters/
+ known_good_version: 1.49.0
+ version_command:
+ parse_regex: ${semver}
+ run: golangci-lint --version
+ run_timeout: 10m
+ - name: golangci-lint2
+ files: [go]
+ tools: [golangci-lint2]
+ description: A powerful Go linter runner
+ environment:
+ - name: GOLANGCI_LINT_CACHE
+ value: ${cachedir}
+ # Needs to use system `diff` and `git`
+ - name: PATH
+ list: ["${env.PATH}"]
+ - name: GO111MODULE
+ value: auto
+ # May need to git clone with ssh authentication for private packages.
+ - name: SSH_AUTH_SOCK
+ value: ${env.SSH_AUTH_SOCK}
+ optional: true
+ commands:
+ - name: lint
+ output: sarif
+ read_output_from: tmp_file
+ # We need to run golangci-lint on directories since running on files only works for --fast
+ # and can also produce false positives.
+ target: ${parent}
+ # Exclude go linters we already include.
+ run:
+ golangci-lint run --output.sarif.path ${tmpfile} --timeout 10m --concurrency 1
+ --allow-parallel-runners --issues-exit-code 0 ${target}
+ # exit codes
+ # 0 - success
+ # 1 - issues found -> we override this to be 0
+ # 2 - warning in test
+ # 3 - failure
+ # 4 - timeout
+ # 5 - no go files
+ # 6 - no config file detected
+ # 7 - error logged
+ success_codes: [0, 2, 7]
+ run_from: ${root_or_parent_with(go.mod)}
+ disable_upstream: true
suggest_if: files_present
direct_configs:
- .golangci.json
diff --git a/linters/golangci-lint/test_data/.golangci2.yml b/linters/golangci-lint/test_data/.golangci2.yml
new file mode 100644
index 000000000..9a10c7739
--- /dev/null
+++ b/linters/golangci-lint/test_data/.golangci2.yml
@@ -0,0 +1,24 @@
+version: "2"
+linters:
+ enable:
+ - govet
+ - asciicheck
+ - bodyclose
+ - depguard
+ - dogsled
+ - errcheck
+ - gochecknoinits
+ - godot
+ - goheader
+ - goprintffuncname
+ - gosec
+ - govet
+ - ineffassign
+ - misspell
+ - nakedret
+ - nolintlint
+ - rowserrcheck
+ - staticcheck
+ - unconvert
+ - unused
+ - whitespace
diff --git a/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_all.check.shot b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_all.check.shot
new file mode 100644
index 000000000..11b1a0385
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_all.check.shot
@@ -0,0 +1,67 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter golangci-lint2 test all 1`] = `
+{
+ "issues": [
+ {
+ "code": "errcheck",
+ "column": "12",
+ "file": "test_data/basic.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "8",
+ "linter": "golangci-lint2",
+ "message": "Error return value of \`time.Parse\` is not checked",
+ "targetType": "go",
+ },
+ {
+ "code": "unused",
+ "column": "6",
+ "file": "test_data/unused_func.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "5",
+ "linter": "golangci-lint2",
+ "message": "func helper is unused",
+ "targetType": "go",
+ },
+ {
+ "code": "typecheck",
+ "column": "1",
+ "file": "test_data/wrapper/printer.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint2",
+ "message": ": # golangcilint_linter_test/wrapper
+wrapper/printer.go:12:23: undefined: Wrapper2",
+ "targetType": "go",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint2",
+ "paths": [
+ "test_data",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint2",
+ "paths": [
+ "test_data/wrapper",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_empty.check.shot b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_empty.check.shot
new file mode 100644
index 000000000..756736b45
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_empty.check.shot
@@ -0,0 +1,55 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter golangci-lint2 test empty 1`] = `
+{
+ "issues": [
+ {
+ "code": "typecheck",
+ "column": "1",
+ "file": "test_data/empty.go",
+ "issueClass": "ISSUE_CLASS_NEW",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint2",
+ "message": "expected 'package', found 'EOF'",
+ "targetType": "go",
+ },
+ {
+ "code": "typecheck",
+ "column": "1",
+ "file": "test_data/wrapper/printer.go",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "issueUrl": "https://golangci-lint.run/usage/linters/",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "golangci-lint2",
+ "message": ": # golangcilint_linter_test/wrapper
+wrapper/printer.go:12:23: undefined: Wrapper2",
+ "targetType": "go",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint2",
+ "paths": [
+ "test_data",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint2",
+ "paths": [
+ "test_data/wrapper",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_unbuildable.check.shot b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_unbuildable.check.shot
new file mode 100644
index 000000000..dceb23821
--- /dev/null
+++ b/linters/golangci-lint/test_data/golangci_lint2_v2.0.0_unbuildable.check.shot
@@ -0,0 +1,20 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter golangci-lint2 test unbuildable 1`] = `
+{
+ "issues": [],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "go",
+ "linter": "golangci-lint2",
+ "paths": [
+ ".",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/psscriptanalyzer/plugin.yaml b/linters/psscriptanalyzer/plugin.yaml
index 000798f21..78585b1a1 100644
--- a/linters/psscriptanalyzer/plugin.yaml
+++ b/linters/psscriptanalyzer/plugin.yaml
@@ -12,7 +12,13 @@ downloads:
linux: linux
windows: windows
macos: macos
+ version: <=1.23.0
url: https://github.com/PowerShell/PSScriptAnalyzer/releases/download/v${version}/PSScriptAnalyzer.${version}.nupkg
+ - os:
+ linux: linux
+ windows: windows
+ macos: macos
+ url: https://github.com/PowerShell/PSScriptAnalyzer/releases/download/${version}/PSScriptAnalyzer.${version}.nupkg
- name: converttosarif
downloads:
- os:
diff --git a/linters/scalafmt/plugin.yaml b/linters/scalafmt/plugin.yaml
index e3fecea56..ca6c2656b 100644
--- a/linters/scalafmt/plugin.yaml
+++ b/linters/scalafmt/plugin.yaml
@@ -47,4 +47,4 @@ lint:
run: scalafmt --version
known_good_version: 3.4.3
# We don't support this semver format, and it's a prerelease
- known_bad_versions: [3.8.4-RC1]
+ known_bad_versions: [3.8.4-RC1, 3.9.0]
diff --git a/linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot b/linters/scalafmt/test_data/scalafmt_v3.9.1_basic.fmt.shot
similarity index 61%
rename from linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot
rename to linters/scalafmt/test_data/scalafmt_v3.9.1_basic.fmt.shot
index 7a1381573..1816be293 100644
--- a/linters/scalafmt/test_data/scalafmt_v3.9.0_basic.fmt.shot
+++ b/linters/scalafmt/test_data/scalafmt_v3.9.1_basic.fmt.shot
@@ -2,9 +2,6 @@
// trunk-upgrade-validation:RELEASE
exports[`Testing formatter scalafmt test basic 1`] = `
-"case class Demo(a: String,
- b: Int,
- c: Char
- )
+"case class Demo(a: String, b: Int, c: Char)
"
`;
diff --git a/linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot b/linters/scalafmt/test_data/scalafmt_v3.9.1_empty.check.shot
similarity index 56%
rename from linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot
rename to linters/scalafmt/test_data/scalafmt_v3.9.1_empty.check.shot
index 7e4002a3f..180d1aacc 100644
--- a/linters/scalafmt/test_data/scalafmt_v3.9.0_empty.check.shot
+++ b/linters/scalafmt/test_data/scalafmt_v3.9.1_empty.check.shot
@@ -16,6 +16,16 @@ exports[`Testing linter scalafmt test empty 1`] = `
},
],
"taskFailures": [],
- "unformattedFiles": [],
+ "unformattedFiles": [
+ {
+ "column": "1",
+ "file": "test_data/empty.in.scala",
+ "issueClass": "ISSUE_CLASS_UNFORMATTED",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "scalafmt",
+ "message": "Incorrect formatting, autoformat by running 'trunk fmt'",
+ },
+ ],
}
`;
diff --git a/linters/semgrep/plugin.yaml b/linters/semgrep/plugin.yaml
index 9a0af399a..f3213979a 100644
--- a/linters/semgrep/plugin.yaml
+++ b/linters/semgrep/plugin.yaml
@@ -35,7 +35,7 @@ lint:
- name: PATH
list: ["${env.PATH}"]
known_good_version: 1.33.2
- known_bad_versions: [1.5.1] # Does not work on MacOS
+ known_bad_versions: [1.5.1, 1.117.0] # Does not work on MacOS
version_command:
parse_regex: ${semver}
run: semgrep --version
diff --git a/linters/snyk/snyk.test.ts b/linters/snyk/snyk.test.ts
index c382ce7ca..91fa6a531 100644
--- a/linters/snyk/snyk.test.ts
+++ b/linters/snyk/snyk.test.ts
@@ -1,5 +1,4 @@
-import { customLinterCheckTest } from "tests";
-import { TEST_DATA } from "tests/utils";
+import { linterCheckTest } from "tests";
// Requires SNYK_TOKEN to run
-customLinterCheckTest({ linterName: "snyk", args: TEST_DATA, testName: "basic" });
+linterCheckTest({ linterName: "snyk" });
diff --git a/linters/snyk/test_data/SqlInjectionLess4.java b/linters/snyk/test_data/java.in.java
similarity index 100%
rename from linters/snyk/test_data/SqlInjectionLess4.java
rename to linters/snyk/test_data/java.in.java
diff --git a/linters/snyk/test_data/index.js b/linters/snyk/test_data/js.in.js
similarity index 100%
rename from linters/snyk/test_data/index.js
rename to linters/snyk/test_data/js.in.js
diff --git a/linters/snyk/test_data/snyk_v1.1295.0_basic.check.shot b/linters/snyk/test_data/snyk_v1.1295.0_basic.check.shot
deleted file mode 100644
index a535e0542..000000000
--- a/linters/snyk/test_data/snyk_v1.1295.0_basic.check.shot
+++ /dev/null
@@ -1,145 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Testing linter snyk test basic 1`] = `
-{
- "issues": [
- {
- "code": "java/Sqli",
- "column": "18",
- "file": "test_data/SqlInjectionLess4.java",
- "isSecurity": true,
- "issueClass": "ISSUE_CLASS_EXISTING",
- "level": "LEVEL_HIGH",
- "line": "59",
- "linter": "snyk",
- "message": "Unsanitized input from an HTTP parameter flows into executeUpdate, where it is used in an SQL query. This may result in an SQL Injection vulnerability.",
- "ranges": [
- {
- "filePath": "test_data/SqlInjectionLess4.java",
- "length": "23",
- "offset": "2394",
- },
- ],
- "targetType": "javascript",
- },
- {
- "code": "javascript/NoRateLimitingForExpensiveWebOperation",
- "column": "18",
- "file": "test_data/index.js",
- "isSecurity": true,
- "issueClass": "ISSUE_CLASS_EXISTING",
- "level": "LEVEL_MEDIUM",
- "line": "166",
- "linter": "snyk",
- "message": "This endpoint handler performs a file system operation and does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
- "ranges": [
- {
- "filePath": "test_data/index.js",
- "length": "1567",
- "offset": "3702",
- },
- ],
- "targetType": "javascript",
- },
- {
- "code": "javascript/NoRateLimitingForExpensiveWebOperation",
- "column": "21",
- "file": "test_data/index.js",
- "isSecurity": true,
- "issueClass": "ISSUE_CLASS_EXISTING",
- "level": "LEVEL_MEDIUM",
- "line": "222",
- "linter": "snyk",
- "message": "This endpoint handler performs a file system operation and does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
- "ranges": [
- {
- "filePath": "test_data/index.js",
- "length": "242",
- "offset": "5292",
- },
- ],
- "targetType": "javascript",
- },
- {
- "code": "javascript/NoSqli",
- "column": "8",
- "file": "test_data/index.js",
- "isSecurity": true,
- "issueClass": "ISSUE_CLASS_EXISTING",
- "level": "LEVEL_HIGH",
- "line": "39",
- "linter": "snyk",
- "message": "Unsanitized input from the HTTP request body flows into find, where it is used in an NoSQL query. This may result in an NoSQL Injection vulnerability.",
- "ranges": [
- {
- "filePath": "test_data/index.js",
- "length": "4",
- "offset": "918",
- },
- ],
- "targetType": "javascript",
- },
- {
- "code": "javascript/NoRateLimitingForExpensiveWebOperation",
- "column": "18",
- "file": "test_data/index.js",
- "isSecurity": true,
- "issueClass": "ISSUE_CLASS_EXISTING",
- "level": "LEVEL_MEDIUM",
- "line": "77",
- "linter": "snyk",
- "message": "This endpoint handler performs a system command execution and does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
- "ranges": [
- {
- "filePath": "test_data/index.js",
- "length": "928",
- "offset": "1741",
- },
- ],
- "targetType": "javascript",
- },
- ],
- "lintActions": [
- {
- "command": "code",
- "fileGroupName": "java",
- "linter": "snyk",
- "paths": [
- "test_data/SqlInjectionLess4.java",
- ],
- "verb": "TRUNK_VERB_CHECK",
- },
- {
- "command": "code",
- "fileGroupName": "javascript",
- "linter": "snyk",
- "paths": [
- "test_data/index.js",
- ],
- "verb": "TRUNK_VERB_CHECK",
- },
- {
- "command": "code",
- "fileGroupName": "java",
- "linter": "snyk",
- "paths": [
- "test_data/SqlInjectionLess4.java",
- ],
- "upstream": true,
- "verb": "TRUNK_VERB_CHECK",
- },
- {
- "command": "code",
- "fileGroupName": "javascript",
- "linter": "snyk",
- "paths": [
- "test_data/index.js",
- ],
- "upstream": true,
- "verb": "TRUNK_VERB_CHECK",
- },
- ],
- "taskFailures": [],
- "unformattedFiles": [],
-}
-`;
diff --git a/linters/snyk/test_data/snyk_v1.1295.0_java.check.shot b/linters/snyk/test_data/snyk_v1.1295.0_java.check.shot
new file mode 100644
index 000000000..390821ea6
--- /dev/null
+++ b/linters/snyk/test_data/snyk_v1.1295.0_java.check.shot
@@ -0,0 +1,46 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter snyk test java 1`] = `
+{
+ "issues": [
+ {
+ "code": "java/Sqli",
+ "column": "18",
+ "file": "test_data/java.in.java",
+ "isSecurity": true,
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "line": "59",
+ "linter": "snyk",
+ "message": "Unsanitized input from an HTTP parameter flows into executeUpdate, where it is used in an SQL query. This may result in an SQL Injection vulnerability.",
+ "ranges": [
+ {
+ "filePath": "test_data/java.in.java",
+ "length": "23",
+ "offset": "2394",
+ },
+ ],
+ "targetType": "java",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "code",
+ "fileGroupName": "java",
+ "linter": "snyk",
+ "paths": [
+ "test_data/java.in.java",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [
+ {
+ "details": StringMatching /\\.\\*\\$/m,
+ "message": "test_data/java.in.java",
+ "name": "snyk",
+ },
+ ],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/snyk/test_data/snyk_v1.1295.0_js.check.shot b/linters/snyk/test_data/snyk_v1.1295.0_js.check.shot
new file mode 100644
index 000000000..02ca7cb1e
--- /dev/null
+++ b/linters/snyk/test_data/snyk_v1.1295.0_js.check.shot
@@ -0,0 +1,103 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter snyk test js 1`] = `
+{
+ "issues": [
+ {
+ "code": "javascript/NoRateLimitingForExpensiveWebOperation",
+ "column": "18",
+ "file": "test_data/js.in.js",
+ "isSecurity": true,
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_MEDIUM",
+ "line": "166",
+ "linter": "snyk",
+ "message": "Expensive operation (a file system operation) is performed by an endpoint handler which does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
+ "ranges": [
+ {
+ "filePath": "test_data/js.in.js",
+ "length": "1567",
+ "offset": "3702",
+ },
+ ],
+ "targetType": "javascript",
+ },
+ {
+ "code": "javascript/NoRateLimitingForExpensiveWebOperation",
+ "column": "21",
+ "file": "test_data/js.in.js",
+ "isSecurity": true,
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_MEDIUM",
+ "line": "222",
+ "linter": "snyk",
+ "message": "Expensive operation (a file system operation) is performed by an endpoint handler which does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
+ "ranges": [
+ {
+ "filePath": "test_data/js.in.js",
+ "length": "242",
+ "offset": "5292",
+ },
+ ],
+ "targetType": "javascript",
+ },
+ {
+ "code": "javascript/NoSqli",
+ "column": "8",
+ "file": "test_data/js.in.js",
+ "isSecurity": true,
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "line": "39",
+ "linter": "snyk",
+ "message": "Unsanitized input from the HTTP request body flows into find, where it is used in an NoSQL query. This may result in an NoSQL Injection vulnerability.",
+ "ranges": [
+ {
+ "filePath": "test_data/js.in.js",
+ "length": "4",
+ "offset": "918",
+ },
+ ],
+ "targetType": "javascript",
+ },
+ {
+ "code": "javascript/NoRateLimitingForExpensiveWebOperation",
+ "column": "18",
+ "file": "test_data/js.in.js",
+ "isSecurity": true,
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_MEDIUM",
+ "line": "77",
+ "linter": "snyk",
+ "message": "Expensive operation (a system command execution) is performed by an endpoint handler which does not use a rate-limiting mechanism. It may enable the attackers to perform Denial-of-service attacks. Consider using a rate-limiting middleware such as express-limit.",
+ "ranges": [
+ {
+ "filePath": "test_data/js.in.js",
+ "length": "928",
+ "offset": "1741",
+ },
+ ],
+ "targetType": "javascript",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "code",
+ "fileGroupName": "javascript",
+ "linter": "snyk",
+ "paths": [
+ "test_data/js.in.js",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [
+ {
+ "details": StringMatching /\\.\\*\\$/m,
+ "message": "test_data/js.in.js",
+ "name": "snyk",
+ },
+ ],
+ "unformattedFiles": [],
+}
+`;
diff --git a/tests/repo_tests/config_check.test.ts b/tests/repo_tests/config_check.test.ts
index b7e03a679..73ecb0384 100644
--- a/tests/repo_tests/config_check.test.ts
+++ b/tests/repo_tests/config_check.test.ts
@@ -148,7 +148,7 @@ describe("Global config health check", () => {
"dotenv-linter",
"git-diff-check",
"gofmt",
- "golangci-lint",
+ "golangci-lint2",
"hadolint",
"haml-lint",
"isort",
From 4bc19c996d374ba0fb9c2ecaed130eb91627b4dc Mon Sep 17 00:00:00 2001
From: Eli Schleifer <1265982+EliSchleifer@users.noreply.github.com>
Date: Thu, 10 Apr 2025 14:24:57 -0700
Subject: [PATCH 22/24] Updates default ruby build and latest stable ruby
release to 3.4.2 (#1005)
Updating ruby build
---
.trunk/trunk.yaml | 7 +-
.../kube_linter_v0.7.2_basic.check.shot | 67 +++++++++++++++++++
runtimes/ruby/plugin.yaml | 8 +--
3 files changed, 75 insertions(+), 7 deletions(-)
create mode 100644 linters/kube-linter/test_data/kube_linter_v0.7.2_basic.check.shot
diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml
index c0e243dec..fa6bd9366 100644
--- a/.trunk/trunk.yaml
+++ b/.trunk/trunk.yaml
@@ -2,7 +2,7 @@ version: 0.1
# version used for local trunk runs and testing
cli:
- version: 1.22.11-beta.4
+ version: 1.22.12
shell_hooks:
enforce: true
@@ -17,7 +17,7 @@ plugins:
- id: configs
uri: https://github.com/trunk-io/configs
- ref: v1.0.10
+ ref: v1.0.11
lint:
files:
@@ -42,7 +42,7 @@ lint:
enabled:
# enabled linters inherited from github.com/trunk-io/configs plugin
- definition-checker
- - eslint@9.20.1
+ - eslint@9.24.0
- trunk-toolbox@0.5.4
disabled:
- pylint # pylint diagnostics are too strict
@@ -109,6 +109,7 @@ tools:
enabled:
- clangd-indexing-tools@19.1.2
- clangd@19.1.2
+
runtimes:
# expose shims in .trunk/tools
- node
diff --git a/linters/kube-linter/test_data/kube_linter_v0.7.2_basic.check.shot b/linters/kube-linter/test_data/kube_linter_v0.7.2_basic.check.shot
new file mode 100644
index 000000000..20279574e
--- /dev/null
+++ b/linters/kube-linter/test_data/kube_linter_v0.7.2_basic.check.shot
@@ -0,0 +1,67 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter kube-linter test basic 1`] = `
+{
+ "issues": [
+ {
+ "code": "latest-tag",
+ "column": "1",
+ "file": "test_data/basic.in.yaml",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "kube-linter",
+ "message": "The container "sec-ctx-demo" is using an invalid container image, "busybox". Please use images that are not blocked by the \`BlockList\` criteria : [".*:(latest)$" "^[^:]*$" "(.*/[^:]+)$"]
+object: /security-context-demo /v1, Kind=Pod",
+ "targetType": "yaml",
+ },
+ {
+ "code": "no-read-only-root-fs",
+ "column": "1",
+ "file": "test_data/basic.in.yaml",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "kube-linter",
+ "message": "container "sec-ctx-demo" does not have a read-only root file system
+object: /security-context-demo /v1, Kind=Pod",
+ "targetType": "yaml",
+ },
+ {
+ "code": "unset-memory-requirements",
+ "column": "1",
+ "file": "test_data/basic.in.yaml",
+ "issueClass": "ISSUE_CLASS_EXISTING",
+ "level": "LEVEL_HIGH",
+ "line": "1",
+ "linter": "kube-linter",
+ "message": "container "sec-ctx-demo" has memory limit 0
+object: /security-context-demo /v1, Kind=Pod",
+ "targetType": "yaml",
+ },
+ ],
+ "lintActions": [
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "kube-linter",
+ "paths": [
+ "test_data/basic.in.yaml",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "lint",
+ "fileGroupName": "yaml",
+ "linter": "kube-linter",
+ "paths": [
+ "test_data/basic.in.yaml",
+ ],
+ "upstream": true,
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/runtimes/ruby/plugin.yaml b/runtimes/ruby/plugin.yaml
index 1f738f00e..af8da07fa 100644
--- a/runtimes/ruby/plugin.yaml
+++ b/runtimes/ruby/plugin.yaml
@@ -1,15 +1,15 @@
version: 0.1
downloads:
- name: ruby-build
- version: 20241105
+ version: 20250409
downloads:
- os:
linux: linux
macos: macos
- url: https://github.com/rbenv/ruby-build/archive/refs/tags/v20241105.tar.gz
+ url: https://github.com/rbenv/ruby-build/archive/refs/tags/v20250409.tar.gz
strip_components: 1
- name: ruby-install
- version: 3.1.4
+ version: 3.4.2
downloads:
# Functionally a separate download used for Windows only. Runs OOTB and does not require a prepare build step.
- os: windows
@@ -44,7 +44,7 @@ runtimes:
- name: SYSTEMDRIVE
value: ${env.SYSTEMDRIVE}
optional: true
- known_good_version: 3.1.4
+ known_good_version: 3.4.2
version_commands:
- run: ruby --version
parse_regex: ruby ${semver}(p+.*)?
From 69212bf6072a26f23aa61670afbc59b6ac9aa7f3 Mon Sep 17 00:00:00 2001
From: Eli Schleifer <1265982+EliSchleifer@users.noreply.github.com>
Date: Thu, 10 Apr 2025 14:56:59 -0700
Subject: [PATCH 23/24] PHP needs more requirements to be setup on mac machines
(#1006)
1. Update testing framework to use cpanimus for better PHP testing
support on mac
2. Update definitions of supported lockfiles to include ones now handeld
by osv-scanner 2.0
3. Update osv-scanner to 2.0
4. New test snapshot for kube-linter
---
.github/actions/linter_tests/action.yaml | 5 +-
linters/osv-scanner/plugin.yaml | 8 +-
linters/osv-scanner/test_data/bun.lock | 17 +++++
.../osv_scanner_v2.0.1_CUSTOM.check.shot | 74 +++++++++++++++++++
linters/plugin.yaml | 9 +++
5 files changed, 107 insertions(+), 6 deletions(-)
create mode 100644 linters/osv-scanner/test_data/bun.lock
create mode 100644 linters/osv-scanner/test_data/osv_scanner_v2.0.1_CUSTOM.check.shot
diff --git a/.github/actions/linter_tests/action.yaml b/.github/actions/linter_tests/action.yaml
index 40850c627..503dd9db0 100644
--- a/.github/actions/linter_tests/action.yaml
+++ b/.github/actions/linter_tests/action.yaml
@@ -73,8 +73,9 @@ runs:
sudo apt install -y php8.2-fpm php8.2-xml php8.2-mbstring php8.2-curl
;;
macOS)
- brew install cpm
- cpm install -g --no-test --color Perl::Critic Perl::Tidy
+ brew install powershell/tap/powershell
+ brew install cpanminus
+ cpanm YAML::PP Class::Tiny Perl::Critic
brew unlink perl && brew link perl
brew install php gnupg
;;
diff --git a/linters/osv-scanner/plugin.yaml b/linters/osv-scanner/plugin.yaml
index 66847e8f6..a4d646689 100644
--- a/linters/osv-scanner/plugin.yaml
+++ b/linters/osv-scanner/plugin.yaml
@@ -1,7 +1,7 @@
version: 0.1
downloads:
- name: osv-scanner
- version: 1.3.6
+ version: 2.0.1
executable: true
downloads:
- os:
@@ -35,14 +35,14 @@ tools:
- name: osv-scanner
download: osv-scanner
shims: [osv-scanner]
- known_good_version: 1.3.6
+ known_good_version: 2.0.1
lint:
definitions:
- name: osv-scanner
files: [lockfile]
tools: [osv-scanner]
- known_good_version: 1.3.6
- description: Checks for known vulnerabilities in your dependencies
+ known_good_version: 2.0.1
+ description: Checks for known vulnerabilities in your dependencies.
commands:
- name: scan
output: sarif
diff --git a/linters/osv-scanner/test_data/bun.lock b/linters/osv-scanner/test_data/bun.lock
new file mode 100644
index 000000000..369edc44a
--- /dev/null
+++ b/linters/osv-scanner/test_data/bun.lock
@@ -0,0 +1,17 @@
+{
+ "version": 2,
+ "dependencies": {
+ "chalk@5.2.0": {
+ "integrity": "sha512-abc123...",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz"
+ },
+ "react@18.2.0": {
+ "integrity": "sha512-def456...",
+ "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz"
+ },
+ "react-dom@18.2.0": {
+ "integrity": "sha512-ghi789...",
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz"
+ }
+ }
+}
diff --git a/linters/osv-scanner/test_data/osv_scanner_v2.0.1_CUSTOM.check.shot b/linters/osv-scanner/test_data/osv_scanner_v2.0.1_CUSTOM.check.shot
new file mode 100644
index 000000000..da5a08abb
--- /dev/null
+++ b/linters/osv-scanner/test_data/osv_scanner_v2.0.1_CUSTOM.check.shot
@@ -0,0 +1,74 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Testing linter osv-scanner test CUSTOM 1`] = `
+{
+ "issues": [],
+ "lintActions": [
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/Cargo.lock",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/Gemfile.lock",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/bun.lock",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/composer.lock",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/go.mod",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/requirements.txt",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ {
+ "command": "scan",
+ "fileGroupName": "lockfile",
+ "linter": "osv-scanner",
+ "paths": [
+ "test_data/yarn.lock",
+ ],
+ "verb": "TRUNK_VERB_CHECK",
+ },
+ ],
+ "taskFailures": [],
+ "unformattedFiles": [],
+}
+`;
diff --git a/linters/plugin.yaml b/linters/plugin.yaml
index e6fa05042..4b00387cd 100644
--- a/linters/plugin.yaml
+++ b/linters/plugin.yaml
@@ -378,6 +378,10 @@ lint:
# Conan (C++)
- conan.lock
+ # csharp
+ - deps.json
+ - packages.config
+
# Golang
- go.mod
- go.sum
@@ -386,6 +390,10 @@ lint:
- buildscript-gradle.lockfile
- gradle.lockfile
+ # Haskell
+ - cabal.project.freeze
+ - stack.yaml.lock
+
# Maven
- pom.xml
@@ -396,6 +404,7 @@ lint:
- package-lock.json
- pnpm-lock.yaml
- yarn.lock
+ - bun.lock
# NuGet (.NET)
- packages.lock.json
From fc956db6df10a68ef8ea0558bcc0e6df08116311 Mon Sep 17 00:00:00 2001
From: Eli Schleifer <1265982+EliSchleifer@users.noreply.github.com>
Date: Thu, 10 Apr 2025 22:50:48 -0700
Subject: [PATCH 24/24] Eli/fix golang (#1007)
Co-authored-by: Tyler Jang
---
linters/golangci-lint/golangci_lint.test.ts | 12 ++++++++++--
linters/golangci-lint/plugin.yaml | 2 +-
linters/osv-scanner/plugin.yaml | 2 +-
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/linters/golangci-lint/golangci_lint.test.ts b/linters/golangci-lint/golangci_lint.test.ts
index 43fadf223..d0d4e7e69 100644
--- a/linters/golangci-lint/golangci_lint.test.ts
+++ b/linters/golangci-lint/golangci_lint.test.ts
@@ -16,9 +16,17 @@ const testGenerator = ({
skipTestIf?: (version?: string) => boolean;
}) => {
const skipTest = (v1: boolean) => (version?: string) => {
- if (v1 && semver.gte(version ?? "", "2.0.0")) {
+ if (v1 && version === "Latest") {
return true;
- } else if (!v1 && semver.lt(version ?? "", "2.0.0")) {
+ }
+
+ const parsedVersion = semver.parse(version);
+ if (!parsedVersion) {
+ return false;
+ }
+ if (v1 && parsedVersion.major >= 2) {
+ return true;
+ } else if (!v1 && parsedVersion.major < 2) {
return true;
}
diff --git a/linters/golangci-lint/plugin.yaml b/linters/golangci-lint/plugin.yaml
index 361bf75f1..b47df3812 100644
--- a/linters/golangci-lint/plugin.yaml
+++ b/linters/golangci-lint/plugin.yaml
@@ -119,7 +119,7 @@ lint:
- go.mod
- go.sum
issue_url_format: https://golangci-lint.run/usage/linters/
- known_good_version: 1.49.0
+ known_good_version: 2.0.0
version_command:
parse_regex: ${semver}
run: golangci-lint --version
diff --git a/linters/osv-scanner/plugin.yaml b/linters/osv-scanner/plugin.yaml
index a4d646689..5624aecfe 100644
--- a/linters/osv-scanner/plugin.yaml
+++ b/linters/osv-scanner/plugin.yaml
@@ -42,7 +42,7 @@ lint:
files: [lockfile]
tools: [osv-scanner]
known_good_version: 2.0.1
- description: Checks for known vulnerabilities in your dependencies.
+ description: Checks for known vulnerabilities in your dependencies
commands:
- name: scan
output: sarif