۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

Rust ویژگی های تشخیصی را برای پیام های کامپایلر اضافه می کند

نکات اختیاری به کد منبع اجازه می‌دهد حتی زمانی که توسط همه کامپایلرها پشتیبانی نمی‌شوند، عیب‌یابی را ارائه دهد.

نکات اختیاری به کد منبع اجازه می‌دهد حتی زمانی که توسط همه کامپایلرها پشتیبانی نمی‌شوند، عیب‌یابی را ارائه دهد.

Rust 1.78 که به‌تازگی به‌عنوان آخرین نسخه زبان برنامه‌نویسی پرطرفدار و ایمن برای حافظه منتشر شد، برای تأثیرگذاری بر پیام‌های کامپایلر، پشتیبان فضای نام ویژگی #[diagnostic] اضافه می‌کند. .

تیم Rust گفت: این پیام‌ها به عنوان نکاتی در نظر گرفته می‌شوند که کامپایلر نیازی به استفاده از آن ندارد. همچنین ارائه تشخیصی که کامپایلر آن را تشخیص ندهد، خطا نیست. این ویژگی به گونه‌ای طراحی شده است که به کد منبع اجازه می‌دهد حتی زمانی که توسط همه کامپایلرها پشتیبانی نمی‌شوند، عیب‌یابی را ارائه دهد.

Java Reactive با Spring WebFlux و Reactor

۲ می اعلام شد، Rust 1.78 می توان از طریق rustup:

نصب کرد

$ rustup به‌روزرسانی پایدار است

یکی دیگر از ویژگی‌های Rust 1.78 مربوط به بیان پیش‌شرط‌های ناامن است. کتابخانه استاندارد Rust دارای تعدادی ادعا برای پیش‌شرط‌های توابع ناامن است، اما از نظر تاریخی آنها فقط در ساخت‌های #[cfg(debug_assertions)] از کتابخانه فعال شده‌اند تا از آن جلوگیری شود. موثر بر عملکرد انتشار از آنجایی که کتابخانه معمولاً در حالت انتشار جمع‌آوری و توزیع می‌شود، اکثر توسعه‌دهندگان Rust این بررسی‌ها را اجرا نمی‌کردند.

در Rust 1.78، شرط این ادعاها تا تولید کد به تعویق می‌افتد، بنابراین بسته به تنظیمات کاربر برای اظهارات اشکال‌زدایی، که به طور پیش‌فرض در اشکال‌زدایی و ساخت‌های آزمایشی فعال است، بررسی می‌شوند. تیم Rust گفت: این تغییر به شناسایی رفتارهای تعریف نشده در کد کمک می کند. با این حال، جزئیات مربوط به میزان بررسی معمولاً ثابت نیست.

5 روش برای بهبود صفحات گسترده برای گردش کار کسب و کار

تراز مجدد قطعی نیز در Rust 1.78 نشان داده شده است. کتابخانه استاندارد دارای عملکردهایی است که چینش نشانگرها و برش ها را تغییر می دهد، اما قبلاً اخطارهایی داشتند که تکیه بر آنها را در عمل دشوار می کرد. این اخطارها بیشتر به عنوان پوششی در برابر ارزیابی const وجود داشتند، اما آنها فقط برای استفاده غیرconst پایدار بودند. اکنون، به آنها قول داده شده است که مطابق با ورودی های واقعی رفتار زمان اجرا ثابتی داشته باشند.

آموزش کدنویسی به ماشین ها

Rust 1.78 همچنین تعدادی از APIها را تثبیت می کند، حداقل نیاز خود را به ویندوز ۱۰ برای اهدافی مانند x_86-pc-windows-msvc افزایش می دهد و LLVM همراه خود را به LLVM 18 ارتقا می دهد.

>

Rust 1.78 پس از انتشار در ۲۱ مارس Rust 1.77 است که از C-string literals پشتیبانی می‌کرد. دو نسخه بعدی نیز منتشر شد، Rust 1.77.1< /a>، که رفتار Cargo جدید را در ویندوز برای اهدافی که از MSVC استفاده می‌کنند (Microsoft C و C++) غیرفعال می‌کند، و Rust 1.77.2، که شامل رفع آسیب‌پذیری بود.