Rollup-plugin-typescript2: Você realmente precisa do rpt2?

Criado em 2 nov. 2019  ·  4Comentários  ·  Fonte: ezolenko/rollup-plugin-typescript2

O que acontece e porque está errado

Relacionado com # 79 e # 148

Apenas um PSA rápido para o caso de ajudar as pessoas. Eu estava usando este plugin porque era conveniente, mas a construção levaria 2 gb de memória e muito tempo. Limitei o problema a este plugin. Agora estou simplesmente usando tsc e, em seguida, conectando a entrada js para fazer rollup e meu tempo de compilação caiu cerca de 5x e a memória caiu cerca de 100x.

Não estou criticando o trabalho árduo que realmente precisa deste plugin porque os custos de desempenho são altos.

Só meus 2 centavos ...

Versões

  • datilografado: 3.6.4
  • acúmulo: 1.26.3
  • rollup-plugin-typescript2: 0.25.1
help wanted question

Comentários muito úteis

@mikob

Agora, estou simplesmente usando o tsc e, em seguida, conectando a entrada js para fazer rollup e meu tempo de compilação caiu cerca de 5x e a memória caiu cerca de 100x.

Obrigado pelo ponto de dados, como alguém ainda está tentando decidir se desejo iniciar minha próxima biblioteca TS com Rollup, você pode nos dar um resumo de como você fez isso?

Todos 4 comentários

Sim, a conveniência tem um preço. :) Se alguém tiver uma ideia de como acelerar isso, faça um PR :)

@mikob

Agora, estou simplesmente usando o tsc e, em seguida, conectando a entrada js para fazer rollup e meu tempo de compilação caiu cerca de 5x e a memória caiu cerca de 100x.

Obrigado pelo ponto de dados, como alguém ainda está tentando decidir se desejo iniciar minha próxima biblioteca TS com Rollup, você pode nos dar um resumo de como você fez isso?

@mikob

Agora, estou simplesmente usando o tsc e, em seguida, conectando a entrada js para fazer rollup e meu tempo de compilação caiu cerca de 5x e a memória caiu cerca de 100x.

Também estou interessado na sua solução. O ponto de entrada geralmente importa vários outros módulos, então usamos rollup para agrupá-los todos em um único arquivo. tsc suporta apenas arquivo de saída único para formato de módulo "AMD" e "Sistema".

@adrianmcli @sntran Estou usando a API do compilador de script e a API de rollup em um script. Basicamente, assim:

watchTs(); const watcher = rollup.watch(rollupConfig);

watchTs faz um monte de coisas padronizadas (eles não tornam sua API fácil). Você pode começar olhando para ts.createWatchCompilerHost

Esta página foi útil?
0 / 5 - 0 avaliações