Deno 1.31 به طور خودکار package.json را شناسایی می کند و از آن برای نصب و رفع وابستگی ها استفاده می کند و جابجایی از Node.js را آسان تر می کند.
Deno 1.31، آخرین نسخه زمان اجرا رقیب Node.js برای JavaScript، TypeScript و WebAssembly، پشتیبانی package.json
را اضافه می کند. ویژگی جدید یکی از چندین پیشرفتی است که برای آسانتر کردن انتقال از پروژههای Node.js برای توسعهدهندگان طراحی شده است.
Deno now به طور خودکار یک package.json
را شناسایی می کند و از آن برای نصب و رفع وابستگی های استفاده شده استفاده می کند. این همچنین اجرای اسکریپت های خاص پروژه را که در بخش scripts
با deno task
تعریف شده اند، فعال می کند. با این حال، پشتیبانی فعلی محدود به اسکریپت های ساده است. برنامههایی مانند rimraf
یا cross-env
هنوز کار نخواهند کرد، اما پشتیبانی از آنها در نسخههای آینده اضافه خواهد شد.
Deno 1.31 همچنین Node-API (N-API) را تثبیت می کند. برنامهنویسان دیگر نیازی به استفاده از پرچم unstable
در هنگام استفاده از بستههای NPM ندارند که به این API متکی هستند. بسیاری از رفع اشکال در Node-API اعمال شد و بسته های بیشتری را می توان بدون مشکل استفاده کرد. اشکالات باقیمانده در هفته های آینده برطرف خواهند شد.
علاوه بر این، Deno 1.31 لایه سازگاری Node.js را مستقیماً به زمان اجرا Deno منتقل می کند. قبلاً، سازگاری Node.js با استفاده از https:/deno.land/std.node
، مجموعهای از polyfills در کد کاربرلند در کتابخانه استاندارد Deno ارائه میشد. از آنجایی که وابستگی به https://deno.land/std
باید با هر نسخه از Deno افزایش می یافت، لایه سازگاری باید پس از هر ارتقا دانلود می شد. اکنون لایه سازگاری در زمان اجرا تعبیه شده است و از عکسهای فوری موتور جاوا اسکریپت V8 برای کاهش زمان راهاندازی استفاده میشود. یکپارچهسازی دقیقتر، چندپرکردن آسانتر APIهای گمشده را امکانپذیر میکند و عملکرد ماژولهای داخلی Node.js را بهبود میبخشد. برای استفاده از polyfills تعبیه شده، توسعه دهندگان می توانند از node: specifiers
وارد کنند.
در ۲۴ فوریه رونمایی شد، Deno 1.31 از طریق ارتقای deno
برای کاربران فعلی گزینههای نصب دیگر در GitHub فهرست شدهاند. Deno 1.31 به دنبال انتشار ماه گذشته Deno 1.30 است که پشتیبانی از ماژولهای Node.js را بهبود بخشید.
همچنین در Deno 1.31:
- در یک تغییر شکست، اشاره گرها اکنون به صورت اشیاء ساده یا null برای نشانگرهای تهی نشان داده می شوند. این اشیاء توسط V8 ایجاد شده و توسط V8 Fast API پشتیبانی میشوند و عملکرد FFI (رابط عملکرد خارجی) را هنگام کار با پارامترهای نوع
“pointer”
بهبود میبخشند و مقادیر نسخههای قبلی را برمیگردانند. اشیاء اشاره گر مات هستند و نمی توان آنها را مستقیماً از جاوا اسکریپت دستکاری کرد. بنابراین، FFI برای استفاده ایمنتر میشود و جعل نشانگر دیگر به آسانی نوشتن یک شماره جاوا اسکریپت نیست. توجه داشته باشید که FFI API ناپایدار است. - APIهای
Deno.Command
وDeno.osUptime()
اکنون تثبیت شدهاند. به توسعه دهندگان توصیه می شود که ازDeno.run()
API بهDeno.Command
مهاجرت کنند. - API
Deno.build.os
اکنون انواع بیشتری را برای سیستم عاملها برمیگرداند، مانند"darwin"
،"linux"
، < code>“windows” و"solaris"
. - برای کتابخانه استاندارد، ماژولهای
https://deno.land/std/node
حذف شدهاند. این کد اکنون مستقیماً در زمان اجرا Deno تعبیه شده است. - برای رابط فرمان، دستور
deno bundle
دیگر پشتیبانی نمیشود و در خروجی راهنما نشان داده نمیشود. - همچنین برای CLI،
deno benchcode
اکنون پرچم--json
را می پذیرد که نتایج محک را به صورت JSON چاپ می کند. - اعلام مجوز تعاملی اکنون گزینه جدیدی را می پذیرد،
A
. این گزینه اعطای مجوز برای تماسهای بعدی به APIها با استفاده از دامنه اعطا شده را فعال میکند. deno compile
اکنون واردات پویا را درک می کند که در زمان کامپایل قابل حل است.
پست های مرتبط
Deno پشتیبانی package.json را اضافه می کند
Deno پشتیبانی package.json را اضافه می کند
Deno پشتیبانی package.json را اضافه می کند