عن المشروع

rudb-compat هو إطار اختبار شامل مصمم للتحقق من توافق قاعدة بيانات rudb مع DuckDB. وهو يحوّل ادعاءات التوافق إلى بيانات قابلة للقياس عبر تنفيذ عمليات تفاضلية مقابل ملف DuckDB حقيقي. تقيّم المجموعة المطابقة عبر أربعة مستويات متميزة: توافق البيانات (دقة تنسيق التخزين)، وتوافق الاستعلامات (تغطية لهجة SQL)، وتوافق واجهة API (الالتزام بـ C ABI)، وتوافق المنظومة (الإضافات وبروتوكول الاتصال). تشمل الميزات الرئيسية: - **التنفيذ التفاضلي**: يقارن النتائج من rudb وDuckDB على استعلامات متطابقة لضمان التكافؤ السلوكي. - **التغطية المرجّحة**: يستخدم مقاييس مرجّحة بالاستخدام بدلاً من تغطية الشيفرة البسيطة لتقييم دعم دوال وعبارات SQL. - **التنصيف الآلي**: يقلّص ويُنصّف الاستعلامات الفاشلة تلقائياً لتحديد تمريرات المحسّن أو الأخطاء المنطقية المسببة للاختلافات. - **تكامل المجموعة النصية**: يعمل مقابل مجموعة `sqllogictest` الرسمية من DuckDB، ومعايير ClickBench، والاستعلامات المولّدة/التحولية لإيجاد الحالات الحدية. - **التحكم الصارم بالإصدارات**: يضمن إجراء المقارنات مقابل بصمة commit مثبّتة من DuckDB، وليس مجرد سلاسل الإصدار، لتجنب الانحراف. الأداة مخصصة للمطورين الذين يصونون rudb لتتبع التقدم نحو توافق كامل مع DuckDB، وللمستخدمين الذين يتحققون من سلامة الترحيل. وهي تعمل كمستودع منفصل للحفاظ على الاستقلالية عن التنفيذ الرئيسي وللسماح بالتحقق غير الموثوق.