conda-forge / conda-forge/conda-forge.github.io

JavaScript Packing Issues and Best Practices

Abierto
#597 12 comentarios 0 reacciones 0 asignados Ver en GitHub
Discussion
Lenguaje dominante
JavaScript
Estrellas
170
Forks
320
Merge medio
2 d 10 h
PR fusionados (30 d)
5

Descripción

Hello all, I currently see a few issues surrounding the creation and maintainence of JavaScript packages:

1. The current way of building JS packages (`npm install -g .`) no longer works with conda build v3.
* For example, https://github.com/conda-forge/jstz-feedstock/pull/1 produces the following: `Error: lib/node_modules/jstz is a symlink to a path that may not exist after the build is completed (../../../work/jstz-2.0.0)`
* This is apparently because of changes to npm (CC @isuruf @minrk)
* The fix is `npm pack; npm install -g pkg-version.tgz`
2. Because of (1), all PRs the bot is making against JS packages are broken.
3. The maintainers of most JS packages (@sannykr @cshaley) haven't been responsive to the bots PRs or gitter (but it hasn't been that long on gitter).
4. `npm` seems to install a copy of all dependencies for each package that is installed. Is there any way around this so that we can have real dependency chains on the graph in conda?
5. Related to (4), do we need to use `npm` to install JS packages at all? If all `npm install` is doing is shoving some files into a known directory and adding some symlinks, it seems like we could do that with conda-build as well. It is not as though there would be any penalty or collision with npm either, since npm would copy the package again anyway.

Anyway, some feedback, guidance, and discussion would be most welcome! CC @conda-forge/core

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.