بناء سريع لـ Rust: أسرار CI أقل من 10 دقائق

2025-06-20

من الشائع الشكوى من بطء عملية تجميع Rust، لكن المؤلف يجادل بأن معظم مشاريع Rust تُجمّع أبطأ بكثير مما ينبغي. باستخدام rust-analyzer (200 ألف سطر من التعليمات البرمجية بالإضافة إلى مليون سطر من التبعيات) كمثال، تم تحقيق خط أنابيب CI مدته 8 دقائق على GitHub Actions. تُفصّل المقالة استراتيجيات لتحسين أوقات التجميع، بما في ذلك الاستفادة من ذاكرة التخزين المؤقت لـ CI، وتقسيم مهام CI، وتعطيل التجميع المتزايد ومعلومات التصحيح، وتقليل التبعيات، واستخدام `cargo build -Z timings` للتمثيل الشخصي، وتصميم التعليمات البرمجية بعناية لتجنب إنشاء مثيلات زائدة عن الحاجة للأنواع العامة على حدود crate. يُشدد المؤلف على تأثير وقت التجميع على إنتاجية المطورين، ويُوصي بتحسين أوقات التجميع بانتظام للحفاظ على أوقات CI لمشاريع Rust الكبيرة ضمن نطاق معقول، حوالي 10 دقائق.

التطوير