evanw / evanw/node-source-map-support
Why use Buffer as an implicit dependency?
- Lenguaje dominante
- JavaScript
- Estrellas
- 2.2k
- Forks
- 223
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
:point_up: :point_right: https://github.com/evanw/node-source-map-support/blob/6296f616ca56fc1e1ced36ea15a2eb43d4227c54/source-map-support.js#L111
**Background:**
We (https://github.com/CartoDB/cartodb) suffered a `Uncaught RangeError: Maximum call stack size exceeded` exception on uncaught exceptions after upgrading browserify. I found some similar reported stuff here, e.g. #86 and #93, but after some investigation I found the culprit to be the implicit dependency of [buffer](https://github.com/feross/buffer) used at the line above.
Since there's no reference to this module in this repo I presume that it's accessible through the [browserify module](https://github.com/substack/node-browserify/blob/11.0.1/package.json#L28)? Considering it's a key piece for this module to work, why not define the dependency in this package?
~~That said, there's [a fix](https://github.com/feross/buffer/commit/c681bda) but it's not yet released (v3.4.2), so my temporary workaround to this was to override the implicit dependency, see: https://github.com/CartoDB/cartodb/pull/5171/files~~ The fix was released in [buffer v3.4.2](https://github.com/feross/buffer/tree/v3.4.3)
cc @tanem who seem to have suffered similar issues, perhaps this also works for you
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Revisa source-map-support.js en la línea 111 y los metadatos del paquete de este repositorio; verifica cómo browserify proporciona buffer. Se considera terminado cuando el manejo de dependencias es explícito y se ha comprobado el comportamiento relevante de instalación o empaquetado con respecto al escenario de browserify informado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript
- Área
- devtools
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100