الإصدارات والإعلانات، الأحدث أولًا. راجع سجل التغييرات للاطلاع على التفاصيل التقنية الكاملة وراء كل منها.
✉احصل على إشعار بالبريد الإلكتروني
رسالة واحدة لكل إعلان، ولا شيء غير ذلك. يمكنك إلغاء الاشتراك في أي وقت، دون حاجة إلى تسجيل الدخول.
2026-10-04
fucini-coverage — Coverage Studio على سطر الأوامر، مجانًا
القارئ الذي يقوم عليه إصدارا VS Code وVisual Studio يعمل الآن حيث لا محرر: npm install -g fucini-coverage يضعه على Windows وLinux وWSL وmacOS. fucini-coverage check بوابة لخط أنابيب — الأسطر والفروع والدوال وMC/DC والشروط والأسطر التي غيّرها فرع مقارنةً بـ origin/main — وينتهي برمز الخروج 1 تحت العتبة؛ وexport يكتب التشغيل بصيغة CSV أو Markdown أو LCOV أو Cobertura أو SARIF؛ وreport يكتب تقرير HTML، وbadge الشارة، وcompare ما تغيّر مقارنةً بآخر تشغيل ناجح، وmcp يقدّم الأدوات الست التي يستطيع وكيل ذكاء اصطناعي أن يسألها. سبعة وعشرون تنسيقًا تُقرأ، وتُدمج كما يدمجها المحرران، والأرقام نفسها حتى آخر خانة.
يقرأ ملف الإعدادات الذي يقرؤه إصدار Visual Studio، fucini-coverage.json، بمفاتيح إعدادات VS Code نفسها، فيضبط الفريق عتباته مرة واحدة ويحكم بها كل إصدار وكل خط أنابيب. وكل أمر يوثّق نفسه: fucini-coverage help check. وهو مجاني، ويصدر مع 2.2026.0 البناء 1 من الإصدارين — انظر fucini-coverage على npm وصفحة التنزيل.
Screenshot pending — add assets/img/cli-demo.gif (see SCREENSHOTS.md).
2026-10-04
Coverage Studio 2.2026.0 لـ VS Code ولـ Visual Studio — التغطية المعروضة على الشاشة، لوكلاء الذكاء الاصطناعي
الوكيل الذي يكتب الاختبارات كان يستطيع أن يشغّلها وأن يقرأ نسبة مئوية؛ لكنه لم يكن يستطيع أن يسأل عمّا يعرفه المحرّر. منذ 2.2026.0 صار يستطيع: ست أدوات تجيب عن أيّ أسطر دالةٍ لم تُنفَّذ قط، وأيّ جانب من فرعٍ لم يُسلك، وأيّ الاختبارات نفّذت سطرًا، وهل الفرق (diff) مغطّى، وما الذي تغيّر منذ آخر تشغيل — من التشغيل المحمَّل، بالاستبعادات نفسها والأرقام نفسها التي على الشاشة. وكيل VS Code نفسه يملكها دون أي إعداد؛ وكل وكيل يتحدث MCP يصل إليها عبر خادم يشغّله المحرّر حين تطلب أنت تشغيله، على هذا الجهاز وحده وخلف رمز مميز خاص بك. ويقول دليل المستخدم كيف.
يحمل الإصداران كلاهما الآن رقم الإصدار نفسه، ومعه كل ما جاء منذ 1.2026.7: السطر الذي نفّذه اختبار فاشل يُعلَّم، وRun Tests Affected by My Changes… يشغّل فقط الاختبارات التي يمسّها تغيير، وبوابة على الشيفرة الجديدة تقف إلى جانب البوابات على التشغيل كله، والاستبعادات يمكن أن تذكر السبب، وShow Minimal Test Set… يجد أقل عدد من الاختبارات يظل ينفّذ كل سطر، وتغطية الشروط في GCC 14 تُعرض سطرًا سطرًا، وRun This Test with Coverage يقرأ Go وRust، والشيفرة الجديدة يمكن عدّها حسب المؤلف وحسب التاريخ، ومُخرَج (artifact) من CI على هيئة ملف zip يُفتح، وRun App with Coverage… يقيس ما يبلغه إنسان، وRun Mutation Tests Here يسأل هل كان اختبارٌ سيلاحظ. وتقرير .NET يعرض الآن تغطية فروعه، التي كانت طريقة Coverlet في كتابتها قد أخفتها: تلك الأرقام تتغيّر. وفي Visual Studio صارت خطة الاشتراك تقرّر ما تقرّره في VS Code. كل خطوة في سجل التغييرات، والبناءان كلاهما على صفحة التنزيل.
2026-09-29
Coverage Studio 1.2026.7 لـ VS Code و1.2026.6 لـ Visual Studio — أي الاختبارات شغّلت سطرًا، والتغطية بعد كل حفظ، وخط أساس من CI
يضيف هذا الإصدار عشر ميزات إلى الإصدارين كليهما. صار Coverage Studio قادرًا على أن يقول أي الاختبارات شغّلت سطرًا ويفتحها، وأن يشغّل الاختبارات التي تغطي ملفًا كلما حُفظ، وأن يشغّل مع التغطية الاختبار الواحد الذي تحت المؤشر، وأن يقيس كل تحميل مقابل التقرير الذي ينشره بناء فرعك الرئيسي. وما لا ينبغي أن يُحسب يمكن استبعاده من الشجرة، أو حسب فضاء الأسماء أو السمة، أو حيث توجد الشيفرة؛ ويمكن قراءة تشغيل .NET حسب فضاء الأسماء والصنف والطريقة؛ وللشجرة مربع بحث يفهم < 80% أيضًا؛ وتجمع جلسة التغطية تشغيلات عدة مجموعات اختبار حتى تنهيها. وفي Visual Studio يشغّل Run Native Project with Coverage مشروع C++ الابتدائي مع أدوات قياس clang-cl. وفي دليل المستخدم قسم لكل منها.
من بين الإصلاحات: لم يعد تقرير تشغيل الاختبارات يحمل اسم المستخدم واسم الجهاز، ولم يعد ملف ترويسة من الماكرو يظهر ملفًا بنسبة 100%، ورقم الفروع في بناء MC/DC يطابق llvm-cov report، وخمس صيغ تقارير كانت تُرفض بوصفها غير مدعومة صارت تُعرف. كل شيء في سجل التغييرات، والبناءان كلاهما في صفحة التنزيل.
2026-09-28
Coverage Studio 1.2026.6 لـ VS Code و1.2026.5 لـ Visual Studio — حرف بدل في مسار كامل، وتقريران يُتعرَّف عليهما من جديد
عملية البناء التي تكتب تقاريرها تحت مجلد خاص بها — build/coverage-merged/*.lcov.info، واحد لكل وحدة — يمكن الآن تسميتها في coverageFile.paths بحرف بدل في مسار كامل، في VS Code كما في Visual Studio، ويراقب الإصداران كلاهما المجلدات التي يسمّيها مثل هذا المدخل: يُحمَّل تقرير البناء التالي لحظة وصوله، سواء كان هناك تقرير عند فتح المشروع أم لا. وفي دليل المستخدم الأشكال التي يمكن أن يتخذها المدخل.
تقريران كانا يُرفضان بوصفهما غير مدعومين يُقرآن من جديد: تصدير llvm-cov بصيغة JSON كان سجلُّ ملفه الأول طويلًا بما يكفي لدفع كل ما يمكن التعرّف عليه خارج البداية المفحوصة، وملف gcov --json-format ذو اثنتي عشرة دالّة، يسردها قبل أسطره. كل شيء في سجل التغييرات، والبناءان كلاهما على صفحة التنزيل.
2026-09-26
Coverage Studio 1.2026.5 لـ VS Code و1.2026.4 لـ Visual Studio — تقريران وجواب واحد
حين يقيس تقريران الشفرة نفسها عن قصد — المصادر نفسها مبنية بـ clang وبـ GCC، أو اختبارات الوحدات والتكامل لبناء واحد — لم يعد على الأحدث أن يفوز. اختر لكل ملف أيّ تقرير يتحدث باسمه، أو ادمجها: agree لا يعدّ السطر مغطى إلا حيث نفّذه كل تقرير ويعلّم الأسطر المختلف عليها باللون الأزرق المخضر، وunion حيث نفّذه أيٌّ منها. انقر بزر الماوس الأيمن على ملف في عرض Coverage واختر Choose Coverage Source...؛ ويقول دليل المستخدم متى يُستخدم كلٌّ منهما، وفي العرض التوضيحي عيّنة من clang وGCC لتجربته عليها.
ويلوّن الإصداران كلاهما أيضًا الأسطر المغطاة بالأخضر في وضع جديد للهامش بالأحمر والكهرماني والأخضر، ويتيحان ضبط درجات الخريطة الحرارية مع معاينة حية، ويضعان في شريط الحالة الرقم نفسه الذي في البطاقة التي يفتحها. كل شيء في سجل التغييرات، والبناءان كلاهما على صفحة التنزيل.
2026-09-24
Coverage Studio لـ Visual Studio 1.2026.2 — كل تشغيل للاختبارات، وكل تقرير، وما تحرّك؛ وVS Code 1.2026.3
بعد يوم واحد من إصداره الأول، صار في إصدار Visual Studio ما يستخدمه المشتركون أكثر في VS Code: التغطية بعد كل تشغيل من Test Explorer، دون التشعّب في Test Explorer؛ وRun Tests with Coverage؛ والمثلثات لما تحرّك منذ آخر تشغيل، والسجل، وتغطية الفروق؛ وCheck Coverage Thresholds مع النتائج في Error List؛ والمصدر المشروح في نافذة خاصة به، وتقارير HTML، والتصديرات الثمانية، والشارة؛ وبؤر الخطر ومرشّحات الصفوف؛ وfucini-coverage.json بجانب الحل، للفريق الذي يفضّل ألا يحتفظ بمجلد .vscode. في سجل التغييرات كل بند، وفي دليل المستخدم تقول مربعات In Visual Studio أين يوجد كل منها.
يجلب VS Code 1.2026.3 الأمرين الجديدين في كلا الإصدارين — بؤر الخطر تحت الشجرة، الدوال التي يلتقي فيها الكود المعقّد بتغطية قليلة، ومرشّحًا بجانب الفرز للملفات ذات الثغرات أو غير المختبَرة أو التي تغيّرت منذ آخر تشغيل — وثلاثة لـ .NET: dotnet test بلا حزمة Coverlet، والملفات المولَّدة وملفات المصمّم مستبعدة من كل مجموع، والتشغيل الفاشل الذي يُبقي آخر تغطية سليمة على الشاشة. كلاهما على صفحة التنزيل.
2026-09-24
Fucini DevOps Studio: كل تغطية Coverage Studio على البناء، في امتداد مجاني
يعرض Azure DevOps التغطية على البناء اليوم، لكن بقدر ما يبلغه تنسيقه هو فحسب: الأسطر، والفروع نسبةً مئوية. سيضع Fucini DevOps Studio بدلًا من ذلك كل ما يقرؤه Coverage Studio على البناء — كل واحد من التنسيقات الخمسة والعشرين، لكل لغة، مع MC/DC والشروط والمناطق والنتيجة المركّبة ودرجة CRAP والبوابات — في علامة تبويب Coverage على خط الأنابيب الذي أنتجها، بالأرقام نفسها التي يعرضها المحرر، حتى آخر خانة. القارئ نفسه، في المكان الثالث الذي يُحتاج إليه فيه.
تحديث 3 أكتوبر: سيكون مجانيًا — الامتداد كله، على Azure DevOps Services وعلى Azure DevOps Server، ولن يكون هناك إصدار مدفوع. إعلان لا إصدار — اشترك أعلاه لتعرف متى يصدر.
2026-09-23
صدر Coverage Studio لـ Visual Studio — Community وProfessional وEnterprise، 2022 و2026
القارئ نفسه في البيئة الأخرى: نزّله، وافتح حلًا أو مجلدًا، فيظهر التقرير الذي كتبه بناؤك أصلًا على الكود — وعلى Visual Studio 2022 Community وProfessional أيضًا، اللذين لا تغطية خاصة لهما. مشمول في كل خطة مدفوعة؛ والجهاز الذي فُعِّل فيه Coverage Studio لـ VS Code لا يحتاج إلى مفتاح خاص، وفي أي مكان آخر يقبل Tools → Coverage Studio → Licence… رمز اشتراكك. تقود صفحة البدء كلا المحررين عبر الخطوات الست نفسها، ويذكر دليل المستخدم أين يختلفان، وسجل التغييرات ما يحمله هذا الإصدار الأول.
ومعه VS Code 1.2026.2: الخطوات الست نفسها كجولة إرشادية في صفحة Welcome، ومعرّف التثبيت متروك حيث يقرؤه إصدار Visual Studio، فيغطي تفعيل واحد كليهما. وتغيير في الشروط: الاسترداد ينهي الآن فورًا الاشتراك الذي دفع ثمنه، استرداد واحد لكل عميل — التفاصيل في سياسة الاسترداد.
2026-09-20
السابع على الطريق أمامنا: Coverage Studio لـ Visual Studio
Coverage Studio قادم إلى Visual Studio — Community وProfessional وEnterprise، 2022 و2026 — وبداخله القارئ نفسه، فيعطي التقرير نفسه الأرقام نفسها، إلى الرقم، في كلا المحررين. الأمر يهم أكثر حيث لا يقدّم Visual Studio نفسه شيئًا: في Visual Studio 2022 تغطية الكود ميزة لإصدار Enterprise، وفريق C++ أو C# على Community أو Professional لم يرَ تغطية في تلك البيئة قط، مهما كان ما يكتبه بناؤهم أصلًا. سيكون مشمولًا في اشتراك Coverage Studio دون تكلفة إضافية، على الجهاز الذي تستخدمه عليه بالفعل. اقرأ ما يفعله، وما لن يفعله.
أُعلن عنه ولم يُصدر بعد: يجري اختباره على كلا إصداري Visual Studio قبل عرضه للتنزيل. اشترك أعلاه لتعرف متى يصدر.
2026-09-06
الطريق إلى الأمام: الإعلان عن ستة منتجات، لكل منها صفحته الخاصة
لم يعد Coverage Studio الشيء الوحيد على fucini.software. أُعلن عنها اليوم ولم يصدر أي منها بعد: FuciniLog، مجمّع سجلات صغير لمضيفي Windows والأهداف المضمّنة بتشفير من طرف إلى طرف؛ Fucini Beacon، اكتشاف بلا إعداد يتيح للجهاز أن يعلن من هو قبل أن يمنحه أحد عنوانًا؛ Fucini DevOps Studio، الذي يجلب التغطية وتنسيق الويكي وإنشاء الفروع إلى Azure DevOps؛ FuciniUML لـ VS Code؛ Fucini Running Coach؛ وFucini Puzzle Solver.
لكل منها صفحة تشرح ما هو، وعلى ماذا يعمل، وبالنسبة إلى FuciniLog المعايير التي يعتمدها وما هو مفتوح المصدر. إن كان أحدها حاسمًا بالنسبة إليك فأخبرنا عبر صفحة الاتصال؛ هكذا يُحدَّد الترتيب. اشترك أعلاه لتعرف متى يصدر كل منها.
2026-09-03
أحد عشر صيغة جديدة: Go وAda وسويفت، وكل ما يكتبه بناؤك أصلًا
قبل أسبوعين كان Coverage Studio يقرأ ست صيغ؛ وهو يقرأ الآن سبع عشرة. ملف coverage.out في Go، وClover لـ PHP، وOpenCover لـ .NET، وJSON الخاص بـ coverage.py، وJSON الخاص بـ gcov/gcovr، كلها تُحمَّل مباشرة — بلا خطوة تحويل، وبلا فقدان أي مقياس في الطريق.
ثم الأدوات التي تمتلكها فرق السلامة فعلًا: يُدخل GNATcoverage XML لغة Ada أخيرًا، ويغطي BullseyeCoverage و.coveragexml الخاص بـ Visual Studio سلاسل الأدوات التجارية لـ C/C++ و.NET، وتظل تغطية SonarQube العامة مخرج الطوارئ لكل ما عداها. أما سويفت وObjective-C فتصل عبر تقرير xccov الخاص بـ Xcode نفسه — نسب مئوية وأعداد لكل دالة، لكن بلا بيانات لكل سطر، ولذلك تبقى علامات الهامش هناك فارغة عن قصد.
ويكمل JSON الخاص بـ Coveralls القائمة، وصار بإمكان أي صيغة مدعومة أن تصل مضغوطة بـ gzip، وتجد الوصفات الجاهزة لكل لغة في صفحة Coverage Recipes.
2026-08-22
نقدم Fucini Coverage Studio Community — مجاني، إلى الأبد
بدلًا من التوقف التام بمجرد انتهاء الفترة التجريبية للتقييم، ينتقل كل تثبيت الآن إلى فئة Community مجانية ودائمة: جميع الميزات باستثناء MC/DC، وقدر شهري بسيط من Full HTML Report وعرض Annotated Source الدائم، وحدود يومية سخية على عدد قليل من الإجراءات القابلة للأتمتة — وكل ما عدا ذلك بلا حدود.
تريد فتح كل شيء، بما في ذلك MC/DC، دون دفع؟ شغّل "Fucini Coverage: Unlock Full Features" من لوحة الأوامر وقايض بيانات قياس عن بُعد تفصيلية عن الاستخدام مقابل منح كامل وغير مقيّد — ويمكن التراجع عنه في أي وقت.
أصبح لـ Community الآن إدراج مخصص خاص به ومجاني بشكل دائم — راجع صفحة التنزيل للحصول عليه مباشرة.
2026-08-22
خطط الفرق: Pro Plus وBusiness وEnterprise
أصبحت هذه الخطط الثلاث تتشارك الآن "مجمّع مقاعد" — رمز شركة واحد يغطي عددًا ثابتًا من الأجهزة — بدلًا من مفتاح منفصل لكل جهاز. والمقعد الذي يهدأ لفترة يتحرر تلقائيًا للشخص التالي الذي يحتاجه، ويحافظ تسجيل دخول دوري في الخلفية على تحديث منح الجميع دون أن يضطر أحد إلى طلب مفتاح جديد يدويًا.