বেজেল রোডম্যাপ

ওভারভিউ

Bazel প্রকল্প ক্রমাগত আপনার প্রয়োজনের প্রতিক্রিয়া হিসাবে বিকশিত হয় — বৈশিষ্ট্যগুলি বিকাশ করা এবং মূল পণ্যটির কার্যকারিতা বজায় রাখা, রিফ্যাক্টরিং এবং উন্নত করার সময় সহায়তা প্রদান করা।

এই পরিবর্তনগুলির সাথে, আমরা আমাদের ওপেন-সোর্স সম্প্রদায়কে অবহিত ও অন্তর্ভুক্ত রাখতে চাইছি। এই রোডম্যাপটি বজেল উন্নয়নের ভবিষ্যতের জন্য বর্তমান উদ্যোগ এবং ভবিষ্যদ্বাণীগুলি বর্ণনা করে, যা আপনাকে বর্তমান অগ্রাধিকার এবং চলমান প্রকল্পগুলিতে দৃশ্যমানতা দেয়।

এই রোডম্যাপ স্ন্যাপশট লক্ষ্য করে, এবং গ্যারান্টি হিসাবে নেওয়া উচিত নয়। অগ্রাধিকারগুলি বিকাশকারী এবং গ্রাহকদের প্রতিক্রিয়া, বা নতুন বাজারের সুযোগগুলির প্রতিক্রিয়াতে পরিবর্তন সাপেক্ষে।

এই রোডম্যাপের আপডেট সহ - নতুন বৈশিষ্ট্যগুলি সম্পর্কে অবহিত হতে - Google গ্রুপ সম্প্রদায়ে যোগদান করুন৷

Q4 — Bazel 6.0 রিলিজ

Q4 নিয়ে এসেছে Bazel 6.0 — নতুন দীর্ঘমেয়াদী সমর্থন (LTS) সংস্করণ। Bazel 6.0 নির্ভরতা পরিচালনা, অ্যান্ড্রয়েডের সাথে বিকাশ এবং আরও অনেক কিছুর জন্য নতুন শক্তিশালী এবং সম্প্রদায়ের অনুরোধ করা বৈশিষ্ট্যগুলি অন্তর্ভুক্ত করার পরিকল্পনা করেছে।

Bzlmod: বাহ্যিক নির্ভরতা ব্যবস্থাপনা সিস্টেম

Bzlmod স্বয়ংক্রিয়ভাবে ট্রানজিটিভ নির্ভরতা সমাধান করে, দ্রুত এবং সম্পদ-দক্ষ থাকাকালীন প্রকল্পগুলিকে স্কেল করার অনুমতি দেয়। Bazel 5.0-এ পরীক্ষামূলকভাবে প্রবর্তিত, Bzlmod সাধারণত উপলব্ধ হবে এবং হীরা নির্ভরতা সমস্যার সমাধান প্রদান করবে।

  • Bzlmod 'পরীক্ষামূলক' থেকে 'সাধারণত উপলব্ধ' হয়ে যায়
  • rules_jvm_external জন্য সমর্থন অন্তর্ভুক্ত করে, যা ব্যবহারকারীদের জাভা প্রকল্পের জন্য Maven নির্ভরতা ডাউনলোড করতে দেয়
  • Bzlmod মাইগ্রেশন গাইড Bzlmod গ্রহণ করতে চাওয়া দলগুলিকে সরঞ্জাম, স্ক্রিপ্ট এবং ডকুমেন্টেশন সরবরাহ করে
  • Bazel কেন্দ্রীয় সংগ্রহস্থল মূল Bazel BUILD নিয়মগুলি ( rules_jvm_external , rules_go , rules_python , rules_nodejs ) এবং Bzlmod এর জন্য প্রয়োজনীয় মূল নির্ভরতাগুলি হোস্ট করে

এই বিকাশের বিষয়ে আরও জানতে, Bzlmod সম্প্রদায়ের আপডেট দেখুন বা মূল ডিজাইন ডক পড়ুন।

বেজেল দিয়ে অ্যান্ড্রয়েড অ্যাপ তৈরি করুন

Bazel 6.0 উন্নত টুলিং এবং মার্জ-ইন সম্প্রদায় বৈশিষ্ট্য অবদান অন্তর্ভুক্ত করবে। আরও গ্রহণ এবং একটি ক্রমবর্ধমান কোডবেস প্রত্যাশিত, Bazel টিম Bazel Android নিয়মগুলির সাথে Android বিল্ড সরঞ্জামগুলির একীকরণকে অগ্রাধিকার দেবে৷

  • D8 আপডেট করে v. 3.3.28 এবং এটিকে ডিফল্ট ডেক্সার হিসাবে সেট করে।
  • 5.X-এ যোগ করা প্রধান সম্প্রদায় বৈশিষ্ট্য অবদানের সাথে একত্রিত হয় যার সমর্থন সহ:
    • D8 সহ অবিরাম কর্মী
    • ডি 8 ব্যবহার করে ডিসুগারিং
    • অ্যান্ড্রয়েড ম্যানিফেস্টে "ব্যবহার-অনুমতি" ট্যাগগুলিকে একত্রিত করা৷
    • অ্যান্ড্রয়েড রিসোর্স প্রক্রিয়াকরণে মাল্টিপ্লেক্স কর্মীরা

ঐচ্ছিক টুলচেইন

আমাদের ডেভেলপার সন্তুষ্টি জরিপ দেখিয়েছে যে নিয়ম লেখকরা আরও টুলচেন উন্নয়নের জন্য সমর্থন চান। Bazel 6.0 অন্যান্য প্ল্যাটফর্মের জন্য একটি ফলব্যাক বাস্তবায়নের সাথে উপলব্ধ হলে একটি ঐচ্ছিক, উচ্চ কর্মক্ষমতা টুলচেন ব্যবহার করে লেখকদের নিয়ম লিখতে অনুমতি দেবে।

Bazel-JetBrains* IntelliJ IDEA সমর্থন

JetBrains Bazel এর সাথে অংশীদারিত্ব করেছে Bazel IntelliJ IDEA প্লাগইন সহ-রক্ষণাবেক্ষণের জন্য, সম্প্রদায়ের স্টুয়ার্ডশিপ বাড়ানোর লক্ষ্যকে সমর্থন করে এবং বৈশিষ্ট্যের অনুরোধ এবং বিকাশের জন্য সক্ষমতা উন্মুক্ত করে।

  • IntelliJ প্লাগইন v. 2022.2 সর্বশেষ JetBrains প্লাগইন রিলিজের জন্য সমর্থন প্রদান করে
  • দূরবর্তী উন্নয়নের সাথে সামঞ্জস্য বাড়ায়
  • স্কালা সমর্থনের মতো ইন-ফ্লাইট বৈশিষ্ট্যগুলির জন্য আরও সম্প্রদায়-চালিত উন্নয়ন

এই উন্নয়ন সম্পর্কে আরও জানতে, Bazel-JetBrains ব্লগ ঘোষণা পড়ুন।

ভবিষ্যৎ উন্নতি

সামনের দিকে তাকিয়ে, Bazel টিম উন্নয়ন শুরু করেছে বা 2023 এবং তার পরেও নিম্নলিখিত বৈশিষ্ট্যগুলিকে অগ্রাধিকার দেওয়ার প্রত্যাশা করছে৷

Bazel এর Android বিল্ড নিয়ম উন্নত করা

বিল্ড, টেস্ট এবং ডিপ্লোয়মেন্টের মাধ্যমে ওয়ার্কফ্লোতে ফোকাস করে Android অ্যাপ ডেভেলপমেন্ট অভিজ্ঞতায় বিনিয়োগ করা চালিয়ে যান।

  • R8 এর জন্য মাইগ্রেশন এবং সমর্থন
  • স্টারলার্ক ভাষায় অনুবাদ সহ Android নিয়মের আপডেট
  • অ্যাপ বান্ডেলের জন্য সমর্থন
  • সাম্প্রতিক NDK সংস্করণগুলির জন্য সমর্থন
  • টেস্ট কোড কভারেজ

OSS লাইসেন্স কমপ্লায়েন্স টুল

বিকাশকারীরা অন্তর্ভুক্ত প্যাকেজগুলির প্রাপ্যতা এবং নিরাপত্তা নিশ্চিত করার জন্য একটি শক্তিশালী লাইসেন্স সম্মতি পরীক্ষকের অনুরোধ করেছে। এই প্রকল্পটি একটি প্রদত্ত সফ্টওয়্যার উপাদানের সাথে সম্পর্কিত সম্মতি এবং লাইসেন্সের ঝুঁকিগুলি সনাক্ত এবং প্রশমিত করতে সহায়তা করার জন্য নিয়ম এবং সরঞ্জামগুলির একটি সেট সরবরাহ করে। লক্ষ্য বৈশিষ্ট্য অন্তর্ভুক্ত:

  • একটি নির্দিষ্ট লক্ষ্য দ্বারা ব্যবহৃত প্যাকেজ অডিট করার ক্ষমতা
  • প্রতিষ্ঠান নির্দিষ্ট লাইসেন্স সম্মতি চেক নির্মাণ করার ক্ষমতা.

