Bazel একটি লং টার্ম সাপোর্ট (LTS) রিলিজ মডেল বজায় রাখে, যেখানে প্রতি নয় মাসে একটি বড় সংস্করণ প্রকাশিত হয় এবং ছোট সংস্করণগুলি প্রতি মাসে প্রকাশিত হয়। এই পৃষ্ঠাটি রিলিজ প্রার্থী, টাইমলাইন, ঘোষণা এবং পরীক্ষা সহ Bazel রিলিজ নীতি কভার করে।
Bazel রিলিজ GitHub এ পাওয়া যাবে।
প্রার্থীদের ছেড়ে দিন
Bazel এর একটি নতুন সংস্করণের জন্য একটি রিলিজ প্রার্থী সাধারণত প্রতি মাসের শুরুতে তৈরি করা হয়। কাজটি GitHub-এ একটি রিলিজ বাগ দ্বারা ট্র্যাক করা হয় যা একটি লক্ষ্য প্রকাশের তারিখ নির্দেশ করে এবং বর্তমান রিলিজ ম্যানেজারকে বরাদ্দ করা হয়। রিলিজ প্রার্থীদের সমস্ত Bazel ইউনিট পরীক্ষা পাস করা উচিত, এবং Buildkite- এ পরীক্ষিত প্রকল্পগুলিতে কোন অবাঞ্ছিত রিগ্রেশন দেখাবেন না।
বাজলে-আলোচনায় মুক্তি প্রার্থীদের ঘোষণা করা হয়। পরের দিনগুলিতে, Bazel টিম প্রার্থীদের মধ্যে কোনো রিগ্রেশনের জন্য কমিউনিটি বাগ রিপোর্টগুলি পর্যবেক্ষণ করে।
মুক্তি দিচ্ছে
যদি কোন রিগ্রেশন আবিষ্কৃত না হয়, প্রার্থী আনুষ্ঠানিকভাবে এক সপ্তাহ পরে মুক্তি পায়। যাইহোক, রিগ্রেশন রিলিজ প্রার্থীর মুক্তি বিলম্ব করতে পারে। রিগ্রেশন পাওয়া গেলে, ব্যাজেল দল সেই রিগ্রেশনগুলি ঠিক করার জন্য রিলিজ প্রার্থীর সাথে সংশ্লিষ্ট চেরি-পিক প্রয়োগ করে। যদি প্রথম রিলিজ প্রার্থীর পর থেকে এক সপ্তাহ পর পরপর দুই ব্যবসায়িক দিনের জন্য আর কোনো রিগ্রেশন পাওয়া না যায়, প্রার্থীকে ছেড়ে দেওয়া হয়।
এটি কাটার পরে নতুন বৈশিষ্ট্যগুলি একটি রিলিজ প্রার্থীর মধ্যে চেরি-বাছাই করা হয় না। অধিকন্তু, যদি একটি নতুন বৈশিষ্ট্য বগি হয়, তবে বৈশিষ্ট্যটি রিলিজ প্রার্থীর কাছ থেকে ফিরিয়ে আনা হতে পারে। রিলিজ বিল্ডকে খুব বেশি প্রভাব ফেলতে বা ভাঙ্গার সম্ভাবনা আছে এমন বাগগুলিই রিলিজ ক্যান্ডিডেটে কাটার পরে ঠিক করা হয়।
একটি রিলিজ শুধুমাত্র একটি দিনে মুক্তি পায় যেখানে পরের দিন একটি ব্যবসায়িক দিন।
সাম্প্রতিক রিলিজে যদি কোনো জটিল সমস্যা পাওয়া যায়, তাহলে Bazel টিম রিলিজে ফিক্স প্রয়োগ করে একটি প্যাচ রিলিজ তৈরি করে। যেহেতু এই প্যাচটি একটি নতুন তৈরি করার পরিবর্তে একটি বিদ্যমান রিলিজ আপডেট করে, প্যাচ রিলিজ প্রার্থীকে দুই কার্যদিবসের পরে প্রকাশ করা যেতে পারে।
পরীক্ষামূলক
ci.bazel.build- এ চলমান সমস্ত প্রকল্পের একটি রাত্রিকালীন বিল্ড চালানো হয়, মাথায় নির্মিত Bazel বাইনারি ব্যবহার করে এবং বাইনারি প্রকাশ করা হয়। একটি ব্রেকিং পরিবর্তন দ্বারা প্রভাবিত হতে যাচ্ছে প্রকল্পগুলি বিজ্ঞপ্তি দেওয়া হয়.
যখন একটি রিলিজ প্রার্থী জারি করা হয়, তখন অন্যান্য Google প্রোজেক্ট যেমন TensorFlow তাদের সম্পূর্ণ টেস্ট স্যুটে রিলিজ প্রার্থী বাইনারি ব্যবহার করে পরীক্ষা করা হয়। আপনার যদি Bazel ব্যবহার করে একটি সমালোচনামূলক প্রকল্প থাকে, তাহলে আমরা সুপারিশ করব যে আপনি একটি স্বয়ংক্রিয় পরীক্ষার প্রক্রিয়া স্থাপন করুন যা বর্তমান রিলিজ প্রার্থীকে ট্র্যাক করে এবং কোনো রিগ্রেশনের রিপোর্ট করে।