Vite+ 1.5.0 pins Oxlint 1.91.0 with effect-local immutability false positives
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 71/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- bun, react, rust, typescript, vite
Línea de trabajo
Empieza por la versión fijada de Oxlint en la cadena de herramientas de Vite+ y comprueba cómo se selecciona su versión de lanzamiento. Ejecuta la reproducción proporcionada con vp lint --config .oxlintrc.json repro.tsx usando Vite+ 1.5.0 y, después, compara el analizador fijado con la reparación de Oxlint incorporada en #28820. El trabajo estará terminado cuando un lanzamiento de Vite+ incluya el analizador reparado y la reproducción termine sin el falso positivo.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Vite+ 1.5.0 pins Oxlint 1.91.0, which reports valid effect-local variable updates as react/immutability errors. This blocks consumers that keep the React correctness rules enabled when upgrading the Vite+ toolchain together.
The underlying regression is described in oxc-project/oxc#28401, closed by #28820. The fix is merged, but the current published Oxlint release is still 1.91.0 and the published Vite+ pin still reproduces it. This report tracks the consuming toolchain release; it does not request a separate implementation of the analyzer fix.
Reproduction
With [email protected] installed, create .oxlintrc.json:
{"categories":{"correctness":"off"},"plugins":["react"],"rules":{"react/immutability":"error"}}
Create repro.tsx:
import { useEffect, useState } from "react";
export function useElapsedSeconds(enabled: boolean) {
const [seconds, setSeconds] = useState(0);
useEffect(() => {
if (!enabled) return;
let previous = new Date();
const poll = window.setInterval(() => {
const next = new Date();
setSeconds(value => value + (next.valueOf() - previous.valueOf()) / 1000);
previous = next;
}, 1000);
return () => window.clearInterval(poll);
}, [enabled]);
return seconds;
}
Run vp lint --config .oxlintrc.json repro.tsx.
Actual: exit 1 at previous = next with react/immutability: Cannot reassign variable after render completes.
Expected: no diagnostic. previous is created inside each effect invocation and cannot mutate a render-scope binding. The same pattern affects effect-local cancellation flags and timer handles, so consumers would otherwise need unnecessary application rewrites or to weaken lint coverage.
Please include the released analyzer repair in a Vite+ release once available, keeping the toolchain pins coordinated. Verified on macOS arm64 with Bun 1.4.4; this example uses the Vite+ lint command and a minimal rule configuration.
- Lenguaje dominante
- Rust
- Estrellas
- 6.5k
- Forks
- 297
- Merge medio
- 1 d 3 h
- PR fusionados (30 d)
- 245
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de voidzero-dev/vite-plus
-
triage: not actionable
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
voidzero-dev/vite-plus#3296 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
pending triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
voidzero-dev/vite-plus#3235 ·
Los mantenedores suelen responder en 1 día
-
Docker guide: the runtime stage needs libatomic1 for Node.js 25 and laterPosiblemente ocupada @kshanxs la tomó hace 12 días. Abiertodocumentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
voidzero-dev/vite-plus#3219 · 2 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
pending triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
voidzero-dev/vite-plus#2882 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
vp create react-router aborts Vite+ integration when create-react-router Git commit failsPosiblemente ocupada @chbaefront la tomó hoy. Abiertopending triage triage: failed
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
voidzero-dev/vite-plus#3362 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de voidzero-dev/vite-plus
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
apache/datafusion-iceberg#100 ·
Los mantenedores suelen responder en 1 día
-
[Bug]: cua-driver skill fails Agent Skills frontmatter validationPosiblemente ocupada @Mearman la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
area/tools bug session-analysis
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
oracle/rust-oracledb#66 ·
-
`PrimitiveArray::validate_decimal_precision` rejects every decimal array with a negative scaleAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día