a2ui-project / a2ui-project/a2ui

Consider widening React peer dep range to include React 17

Abierto Apto para principiantes
#2,372 4 comentarios 0 reacciones 0 asignados Ver en GitHub
P2 status: first-line-handled
Lenguaje dominante
TypeScript
Estrellas
16.4k
Forks
1.3k
Merge medio
3 d 15 h
PR fusionados (30 d)
134

Descripción

### Summary
`@a2ui/react` declares `peerDependencies` of `react` / `react-dom` as `^18.0.0 || ^19.0.0` across every published version (0.8.0 → 0.10.2). This prevents installation in React 17 codebases without `--legacy-peer-deps` or `--force`, even when the runtime features used are React 17-compatible.

### Ask
Would the maintainers consider one of:
1. Widening the peer range to `^17.0.0 || ^18.0.0 || ^19.0.0` if the package doesn't depend on React 18-only APIs.
2. Publishing a `0.9.x`-line release scoped to React 17, if 18+ features are required in newer versions.

### Motivation
React 17 is still widely deployed. Downstream consumers currently must set `legacy-peer-deps=true` globally, which papers over all peer-dep issues in their tree, not just this one.

### Environment
- Package: `@a2ui/react@0.9.1` (also verified 0.8.0, 0.9.0, 0.10.2)
- npm: 10.x
- Consumer: React 17.0.2 app

### React 18-only API audit
Happy to help audit the source if that would speed a decision — a quick grep for `useId`, `useSyncExternalStore`, `useTransition`, `useDeferredValue`, `useInsertionEffect`, or `createRoot`-only paths would tell us whether the current implementation actually requires React 18.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Revisa los archivos package.json para comprobar la declaración de peerDependencies. Después, audita el código fuente en busca de APIs específicas de React 18+ como useId, useSyncExternalStore o createRoot. Si no encuentras ninguna, actualiza el rango de peerDependencies en package.json para incluir ^17.0.0. Prueba el cambio compilando el paquete y verificando que se instala correctamente en un proyecto de React 17.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
react, typescript
Área
developer-experience, tooling
Tipo de issue
Nueva funcionalidad
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Activo
Claridad
Bien especificado
Aptitud para principiantes
75/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.