پیشنهاد یک ویژگی جدید¶
پس شما ایدهای برای بهبود BeeWare دارید - چگونه آن را برای بررسی ارسال میکنید؟
تحقیق کنید¶
اولین قدم این است که در ردیاب مشکلات BeeWare به دنبال مشکلات ویژگی (مسائلی که با برچسب «enhancement» مشخص شدهاند)، مشکلات مستندسازی (مسائلی که با برچسب «documentation» مشخص شدهاند) یا موضوعات بحث بگردید تا ببینید آیا این ایده قبلاً پیشنهاد شده است یا خیر. اگر چنین است و شما زمینه یا ایدههای جدیدی برای اضافه کردن دارید، آنها را در همان رشته گفتگو موجود درج کنید. اگر برای تحقیق خود به کمک نیاز دارید، میتوانید در کانال #dev در دیسکورد BeeWare درخواست کمک کنید. ما ممکن است بتوانیم شما را به سمت رشتههای گفتگو موجود راهنمایی کنیم، زمینههایی را که ممکن است از آنها مطلع نباشید ارائه دهیم، یا ایده شما را به ایدهای دیگر که شاید در نگاه اول مرتبط به نظر نرسد، پیوند دهیم.
درباره این ایده بحث کنید¶
اگر هیچ مرجع موجودی برای ایدهتان پیدا نکردید، یک موضوع بحث ایجاد کنید. یک توضیح کلی از هدف و مورد استفاده برای ایدهتان ارائه دهید. هر فکری که در مورد ظاهر این قابلیت در صورت پیادهسازی دارید، مانند شکل کلی یک API، ظاهر بصری یک قابلیت، یا سندی که اضافه خواهد شد، را نیز شامل کنید. در صورت امکان، هر تحقیقی که در مورد نحوه تحقق ایدهتان در پلتفرمهای مختلف انجام دادهاید را نیز باید ضمیمه کنید.
به محض باز شدن رشتهٔ بحث، تیم BeeWare و سایر اعضای جامعه پاسخ خواهند داد. تیم اصلی تلاش خواهد کرد تا ظرف دو روز کاری حداقل یک برداشت اولیه از ایدهٔ شما ارائه دهد. اگر ایدهای بهویژه پیچیده باشد، تحلیل دقیقتر ممکن است تا یک هفته طول بکشد. رویدادهایی مانند تعطیلات و کنفرانسها ممکن است این بازههای زمانی را کمی طولانیتر کنند.
این فرصت شماست تا در گفتوگویی دربارهٔ ایدهتان شرکت کنید. ممکن است از شما بخواهیم جزئیات یا زمینهٔ بیشتری ارائه دهید. سایر اعضای جامعه نیز ممکن است در این بحث مشارکت کنند و دیدگاهها، پیشنهادها یا پیشنهادهای متقابل دیگری ارائه دهند. نتیجهٔ این بحث مراحل بعدی را تعیین خواهد کرد.
مهم است بدانید که همه ایدهها پذیرفته نخواهند شد. دلیل اینکه این فرایند با یک پیشنهاد شروع میشود این است که شما تمام کار را انجام ندهید و بعداً متوجه شوید دلیلی وجود دارد که تغییر شما پذیرفته نمیشود.
این به این معنی نیست که ایدهٔ خوبی نبوده است! ممکن است دلایل فنی وجود داشته باشد که نتوان آن را پیادهسازی کرد. برای مثال، ممکن است ما یک ایده را رد کنیم اگر:
- اجرای قابلاعتماد آن در تمام پلتفرمهای پشتیبانیشده دشوار یا غیرممکن خواهد بود؛ یا
- نگهداری آن دشوار خواهد بود، یا نگهداری مستلزم دسترسی به فناوری یا نرمافزاری است که بهطور گسترده در دسترس نیست؛ یا
- این مخاطب خاصی را هدف قرار میدهد، اما بار زیادی بر سایر کاربران تحمیل میکند.
اگر تشخیص دهیم ایدهی شما مناسب نیست، لزوماً به این معنا نیست که باید از آن دست بکشید. اگرچه ممکن است یک ایدهی مشخص را رد کنیم، اما ممکن است بسیار مایل باشیم رابط افزونه یا نقطهی توسعهی دیگری اضافه کنیم که به شما امکان دهد همان قابلیت را بهعنوان یک کتابخانهی خارجی نگهداری کنید. به این ترتیب میتوانید از آن قابلیت بهرهمند شوید، اما بدون دغدغهها یا محدودیتهای خاص نگهداری، یا بدون اینکه آن قابلیت خود به یک مانع برای پروژه تبدیل شود.
تبدیل به یک درخواست رسمی ویژگی¶
وقتی بحث به اجماع دربارهٔ شکل یک قابلیت رسید، میتوانید در ردیاب مسئلهٔ beeware یک مسئلهٔ درخواست قابلیت جدید ایجاد کنید که خلاصهای از بحث را ارائه دهد و برای زمینه به آن ارجاع دهد.
لازم نیست خودتان پیشنهاد فیچرتان را پیادهسازی کنید؛ میتوانید یک issue با جزئیات آنچه پیشنهاد میدهید باز کنید. با این حال، صرفاً ارسال issue به این معنا نیست که برای شما پیادهسازی خواهد شد. شما باید منتظر بمانید تا ممکن است شخص دیگری که به همان ویژگی علاقهمند است، آن را پیگیری کند، چه عضوی از جامعه باشد یا تیم اصلی؛ اما این امر تضمینشده نیست. اگر میخواهید پیادهسازی تضمینشده باشد، باید خودتان آن را پیادهسازی کنید یا به شخص دیگری برای پیادهسازی آن پول پرداخت کنید.
اگر علاقهمند هستید، میتوانید شروع به پیادهسازی ویژگی جدید خود کنید.