Skip to content

πŸš€ Feature: Add a concept of "unsafe" fixes / suggestionsΒ #54

@JoshuaKGoldberg

Description

@JoshuaKGoldberg

Feature Request Checklist

Overview

Linters these days seem to be split on how to handle fixes that change runtime behavior:

I'm definitely leaning towards the latter to avoid having such separate concepts. There might actually be >=4 levels of fix safety?

  1. Cosmetic: does not change any runtime code, e.g. changing Array<T> to T[]
  2. Runtime-safe: changes runtime code in a way we're 99.9...% sure is safe, e.g. changing object && object.a to object?.a
  3. Runtime-suggested: probably safe but needs manual confirmation, e.g. removing an unnecessary async from a function
  4. Opt-in: one of several options, e.g. adding a word to a spell checker dictionary

...but is that actually a cross-matrix? Should there be a delineation between "probably safe" (2.) between logical and stylistic rules, for example?

Design investigation work very much needed.

Additional Info

Blocked on #53: having a base concept of fixes. βœ…

See also discussion in eslint/rfcs#134 around per-message(Id) configuration.

❀️‍πŸ”₯

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions