Aggiunta di un plug-in proprietario

Scopri di più sui plug-in

Il processo

I plug-in attraversano quattro fasi: suggerimento, discussione, implementazione e pubblicazione.

Suggerimento

Un plug-in inizia come suggerimento. Puoi suggerire un plug-in creando un nuovo problema con il modello di Feature Request.

Leggi come scrivere una richiesta di funzionalità

Oltre alle informazioni di base sulla richiesta di funzionalità, un suggerimento per il plug-in dovrebbe includere:

  • L'API che il plug-in esporrebbe.
  • API che devono essere aggiunte o modificate nel blocco note principale per supportare il plug-in.
  • Screenshot, GIF o simulazioni se il plug-in include funzioni dell'interfaccia utente.
  • Una spiegazione del motivo per cui dovrebbe essere un plug-in proprietario anziché un plug-in di terze parti.

Il team di Blockly esamina i suggerimenti man mano che arrivano e chiude il problema o aggiunge l'etichetta status: discussione.

Discussione

In seguito, un plug-in entra nella fase di discussione. Questa fase include:

  • Chiarimento sulla funzionalità desiderata.
  • Chiarimento sull'API del plug-in.
  • Pianificazione dell'implementazione.
  • Pianificazione dei test.
  • Discussione sulle modifiche all'API nel blocco note principale.
  • Suddividere i plug-in di grandi dimensioni nei passaggi di implementazione.
  • Nome dei plug-in in base alle nostre convenzioni di denominazione.
  • Confermare che verranno soddisfatti tutti i criteri proprietari.

Questa discussione generalmente riguarda GitHub. Minore è l'ambito del plug-in, più rapida può essere la fase di discussione. I plug-in più grandi possono attirare l'attenzione della community e le opinioni forti sulla Soluzione giusta. Se questo si verifica per il tuo problema, complimenti. Hai trovato qualcosa che interessa alla gente.

L'obiettivo è al termine della fase di discussione che siano state prese tutte le principali decisioni di progettazione e che vi sia un chiaro elenco di passaggi di implementazione. Entrambi devono essere documentati nei commenti sulla questione.

Durante la discussione, potremmo decidere che un plug-in deve essere un plug-in di terze parti e non essere pubblicato nell'ambito @blockly. In tal caso, spiegheremo il motivo e chiuderemo il problema.

Quando la discussione è terminata, un membro del team Blockly aggiunge al problema l'etichetta status: implementation.

Implementazione

I passaggi di implementazione includono:

  • Esecuzione di npx @blockly/create-package per configurare il plug-in e la sua directory da un modello. Scopri di più...
  • Implementazione della logica di base per il plug-in.
  • Implementare un'interfaccia utente, se necessario.
  • Test del plug-in con mocha.
  • Documentare il plug-in, incluso README.

Se il problema di un plug-in presenta l'etichetta status:implementation, significa che è pronto per l'implementazione o è in fase di implementazione. Per evitare duplicati, chiunque sia interessato dovrebbe commentare il problema e chiedere se è ancora disponibile per il contributo.

L'implementazione può essere eseguita da più collaboratori in parallelo. Puoi implementare un plug-in in modo collaborativo sul tuo fork o tramite richieste di pull su questo repository. Se vuoi collaborare su un plug-in in questo repository, chiedi al team di Blockly di creare un ramo delle funzionalità per te.

I plug-in devono essere aggiunti al file gh-pages/index.md nel ramo master di blockly-samples. e verranno visualizzati sul nostro sito dedicato ai plug-in. I plug-in proprietari devono indirizzare gli utenti alla loro pagina di test. A questa pagina possono anche essere aggiunti plug-in di terze parti, che puntano a un link a scelta del proprietario, ad esempio una demo ospitata o la pagina npm.

In fase di pubblicazione

Infine, la pubblicazione. Il team di Blockly utilizza Lerna per gestire il controllo delle versioni e la pubblicazione di tutti i plug-in.

Ogni giovedì vengono pubblicati tutti i plug-in che sono stati modificati dall'ultima release. Se hai bisogno di una modifica da pubblicare prima, indicala nella richiesta pull.

Il sito dei plug-in viene aggiornato anche ogni volta che vengono pubblicati i plug-in.

I plug-in che non sono pronti per la pubblicazione devono essere contrassegnati come private in package.json. Questo può accadere se un plug-in si basa su una modifica non ancora pubblicata nel core Blockly. Core Blockly viene pubblicato nell'ultima settimana di ogni trimestre (una volta ogni tre mesi).