Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

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

Aberta
#57 0 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
35/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
javascript
Domínio
tooling

Direção de pesquisa

Comece examinando como static-module lida com valores pré-avaliados e seu caso especial para argumentos de função como callbacks; em seguida, compare o patch de static-eval mencionado na issue. Considera-se concluído quando uma API ou opção baseada em AST for exposta, permitindo que projetos como cwise avaliem seletivamente valores primitivos e preservem os ASTs dos argumentos de função para stringificação com escodegen.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement

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

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:

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

Linguagem predominante
JavaScript
Estrelas
75
Forks
22
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de browserify/static-module

Todas as issues de browserify/static-module

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.