Para melhorar o gerenciamento de dependências, o Deno 2.0 introduz um deno add subcomando para manipular especificadores com um subcaminho. Além disso, se um projeto contiver um arquivo package.json, o Deno preferirá adicionar npm: dependências para package.json em vez de deno.json. Os desenvolvedores podem adicionar “dependências de desenvolvimento” ao package.json usando o --dev bandeira. Também com Deno 2.0, deno install agora suporta o --entrypoint flag, que permite instalar todas as dependências de um determinado módulo. E um novo deno remove subcomando foi adicionado para remover rapidamente algumas dependências. O Deno 2.0 também vem com um formato de lockfile mais conciso (v4) para minimizar diffs ao atualizar dependências e garantir compilações reproduzíveis. Além disso, o Deno melhorou as mensagens de erro, fornecendo dicas para problemas comuns, como caminhos de importação relativos formatados incorretamente ou dependências ausentes ao usar “especificadores básicos”. A DenoLand disse que as atualizações simplificam coletivamente o processo de gerenciamento de dependências em projetos Deno, tornando-o mais intuitivo e alinhado com os fluxos de trabalho de desenvolvimento modernos.

O sistema de permissão Deno também recebe atenção no Deno 2.0. Com a versão 2.0, a falta de permissões Deno agora aumenta o Deno.errors.Notcapable erro em vez de Deno.errors.PermissionDeniedtornando mais fácil discriminar entre erros de nível de SO e erros Deno. Além disso, as permissões verificam o Deno.mainModule A API, que fornece um caminho de pull para o módulo principal, foi relaxada e não requer mais --allow-read permissão. Isso também se aplica ao process.argv API. Agora também é possível conceder permissões para leitura e gravação de arquivos que contenham vírgulas no nome do arquivo.

Outros novos recursos e mudanças no Deno 2.0: