Procedura
Wtyczki przechodzą 4 etapy: sugestia, dyskusja, implementacja i publikowanie.
Sugestia
Wtyczka zaczyna się od sugestii. Możesz zaproponować wtyczkę, tworząc nowy problem za pomocą szablonu FeatureRequest.
jak napisać prośbę o dodanie funkcji.
Dowiedz się,Oprócz podstawowych informacji o prośbie o dodanie funkcji sugestia dotycząca wtyczki powinna zawierać:
- Interfejs API, który mogłaby udostępnić wtyczka.
- Interfejsy API, które należy dodać lub zmienić w głównej części Blockly, aby obsługiwać wtyczkę.
- zrzuty ekranu, GIF-y lub makiety, jeśli wtyczka zawiera funkcje interfejsu użytkownika.
- wyjaśnienie, dlaczego powinna to być wtyczka własna, a nie zewnętrzna.
Zespół Blockly sprawdza pojawiające się sugestie i zamyka problem lub dodaje etykietę stan: dyskusja.
Dyskusja
Następnie wtyczka przechodzi do etapu dyskusji. Ten etap obejmuje:
- Doprecyzowanie nazwy żądanej funkcji.
- Wyjaśnienie interfejsu API wtyczki.
- Planowanie implementacji.
- Planowanie testów.
- Omówienie zmian w interfejsie API w głównej aplikacji Blockly.
- Podział dużych wtyczek na etapy implementacji.
- nadawania nazw wtyczkom zgodnie z naszymi konwencjami nazewnictwa;
- Potwierdzenie, że wszystkie kryteria własne zostaną spełnione.
Dyskusja zazwyczaj dotyczy problemu w serwisie GitHub. Im mniejszy zakres wtyczki, tym szybciej może ona potrwać. Większe wtyczki mogą przyciągać uwagę społeczności i wyrażać opinie na temat właściwego rozwiązania. Jeśli tak się stanie w przypadku Twojego problemu, to gratulacje! Udało Ci się znaleźć coś, co interesuje ludzi.
W efekcie podjęto wszystkie ważne decyzje projektowe i opracowaliśmy jasną listę etapów wdrażania. Obie sytuacje powinny zostać udokumentowane w komentarzach na ten temat.
W trakcie rozmowy możemy zdecydować, że wtyczka powinna być wtyczką zewnętrzną i nie zostanie opublikowana w zakresie @blockly
. W takim przypadku wyjaśnimy
przyczynę i zamkniemy problem.
Po zakończeniu dyskusji członek zespołu Blockly dodaje do problemu etykietę stan: implementacja.
Implementacja
Etapy implementacji obejmują:
- Uruchamiam polecenie
npx @blockly/create-package
, aby skonfigurować wtyczkę i jej katalog z szablonu. Więcej informacji... - Wdrożenie podstawowych logiki wtyczki.
- W razie potrzeby zaimplementuj interfejs użytkownika.
- Testowanie wtyczki za pomocą mokki.
- Dokumentuj wtyczkę, w tym
README
.
Jeśli problem z wtyczką ma etykietę stan: implementacja, oznacza to, że jest ona gotowa do wdrożenia lub jest aktywnie zaimplementowane. Aby uniknąć duplikowania działań, każda osoba zainteresowana powinna skomentować ten problem i zapytać, czy można go już zgłosić.
Implementację może realizować równolegle kilku współtwórców. Możesz wdrożyć wtyczkę wspólnie na własnym rozwidleniu lub za pomocą żądań pull do tego repozytorium. Jeśli chcesz współpracować nad wtyczką w tym repozytorium, poproś zespół Blockly o utworzenie gałęzi funkcji.
Wtyczki należy dodać do pliku gh-pages/index.md
w gałęzi master
przykładów blokowych. Sprawi to, że pojawią się one na naszej stronie wtyczek. Własne wtyczki powinny wskazywać swoją stronę testową. Do tej strony można też dodawać wtyczki innych firm, które mogą prowadzić do linku wybranego przez właściciela, np. do hostowanej wersji demonstracyjnej lub strony npm.
Publikuję
Na koniec publikuj. Zespół Blockly używa oprogramowania Lerna do zarządzania obsługą wersji i publikowania wszystkich wtyczek.
Wszystkie wtyczki, które zmieniły się od czasu wydania ostatniej wersji, są publikowane w każdy czwartek. Jeśli chcesz, żeby zmiana została opublikowana wcześniej, uwzględnij to w prośbie.
Jest ona aktualizowana po każdym opublikowaniu wtyczek.
Wtyczki, które nie są gotowe do publikacji, powinny mieć oznaczenie private
w package.json
. Może się tak zdarzyć, jeśli wtyczka wymaga jeszcze nieopublikowanej zmiany w core Blockly. Core Blockly publikujemy w ostatnim tygodniu każdego kwartału (raz na 3 miesiące).