Przejdź do treści

Proponowanie nowej funkcji

Masz pomysł na ulepszenie BeeWare – jak zgłosić ten pomysł do rozpatrzenia?

Zrób swoje badania

Pierwszym krokiem jest przeszukanie systemu śledzenia problemów BeeWare pod kątem istniejących problemów dotyczących funkcji (problemy oznaczone tagiem „enhancement”), problemów dotyczących dokumentacji (problemy oznaczone tagiem „documentation”) lub wątków dyskusyjnych, aby sprawdzić, czy pomysł został już wcześniej zgłoszony. Jeśli tak, a masz nowe informacje lub pomysły do dodania, dołącz je do istniejącego wątku. Jeśli potrzebujesz pomocy w poszukiwaniach, możesz poprosić o nią na kanale #dev na BeeWare Discord. Być może będziemy w stanie wskazać Ci istniejące wątki, dostarczyć informacji, których możesz nie znać, lub połączyć Twój pomysł z innym, który na pierwszy rzut oka może wydawać się niepowiązany.

Omów pomysł

Jeśli nie znajdziesz żadnych istniejących odniesień do swojego pomysłu, rozpocznij wątek dyskusji. Przedstaw ogólny opis celu i zastosowania swojego pomysłu. Dodaj wszelkie przemyślenia na temat tego, jak wyglądałaby ta funkcja, gdyby została wdrożona, np. ogólny kształt interfejsu API, wygląd wizualny funkcji lub dokument, który zostałby dodany. W stosownych przypadkach należy również dołączyć wszelkie badania dotyczące tego, jak pomysł zostałby zrealizowany na różnych platformach.

Po otwarciu wątku dyskusji zespół BeeWare i reszta społeczności udzielą odpowiedzi. Główny zespół postara się przedstawić przynajmniej wstępną opinię na temat Twojego pomysłu w ciągu dwóch dni roboczych. Jeśli pomysł jest szczególnie złożony, bardziej szczegółowa analiza może potrwać do tygodnia. Wydarzenia takie jak święta i konferencje mogą spowodować nieznaczne wydłużenie tych terminów.

To Twoja szansa, aby wziąć udział w dyskusji na temat Twojego pomysłu. Możemy poprosić Cię o podanie dodatkowych szczegółów lub kontekstu. Inni członkowie społeczności również mogą włączyć się do dyskusji, przedstawiając inne perspektywy, sugestie lub kontrpropozycje. Wynik tej dyskusji będzie decydował o kolejnych krokach.

Ważne jest, aby zrozumieć, że nie wszystkie pomysły zostaną zaakceptowane. Proces ten rozpoczyna się od złożenia wniosku, aby uniknąć sytuacji, w której wykonasz całą pracę, a następnie dowiesz się, że istnieje powód, dla którego Twoja zmiana nie zostanie zaakceptowana.

Nie oznacza to, że nie był to dobry pomysł! Mogą istnieć techniczne powody, dla których nie można go wdrożyć. Na przykład możemy odrzucić pomysł, jeśli:

  • Byłoby to trudne lub niemożliwe do wdrożenia w sposób niezawodny na wszystkich obsługiwanych platformach; lub
  • Byłoby to trudne do utrzymania lub konserwacja wymagałaby dostępu do technologii lub oprogramowania, które nie są powszechnie dostępne; lub
  • Obsługuje niszową grupę odbiorców, ale nakłada znaczne obciążenia na innych użytkowników.

Jeśli uznamy, że Twój pomysł nie pasuje, nie oznacza to koniecznie, że powinieneś z niego zrezygnować. Chociaż możemy odrzucić konkretny pomysł, możemy być znacznie bardziej skłonni do dodania interfejsu wtyczki lub innego punktu rozszerzenia, który pozwoliłby Ci zachować tę samą funkcję jako bibliotekę zewnętrzną. W ten sposób możesz mieć tę funkcję, ale bez konkretnych problemów związanych z utrzymaniem lub ograniczeń funkcji, które stałyby się ograniczeniem dla samego projektu.

Przekształć w formalną prośbę o dodanie funkcji

Gdy dyskusja doprowadzi do konsensusu w sprawie formy funkcji, można utworzyć nowe zgłoszenie dotyczące funkcji (https://github.com/beeware/beeware/issues/new/choose) w systemie śledzenia zgłoszeń BeeWare, które podsumowuje dyskusję i zawiera link do niej dla kontekstu.

Nie musisz samodzielnie wdrażać swojej propozycji funkcji; możesz zgłosić problem, podając szczegóły swojej propozycji. Jednak samo zgłoszenie problemu nie oznacza, że zostanie on wdrożony. Musisz poczekać, aż ktoś inny zainteresowany tą samą funkcją, czy to inny członek społeczności, czy zespół główny, potencjalnie ją wybierze; nie ma jednak gwarancji, że tak się stanie. Jeśli chcesz mieć gwarancję wdrożenia, musisz wdrożyć ją samodzielnie lub zapłacić komuś, kto zrobi to za Ciebie.

Jeśli jesteś zainteresowany, możesz rozpocząć wdrażanie nowej funkcji.