Lansohet versioni 2.0 i platformës Deno, e cila ka për qëllim ekzekutimin e veprimeve serverike në JavaScript dhe TypeScript duke përdorur motorin V8, i përdorur në shfletuesit e bazuar në Chromium. Projekti Deno është zhvilluar nga Ryan Dahl, krijuesi i Node.js, me synimin për të ofruar një ambient më të sigurt dhe për të eliminuar gabimet konceptuale të bëra në arkitekturën e Node.js. Për të rritur sigurinë, mbështjellja rreth motorit V8 është shkruar në gjuhën Rust, dhe për përpunimin e kërkesave në mënyrë jo bllokuese përdoret platforma Tokio. Kodi i projektit shpërndahet nën licencën MIT. Ndërtohen kompjuterët për Linux, Windows dhe macOS.
Gjatë përgatitjes së degës së re, vëmendja kryesore iu kushtua përputhshmërisë me infrastrukturën e vjetër të JavaScript dhe zgjerimit të spektrit të projekteve të mbështetura JavaScript pa kompromentuar sigurinë. Ndër ndryshimet:
- Është realizuar përputhshmëria e prapambetur me Node.js dhe npm, e cila lejon ekzekutimin e aplikacioneve të pa modifikuara, të krijuara për Node.js. Mbështetja për Node.js gjithashtu ofron mundësinë për të transfertuar gradualisht projektet ekzistuese nga Node.js në Deno ose për të lidhur varësitë nga NPM në projektet Deno duke specifikuar 'npm:' gjatë importit të pakove në deno.json.
- Është shtuar mbështetje e integruar për skedarin package.json dhe katalogun e moduleve node_modules, të përdorura në Node.js.
- Është siguruar mbështetje për repozitat private NPM, të përcaktuara përmes skedarëve '.npmrc'.
- Është shtuar mbështetje për kornizat e njohura të JavaScript, si Next.js, Astro, Remix, Angular, SvelteKit dhe QwikCity.
- Është shtuar mbështetje për hapësirat e punës në npm (workspace) dhe mono-repozitat (monorepo) me përpunim të ndarë të varësive.
- Janë shtuar komandat e reja për menaxhimin e paketave: 'deno install' për instalimin e varësive, 'deno add' për shtimin e paketave në package.json ose deno.json, 'deno remove' për heqjen e paketave. Vërehet se 'deno install' funksionon rreth 15% më shpejt se npm kur nuk ka paketa në cache dhe 90% më shpejt kur ka paketë në cache (përkrahen si node_modules, ashtu edhe cache-in global të tyre).
- Biblioteka standarde është stabilizuar.
- Është siguruar një cikël mbështetjeje afatgjatë (LTS).
- Është paraqitur JSR — një repozitë me biblioteka JavaScript dhe TypeScript, të cilat mund të përdoren në runtime të ndryshme JavaScript.
- Ekipa 'deno fmt' tani ofron mundësinë e formatimit të përmbajtjes në formatet HTML, CSS dhe YAML.
- Ekipo «deno lint» tani mbështetje për rregullat dhe korrigjimet specifike për Node.js.
- Në ekipin «deno test» është implementuar mundësia për të ekzekutuar testet e krijuara me përdorimin e node:test.
- Në ekipin «deno task» është realizuar mbështetje për ekzekutimin e skripteve përmes package.json.
- Në ekipin «deno compile» ka ardhur mundësia për të nënshkruar kodin me një nënshkrim dixhital.
- Në ekipin «deno serve» është implementuar paralelizimi i operacioneve të serverëve HTTP duke përfshirë disa bërthama CPU.
- Në ekipin «deno coverage» tani ka mbështetje për ruajtjen e raporteve në formatin HTML.
- Optimizuar performancën.

Karakteristikat kryesore të Deno:
- Orientimi në siguri në konfigurimin e parazgjedhur. Qasjet në skedarë, mundësitë rrjet dhe qasja në variablat e ambientit janë të bllokuara si parazgjedhje dhe kërkojnë aktivizim të qartë. Aplikacionet parazgjedhur ekzekutohen në ambientet e izoluara sandbox dhe nuk mund të aksesojnë mundësitë sistemore pa dhënë autorizime të qarta.
- Mbështetje e ndërtuar për gjuhën TypeScript përveç JavaScript. Për verifikimin e tipeve dhe gjenerimin e JavaScript përdoret kompileri standard i TypeScript, çka çon në një rënie të performancës në krahasim me analizën e JavaScript në V8.
- Runtime ofrohet në formën e një skedari ekzekutiv të vetë-mjaftueshëm («deno»). Për të ekzekutuar aplikacionet me Deno, mjafton të shkarkoni një skedar ekzekutiv për platformën tuaj, me një madhësi rreth 40 MB, pa varësi të jashtme dhe pa kërkuar ndonjë instalim të veçantë në sistem. Në këtë pikë, deno nuk është një aplikacion monolitik, por përbëhet nga një koleksion paketash crate në Rust (deno_core, rusty_v8), të cilat mund të përdoren ndaras.
- Në ekzekutimin e programit, si dhe për ngarkimin e modules mund të përdoren adresat përmes URL. Për shembull, për të ekzekutuar programin welcome.js mund të përdorni komandën «deno https://deno.land/std/examples/welcome.js». Kodi nga burimet e jashtme ngarkohet dhe ruhet në sistemin lokal, por asnjëherë nuk përditësohet automatikisht (për përditësim është e nevojshme të nisni aplikacionin me flamurin «—reload»);
- Përpunim efektiv i kërkesave në aplikacione përmes HTTP, platforma është e dizajnuar për të krijuar aplikacione rrjetore me performancë të lartë;
- Mundësia për të krijuar aplikacione web universale, të cilat mund të ekzekutohen si në Deno ashtu edhe në shfletuesin e zakonshëm të web-it;
- Prania e një grupi standard modulësh që nuk kërkon lidhje me varësi të jashtme. Modulët nga koleksioni standard kanë kaluar një auditim shtesë dhe verifikim për përputhshmërinë;
- Përveç runtime-it, platforma Deno gjithashtu vepron si një menaxher paketash dhe lejon që brenda kodit të bëhet referencë te modulët përmes URL-ve. Për shembull, për të ngarkuar një modul, mund të specifikohet në kod «import * as log from «https://deno.land/std/log/mod.ts». Skedarët e ngarkuar nga jashtë serverësh përmes URL-ve, ruhen në cache. Lidhet me versionet e modulëve përmes specifikimit të numrave të versioneve brenda URL-së, për shembull, «https://unpkg.com/liltest@0.0.5/dist/liltest.js»;
- Orientimi në përdorimin e standardeve Web, mbështetje për Promise, fetch dhe modulet ECMAScript.
- Përputhshmëria me paketat e publikuara në depo NPM dhe të krijuara për platformën Node.js.
- Sistemi i inspektimit të varësive është i integruar (komanda «deno info») dhe një utilitet për formatimin e kodit (deno fmt);
- Të gjitha skriptet e aplikacionit mund të mblidhen në një skedar JavaScript.
Burimi: opennet.ru

