يملك جيلفين ميزانية تزيد عن 24,000 دولار، تغطي نفقات 40 شهرًا، ويطلب من المستخدمين توجيه التبرعات إلى مؤلفي العملاء الذين يستخدمونهم.
يتماشى هذا الطلب مع سياسة "عدم التطوير المدفوع" الخاصة بـ Jellyfin، حيث أن التبرعات طوعية، وسيعيد المشروع التقييم إذا انخفضت الأموال إلى ما يعادل 12 شهر ًا من التشغيل.
أعضاء المجتمع يستجيبون بشكل إيجابي، مع خطط لدعم مؤلفي العملاء واستفسارات حول دعم العملاء المحدد مثل WebOS.
أعلن مشروع Jellyfin، وهو خادم وسائط مفتوح المصدر، أنهم يمتلكون تمويلًا كافيًا واقترحوا على المتبرعين دعم مشاريع أخرى في النظام البيئي بدلاً من ذلك.
المجتمع منقسم حول هذا النهج؛ فبعضهم يعتقد أن الأموال يجب أن توزع على مطوري النظام البيئي، بينما يتفق آخرون مع قرار Jellyfin بتجنب الأعباء الإدارية الإضافية.
تسلط المناقشة الضوء على التعقيدات والمشكلات المحتملة لإدارة التبرعات داخل المشاريع مفتوحة المصدر، بما في ذلك الشفافية، والأعباء الإدارية، والحفاظ على التركيز على التطوير الأساسي.
يُعد نوع Pin ومفهوم التثبيت من المكونات الأساسية ولكن غالبًا ما يُساء فهمها في نظام Rust البيئي غير المتزامن.
تم تقديم Pin لدعم الأنواع الذاتية الإشارة في لغة Rust غير المتزامنة، لضمان عدم تحرك الكائنات بمجرد أن تحتوي على إشارات ذاتية، على عكس Mojo، الذي يتعامل بشكل جوهري مع هوية الكائن.
على الرغم من ضرورته، يقدم Pin تعقيدًا كبيرًا للمستخدمين بسبب افتقاره إلى السكر النحوي والدعم، مما يؤدي إلى مشكلات مثل إعادة الاقتراض، الإسقاطات المثبتة، والتفاعلات مع سمة Drop.
تدور المناقشة حول نوع Pin في لغة البرمجة Rust، والذي غالبًا ما يُساء فهمه بسبب التوثيق غير الواضح.
يضمن Pin أن بعض الكائنات لا يمكن نقلها في الذاكرة، وهو أمر بالغ الأهمية للهياكل الذاتية الإشارة، ولكن هذا المفهوم غير موضح بشكل جيد في الوثائق الرسمية.
تُبرز المحادثة الحاجة إلى توثيق أفضل وتشبيهات لتسهيل فهم مفهوم Pin و Unpin لمطوري لغة Rust، خاصةً الجدد منهم.
Jiff هي مكتبة جديدة في لغة Rust للتعامل مع التواريخ والأوقات، تركز على سهولة الاستخدام والأداء، مستوحاة من اقتراح Temporal في JavaScript.
يقدم ميزات مثل البدائيات الزمنية عالية المستوى، التكامل السلس مع قاعدة بيانات المناطق الزمنية، الحسابات المدركة للتوقيت الصيفي، التنسيق، التحليل، ودعم Serde الاختياري.
يتم ترخيص Jiff بموجب MIT أو UNLICENSE، ويدعم أنظمة Unix وWindows، ويتطلب Rust 1.70.0 أو أحدث.
Jiff هي مكتبة جديدة للتاريخ والوقت بلغة Rust، تم تطويرها بواسطة BurntSushi، المعروف بإنشاء أدوات عالية الجودة مثل ripgrep.
تهدف المكتبة إلى معالجة التعقيدات في التعامل مع التاريخ والوقت، مثل الحسابات المتعلقة بالتوقيت الصيفي، والحسابات المدركة للمناطق الزمنية، واكتشاف النزاعات الزمنية بأثر رجعي.
يقدم Jiff واجهة برمجة تطبيقات أكثر سهولة ومرونة مقارنة بالمعيار الحالي، Chrono، مع الحفاظ على الدقة والقدرة في عمليات التاريخ والوقت.
تسبب انقطاع كبير في 19 يوليو ناتج عن تحديث برنامج تشغيل النواة في حدوث أعطال في أنظمة ويندوز على مستوى العالم، مما يبرز الحاجة إلى آليات تحديث أكثر أمانًا.
eBPF (مرشح حزم بيركلي الموسع)، الذي يُستخدم بالفعل في نظام لينكس، هو بيئة تنفيذ آمنة للنواة يمكنها منع مثل هذه الأعطال وستدعمها قريبًا نظام ويندوز.
يتم فحص برامج eBPF من حيث الأمان وتوضع في بيئة معزولة، مما يوفر فوائد مثل تعزيز الأمان وتقليل استخدام الموارد، مع اعتمادها من قبل شركات مثل سيسكو وجوجل وميتا للأمان والمراقبة.
دعم eBPF (مرشح حزم بيركلي الموسع) من مايكروسوفت لنظام ويندوز يقتصر حاليًا على تصفية الحزم، على عكس برامج تشغيل مراقبة النواة الشاملة من Crowdstrike.
دمج eBPF في الأطر الحالية لنظام Windows يمثل تحديًا، ومن غير المؤكد ما إذا كانت مايكروسوفت تهدف إلى جعله معيارًا.
يمكن أن يعزز eBPF الأمان من خلال عزل كود النواة، لكنه ليس حلاً كاملاً، كما أبرز حادث Crowdstrike الأخير، الذي يؤكد الحاجة إلى تحسين ممارسات النشر وتدابير الأمان.
تؤكد المشاركة على مبدأ "حلل، لا تتحقق"، داعية إلى تحليل البيانات للحفاظ على المعلومات في نظام النوع بدلاً من التخلص منها من خلال التحقق.
يشرح كيف يمكن لتصميم مدفوع بالنوع في لغات مثل Haskell تحويل الدوال الجزئية إلى دوال كلية عن طريق تقوية أنواع الوسائط، باستخدام قوائم NonEmpty كمثال.
تشمل النصائح العملية استخدام هياكل بيانات دقيقة، وإعادة ال هيكلة لدفع أعباء الإثبات إلى الأعلى، وتجنب تمثيلات البيانات غير الطبيعية لتحسين موثوقية البرنامج وسلامته.
تؤكد المقالة "حلل، لا تتحقق" على أهمية تحليل البيانات لضمان صحتها بدلاً من التحقق منها بشكل متكرر طوال البرنامج.
تعتمد هذه المقاربة على مفاهيم مثل التصميم بالعقد وتصميم المجال الموجه (DDD)، وتستفيد من أنظمة النوع القوية لفرض الضمانات وتقليل الأخطاء، مما يجعل الكود أسهل في الفهم والصيانة.
تسلط المناقشة الضوء على أمثلة عملية وفوائد، مثل استخدام أنواع مميزة لمراحل التحقق المختلفة وضمان أن تكون البيانات دائمًا في حالة صالحة، مما يمكن أن يبسط التطبيقات المعقدة ويحسن الموثوقية.