Github-এ চলমান নিয়ম_লাইসেন্স বাস্তবায়ন দেখুন।

Bzlmod: বাহ্যিক নির্ভরতা ব্যবস্থাপনা সিস্টেম

লঞ্চের সময়, Bzlmod ট্রানজিটিভ নির্ভরতাগুলির স্কেলেবিলিটি এবং নির্ভরযোগ্যতা উন্নত করে। পরবর্তী তিন বছরে, WORKSPACE এর লক্ষ্য হল ওয়ার্কস্পেসকে ডিফল্ট ব্যাজেল ওয়ার্কস্পেস নির্ভরতা ব্যবস্থাপনা সাবসিস্টেম হিসেবে প্রতিস্থাপন করা। লক্ষ্যযুক্ত বৈশিষ্ট্য অন্তর্ভুক্ত:

  • হারমেটিক তৈরির জন্য সমর্থন
  • স্থানীয় অনুলিপিতে বিক্রেতা/অফলাইন মোড পিনিং সংস্করণ রেফারেন্স নিয়ম
  • Bazel সেন্ট্রাল রেজিস্ট্রি নিয়মিত সম্প্রদায়ের অবদান এবং মূল Bazel নিয়ম ও প্রকল্প গ্রহণ অন্তর্ভুক্ত
  • Bzlmod Bazel প্রকল্প নির্মাণের জন্য ডিফল্ট টুল হয়ে ওঠে

স্বাক্ষরিত বিল্ড

Bazel Google কীগুলির সাথে স্বাক্ষরিত Windows এবং Mac এর জন্য বিশ্বস্ত বাইনারি সরবরাহ করবে৷ এই বৈশিষ্ট্যটি মাল্টি-প্ল্যাটফর্ম ডেভেলপার/ডেভ-অপসকে ব্যাজেল বাইনারিগুলির উত্স সনাক্ত করতে এবং তাদের সিস্টেমগুলিকে ক্ষতিকারক, অযাচাই করা বাইনারিগুলি থেকে রক্ষা করতে সক্ষম করে৷

প্রমিত প্ল্যাটফর্ম API

নতুন প্ল্যাটফর্ম এপিআই বহু-ভাষা, মাল্টি-প্ল্যাটফর্ম তৈরির জন্য আর্কিটেকচার কনফিগারেশনকে প্রমিত করবে। এই বৈশিষ্ট্যটির সাহায্যে, বিকাশকারীরা তাদের বড় বিল্ডে ব্যয়বহুল বিকাশ-সময় ত্রুটি এবং জটিলতা কমাতে পারে।

বিশ্লেষণের মেট্রিক্স তৈরি করুন

বেজেল টেলিমেট্রি বিশ্লেষণ-ফেজ টাইম মেট্রিক্স প্রদান করবে, ডেভেলপারদের তাদের নিজস্ব বিল্ড কর্মক্ষমতা অপ্টিমাইজ করতে দেবে।

"বাইট ছাড়াই তৈরি" সহ দূরবর্তী সম্পাদন

বাইট ছাড়া বিল্ডগুলি শুধুমাত্র ব্যাজেলকে প্রয়োজনীয় নিদর্শন ডাউনলোড করার অনুমতি দিয়ে পারফরম্যান্সকে অপ্টিমাইজ করবে, বিল্ডগুলিকে নেটওয়ার্ক ব্যান্ডউইথের বাধা থেকে বাধা দেবে। দূরবর্তী বিল্ডগুলির জন্য যোগ করা বৈশিষ্ট্যগুলির মধ্যে রয়েছে:

  • স্থানীয় এবং দূরবর্তী ক্রিয়াকলাপগুলি তাদের নির্ভরশীল আউটপুটগুলি ডাউনলোড করার সাথে সাথেই শুরু করতে অ্যাসিঙ্ক্রোনাস ডাউনলোড ব্যবহার করুন
  • Symlinks সমর্থন যোগ করুন
  • একবার বিল্ড সম্পূর্ণ হলে দূরবর্তী ক্রিয়াগুলি থেকে মধ্যবর্তী আউটপুটগুলি পুনরুদ্ধার করুন

*কপিরাইট © 2022 JetBrains sro JetBrains এবং IntelliJ হল JetBrains sro-এর নিবন্ধিত ট্রেডমার্ক