يعتمد المشروع على وحدة لغة Rust التي تحمل الاسم نفسه، والتي تسمح لك بتضمين مترجم Python في برامج Rust لتشغيل نصوص Python النصية فيها. لقد تجاوز PyOxidizer الآن كونه مجرد وظيفة إضافية لـ Rust ويتم وضعه كأداة لبناء وتوزيع حزم Python القائمة بذاتها على جمهور أوسع. بالنسبة لأولئك الذين لا يحتاجون إلى توزيع التطبيقات كملف قابل للتنفيذ، يوفر PyOxidizer القدرة على إنشاء مكتبات مناسبة للربط مع أي تطبيق لتضمين مترجم Python ومجموعة الامتدادات الضرورية.
بالنسبة للمستخدمين النهائيين، يؤدي تسليم المشروع كملف واحد قابل للتنفيذ إلى تبسيط التثبيت إلى حد كبير ويلغي الحاجة إلى تحديد التبعيات، وهو أمر مهم، على سبيل المثال، لمشاريع Python المعقدة مثل برامج تحرير الفيديو. بالنسبة لمطوري التطبيقات، يتيح لك PyOxidizer توفير الوقت في تنظيم تسليم التطبيقات، دون الحاجة إلى استخدام أدوات مختلفة لإنشاء حزم لأنظمة تشغيل مختلفة.
استخدام التجميعات المقترحة له أيضًا تأثير إيجابي على الأداء - فالملفات التي تم إنشاؤها في PyOxidizer تعمل بشكل أسرع من استخدام نظام Python بسبب إلغاء استيراد وتعريف الوحدات الأساسية. في PyOxidizer، يتم استيراد الوحدات من الذاكرة - يتم تحميل جميع الوحدات المضمنة على الفور في الذاكرة ثم يتم استخدامها دون الوصول إلى القرص). في الاختبارات، تم تقليل وقت تشغيل التطبيق عند استخدام PyOxidizer بمقدار النصف تقريبًا.
ومن بين المشاريع المماثلة الموجودة بالفعل، يمكن ملاحظة ما يلي:
في المرحلة الحالية من التطوير، قام PyOxidizer بالفعل بتنفيذ الوظيفة الرئيسية لإنشاء ملفات قابلة للتنفيذ لأنظمة التشغيل Windows وmacOS وLinux. من الفرص غير المتاحة حاليا
المصدر: opennet.ru