De acuerdo con los documentos oficiales de NPM, overrides en package.json permiten anular un paquete con otro paquete por completo:
Las anulaciones proporcionan una forma de reemplazar un paquete en su árbol de dependencia con otra versión u otro paquete completamente . Estos cambios pueden tener un alcance tan específico o tan vago como se desee.
https://docs.npmjs.com/cli/v8/configuring-npm/package-json#overrides
Sin embargo, no sé cómo reemplazar un paquete con otra cosa que no sea una versión modificada del mismo paquete.
Estoy tratando de reemplazar node-sass con sass en una dependencia transitiva, pero ninguna configuración que haya probado funciona.
"overrides": { "node-sass": "sass@^1.3.0" } "overrides": { "node-sass": { ".": "sass@^1.3.0" } }Cualquiera de las configuraciones anteriores produce el siguiente error de NPM:
Invalid tag name "sass@^1.3.0": Tags may not have any characters that encodeURIComponent encodes.Si intento algo más rudimentario:
"overrides": { "node-sass": "sass" }Errores de NPM con:
No matching version found for node-sass@sass.Estoy en NPM v8.3.1.
¿Es realmente posible reemplazar un paquete con otro paquete por completo o estoy malinterpretando lo que está escrito en los documentos?