Open diegodario88 opened 4 years ago
De acordo com essa (dicussão), signing/verifying/decoding trabalham com operacões totalmente síncronas então no meu entendimento uma opção mais limpa seria remover a callback e tratar eventuais erros com o try/catch. Uma vez que, como esse código faz uso intenso do CPU ele vai cair, invariavelmente, no loop de eventos e bloquear a thread primária então a promessa se torna desnecessária. Se eu estiver viajando aqui ou se esqueci de algo por favor me de um toque.
Ao buscar soluções para utilizar a sintaxe de import e outras novidades da linguagem optei por usar o Sucrase, uma alternativa ao Babel que promete ser 20x mais rápido. O acoplamento é simples e a integração com o nodemon funciona muito bem, sem nenhum delay aparente ao transformar CJS para ESM, tendo como possibilidade vários transforms inclusive TypeScript, se caso ele for adotado ao projeto o Sucrase facilitaria a transição. Ava precisou de um complemento para enxergar os arquivos ESM, para isso foi adicionado a lib esm e a respectiva configuração ao package.json. Alguns warnings de
(param)
e;
foram corrigos pelo eslint automaticamente, fora isso procurei não alterar nada além do necessário para concluir a issue closes #22 .