Skip to main content
interlace
Plugin: reliability

Changelog

Release history and version updates for eslint-plugin-reliability

Generated from the release history

Built from this package's CHANGELOG.md at deploy time, so it matches the version these docs describe. The full cross-package history lives on the changelog.

4.1.11

  • Fixno-unhandled-promise dropped ignoreInTests on .mts / .cts / .mjs / .cjs
  • Dependenciesupdated workspace dependencies: @interlace/eslint-devkit@1.19.6

4.1.10

  • Fixfour false positives found by sweeping the plugins over a real corpus
  • Fixfour more rules dropped ignoreInTests on .mts / .cts / .mjs / .cjs

4.1.9

  • Fixno-await-in-loop no longer reports an await in a loop header slot that is evaluated once (for...of/for...in iterable, for init), and no longer reports one await once per enclosing loop. for (const p of await Promise.all(xs.map(f))) costs 1x latency, not Nx, and is the Promise.all remedy the rule prescribes. Per-iteration header slots — a for test/update, a while/do-while test, a for-of binding default — stay reported, and a once-evaluated head inside an outer loop is attributed to that outer loop.
  • FixFP/FN sweep against the burgee corpus — three confirmed rule defects.

4.1.8

  • Fixno-silent-errors's allowWithComment no longer disarms the rest of the file

4.1.7

  • Fixno-unsafe-type-narrowing's allowWithComment no longer disarms the whole file
  • Fixtwo rules that could not report anything

4.1.6

  • Fixno-missing-null-checks follows four more guards it already meant to follow
  • Fixno-missing-error-context reads three more shapes of throw
  • Fixno-unhandled-promise no longer reports a promise whose value is used

4.1.5

  • Fixno-missing-null-checks reads 'k' in x and optional-chain guards as narrowing
  • Fixno-unhandled-promise no longer treats a function-typed parameter as its enclosing async function

4.1.4

  • Fixno-missing-null-checks understands if (!x) return and, given types, TypeScript's own narrowing

4.1.3

  • FixThe README logo now links to the plugin's own documentation.

4.1.2

  • Fixrows['find'](…) is the same nullable return as rows.find(…)
  • Fixa subscripted .then chain is recognised, and stops double-reporting
  • Maintenancenullable-return and promise-static tests ask the null question themselves
  • Dependenciesupdated workspace dependencies: @interlace/eslint-devkit@1.19.0

4.1.1

  • FixAdd an install-size badge to the README prelude, linking to each package's packagephobia page. npm renders the README from the last publish, so a badge only appears on npmjs.com after a release.
  • Dependenciesupdated workspace dependencies: @interlace/eslint-devkit@1.18.2

4.1.0

  • Feature🐛 Fix — a template literal is a string, in 82 rules that disagreed
  • Fix🐛 Fixno-unhandled-promise silenced a promise passed as an argument
  • Dependenciesupdated workspace dependencies: @interlace/eslint-devkit@1.18.0

4.0.2

  • Fixpoint meta.docs.url at documentation that exists #683
  • Dependenciesupdated workspace dependencies: @interlace/eslint-devkit@1.17.2

4.0.1

  • no-missing-null-checks no longer loses its evidence through an alias or a #599
  • no-missing-null-checks no longer treats declare-then-assign as a null value. #599
  • DependenciesUpdated internal dependencies

4.0.0

  • no-missing-null-checks now requires positive evidence that a value may be #591

3.1.13

  • no-missing-null-checks now sees through two initialiser shapes it already #586

3.1.12

  • Correct the declared ESLint floor: ^8.0.0^8.40.0. #407
  • Correct the ESLint peer range shown in the README Compatibility table. #423
  • DependenciesUpdated internal dependencies

3.1.11

  • Ship the JavaScript without tsc's layout. #411
  • DependenciesUpdated internal dependencies

3.1.10

  • Load rule modules on demand instead of at plugin load. #381
  • Declare what we support, load only what we use #381
  • Fix the ./oxlint subpath export, which pointed at src/oxlint.js — a file no build produces. require('<package>/oxlint') threw MODULE_NOT_FOUND on every published package, while every README documented that exact wiring for oxlint's jsPlugins. The export now points at the build output, dist/src/oxlint.js. #335
  • DependenciesUpdated internal dependencies

3.1.9

  • Add the ecosystem and oxlint marks to the README logo row. Each plugin now #364

3.1.8

  • Re-publish every package so npm carries the optimised artifact #338
  • DependenciesUpdated internal dependencies

3.1.7

  • Rewrite description and keywords on every published package for npm search discovery. npm ranks on name, description, and keywords, and the registry only picks up these fields at publish — so this is metadata-only and takes effect for each package on its next release. #294
  • DependenciesUpdated internal dependencies

3.1.6

  • Docsdocs: dual-logo README header (Interlace mark + ESLint mark side by side) and closing Interlace footer — refreshes the README rendered on npmjs.com. No runtime changes. #269
  • DependenciesUpdated internal dependencies

3.1.5

  • Fix Codecov badge showing "unknown" — switch from flag to component URL format #252

3.1.4

  • Fixfix: remove false meta.fixable: 'code' declarations from 21 rules that had no fix() function #141
  • Fixfix(no-missing-null-checks): eliminate 53 false positives via three new narrowing patterns #143
  • DependenciesUpdated internal dependencies
  • no-missing-null-checks: exempt provably-non-null identifiers (built-in singletons like Math, JSON, console, error classes; catch-clause params; constructor results; top-level imports) from the null-check requirement. Eliminates a large class of false positives without weakening real coverage.
  • no-unhandled-promise: refined detection (see source diff).

3.0.4

  • align codecov component IDs with full package names
  • fix changelog header format across all packages
  • Ofri Peretz

3.0.3

  • align codecov component names and update docs components
  • Ofri Peretz

3.0.2

  • 📘 Launched new documentation site: eslint.interlace.tools
  • 📝 Achieved 100% documentation parity (both .md and .mdx files)

1.0.0

  • Initial stable release with 8 reliability rules
  • LLM-optimized error messages for AI-assisted development
  • 100% test coverage across all rules
  • ESLint 9 flat config support
  • TypeScript type definitions for all rule options
  • recommended - Balanced reliability checks (4 rules as warnings)
  • no-unhandled-promises: Promises in callbacks or async iterators may be missed
  • no-silent-errors: Intentional suppression vs. actual swallowing is hard to distinguish
  • no-missing-null-checks: Business-logic guarantees not in types can trigger false positives

4.1.12

  • Fixfive FP/FN rule defects found by the burgee sweep

Building secure JavaScript with Interlace? Star the repo to get new rules and CWE coverage as we ship them — or follow the AI-code-security benchmarks behind them.