Skip to content

chore(deps)(deps): bump eslint from 9.39.4 to 10.0.3#271

Closed
dependabot[bot] wants to merge 2 commits intomainfrom
dependabot/npm_and_yarn/eslint-10.0.3
Closed

chore(deps)(deps): bump eslint from 9.39.4 to 10.0.3#271
dependabot[bot] wants to merge 2 commits intomainfrom
dependabot/npm_and_yarn/eslint-10.0.3

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 20, 2026

Bumps eslint from 9.39.4 to 10.0.3.

Release notes

Sourced from eslint's releases.

v10.0.3

Bug Fixes

  • e511b58 fix: update eslint (#20595) (renovate[bot])
  • f4c9cf9 fix: include variable name in no-useless-assignment message (#20581) (sethamus)
  • ee9ff31 fix: update dependency minimatch to ^10.2.4 (#20562) (Milos Djermanovic)

Documentation

  • 9fc31b0 docs: Update README (GitHub Actions Bot)
  • 4efaa36 docs: add info box for eslint-plugin-eslint-comments (#20570) (DesselBane)
  • 23b2759 docs: add v10 migration guide link to Use docs index (#20577) (Pixel998)
  • 80259a9 docs: Remove deprecated eslintrc documentation files (#20472) (Copilot)
  • 9b9b4ba docs: fix typo in no-await-in-loop documentation (#20575) (Pixel998)
  • e7d72a7 docs: document TypeScript 5.3 minimum supported version (#20547) (sethamus)

Chores

  • ef8fb92 chore: package.json update for eslint-config-eslint release (Jenkins)
  • e8f2104 chore: updates for v9.39.4 release (Jenkins)
  • 5cd1604 refactor: simplify isCombiningCharacter helper (#20524) (Huáng Jùnliàng)
  • 70ff1d0 chore: eslint-config-eslint require Node ^20.19.0 || ^22.13.0 || >=24 (#20586) (Milos Djermanovic)
  • e32df71 chore: update eslint-plugin-eslint-comments, remove legacy-peer-deps (#20576) (Milos Djermanovic)
  • 53ca6ee chore: disable eslint-comments/no-unused-disable rule (#20578) (Milos Djermanovic)
  • e121895 ci: pin Node.js 25.6.1 (#20559) (Milos Djermanovic)
  • efc5aef chore: update tsconfig.json in eslint-config-eslint (#20551) (Francesco Trotta)

v10.0.2

Bug Fixes

  • 2b72361 fix: update ajv to 6.14.0 to address security vulnerabilities (#20537) (루밀LuMir)

Documentation

  • 13eeedb docs: link rule type explanation to CLI option --fix-type (#20548) (Mike McCready)
  • 98cbf6b docs: update migration guide per Program range change (#20534) (Huáng Jùnliàng)
  • 61a2405 docs: add missing semicolon in vars-on-top rule example (#20533) (Abilash)

Chores

  • 951223b chore: update dependency @​eslint/eslintrc to ^3.3.4 (#20553) (renovate[bot])
  • 6aa1afe chore: update dependency eslint-plugin-jsdoc to ^62.7.0 (#20536) (Milos Djermanovic)

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

... (truncated)

Commits
  • bfce7ea 10.0.3
  • d44ced8 Build: changelog update for 10.0.3
  • e511b58 fix: update eslint (#20595)
  • ef8fb92 chore: package.json update for eslint-config-eslint release
  • e8f2104 chore: updates for v9.39.4 release
  • 5cd1604 refactor: simplify isCombiningCharacter helper (#20524)
  • 9fc31b0 docs: Update README
  • 70ff1d0 chore: eslint-config-eslint require Node ^20.19.0 || ^22.13.0 || >=24 (#20586)
  • f4c9cf9 fix: include variable name in no-useless-assignment message (#20581)
  • 4efaa36 docs: add info box for eslint-plugin-eslint-comments (#20570)
  • Additional commits viewable in compare view

Dependabot compatibility score

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 this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [eslint](https://github.com/eslint/eslint) from 9.39.4 to 10.0.3.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.4...v10.0.3)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Dependency updates npm NPM package configuration security Security-related changes or concerns labels Mar 20, 2026
@dependabot dependabot bot requested a review from a team as a code owner March 20, 2026 00:50
@dependabot dependabot bot added dependencies Dependency updates security Security-related changes or concerns npm NPM package configuration labels Mar 20, 2026
katriendg added a commit that referenced this pull request Mar 25, 2026
…, and cspell v9 (#297)

This PR batches all open dependabot PRs (#271#294) into a
conflict-aware, risk-prioritized merge sequence. The changes span four
ecosystems and three NPM scopes (root, *docs/_server*,
*docs/assets/js*), upgrading multiple major versions while maintaining
full lint and test compatibility.

> Merges all 16 open dependabot PRs into a single integration branch,
covering dependency updates across NPM, Python, Rust, and GitHub
Actions. Manual fix commits addressed breaking changes from eslint v10,
vitest v4, and post-merge regressions from dependency resolution
conflicts. Dependabot PRs will be closed when this one merges in.

### ESLint v10 Migration

Upgraded **eslint** from v9 to v10.0.3 across all three NPM scopes.
ESLint v10 decoupled `@eslint/js` from its bundle, requiring it as an
explicit devDependency in the root *package.json*. The existing flat
config (`eslint.config.js`) required no structural changes. ESLint v10
dropped ~10 transitive dependencies including `chalk`, `lodash.merge`,
`globals`, and `@eslint/eslintrc`, resulting in a leaner dependency
tree. Minimum Node.js raised to `^20.19.0 || ^22.13.0 || >=24`.

### Vitest v4 and Vite 8

Upgraded **vitest** to 4.1.0 and **@vitest/coverage-v8** to 4.1.0 in
both *docs/_server* and *docs/assets/js*. Vite 8 replaced Rollup with
**Rolldown** (Rust-based bundler) and promoted **LightningCSS** as a
direct dependency. Adapted *docs/assets/js/vitest.config.js* for three
vitest v4 breaking changes: reporter `'basic'` renamed to `'default'`,
`poolOptions.threads` flattened to top-level `maxThreads`/`minThreads`,
and `experimentalVmThreads` removed. Migrated
*docs/_server/vitest.config.js* and
*docs/_server/vitest.integration.config.js* from deprecated
`poolOptions.forks` to top-level `maxWorkers`.

### cspell v9

Upgraded **cspell** from v8.19.4 to v9.7.0 in root scope. All
sub-packages moved in lockstep. Adds TOML config support via `smol-toml`
and introduces `@cspell/cspell-worker` for improved performance. Minimum
Node raised to 20.

### Python Dependency Updates

Updated root *requirements.txt*: **python-hcl2** 4.3.0→7.3.1,
**checkov** 3.2.0→3.2.510. Updated
*src/500-application/506-ros2-connector/services/requirements.txt* with
7 package bumps including **opencv-python** 4.10→4.13, **psutil** 6→7.2,
**pytest** 8→9, and **pytest-cov** 5→7.

### Rust Security Patches

Applied **rustls-webpki** 0.103.7→0.103.10 (TLS certificate verification
fix) in *502-rust-http-connector* and **tar** 0.4.44→0.4.45 (security
fix) in *507-ai-inference*.

### Post-merge Fixes

Resolved several regressions surfaced during post-merge validation:

- Removed erroneous `"overrides": { "js-yaml": "^4.1.0" }` from
*docs/_server/package.json* that forced `js-yaml@4` on `gray-matter`
(which requires `^3.13.1`), breaking YAML frontmatter parsing and
disabling path-to-kata expansion entirely.
- Added **uuid** as a direct dependency in *docs/_server/package.json* —
previously resolved as a transitive dependency but lost after lock file
regeneration.
- Added a third regex pattern to `parseStepsFromMarkdown` in
*docs/_server/services/learning-path-manifest.js* to match the
bold-title format (`- [ ] [**Kata: ...**](../katas/...)`) used in
learning path markdown files.
- Fixed flaky CPU performance test in
*docs/_server/tests/performance/file-watch.test.js* by widening the
comparison tolerance from 1.2x to 2x to account for container
environment measurement variability.
- Corrected 9 boundary assertions in
*docs/_server/tests/integration/learning-path-selections.test.js* from
`toBeGreaterThan` to `toBeGreaterThanOrEqual` for `selectionCount` and
`selectedItems.length` checks.
- Updated *docs/_server/tests/integration/progress-endpoint.test.js* to
match the current API response format (`{ progressData: [...] }`)
instead of the legacy `{ katas: [], paths: [] }` structure.

### Other Updates

- Bumped **markdownlint-cli** 0.47.0→0.48.0 (root)
- Bumped **happy-dom** to 20.8.4 (docs/_server and docs/assets/js)
- Upgraded **ajv-formats** v2→v3.0.1 in *docs/_server* (now enforces
timezone in `date-time` format)
- Upgraded **express-rate-limit** v6→v8.3.1 in *docs/_server*
- Updated **azure/login** action hash in *cluster-test-terraform.yml*

## Related Issue

Related to #271, #272, #273, #274, #275, #276, #277, #278, #279, #280,
#282, #284, #285, #286, #293, #294

## Type of Change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] Blueprint modification or addition
- [ ] Component modification or addition
- [ ] Documentation update
- [x] CI/CD pipeline change
- [ ] Other (please describe):

## Implementation Details

Merged all 16 dependabot PRs in a risk-prioritized sequence using an
integration branch based on `origin/main`. Security patches (Rust) and
isolated changes merged first, followed by scope-grouped NPM updates
with sequential merging within shared lock file scopes to avoid
corruption. Lock file conflicts resolved using delete-and-reinstall
strategy.

Three manual fix commits addressed eslint v10 and vitest v4 breaking
changes:

- **`994f3a39`** — Added `@eslint/js` as explicit devDependency for
eslint v10 (root scope)
- **`cec1db67`** — Adapted vitest v4 config breaking changes in
*docs/assets/js/vitest.config.js*
- **`845089f9`** — Migrated deprecated `poolOptions.forks` to top-level
`maxWorkers` in *docs/_server/vitest.config.js* and
*docs/_server/vitest.integration.config.js*

Additional post-merge fixes resolved regressions from dependency
resolution conflicts:

- Removed `js-yaml` v4 override from *docs/_server/package.json* that
broke `gray-matter` frontmatter parsing
- Added missing `uuid` direct dependency in *docs/_server/package.json*
- Extended `parseStepsFromMarkdown` in
*docs/_server/services/learning-path-manifest.js* with a bold-title
regex pattern for learning path kata references
- Fixed flaky CPU comparison in
*docs/_server/tests/performance/file-watch.test.js*
- Corrected boundary assertions in
*docs/_server/tests/integration/learning-path-selections.test.js*
- Updated response format expectations in
*docs/_server/tests/integration/progress-endpoint.test.js*

## Testing Performed

- [ ] Terraform plan/apply
- [ ] Blueprint deployment test
- [x] Unit tests
- [x] Integration tests
- [ ] Bug fix includes regression test (see [Test
Policy](docs/contributing/testing-validation.md))
- [x] Manual validation
- [ ] Other:

## Validation Steps

1. Verify `npm install && npm run lint` passes at root
2. Verify `cd docs/_server && npm install && npm run lint && npm test`
passes (42 test files, 554 tests passed)
3. Verify `cd docs/assets/js && npm install && npm run lint && npm test`
passes
4. Verify `npm run mdlint` passes at root
5. Verify `npm run cspell` passes at root
6. Verify `pip install -r requirements.txt` succeeds

## Checklist

- [ ] I have updated the documentation accordingly
- [ ] I have added tests to cover my changes
- [x] All new and existing tests passed
- [ ] I have run `terraform fmt` on all Terraform code
- [ ] I have run `terraform validate` on all Terraform code
- [ ] I have run `az bicep format` on all Bicep code
- [ ] I have run `az bicep build` to validate all Bicep code
- [x] I have checked for any sensitive data/tokens that should not be
committed
- [ ] I have run MegaLinter on my code (`mega-linter-runner`)

## Additional Notes

- Node.js minimum version raised to 20+ across eslint v10 and cspell v9.
The dev container runs Node v24.14.0, satisfying all requirements.
- The **ajv-formats** v3 upgrade enforces timezone in `date-time` format
validation. Existing docs/_server tests pass with this change.
- The `js-yaml` v4 override was introduced during the eslint v10 merge
but broke `gray-matter@4.0.3` (requires `js-yaml@^3.13.1`), silently
disabling all YAML frontmatter parsing in the learning path manifest
service.
- The `uuid` package was previously available as a transitive dependency
but was dropped after lock file regeneration, requiring explicit
declaration.
- ~95% of the diff is lock file churn, typical for a dependabot
consolidation PR. Actual manifest and source changes are minimal.

## Screenshots (if applicable)

N/A — dependency updates only, no UI changes.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcel Bindseil <marcbind@microsoft.com>
@katriendg katriendg closed this Mar 25, 2026
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 25, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/npm_and_yarn/eslint-10.0.3 branch March 25, 2026 08:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates npm NPM package configuration security Security-related changes or concerns

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants