Maintenance release. Dependency and tooling work only — no new features and no fixes to Dredd's own logic.
⚠️ Compatibility
engines.noderaised from>=22to>=22.22.2in both packages. This narrows who can install, which is why this is a minor rather than a patch. The previous floor was already understated:inquirer@14required^22.13.0. CI (22.x, 24.x) and the Docker image (node:22-alpine) were already on satisfying versions.
📦 Runtime dependencies
- js-yaml 4 → 5 and markdown-it 14 → 15 in
dredd. Both verified behaviour-neutral for how Dredd uses them:- a realistic
dredd.yml(color: yes,timeout: 0777,level: 12:30, floats) parses 9/9 identically under 4.2.0 and 5.3.0 - markdown-it 15's breaking changes are confined to linkify-it 6, which never applies —
linkifydefaults tofalseandHTMLReporterpasses no options
- a realistic
- js-yaml 5 dropped its default export and now bundles its own types, so
configUtilsandinituse a namespace import and@types/js-yamlis gone. markdown-it 15 ships types, so the hand-written ambient declaration was removed.
📝 Documentation
- Corrected the published READMEs (#121).
dredd's claimed Node.js >= 20 against a real floor of>=22.22.2, and both READMEs pointed at the abandoned upstream packages (npm install -g dredd,npm install dredd-transactions) rather than the@stacklych/scoped names. dredd-transactions' README now documents OpenAPI 3.2 support — the shared compiler path, thequery(QUERY) method andadditionalOperations,in: querystringwithserializedValue, and the streaming/sequential-media warning. It had described only 3.1 since 3.2 shipped in v0.4.0.
🧹 Maintenance
- Every direct dependency brought to its latest usable version (#114):
c811→12, plus commitlint, cucumber, globals, mocha, nock, prettier, sinon, tsx, typescript-eslint, eslint. - All three
resolutionspins removed —json-schema-faker(dead),ansi-regex(#116, was downgrading modern consumers),lodash(#117, redundant). The block is now gone entirely. - Dependabot config repaired (#118, #119): every ignore rule was stale, and
nock > 10.0.6/winston > 2.4.0had been silently suppressing all updates to those packages.
🔒 Held back, with reasons
- typescript stays on 6.0.3 —
typescript-eslint@8.67.0peer-requirestypescript >=4.8.4 <6.1.0, and TS 7's stable compiler API isn't due until 7.1. - which stays on 6.0.1 —
which@7's engines are^22.22.2 || ^24.15.0 || >=26.0.0, a disjoint set excluding Node 23.x and 24.0–24.14.
Verification
Build, lint, prettier, smoke, coverage, and the full suite: dredd-transactions 222, dredd unit 556, dredd integration 529 — 0 failing. npm audit --omit=dev on the packed tarballs reports 0 vulnerabilities.