Skip to content

build(deps-dev): bump the dev-dependencies group across 1 directory with 10 updates - #763

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/dev-dependencies-6b7c805e91
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/dev-dependencies-6b7c805e91

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Bumps the dev-dependencies group with 10 updates in the / directory:

Package From To
@eslint/js 9.39.5 10.0.1
@types/node 26.6.2 26.6.4
@types/yargs 17.0.33 17.0.35
@typescript-eslint/eslint-plugin 8.70.1 8.71.1
@typescript-eslint/parser 8.70.1 8.71.1
dotenv 18.0.3 18.0.6
eslint 9.39.5 10.12.0
nock 14.0.17 15.0.1
ts-jest 29.4.12 29.4.14
typescript 6.0.3 7.0.2

Updates @eslint/js from 9.39.5 to 10.0.1

Release notes

Sourced from @​eslint/js's releases.

v10.0.1

Bug Fixes

  • c87d5bd fix: update eslint (#20531) (renovate[bot])
  • d841001 fix: update minimatch to 10.2.1 to address security vulnerabilities (#20519) (루밀LuMir)
  • 04c2147 fix: update error message for unused suppressions (#20496) (fnx)
  • 38b089c fix: update dependency @​eslint/config-array to ^0.23.1 (#20484) (renovate[bot])

Documentation

  • 5b3dbce docs: add AI acknowledgement section to templates (#20431) (루밀LuMir)
  • 6f23076 docs: toggle nav in no-JS mode (#20476) (Tanuj Kanti)
  • b69cfb3 docs: Update README (GitHub Actions Bot)

Chores

  • e5c281f chore: updates for v9.39.3 release (Jenkins)
  • 8c3832a chore: update @​typescript-eslint/parser to ^8.56.0 (#20514) (Milos Djermanovic)
  • 8330d23 test: add tests for config-api (#20493) (Milos Djermanovic)
  • 37d6e91 chore: remove eslint v10 prereleases from eslint-config-eslint deps (#20494) (Milos Djermanovic)
  • da7cd0e refactor: cleanup error message templates (#20479) (Francesco Trotta)
  • 84fb885 chore: package.json update for @​eslint/js release (Jenkins)
  • 1f66734 chore: add eslint to peerDependencies of @eslint/js (#20467) (Milos Djermanovic)

v10.0.0

Breaking Changes

  • f9e54f4 feat!: estimate rule-tester failure location (#20420) (ST-DDT)
  • a176319 feat!: replace chalk with styleText and add color to ResultsMeta (#20227) (루밀LuMir)
  • c7046e6 feat!: enable JSX reference tracking (#20152) (Pixel998)
  • fa31a60 feat!: add name to configs (#20015) (Kirk Waiblinger)
  • 3383e7e fix!: remove deprecated SourceCode methods (#20137) (Pixel998)
  • 501abd0 feat!: update dependency minimatch to v10 (#20246) (renovate[bot])
  • ca4d3b4 fix!: stricter rule tester assertions for valid test cases (#20125) (唯然)
  • 96512a6 fix!: Remove deprecated rule context methods (#20086) (Nicholas C. Zakas)
  • c69fdac feat!: remove eslintrc support (#20037) (Francesco Trotta)
  • 208b5cc feat!: Use ScopeManager#addGlobals() (#20132) (Milos Djermanovic)
  • a2ee188 fix!: add uniqueItems: true in no-invalid-regexp option (#20155) (Tanuj Kanti)
  • a89059d feat!: Program range span entire source text (#20133) (Pixel998)
  • 39a6424 fix!: assert 'text' is a string across all RuleFixer methods (#20082) (Pixel998)
  • f28fbf8 fix!: Deprecate "always" and "as-needed" options of the radix rule (#20223) (Milos Djermanovic)
  • aa3fb2b fix!: tighten func-names schema (#20119) (Pixel998)
  • f6c0ed0 feat!: report eslint-env comments as errors (#20128) (Francesco Trotta)
  • 4bf739f fix!: remove deprecated LintMessage#nodeType and TestCaseError#type (#20096) (Pixel998)
  • 523c076 feat!: drop support for jiti < 2.2.0 (#20016) (michael faith)
  • 454a292 feat!: update eslint:recommended configuration (#20210) (Pixel998)
  • 4f880ee feat!: remove v10_* and inactive unstable_* flags (#20225) (sethamus)
  • f18115c feat!: no-shadow-restricted-names report globalThis by default (#20027) (sethamus)
  • c6358c3 feat!: Require Node.js ^20.19.0 || ^22.13.0 || >=24 (#20160) (Milos Djermanovic)

Features

  • bff9091 feat: handle Array.fromAsync in array-callback-return (#20457) (Francesco Trotta)
  • 290c594 feat: add self to no-implied-eval rule (#20468) (sethamus)
  • 43677de feat: fix handling of function and class expression names in no-shadow (#20432) (Milos Djermanovic)

... (truncated)

Commits
  • 84fb885 chore: package.json update for @​eslint/js release
  • 1f66734 chore: add eslint to peerDependencies of @eslint/js (#20467)
  • f3fbc2f chore: set @eslint/js version to 10.0.0 to skip releasing it (#20466)
  • b4b3127 chore: package.json update for @​eslint/js release
  • 0b14059 chore: package.json update for @​eslint/js release
  • fa31a60 feat!: add name to configs (#20015)
  • 1e2cad5 chore: package.json update for @​eslint/js release
  • 454a292 feat!: update eslint:recommended configuration (#20210)
  • c6358c3 feat!: Require Node.js ^20.19.0 || ^22.13.0 || >=24 (#20160)
  • See full diff in compare view

Updates @types/node from 26.6.2 to 26.6.4

Commits

Updates @types/yargs from 17.0.33 to 17.0.35

Commits

Updates @typescript-eslint/eslint-plugin from 8.70.1 to 8.71.1

Release notes

Sourced from @​typescript-eslint/eslint-plugin's releases.

v8.71.1

8.71.1 (2026-10-05)

🩹 Fixes

  • eslint-plugin: [no-misused-promises] skip argument checks for calls without arguments (#12923)
  • eslint-plugin: [no-unused-vars] report usedOnlyAsType for partially exported merged declarations (#12892)
  • eslint-plugin: [require-array-sort-compare] use array argument type constraint (#12919)
  • eslint-plugin: [no-unsafe-enum-assignment] skip identical types and bound deep type walks (#12957)
  • eslint-plugin: [no-confusing-void-expression] don't autofix when declared return type is unknown (#12930)
  • eslint-plugin: [prefer-optional-chain] check the constrained type (#12953)
  • eslint-plugin: [no-unnecessary-type-parameters] count instantiated mapped type constraints (#12941)
  • project-service: throttle cleanup when opening files (#12934)
  • type-utils: match re-exports and global declarations in TypeOrValueSpecifier (#12943)

❤️ Thank You

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

v8.71.0

8.71.0 (2026-09-28)

🚀 Features

  • eslint-plugin: [no-unsafe-enum-assignment] add rule (#12732)

🩹 Fixes

  • eslint-plugin: [switch-exhaustiveness-check] always sort literal cases in stable order (#12885)
  • eslint-plugin: [unbound-method] respect this: void on class properties (7fce9127d)
  • eslint-plugin: [no-unnecessary-type-assertion] specialize generic assertion report message (#12832)
  • eslint-plugin: [no-misused-promises] handle a return outside of any function (#12912)

❤️ Thank You

See GitHub Releases for more information.

... (truncated)

Changelog

Sourced from @​typescript-eslint/eslint-plugin's changelog.

8.71.1 (2026-10-05)

🩹 Fixes

  • eslint-plugin: [no-unnecessary-type-parameters] count instantiated mapped type constraints (#12941)
  • eslint-plugin: [prefer-optional-chain] check the constrained type (#12953)
  • eslint-plugin: [no-confusing-void-expression] don't autofix when declared return type is unknown (#12930)
  • eslint-plugin: [no-unsafe-enum-assignment] skip identical types and bound deep type walks (#12957)
  • eslint-plugin: [require-array-sort-compare] use array argument type constraint (#12919)
  • eslint-plugin: [no-unused-vars] report usedOnlyAsType for partially exported merged declarations (#12892)
  • eslint-plugin: [no-misused-promises] skip argument checks for calls without arguments (#12923)

❤️ Thank You

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

8.71.0 (2026-09-28)

🚀 Features

  • eslint-plugin: [no-unsafe-enum-assignment] add rule (#12732)

🩹 Fixes

  • eslint-plugin: [no-misused-promises] handle a return outside of any function (#12912)
  • eslint-plugin: [no-unnecessary-type-assertion] specialize generic assertion report message (#12832)
  • eslint-plugin: [unbound-method] respect this: void on class properties (7fce9127d)
  • eslint-plugin: [switch-exhaustiveness-check] always sort literal cases in stable order (#12885)

❤️ Thank You

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

Commits
  • d57b8da chore(release): publish 8.71.1
  • e8593b2 fix(eslint-plugin): [no-unnecessary-type-parameters] count instantiated mappe...
  • 2211d3f fix(eslint-plugin): [prefer-optional-chain] check the constrained type (#12953)
  • ba9c0f1 fix(eslint-plugin): [no-confusing-void-expression] don't autofix when declare...
  • 466d739 fix(eslint-plugin): [no-unsafe-enum-assignment] skip identical types and boun...
  • e8c170f fix(eslint-plugin): [require-array-sort-compare] use array argument type cons...
  • effa652 fix(eslint-plugin): [no-unused-vars] report usedOnlyAsType for partially expo...
  • 9fbab43 fix(eslint-plugin): [no-misused-promises] skip argument checks for calls with...
  • 3ab28b1 chore(eslint-plugin): re-enable plugin-test-formatting in all tests (#12950)
  • 8695664 chore(release): publish 8.71.0
  • Additional commits viewable in compare view

Updates @typescript-eslint/parser from 8.70.1 to 8.71.1

Release notes

Sourced from @​typescript-eslint/parser's releases.

v8.71.1

8.71.1 (2026-10-05)

🩹 Fixes

  • eslint-plugin: [no-misused-promises] skip argument checks for calls without arguments (#12923)
  • eslint-plugin: [no-unused-vars] report usedOnlyAsType for partially exported merged declarations (#12892)
  • eslint-plugin: [require-array-sort-compare] use array argument type constraint (#12919)
  • eslint-plugin: [no-unsafe-enum-assignment] skip identical types and bound deep type walks (#12957)
  • eslint-plugin: [no-confusing-void-expression] don't autofix when declared return type is unknown (#12930)
  • eslint-plugin: [prefer-optional-chain] check the constrained type (#12953)
  • eslint-plugin: [no-unnecessary-type-parameters] count instantiated mapped type constraints (#12941)
  • project-service: throttle cleanup when opening files (#12934)
  • type-utils: match re-exports and global declarations in TypeOrValueSpecifier (#12943)

❤️ Thank You

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

v8.71.0

8.71.0 (2026-09-28)

🚀 Features

  • eslint-plugin: [no-unsafe-enum-assignment] add rule (#12732)

🩹 Fixes

  • eslint-plugin: [switch-exhaustiveness-check] always sort literal cases in stable order (#12885)
  • eslint-plugin: [unbound-method] respect this: void on class properties (7fce9127d)
  • eslint-plugin: [no-unnecessary-type-assertion] specialize generic assertion report message (#12832)
  • eslint-plugin: [no-misused-promises] handle a return outside of any function (#12912)

❤️ Thank You

See GitHub Releases for more information.

... (truncated)

Changelog

Sourced from @​typescript-eslint/parser's changelog.

8.71.1 (2026-10-05)

This was a version bump only for parser to align it with other projects, there were no code changes.

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

8.71.0 (2026-09-28)

This was a version bump only for parser to align it with other projects, there were no code changes.

See GitHub Releases for more information.

You can read about our versioning strategy and releases on our website.

Commits

Updates dotenv from 18.0.3 to 18.0.6

Changelog

Sourced from dotenv's changelog.

18.0.6 (2026-10-06)

Changed

  • Use smarter parseBoolean not Boolean() to fix override (#1069)

18.0.5 (2026-09-30)

Changed

  • Fix missing typescript module declaration (#1068)
  • Improve performance for large .env files (#1066)

18.0.4 (2026-09-25)

Changed

  • import dotenv/config should default quiet: true (#1063)
Commits

Updates eslint from 9.39.5 to 10.12.0

Release notes

Sourced from eslint's releases.

v10.12.0

Features

  • 4618052 feat: handle astral letters in new-cap (#21357) (sary)
  • 4ec5168 feat: allow SourceCode#getText() to accept tokens and comments (#21340) (electrohyun)

Bug Fixes

  • bc51eee fix: prefer-arrow-callback false positive in conditional test (#21373) (Daniel Pinto)
  • bbff86c fix: skip lines with multiple comments in max-lines-per-function (#21332) (xbinaryx)
  • efc4d6b fix: astral letters in consistent-return, no-eval, no-invalid-this (#21360) (lumir)
  • 93de066 fix: prefer-exponentiation-operator autofix for async function base (#21322) (Vladimir Babin)
  • 02e34ff fix: add missing space after else in curly autofix (#21355) (Pixel)
  • b14b8bc fix: correct id-length message for long private names (#21348) (Pixel)
  • 69aac01 fix: support TSFunctionType in getFunctionHeadLoc (#21335) (xbinaryx)
  • 686630e fix: no-loss-of-precision false positive with 0.e5 (#21337) (sethamus)

Documentation

  • 67eb586 docs: Update README (GitHub Actions Bot)
  • 5370d7e docs: clarify one-var separateRequires matches any require() call (#21192) (sethamus)
  • 8816c1d docs: Update README (GitHub Actions Bot)
  • 3d2e7ce docs: fix typo in no-unused-expressions documentation (#21346) (bytedoe)

Chores

  • 152067f chore: update ecosystem plugins (#21362) (ESLint Bot)
  • b56d58e chore: update github/codeql-action action to v4.38.2 (#21376) (renovate[bot])
  • bfaea12 perf: cache normalized config globals per languageOptions (#21364) (James Ross)
  • 322209e ci: avoid Nx cache in ecosystem tests and disable failing test (#21369) (Francesco Trotta)
  • d166567 chore: update dependency prettier to v3.9.9 (#21371) (renovate[bot])
  • 29585ce chore: update dependency eslint-plugin-expect-type to ^0.7.0 (#21359) (renovate[bot])
  • 39d79ba chore: update github/codeql-action action to v4.38.1 (#21354) (renovate[bot])
  • 182a6e9 chore: update dependency prettier to v3.9.8 (#21352) (renovate[bot])
  • f995127 chore: remove CLAUDE.md in favor of AGENTS.md (#21339) (Jarren)
  • b95fb6c chore: update dependency prettier to v3.9.7 (#21347) (renovate[bot])
  • 3782dd4 chore: update ecosystem plugins (#21342) (ESLint Bot)

v10.11.0

Features

  • d136fa4 feat: object-shorthand handle quoted properties for ignoreConstructors (#21271) (Pavel)
  • 397b3b8 feat: report unsafe labeled continue in no-unsafe-finally rule (#21316) (electrohyun)
  • d3dd47f feat: only exempt new-cap built-ins that reference the global (#21290) (sethamus)

Bug Fixes

  • 22b09f5 fix: ignore __proto__ properties in prefer-object-spread (#21311) (xbinaryx)
  • b684bb1 fix: make TimePass.parse optional in types and docs (#21313) (ntnyq)
  • 26d11bc fix: don't report __proto__ properties in object-shorthand (#21310) (xbinaryx)

Documentation

  • 9ecfdc5 docs: note that --cache can serve stale results for cross-file rules (#21312) (bytedoe)
  • 6c789ff docs: Update README (GitHub Actions Bot)
  • 5997825 docs: clarify preserve-caught-error known limitation (#21294) (Akinyemi Toluwalase)

... (truncated)

Commits
  • a438ec3 10.12.0
  • 32a73f1 Build: changelog update for 10.12.0
  • bc51eee fix: prefer-arrow-callback false positive in conditional test (#21373)
  • bbff86c fix: skip lines with multiple comments in max-lines-per-function (#21332)
  • 152067f chore: update ecosystem plugins (#21362)
  • b56d58e chore: update github/codeql-action action to v4.38.2 (#21376)
  • 67eb586 docs: Update README
  • bfaea12 perf: cache normalized config globals per languageOptions (#21364)
  • 322209e ci: avoid Nx cache in ecosystem tests and disable failing test (#21369)
  • d166567 chore: update dependency prettier to v3.9.9 (#21371)
  • Additional commits viewable in compare view

Updates nock from 14.0.17 to 15.0.1

Release notes

Sourced from nock's releases.

v15.0.1

15.0.1 (2026-10-06)

Bug Fixes

v15.0.0

Released by accident, please use continue using v14 or v15@beta

v15.0.0-beta.16

15.0.0-beta.16 (2026-10-05)

Bug Fixes

  • remove interceptor from scope.interceptors on nock.removeInterceptor (#2997) (1ee467c)

v15.0.0-beta.15

15.0.0-beta.15 (2026-09-21)

... (truncated)

Commits

Updates ts-jest from 29.4.12 to 29.4.14

Release notes

Sourced from ts-jest's releases.

v29.4.14

Please refer to CHANGELOG.md for details.

v29.4.13

Please refer to CHANGELOG.md for details.

Changelog

Sourced from ts-jest's changelog.

29.4.14 (2026-09-25)

Reverts

29.4.13 (2026-09-22)

Features

Performance Improvements

Commits
  • 2d152f6 chore(release): 29.4.14
  • 01e5a2e revert: bring back prior changes of compiler util (#5471)
  • 8e35da6 build(deps): update dependency typescript-eslint to ^8.70.1
  • 76ec454 build(deps): bump image-size from 2.0.2 to 2.0.4 in /website
  • a0c364f chore(release): 29.4.13
  • 697d337 perf(compiler): cache module resolution modes (#5419)
  • c3a0b57 feat: support Babel 8 (#5466)
  • 5fb44c4 build(deps): update dependency jest-environment-jsdom to ^30.5.2
  • 257a524 build(deps): update dependency jest to v30.5.2
  • 89ba4d9 build(deps): update dependency babel-jest to ^30.5.2
  • Additional commits viewable in compare view

Updates typescript from 6.0.3 to 7.0.2

Release notes

Sourced from typescript's releases.

TypeScript 7.0.2

https://devblogs.microsoft.com/typescript/announcing-typescript-7-0/

This tag was originally released at: https://github.com/microsoft/typescript-go/releases/tag/typescript%2Fv7.0.2

Commits
  • 1e4744d Merge branch 'main' into ts7-release
  • a5a219cmicrosoft/typescript-go#4558
  • ecfe30d Update status localization
  • 5de25b5 Hide executable name in TypeScript status
  • d7ce74a Show bundled TypeScript version for packaged servers
  • 29be66a Correct TS 7 release version to 7.0.2
  • ed2bd1b Merge branch 'main' into ts7-release
  • 8873075 Bump the github-actions group across 1 directory with 3 updates (microsoft/ty...
  • 9427131 Set up stable / nightly extension split, other prep (microsoft/typescript-go#...
  • d4eaca5microsoft/typescript-go#4549
  • Additional commits viewable in compare view
Maintainer changes

This version was pushed to npm by microsoft1es, a new releaser for typescript since your current version.


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 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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

…ith 10 updates

Bumps the dev-dependencies group with 10 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.5` | `10.0.1` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `26.6.2` | `26.6.4` |
| [@types/yargs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/yargs) | `17.0.33` | `17.0.35` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.70.1` | `8.71.1` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.70.1` | `8.71.1` |
| [dotenv](https://github.com/motdotla/dotenv) | `18.0.3` | `18.0.6` |
| [eslint](https://github.com/eslint/eslint) | `9.39.5` | `10.12.0` |
| [nock](https://github.com/nock/nock) | `14.0.17` | `15.0.1` |
| [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.4.12` | `29.4.14` |
| [typescript](https://github.com/microsoft/TypeScript) | `6.0.3` | `7.0.2` |



Updates `@eslint/js` from 9.39.5 to 10.0.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/commits/v10.0.1/packages/js)

Updates `@types/node` from 26.6.2 to 26.6.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@types/yargs` from 17.0.33 to 17.0.35
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/yargs)

Updates `@typescript-eslint/eslint-plugin` from 8.70.1 to 8.71.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.71.1/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.70.1 to 8.71.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.71.1/packages/parser)

Updates `dotenv` from 18.0.3 to 18.0.6
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](motdotla/dotenv@v18.0.3...v18.0.6)

Updates `eslint` from 9.39.5 to 10.12.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.5...v10.12.0)

Updates `nock` from 14.0.17 to 15.0.1
- [Release notes](https://github.com/nock/nock/releases)
- [Changelog](https://github.com/nock/nock/blob/main/CHANGELOG.md)
- [Commits](nock/nock@v14.0.17...v15.0.1)

Updates `ts-jest` from 29.4.12 to 29.4.14
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](kulshekhar/ts-jest@v29.4.12...v29.4.14)

Updates `typescript` from 6.0.3 to 7.0.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v6.0.3...v7.0.2)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-version: 10.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: "@types/node"
  dependency-version: 26.6.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@types/yargs"
  dependency-version: 17.0.35
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.71.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.71.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: dotenv
  dependency-version: 18.0.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: eslint
  dependency-version: 10.12.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: nock
  dependency-version: 15.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: ts-jest
  dependency-version: 29.4.14
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: typescript
  dependency-version: 7.0.2
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot requested a review from a team as a code owner October 11, 2026 16:03
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Oct 11, 2026
tkunst added a commit to tkunst/arbor-hills-monitor that referenced this pull request Oct 14, 2026
…ntext

A fresh-eyes review (before any PR comment, caught pre-push) found three bugs
that would have made policy 2A silently do nothing:

- Every `gh pr view`/`merge`/`edit` call had no repo context (no checkout in
  this workflow) and would have failed with "not a git repository". Fixed by
  setting `GH_REPO`/`GH_TOKEN` at job level.
- Dependabot's `update-type` metadata lives in the COMMIT MESSAGE, not the PR
  body -- confirmed against a real, live Dependabot PR
  (dependabot/fetch-metadata#763). The classify step now fetches
  `pulls/{n}/commits` and parses each commit's message instead, and requires
  every commit be authored by dependabot[bot].
- `ignore`-ing anthropic/google-api-python-client for patch+minor meant
  Dependabot would never open a PR for them at that level at all (the
  opposite of the intent: "a PR opens every time, a human reviews it").
  Replaced with `exclude-patterns` on the patch/minor group (so they still
  get individual PRs) plus an explicit forced-needs-review check in the
  classify step, keyed on dependency name from the commit message.

Also: listen to `tests`/`sast`/`secrets`/`data-guard` workflow_run completions
(not just `tests`), since whichever finishes last is the one that should
actually re-check everything and merge -- gating on `tests` alone could leave
a green PR "stuck" if a slower gate finished after it.

Verified the new classify logic against two REAL Dependabot commit messages
(dependabot/fetch-metadata#762 and #763, pulled live) plus synthetic fixtures
for the forced-review and no-metadata cases -- all five classify correctly,
including a real edge case (an indirect-dependency bump with no `update-type`
field at all) that only showed up by using real data instead of hand-written
fixtures.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd
tkunst added a commit to tkunst/arbor-hills-monitor that referenced this pull request Oct 14, 2026
…d have blocked every merge

A full end-to-end rehearsal against a real, live, open Dependabot PR
(dependabot/fetch-metadata#763) -- running this workflow's actual Resolve/
Verify/Classify `run:` scripts via a PyYAML-extracted driver, not a
hand-copied approximation -- surfaced a bug none of the earlier review
rounds caught: the Verify step used `gh pr view --json author`, which goes
through GitHub's GraphQL API and reports a bot's login as `"app/dependabot"`
-- never `"dependabot[bot]"`, the REST API's string, which the Classify
step's commit-level check already (correctly) used. Every real Dependabot
PR would have failed Verify's `login != "dependabot[bot]"` check and been
skipped, meaning this workflow would silently never merge or label ANYTHING
-- the whole point of the PR, defeated by one unverified assumption about
an API response shape. Same root-cause class as the earlier PR-body-vs-
commit-message mistake: an API's output shape assumed, not exercised,
before this rehearsal.

Fixed: Verify now uses `gh api repos/.../pulls/{n}` (REST), matching
Classify's own API family. REST's `state` field is also lowercase ("open"),
unlike GraphQL's "OPEN" -- fixed that comparison too.

Re-rehearsed the full Resolve -> Verify -> Classify chain against the same
real PR (#763) after the fix: Resolve gives number=763/skip=false, Verify
now gives skip=false (previously would have been skip=true), Classify gives
major-or-other (correct -- #763 has 4 major bumps mixed into a grouped PR).
Also spot-checked Verify against a real CLOSED PR (#761) to confirm the
state check still correctly skips a non-open PR.

pytest -q: 2616 passed (unchanged -- no app code touched). actionlint:
clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd
tkunst added a commit to tkunst/arbor-hills-monitor that referenced this pull request Oct 15, 2026
)

* build(deps): Dependabot config + self-gated auto-merge (policy 2A)

Staged 2026-10-14 handoff (devops-automation): patch/minor Dependabot bumps
merge themselves once `tests` passes; majors wait for Trisha. Deliberately
does NOT touch branch protection or `allow_auto_merge` -- three workflows
(findings-feed.yml, public-comment.yml, ridgewood-reverify.yml) push commits
straight to main with GITHUB_TOKEN, and `main`'s branch protection has
enforce_admins: true, so a required status check would make GitHub reject
those direct pushes too (GH006). Instead, dependabot-auto-merge.yml gates
and merges itself, triggered by the already-completed `tests` workflow_run
for the exact commit in question -- no repo-setting change needed.

- .github/dependabot.yml: pip (weekly, grouped patch+minor, majors separate;
  anthropic + google-api-python-client forced to major-only regardless of
  semver level, since their real SDK calls are fully monkeypatched out of
  the hermetic test suite) and github-actions (monthly, grouped).
- dependabot-label.yml: labels a major `needs-review` immediately on open,
  independent of test outcome (dependabot-auto-merge.yml only runs after
  `tests` succeeds, so it can't label a major whose tests fail).
- dependabot-auto-merge.yml: workflow_run-triggered (never pull_request or
  pull_request_target -- no PR code is ever checked out), re-verifies the
  PR's author/state/head-SHA against what was actually tested, confirms
  bandit/gitleaks/block-data-files also passed for that commit, classifies
  patch/minor vs major from Dependabot's own PR-body metadata block, then
  merges or labels.
- docs/devops-monthly-sweep.md: a staged (not scheduled) monthly checklist
  for Python/Actions EOL, branch/worktree hygiene, the Dependabot backlog,
  and Lotext package currency. No schedule created here.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* fix: review round 1 -- commit-msg metadata, exclude-patterns, repo context

A fresh-eyes review (before any PR comment, caught pre-push) found three bugs
that would have made policy 2A silently do nothing:

- Every `gh pr view`/`merge`/`edit` call had no repo context (no checkout in
  this workflow) and would have failed with "not a git repository". Fixed by
  setting `GH_REPO`/`GH_TOKEN` at job level.
- Dependabot's `update-type` metadata lives in the COMMIT MESSAGE, not the PR
  body -- confirmed against a real, live Dependabot PR
  (dependabot/fetch-metadata#763). The classify step now fetches
  `pulls/{n}/commits` and parses each commit's message instead, and requires
  every commit be authored by dependabot[bot].
- `ignore`-ing anthropic/google-api-python-client for patch+minor meant
  Dependabot would never open a PR for them at that level at all (the
  opposite of the intent: "a PR opens every time, a human reviews it").
  Replaced with `exclude-patterns` on the patch/minor group (so they still
  get individual PRs) plus an explicit forced-needs-review check in the
  classify step, keyed on dependency name from the commit message.

Also: listen to `tests`/`sast`/`secrets`/`data-guard` workflow_run completions
(not just `tests`), since whichever finishes last is the one that should
actually re-check everything and merge -- gating on `tests` alone could leave
a green PR "stuck" if a slower gate finished after it.

Verified the new classify logic against two REAL Dependabot commit messages
(dependabot/fetch-metadata#762 and #763, pulled live) plus synthetic fixtures
for the forced-review and no-metadata cases -- all five classify correctly,
including a real edge case (an indirect-dependency bump with no `update-type`
field at all) that only showed up by using real data instead of hand-written
fixtures.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* fix: review round 2 -- github-actions can never auto-merge via GITHUB_TOKEN

Second independent-review pass found one more bug that would have made every
monthly github-actions Dependabot PR fail red at the merge step: GITHUB_TOKEN
can never be granted the `workflows` permission a push to .github/workflows/
requires (confirmed against the exact "refusing to allow ... without
`workflow` scope" class of error this build's own SSH push for these very
workflow files had to route around). Every github-actions ecosystem PR edits
a file under .github/workflows/, so `gh pr merge` would always fail there
regardless of update-type.

Fixed: the classify step now checks the PR's branch name first (Dependabot's
own naming convention for this ecosystem is `dependabot/github_actions/...`,
confirmed against real PRs) and routes straight to needs-review before even
looking at commit metadata. In practice, policy 2A's auto-merge is
pip-ecosystem only; github-actions bumps always wait for Trisha.

Also:
- Softened dependabot.yml's pip-compile comment: hash-regeneration mechanics
  on a version bump are plausible (sourced from dependabot-core's issue
  tracker) but not confirmed against an official GitHub doc, unlike
  pip-compile support itself (which IS documented). The real backstop is
  unchanged either way -- `pip install --require-hashes` fails CI loudly on
  a bad/stale hash.
- Added a root .python-version pinning 3.12, matching every workflow's own
  pin -- dependabot-core#14137 documents Dependabot's pip-compile ignoring
  the Python version in the lockfile's own header without one.
- Verified the embedded python3 classify logic against the ACTUAL shipped
  YAML text this time (loaded via PyYAML, extracted the real `run:` string,
  ran that exact program), not a hand-copied test file -- confirms the
  10-space indentation added to satisfy YAML's literal-block-scalar rule is
  correctly stripped back out before Python ever sees it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* fix: review round 3 -- needs-review label doesn't auto-create

Independent diff-only review (Step 5) found: `gh pr edit --add-label
needs-review` does not auto-create a missing label (unlike Dependabot's own
`labels:` handling, which does create `dependencies`). The label didn't
exist on this repo, so the very first major-version Dependabot PR would have
failed this step (red job) and never actually gotten flagged -- silently
breaking the "majors get flagged for Trisha" path that
docs/devops-monthly-sweep.md item 4 and the morning-briefing surfacing both
depend on. Doesn't cause an unsafe merge (the classify step still correctly
withholds merge either way), but breaks discovery.

Fixed in both workflows: a preceding `gh label create needs-review --force`
step makes this idempotent (creates once, no-ops after). Needs `issues:
write` (not `pull-requests: write` -- labels are an Issues-API resource even
when applied to a PR), added to both workflows' permissions. Also created
the label directly on the repo now, so it exists immediately rather than
waiting for this workflow's first real trigger.

Also added a comment to dependabot.yml's github-actions-all group
explaining why it's safe to leave ungrouped by update-type (a major mixed
into the monthly batch is fine because the whole ecosystem already routes to
needs-review unconditionally, by branch name, before update-type is ever
read) -- closes a question the same reviewer round raised.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* fix: Step 6 low-severity hardening -- commit-trust check, pin the merge

A /security-review pass (Step 6) flagged two possible findings on
dependabot-auto-merge.yml, routed through the skill's own two-stage
false-positive filter (a parallel sub-task per finding, same protocol the
skill itself specifies):

- Commit-author spoofing: the classify step's only check was
  `author.login == "dependabot[bot]"`, which is derived purely from matching
  the commit's author EMAIL against GitHub's noreply convention -- no
  identity proof required, forgeable by anyone who can push to the branch.
  Initially scanned as High (the scanner also claimed this would bypass a
  required PR review on main; that claim was checked directly against
  `branches/main/protection` and found FALSE -- main has no
  required_pull_request_reviews at all, so there is no such review to
  bypass). The filter sub-task re-verified independently (not relying on the
  false premise) that this repo has exactly ONE collaborator, making the
  "human with push access" attacker class hypothetical today -- confidence
  3/10, filtered out per the skill's own <8 threshold. Final verdict: no
  medium/high finding, but a real low-severity gap remained (the check's own
  comment claimed more than it verified).
- A merge-pinning TOCTOU: `gh pr merge` didn't pin the commit it merges to
  the SHA verified earlier in the same job. Filtered at confidence 2/10 (the
  window is 1-2 sequential API calls within a single job run, and the
  classify step's own author check independently re-covers it) -- also no
  medium/high finding.

Both filtered below the hard-stop threshold, but Step 6 treats a low finding
as fix-now-in-the-loop by default, and both fixes are small and verified
against real Dependabot commits (dependabot/fetch-metadata PRs #730, #762,
#763):

- Classify step now requires ALL THREE of author.login ==
  "dependabot[bot]", committer.login == "web-flow" (GitHub's own web-based
  commit identity -- only GitHub's backend can produce this, unlike the
  author email), and commit.verification.verified == true. Verified all
  three hold on three independent real commits before relying on it; a miss
  only routes to needs-review, never an unsafe state.
- `gh pr merge` now passes `--match-head-commit "$TESTED_SHA"`, making the
  earlier SHA re-verification step load-bearing at the moment that matters --
  GitHub itself refuses the merge if the PR's head moved since that check.

Also: dropped the misleading "(major)" from check_dependabot_prs.sh's
needs-review bullet text and the matching SKILL.md paragraph -- that label
now also covers the two forced-review packages, every github-actions-
ecosystem bump, and unparseable PRs, not just majors.

pytest -q: 2616 passed (unchanged -- no app code touched). actionlint:
clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* fix: Verify step used GraphQL's bot-author string, not REST's -- would have blocked every merge

A full end-to-end rehearsal against a real, live, open Dependabot PR
(dependabot/fetch-metadata#763) -- running this workflow's actual Resolve/
Verify/Classify `run:` scripts via a PyYAML-extracted driver, not a
hand-copied approximation -- surfaced a bug none of the earlier review
rounds caught: the Verify step used `gh pr view --json author`, which goes
through GitHub's GraphQL API and reports a bot's login as `"app/dependabot"`
-- never `"dependabot[bot]"`, the REST API's string, which the Classify
step's commit-level check already (correctly) used. Every real Dependabot
PR would have failed Verify's `login != "dependabot[bot]"` check and been
skipped, meaning this workflow would silently never merge or label ANYTHING
-- the whole point of the PR, defeated by one unverified assumption about
an API response shape. Same root-cause class as the earlier PR-body-vs-
commit-message mistake: an API's output shape assumed, not exercised,
before this rehearsal.

Fixed: Verify now uses `gh api repos/.../pulls/{n}` (REST), matching
Classify's own API family. REST's `state` field is also lowercase ("open"),
unlike GraphQL's "OPEN" -- fixed that comparison too.

Re-rehearsed the full Resolve -> Verify -> Classify chain against the same
real PR (#763) after the fix: Resolve gives number=763/skip=false, Verify
now gives skip=false (previously would have been skip=true), Classify gives
major-or-other (correct -- #763 has 4 major bumps mixed into a grouped PR).
Also spot-checked Verify against a real CLOSED PR (#761) to confirm the
state check still correctly skips a non-open PR.

pytest -q: 2616 passed (unchanged -- no app code touched). actionlint:
clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

* build(deps): option B for anthropic/google-api-python-client (patch auto, minor waits) + 7-day pip cooldown

Trisha 2026-10-14: loosen the always-review list to option B and add a
7-day cooldown for all Python packages; github-actions bumps keep waiting
for review.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJGRkvcMqZiokCF6rN3dnd

---------

Co-authored-by: Trisha Kunst <13664006+tkunst@users.noreply.github.com>
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants