oxc/crates
DonIsaac f5a7134834 fix(linter/no-unused-vars): false positive for discarded reads within sequences (#6907)
Fixes a case where no-unused-vars incorectly reports a read as unused in edge
cases where a logical/binary expression is used as a conditional shorthand to
write a variable within sequence expressions.

Some code examples will make this more clear.
```js
function foo(a) {
  let x = somePropertyIWantToCheck();
  (x in a && x.hasPropA = true, console.log(a))
}
```
Since the logical expression is not in the last position within the sequence
expression list, it's getting discarded as unused. However, the right expression
(`x.hasPropA = true`) has side effects, so it _is_ being used.
2024-10-27 17:06:58 +00:00
..
oxc release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_allocator release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_ast fix(linter/no-unused-vars): false positive for discarded reads within sequences (#6907) 2024-10-27 17:06:58 +00:00
oxc_ast_macros release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_cfg release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_codegen release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_data_structures release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_diagnostics feat(rust): use oxc-miette (#6938) 2024-10-27 13:30:20 +00:00
oxc_ecmascript release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_estree release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_index release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_isolated_declarations feat(rust): use oxc-miette (#6938) 2024-10-27 13:30:20 +00:00
oxc_language_server fix(oxc_language_server): gitignores now applied to their respective files (#6899) 2024-10-26 10:46:35 -04:00
oxc_linter fix(linter/no-unused-vars): false positive for discarded reads within sequences (#6907) 2024-10-27 17:06:58 +00:00
oxc_macros refactor(linter): add run_on_jest_node to run rules on only jest nodes (#6721) 2024-10-21 02:13:58 +00:00
oxc_mangler release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_minifier refactor(minifier): remove Tri, use Option<bool> instead (#6912) 2024-10-26 04:28:34 +00:00
oxc_module_lexer release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_parser release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_prettier refactor(rust): remove the annoying clippy::wildcard_imports (#6860) 2024-10-24 13:57:19 +00:00
oxc_regular_expression feat(ast): remove explicit untagged marker on enums (#6915) 2024-10-26 08:21:40 +00:00
oxc_semantic refactor(semantic)!: remove SymbolTable::get_symbol_id_from_span API (#6955) 2024-10-27 14:31:36 +00:00
oxc_sourcemap release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_span release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_syntax release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_transformer refactor(transformer/react-refresh): use VarDeclarations to insert declarators (#6884) 2024-10-27 07:05:24 +00:00
oxc_traverse release(crates): v0.34.0 (#6908) 2024-10-26 09:39:53 +08:00
oxc_wasm fix(types): move @oxc-project/types to dependencies (#6909) 2024-10-26 10:26:54 +08:00