2023 में Deno के बदलाव
- Deno अब
package.json फ़ाइल को समझता है, और node: specifier का उपयोग करके node:fs और node:crypto जैसे built-in Node modules import कर सकता है।
- नया web server API
Deno.serve stable हो गया है, और HTTP throughput साल-दर-साल लगभग 73% बेहतर हुआ है।
deno compile अब workers, dynamic imports, और npm modules को support करता है।
- Deno अब web streams (
ReadableStream और WriteableStream) और AbortController का API भर में बेहतर उपयोग करता है, जिससे browser और server-side programming के बीच का अंतर कम होता है।
- Deno की config file
deno.json अब import map के रूप में भी इस्तेमाल की जा सकती है, schema को सरल बनाती है, और glob support तथा उपयोगी top-level "exclude" property जोड़ती है।
- open source notebook tool Jupyter अब JavaScript और TypeScript के साथ Deno को support करता है।
- लगभग 1 साल के development के बाद WebGPU को Deno में जोड़ा गया।
- Deno की zero-config TypeScript को LSP और VS Code integration में बड़े सुधारों के कारण editor integration और बेहतर मिला है।
- Deno-आधारित web framework Fresh में Tailwind support, Partials, layout files जैसी सुविधाएँ जोड़ी गई हैं।
- Deno Deploy अब Deno KV, Queues, Cron जैसे globally distributed primitives के साथ और अधिक शक्तिशाली हो गया है।
- platform ने self-serve subhosting लॉन्च किया है, जिससे untrusted multi-tenant JavaScript को deploy और run किया जा सकता है।
Node और npm के साथ बेहतर compatibility
- Deno ने
node: specifier के जरिए node:fs, node:child_process जैसे built-in Node modules सहित Node ecosystem के साथ compatibility बढ़ाई है।
- Node से Deno में आसान transition के लिए कई नई सुविधाएँ जोड़ी गईं:
--unstable-byonm flag आपको Deno के भीतर अपने पसंदीदा npm package manager का उपयोग करने देता है।
--unstable-sloppy-imports flag module imports की strictness कम करता है, ताकि अलग-अलग coding styles और practices को accommodate किया जा सके।
--unstable-unsafe-proto flag Object.prototype.__proto__ को support करता है, जिस पर कई npm packages निर्भर करते हैं।
- Node-API के stable होने से अब
--unstable flag के बिना भी Node-API पर निर्भर npm packages का उपयोग किया जा सकता है, जिससे support का दायरा बढ़ा है।
Deno.serve() के साथ और सरल व तेज web server
Deno.serve() function को introduce और stabilize किया गया, ताकि developers बहुत कम code के साथ server शुरू कर सकें।
- core library और event loop mechanism में targeted optimizations के जरिए performance में बड़ा सुधार हुआ।
- Deno का HTTP throughput default "Hello, world" server setup के benchmark tests में स्पष्ट रूप से बढ़ा।
अधिक flexible deno.json
- Deno का लक्ष्य ऐसे programming principles पर है जो बिना जटिल configuration के उपयोग किए जा सकें, और
deno.json config file को लगातार बेहतर बनाकर इसकी ease of use बनाए रखी गई है:
deno.json को import map के रूप में भी इस्तेमाल किया जा सकता है।
deno fmt अब semicolons को support करता है, जिससे code style में flexibility मिलती है।
package.json के साथ integration, Node और Deno environments के बीच transition को आसान बनाता है।
deno.json की structure को सरल बनाया गया है, ताकि developers इसे अधिक intuitively समझ सकें।
- glob patterns की शुरुआत से files और directories को include या exclude करने पर अधिक सूक्ष्म नियंत्रण मिला है।
LSP के साथ अधिक सहज development experience
- Deno का Language Server Protocol (LSP) integration accurate go-to-definition, comprehensive IntelliSense, और TypeScript projects के लिए seamless code formatting जैसी सुविधाएँ देता है।
- LSP को बेहतर बनाने के लिए काफी प्रयास किए गए, जिससे Deno में coding और अधिक smooth और intuitive हुई।
WebGPU
- WebGPU Deno में ऐसी cutting-edge technology लाता है, जो developers को JavaScript के जरिए GPU hardware की performance का सीधे उपयोग करने देती है।
- WebGPU
--unstable-webgpu flag के पीछे उपलब्ध है, और यह Deno applications की capabilities बढ़ाने वाला एक महत्वपूर्ण milestone है।
Jupyter notebooks
- open source notebook tool Jupyter अब JavaScript और TypeScript के साथ Deno को support करता है।
- इससे data science, visualization आदि को modern JavaScript, TypeScript और web standard APIs के साथ किया जा सकता है।
ध्यान देने योग्य open source Rust crates
- Deno कई open source projects से जुड़ा हुआ है, और अपनी feature set बढ़ाने तथा performance optimize करने के लिए सक्रिय रूप से योगदान देता है।
- इस साल Deno ने कुछ Rust crates जारी किए, जो स्वतंत्र रूप से भी उपयोगी हो सकते हैं।
Fresh
- Fresh, Deno का आधुनिक full-stack web framework है, जो default रूप से client-side JavaScript नहीं भेजता, और उपयोग में आसानी तथा बेहतर performance के लिए लगातार सुधारा जा रहा है।
Deno के cloud business का विस्तार
- Deno Subhosting, Netlify की edge functions और Deco.cx ग्राहकों के e-commerce stores को support करते हुए, अपनी खुद की service में बदला गया और अब यह किसी के लिए भी मुफ्त में उपलब्ध है।
- Deno ने Deno KV, Queues, Cron जैसे cloud primitives लॉन्च किए, और web development को बुनियादी रूप से सरल बनाने की अपनी vision की दिशा में प्रगति की।
Deno 2
- Deno 2 एक बेहतर runtime प्रदान करेगा, जिसमें Node और npm के साथ compatibility सुधार, और project dependencies को manage व optimize करने से जुड़े रोचक announcements शामिल होंगे।
GN⁺ की राय:
- Deno का Node.js के साथ compatibility को काफी बेहतर करना और web development को सरल बनाने पर ध्यान देना महत्वपूर्ण है। इससे मौजूदा Node.js developers के लिए Deno में transition आसान हो सकता है, और Deno adoption को बढ़ावा मिल सकता है।
- WebGPU जैसी advanced सुविधाओं का integration दिखाता है कि Deno अब सिर्फ एक server-side platform से आगे बढ़कर व्यापक application development के लिए उपयुक्त बन रहा है। यह खास तौर पर उन developers के लिए आकर्षक हो सकता है जिन्हें GPU-आधारित high-performance computing की ज़रूरत है।
- Fresh framework और Deno Deploy की प्रगति से संकेत मिलता है कि Deno full-stack web development में महत्वपूर्ण भूमिका निभा सकता है, और cloud-based service के रूप में Deno की स्थिति को मजबूत करता है। ये प्रगति Deno के आधुनिक web development के प्रमुख खिलाड़ियों में शामिल होने की संभावना को बढ़ाती हैं।
2 टिप्पणियां
Hacker News टिप्पणियाँ