Návrh nové funkce¶
Máte tedy nápad, jak vylepšit BeeWare – jak tento nápad předložit k posouzení?
Proveďte průzkum¶
Prvním krokem je prohledat systém pro sledování problémů BeeWare a najít existující problémy s funkcemi (problémy označené „vylepšení”), problémy s dokumentací (problémy označené „dokumentace”), nebo diskusní vlákna, abyste zjistili, zda již někdo tento nápad nenavrhl. Pokud ano a máte nové souvislosti nebo nápady, které chcete přidat, zahrňte je do existujícího vlákna. Pokud potřebujete pomoc s výzkumem, můžete se zeptat v kanálu #dev na BeeWare Discord. Možná vám budeme moci ukázat směr existujících vláken, poskytnout souvislosti, o kterých možná nevíte, nebo propojit váš nápad s jiným nápadem, který se na první pohled nemusí zdát související.
Diskutujte o této myšlence¶
Pokud nenajdete žádné existující odkazy na svůj nápad, založte diskusní vlákno. Uveďte obecný popis účelu a použití svého nápadu. Uveďte také své představy o tom, jak by daná funkce vypadala, pokud by byla implementována, například obecný tvar API, vizuální podoba funkce nebo dokument, který by byl přidán. Pokud je to relevantní, uveďte také veškerý výzkum, který jste provedli ohledně toho, jak by se váš nápad projevil na různých platformách.
Jakmile bude diskusní vlákno otevřeno, tým BeeWare a zbytek komunity na něj zareagují. Jádro týmu se bude snažit poskytnout alespoň první dojem z vašeho nápadu do dvou pracovních dnů. Pokud je nápad obzvláště složitý, může podrobnější analýza trvat až týden. Události jako svátky a konference mohou tyto lhůty mírně prodloužit.
Toto je vaše příležitost zapojit se do diskuse o vašem nápadu. Můžeme vás požádat o další podrobnosti nebo kontext. Do diskuse se mohou zapojit i další členové komunity, kteří mohou přinést jiné pohledy, návrhy nebo protinávrhy. Výsledek této diskuse určí další kroky.
Je důležité si uvědomit, že ne všechny nápady budou přijaty. Důvodem, proč tento proces začíná návrhem, je zabránit tomu, abyste vynaložili veškeré úsilí, jen abyste zjistili, že existuje důvod, proč vaše změna nebude přijata.
To ale neznamená, že to nebyl dobrý nápad! Může existovat technické důvody, proč jej nelze realizovat. Například můžeme nápad zamítnout, pokud:
- Bylo by obtížné nebo nemožné jej spolehlivě implementovat na všech podporovaných platformách; nebo
- Bylo by obtížné jej udržovat nebo by údržba vyžadovala přístup k technologii nebo softwaru, který není široce dostupný; nebo
- Slouží úzké skupině uživatelů, ale ostatním uživatelům způsobuje značné náklady.
Pokud usoudíme, že váš nápad není vhodný, nemusí to nutně znamenat, že byste ho měli vzdát. I když můžeme odmítnout konkrétní nápad, můžeme být mnohem vstřícnější k přidání rozhraní pluginu nebo jiného rozšíření, které by vám umožnilo zachovat stejnou funkci jako externí knihovna. Tímto způsobem můžete mít danou funkci, ale bez konkrétních problémů s údržbou nebo omezeními, která by se stala překážkou pro samotný projekt.
Převést na formální požadavek na funkci¶
Jakmile se v diskusi dosáhne shody ohledně podoby funkce, můžete v systému pro sledování problémů beeware vytvořit nový požadavek na funkci, který shrne diskusi a bude obsahovat odkaz na diskusi pro kontext.
Nemusíte svůj návrh funkce implementovat sami; můžete otevřít issue s podrobnostmi o tom, co navrhujete. Pouhé zveřejnění issue však neznamená, že bude pro vás implementováno. Budete muset počkat, až se ho ujme někdo jiný, kdo má o stejnou funkci zájem, ať už se jedná o jiného člena komunity nebo členy hlavního týmu; není však zaručeno, že se tak stane. Pokud chcete mít jistotu, že bude funkce implementována, budete ji muset implementovat sami nebo zaplatit někoho, kdo to udělá za vás.
Pokud máte zájem, můžete začít implementovat svou novou funkci.