browserify / browserify/static-module

feature: add an API that works on ASTs instead of pre-evaluated values

Abierto
#57 0 comentarios 1 reacción 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
JavaScript
Estrellas
75
Forks
22
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

static-eval doesn't support function expressions like the `body` option in:

```js
cwise({
body: () => {}
})
```

I think because of this patch https://github.com/substack/static-eval/pull/18

static-module has a special case for function arguments as callbacks:

```js
readFile('xyz', function () {})
```

A possible solution may be to have a static-module option or a method like `staticModule.ast` that passes the parsed AST nodes to functions, instead of statically evaluated values. Projects like cwise could then use static-eval to selectively evaluate strings and other primitive types, and stringify the AST for function arguments using escodegen.

_Originally posted by @goto-bus-stop in https://github.com/browserify/static-module/issues/48#issuecomment-443202592_

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza examinando cómo static-module gestiona los valores preevaluados y su caso especial para los argumentos de función como callbacks; después, compara el parche de static-eval mencionado en el issue. Se considera terminado cuando se exponga una API u opción basada en AST que permita a proyectos como cwise evaluar selectivamente los valores primitivos y conservar los AST de los argumentos de función para serializarlos como cadenas con escodegen.

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

Evaluación

Stack tecnológico
javascript
Área
tooling
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.