Excesso de pacotes no Shiny (com golem)

Prezados, espero que estejam bem.

Em meu shinyApp, preciso usar muitos pacotes (neste caso, 34). Porém, recebo um NOTE quando executo devtools:check:

checking package dependencies … NOTE
Imports includes 34 non-default packages.
Importing from so many packages makes the package vulnerable to any of
them becoming unavailable. Move as many as possible to Suggests and
use conditionally.

Que basicamente informa sobre a grande quantidade de pacotes que estou a empregar no aplicativo. Assim, tenho duas perguntas:

  • Quais os riscos de ter tantos pacotes em um aplicativo (além do informado em NOTE, que informa sobre uma vulnerabilidade de indisponibilidade do pacote)?

  • Como resolver este NOTE de forma sustentável, isto é, que me proteja de eventuais vulnerabilidades de indisponibilidade e qualquer outro tipo de problema futuro?

Agradeço a atenção.

1 curtida

Oi Giovani

Esse note é mais direcionado ao desenvolvimento de pacotes mesmo. Eu acho ok usar muitos pacotes um Shiny.

No entanto, de fato quanto mais pacotes maior a chance de o seu código para de funcionar caso algum pacote atualize sem retrocompatibilidade. Isso já aconteceu por exemplo com o bs4Dash da versão 0.5 para a versão 2.0.

Existem algumas maneiras de controlar isso:

  • Usar renv para travar as versões dos pacotes.

  • Você pode forkar pacotes mais suspeitos e instalá-los a partir do seu repositório do Github.

  • Para de fato diminuir o número de pacotes, pegue aqueles dos quais você usa poucas funções e copie a definição delas para dentro da pasta /R do seu app.

1 curtida