Selon les développeurs, la commande deno bundle de Deno 1.5 est jusqu'à 15 fois plus rapide que celle de la version 1.4 précédente, et elle utilise désormais le tree-shaking pour se débarrasser du code inutilisé du paquet. L'infrastructure du compilateur TypeScript de Deno a également été revisitée : les développeurs ont remplacé l'ancienne infrastructure du bundler par un nouveau bundler basé sur le compilateur swc TypeScript/JavaScript. Les bundles sont désormais émis sous la forme d'un module ES standard, ce qui permet à l'importation dynamique de fonctionner correctement.

Parmi les autres fonctionnalités et améliorations apportées à Deno 1.5, on peut citer :

- Un remaniement majeur du REPL (read-eval-print-loop). Il permet désormais l’achèvement de la ligne de commande (tab completion) des propriétés des objets et des méthodes et une coloration syntaxique du code, la syntaxe étant mise en évidence si le terminal prend en charge les couleurs. De plus, le REPL offre un support top-level await, qui permet aux développeurs de résoudre les promises await dans le REPL sans avoir à emballer un appel dans une IIFE asynchrone.

- Des contrôles de type plus stricts sont effectués dans la version stable, l'option de compilateur TypeScript isolatedModules étant activée par défaut.

- L’ajout d’API d’alerte pour la confirmation et l'invite au niveau de la plate-forme web. L'API d'alerte enregistre un message sur le terminal et le bloque de manière synchrone jusqu'à la confirmation. L'API de confirmation invite l'utilisateur à envoyer un message et bloque de manière synchrone jusqu'à ce que l'utilisateur réponde, tandis que l'API d'invite demande à l'utilisateur d'entrer du texte et bloque de manière synchrone jusqu'à ce que l'utilisateur ait entré du texte et appuyé sur la touche entrée.

- Ajouts et stabilisations de l'API, avec Deno.fsync, Deno.fdatasync() et les homologues synchrones stabilisés. Il s'agit de méthodes de bas niveau pour garantir l'écriture des données de fichiers modifiés sur le lecteur de disque. Deux nouvelles API instables sont introduites, dont Deno.sleepSync(), pour bloquer la boucle d'événements, et Deno.systemCpuInfo(), pour obtenir des informations sur le nombre de cœurs disponibles et la vitesse du CPU.

- deno lint a été mis à jour avec une règle camelcase: qui permet de vérifier si les déclinaisons de variables utilisent le formatage camelCase. Des conseils pour le diagnostic des lint sont également introduits.

- Des modifications ont été apportées à std, notamment le nom des méthodes assertStringContains and assertArrayContains a été changé en std/testing.asserts.ts for asssertStringIncludes et std/testing.asserts.ts for assertArrayIncludes, respectivement, pour correspondre au nom de la méthode includes sur les chaînes et les tableaux.

- Le drapeau deno fmt --ignore est maintenant disponible sans le drapeau --unstable. Le drapeau peut être utilisé pour éviter que certains fichiers ou dossiers soient formatés ou vérifiés par le formateur.

Les utilisateurs ayant installé des versions antérieures de Deno peuvent lancer deno upgrade pour passer à la version 1.5. Les processus d'installation pour les nouveaux utilisateurs sont expliqués dans les notes de mise à jour. Deno a été créé par Ryan Dahl, le concepteur de Node.js, comme alternative plus sûre à Node.js. La version 1.0 de Deno a été livrée en mai.