Skip to content

Bump js-yaml, eslint, eslint-plugin-import and mocha - #196

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/multi-e29b9b383c
Closed

Bump js-yaml, eslint, eslint-plugin-import and mocha#196
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/multi-e29b9b383c

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 17, 2026

Copy link
Copy Markdown

Bumps js-yaml to 4.3.1 and updates ancestor dependencies js-yaml, eslint, eslint-plugin-import and mocha. These dependencies need to be updated together.

Updates js-yaml from 3.13.1 to 4.3.1

Changelog

Sourced from js-yaml's changelog.

4.3.1 - 2026-07-31

Security

  • [backport] Remove quadratic complexity from !!omap duplicate key detection.

4.3.0 - 2026-06-27

Added

  • [backport] Added maxTotalMergeKeys (10000) loader option to limit the total number of keys processed by YAML merge (<<) across one load() / loadAll() call.

Fixed

  • Restore umd builds back to es5.

Removed

  • [backport] maxMergeSeqLength replaced with maxTotalMergeKeys for limiting YAML merge processing.

[4.2.0] - 2026-06-01

Added

  • Added docs/safety.md with notes about processing untrusted YAML.
  • Added maxDepth (100) loader option. Not a problem, but gives a better exception instead of RangeError on stack overflow.
  • Added maxMergeSeqLength (20) loader option. Not a problem after merge fix, but an additional restriction for safety.
  • Added sourcemaps to dist/ builds.

Changed

  • Stop resolving numbers with underscores as numeric scalars, #627.
  • Switched dev toolchains to Vite / neostandard.
  • Updated demo.
  • Reorganized tests.
  • dist/ files are no longer kept in the repository.

Fixed

  • Fix parsing of properties on the first implicit block mapping key, #62.
  • Fix trailing whitespace handling when folding flow scalar lines, #307.
  • Reject top-level block scalars without content indentation, #280.
  • Ensure numbers survive round-trip, #737.
  • Fix test coverage for issue #221.
  • Fix flow scalar trailing whitespace folding, #307.
  • Fix digits in YAML named tag handles.

Security

  • Fix potential DoS via quadratic complexity in merge - deduplicate repeated elements (makes sense for malformed files > 10K).

[3.14.2] - 2025-11-15

Security

... (truncated)

Commits
  • 86e91b8 4.3.1 released
  • c3cc4b0 Backport quadratic complexity fix for !!omap
  • 33d05b5 4.3.0 released
  • 663bfab Drop demo publish, to not override new v5 one.
  • 1cb8c7b Add v4-legacy tag for publish
  • 02f27af Restore umd builds back to es5
  • 8be84ed Fix es5 compatibility
  • 59423c6 Replace maxMergeSeqLength option with maxTotalMergeKeys (more robust). Ba...
  • 6842ef6 doc polish
  • 590dbab 4.2.0 released
  • Additional commits viewable in compare view

Updates eslint from 7.32.0 to 10.8.1

Release notes

Sourced from eslint's releases.

v10.8.1

Bug Fixes

  • 18eb0a7 fix: prevent ASI hazard in no-unused-labels autofix (#21173) (dongkyu lee)
  • 151ba3f fix: false positives in getter-return and accessor-pairs (#21163) (Grit)
  • 6898df9 fix: ignore meta-property names in id-denylist (#21166) (Pixel)
  • 4d7db66 fix: ignore meta-property names in id-match (#21167) (Pixel)
  • 677214e fix: handle ASI hazards in no-unused-vars removeVar suggestion (#20935) (kuldeep kumar)

Documentation

  • 7d0cbf8 docs: Update README (GitHub Actions Bot)
  • 0a05812 docs: add missing backticks to no-duplicate-imports.js (#21183) (Lee Daeun)
  • 678c90b docs: Update README (GitHub Actions Bot)
  • 8a10424 docs: Update README (GitHub Actions Bot)
  • 69bb948 docs: Update README (GitHub Actions Bot)

Chores

  • 0a14800 chore: update github/codeql-action action to v4.37.4 (#21196) (renovate[bot])
  • 05adcb1 test: fix failing ecosystem test for eslint-plugin-unicorn (#21191) (Lazizbek Ergashev)
  • 5611035 test: add error locations info to no-void (#21185) (Lee Daeun)
  • ee47333 ci: bump github/codeql-action from 4 to 4.37.3 (#21176) (dependabot[bot])
  • f131c03 chore: improve ecosystem test failure reporting (#20937) (crimsonjay0)
  • 1f6edde chore: update ecosystem plugins (#21182) (ESLint Bot)
  • d3266fb chore: unpin webpack dependency (#21172) (Francesco Trotta)
  • 65a6519 chore: add allowScripts field to package.json (#21092) (GiHoon Noh)
  • 22e5256 ci: add triage:no label to Dependabot PRs (#21141) (lumir)
  • 55c9038 ci: bump actions/labeler from 6 to 7 (#21159) (dependabot[bot])
  • 7280e78 chore: update dependency prettier to v3.9.6 (#21162) (renovate[bot])
  • eddbad6 test: fix failing ecosystem test for eslint-plugin-unicorn (#21156) (Francesco Trotta)
  • 60a178d chore: update ecosystem plugins (#21150) (ESLint Bot)
  • f9f61dc test: add error locations to no-unreachable (#21151) (JIYEON)
  • d086293 test: add error locations to no-undef (#21147) (JIYEON)
  • cc01b67 test: add error locations to no-useless-catch (#21144) (devoil)
  • 688e75e chore: add missing backticks in JSDoc (#21143) (Bo Hyun Kim)
  • 7c1e175 test: add error locations to require-await (#21145) (Grit)
  • 588a26d test: add error locations to no-extra-label (#21139) (dongkyu lee)
  • 059aa89 test: add error locations to no-useless-concat (#21140) (dongkyu lee)
  • 5a452a8 test: add error locations to no-const-assign (#21138) (dongkyu lee)

v10.8.0

Features

  • 2fee9bb feat: export ConfigObject from eslint/config (#21082) (sethamus)

Bug Fixes

  • 6b8d2f7 fix: escape reserved characters in rule id in html formatter (#21129) (Francesco Trotta)
  • 9091071 fix: prevent no-unreachable-loop crash when all loop types are ignored (#21116) (Pixel)
  • e23fafe fix: prefer-object-spread add semicolon when adding parenthesis (#21081) (synthex-byte)
  • 20b5ad0 fix: quadratic-time regex in prefer-template (#21096) (Milos Djermanovic)
  • 8b6f6c0 fix: apply ignore configs to computed methods in class-methods-use-this (#21094) (Pixel)
  • b2c608c fix: NewExpression with parenthesized callee in preserve-caught-error (#21083) (Francesco Trotta)

... (truncated)

Commits
Maintainer changes

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


Updates eslint-plugin-import from 2.22.0 to 2.32.0

Release notes

Sourced from eslint-plugin-import's releases.

v2.32.0

Added

Fixed

Changed

... (truncated)

Changelog

Sourced from eslint-plugin-import's changelog.

[2.32.0] - 2025-06-20

Added

  • add [enforce-node-protocol-usage] rule and import/node-version setting (#3024, thanks [@​GoldStrikeArch] and [@​sevenc-nanashi])
  • add TypeScript types (#3097, thanks [@​G-Rath])
  • [extensions]: add `pathGroupOverrides to allow enforcement decision overrides based on specifier (#3105, thanks [@​Xunnamius])
  • [order]: add sortTypesGroup option to allow intragroup sorting of type-only imports (#3104, thanks [@​Xunnamius])
  • [order]: add newlines-between-types option to control intragroup sorting of type-only imports (#3127, thanks [@​Xunnamius])
  • [order]: add consolidateIslands option to collapse excess spacing for aesthetically pleasing imports (#3129, thanks [@​Xunnamius])

Fixed

  • [no-unused-modules]: provide more meaningful error message when no .eslintrc is present (#3116, thanks [@​michaelfaith])
  • configs: added missing name attribute for eslint config inspector (#3151, thanks [@​NishargShah])
  • [order]: ensure arcane imports do not cause undefined behavior (#3128, thanks [@​Xunnamius])
  • [order]: resolve undefined property access issue when using named ordering (#3166, thanks [@​Xunnamius])
  • [enforce-node-protocol-usage]: avoid a crash with some TS code (#3173, thanks [@​ljharb])
  • [order]: codify invariants from docs into config schema (#3152, thanks [@​Xunnamius])

Changed

[2.31.0] - 2024-10-03

Added

Fixed

  • ExportMap / flat config: include languageOptions in context (#3052, thanks [@​michaelfaith])
  • [no-named-as-default]: Allow using an identifier if the export is both a named and a default export (#3032, thanks [@​akwodkiewicz])
  • [export]: False positive for exported overloaded functions in TS (#3065, thanks [@​liuxingbaoyu])
  • exportMap: export map cache is tainted by unreliable parse results (#3062, thanks [@​michaelfaith])
  • exportMap: improve cacheKey when using flat config (#3072, thanks [@​michaelfaith])
  • adjust "is source type module" checks for flat config (#2996, thanks [@​G-Rath])

Changed

... (truncated)

Commits
  • 01c9eb0 v2.32.0
  • ae57cc1 [Deps] update array-includes, array.prototype.findlastindex, `eslint-modu...
  • 9e1ad6b [Fix] order: codify invariants from docs into config schema
  • f017790 [Docs] no-restricted-paths: clarify wording and fix errors
  • 7d83a57 [Docs] no-unused-modules: add missing double quote
  • 519eb94 [utils] v2.12.1
  • 71ad145 [actions] split out tests into new vs old eslint
  • 9b096c4 [utils] [dev deps] update @arethetypeswrong/cli, @ljharb/tsconfig, `@type...
  • da5f6ec [Fix] enforce-node-protocol-usage: avoid a crash with some TS code
  • 6e49a58 [Refactor] order: remove unnecessary negative check
  • Additional commits viewable in compare view
Install script changes

This version modifies prepublish script that runs during installation. Review the package contents before updating.


Updates mocha from 7.2.0 to 11.8.0

Release notes

Sourced from mocha's releases.

v11.8.0

11.8.0 (2026-08-02)

🌟 Features

  • add --fail-hook-affected-tests option to report skipped tests as failed (#5519) (#6052) (7830309)

🧹 Chores

v11.7.7

11.7.7 (2026-06-13)

🩹 Fixes

v11.7.6

11.7.6 (2026-02-14)

🩹 Fixes

  • make describe().timeout() work (aafe6fd)
  • test: replace wmic usage with native Windows API (#5694) (73ebdfa)

🧹 Chores

v11.7.5

11.7.5 (2025-11-04)

🩹 Fixes

  • swallow more require errors from *ts files (#5498) (d89dbaf)

🧹 Chores

  • run tests on PRs for and pushes to v11.x (#5525) (8b21b38)

... (truncated)

Changelog

Sourced from mocha's changelog.

11.8.0 (2026-08-02)

🌟 Features

  • add --fail-hook-affected-tests option to report skipped tests as failed (#5519) (#6052) (7830309)

🧹 Chores

11.7.7 (2026-06-13)

🩹 Fixes

11.7.6 (2026-02-14)

🩹 Fixes

  • make describe().timeout() work (aafe6fd)
  • test: replace wmic usage with native Windows API (#5694) (73ebdfa)

🧹 Chores

11.7.5 (2025-11-04)

🩹 Fixes

  • swallow more require errors from *ts files (#5498) (d89dbaf)

🧹 Chores

11.7.4 (2025-10-01)

... (truncated)

Commits
  • 90c1bb3 chore(v11.x): release 11.8.0 (#6076)
  • 05aec43 chore(CI): bump Node from 22 to 24 in publish action (#6206)
  • 1f44d5f chore: change site title to Mocha 11, update index note (#6086)
  • 26deb23 chore: add modern Netlify to v11.x branch (#6082)
  • 7830309 feat: add --fail-hook-affected-tests option to report skipped tests as failed...
  • 41f2b95 chore(v11.x): release 11.7.7 (#6068)
  • 3477563 fix: surface ts-node compile errors (#6045)
  • 3765ba0 chore(v11.x): release 11.7.6 (#5632)
  • 73ebdfa fix(test): replace wmic usage with native Windows API (#5694)
  • aafe6fd fix: make describe().timeout() work
  • Additional commits viewable in compare view
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for mocha since your current version.


@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Aug 17, 2026
Bumps [js-yaml](https://github.com/nodeca/js-yaml) to 4.3.1 and updates ancestor dependencies [js-yaml](https://github.com/nodeca/js-yaml), [eslint](https://github.com/eslint/eslint), [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) and [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together.


Updates `js-yaml` from 3.13.1 to 4.3.1
- [Changelog](https://github.com/nodeca/js-yaml/blob/4.3.1/CHANGELOG.md)
- [Commits](nodeca/js-yaml@3.13.1...4.3.1)

Updates `eslint` from 7.32.0 to 10.8.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v7.32.0...v10.8.1)

Updates `eslint-plugin-import` from 2.22.0 to 2.32.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](import-js/eslint-plugin-import@v2.22.0...v2.32.0)

Updates `mocha` from 7.2.0 to 11.8.0
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/v11.8.0/CHANGELOG.md)
- [Commits](mochajs/mocha@v7.2.0...v11.8.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.8.1
  dependency-type: direct:development
- dependency-name: eslint-plugin-import
  dependency-version: 2.32.0
  dependency-type: direct:development
- dependency-name: js-yaml
  dependency-version: 4.3.1
  dependency-type: indirect
- dependency-name: mocha
  dependency-version: 11.8.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/multi-e29b9b383c branch from 8629fa1 to 8f2cdf3 Compare August 17, 2026 22:41
@olsonanl

Copy link
Copy Markdown
Contributor

Closing — this one doesn't install. I tested it rather than reading the diff.

npm install fails

eslint is bumped to ^10.8.1, but the plugins that peer-depend on it are left behind:

While resolving: eslint-plugin-import@2.32.0
Found: eslint@10.8.1
Could not resolve dependency:
peer eslint@"^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" from eslint-plugin-import@2.32.0

eslint-plugin-import@2.32.0 supports eslint ≤ 9. npm ci fails identically, so this
would break a deploy, not just a dev install.

Even forced, eslint can't run

With --legacy-peer-deps it installs, but:

ESLint couldn't find an eslint.config.(js|mjs|cjs) file.
From ESLint v9.0.0, the default configuration file is now eslint.config.js.

This repo uses the legacy .eslintrc.json. eslint 9+ requires flat config, so the bump needs
a config migration that isn't in this PR.

eslint-config-standard@12 and eslint-plugin-node@7 were also left at their old versions.
A coherent upgrade exists but is a genuine migration: eslint-config-standard@17 peers
eslint ^8.0.1 and wants eslint-plugin-n (a different package from eslint-plugin-node)
plus eslint-plugin-promise@^6 — a plugin swap, a config-format rewrite, and a re-run over the
56 pre-existing lint errors.

The js-yaml advisory is real, and mocha alone fixes it

The four js-yaml alerts (all development scope) come from mocha, not eslint.
mocha@11.8.0 on its own takes mocha/node_modules/js-yaml from 3.13.1 to 4.3.1 and drops
one high advisory — verified, offline suites still pass at the same counts. That part is worth
having and is recorded as future work in CLAUDE.md, along with a caveat: mocha 11 no longer
accepts bare directory arguments, so some test invocations need explicit globs.

The top-level js-yaml@3.15.1 is pulled by eslint 7 itself, so it only clears with the eslint
migration above.

Superseded in spirit by the dependency work in #191/#192/#193 and the open #197#200. Closing
rather than merging.

@olsonanl olsonanl closed this Aug 17, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 17, 2026

Copy link
Copy Markdown
Author

OK, I won't notify you again about this release, but will get in touch when a new version is available.

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/multi-e29b9b383c branch August 17, 2026 22:46
olsonanl added a commit that referenced this pull request Aug 17, 2026
Dependabot opened #196 ("Bump js-yaml, eslint, eslint-plugin-import and mocha")
against master. It does not install, and the reason is worth recording so the
next attempt doesn't repeat it.

#196 bumps eslint to ^10.8.1 while leaving eslint-config-standard@12 and
eslint-plugin-node@7 behind. `npm install` AND `npm ci` both fail ERESOLVE on
eslint-plugin-import@2.32.0, whose peer range is eslint <= 9 -- so it would
break a deploy, not just a dev install. Forced through with --legacy-peer-deps
it installs but still cannot run: eslint 9+ requires flat config and this repo
has .eslintrc.json.

Split the salvageable part out. The four js-yaml advisories (all development
scope) come from mocha, not eslint: mocha ^7.2.0 -> ^11.8.0 on its own takes
mocha/node_modules/js-yaml from 3.13.1 to 4.3.1 and drops one high advisory
(high 14 -> 13), with offline suites still at 247 passing / 2 pre-existing
failures. Recorded rather than applied, since it is unrelated to the forever
removal this branch is about.

Also recorded the mocha 11 behaviour change that will bite: bare directory
arguments are no longer accepted, and `mocha tests/test-util/` reports "No test
files found" instead of erroring usefully. The package.json scripts already use
test.*.spec.js patterns and are unaffected; ad-hoc and CI invocations are what
to check.

And the real shape of the eslint work: eslint-config-standard@17 peers
eslint ^8.0.1 and wants eslint-plugin-n, a DIFFERENT package from the declared
eslint-plugin-node -- so it is a plugin swap plus a config-format rewrite plus a
lint re-run over the 56 pre-existing errors, not a version bump.

#196 closed with this analysis.

Co-Authored-By: Claude Opus 5 (1M context) <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.

1 participant