Contribuire

2 minuto/i di lettura

Sei interessato a contribuire allo sviluppo di OpenSTAManger? Ottimo, sei il benvenuto!

Siamo entusiasti di ogni nuova contribuzione che otteniamo dalla nostra community. Ci sono molti modi per contribuire: segnalare bug, richiedere miglioramenti, scrivere tutorial, migliorare la documentazione, …

Non serve essere degli esperti programmatori per aiutarci! :smile_cat:

Leggi le seguenti sezioni per scoprire come ti consigliamo di procedere. Se ti serve un aiuto, crea una issue su GitHub.

Linee guida

Per migliorare il sistema con cui sviluppiamo il codice, abbiamo deciso di adottare alcune linee guida per facilitare la collaborazione tra più persone.

Codice di condotta

Per il momento non abbiamo adottato un vero e proprio codice di condotta, ma ti chiediamo di essere il più civile possibile nel comunicare con gli altri per questo progetto.

Stile del codice

Utilizziamo principalmente due strumenti per mantenere consistente nel tempo lo stile del codice:

PHP CS Fixer viene utilizzato per formattare automaticamente il codice PHP e aumentare la sua comprensibilità. La configurazione può essere trovata nel file .php_cs.

EditorConfig viene sfruttato per mantenere la consistenza nella formattazione di base dei diversi altri file utilizzati nel progetto. La configurazione può essere trovata nel file .editorconfig.

Maggiori informazioni sui plugin che permettono di integrare questi strumenti sono disponibili nei relativi siti.

Prima contribuzione

Sei insicuro su cosa potresti lavorare per contribuire al progetto?

Prova a dare un’occhiata alle issue sotto la label nuovi contributori, dove sono indicate le migliorie più semplici da applicare.

Problemi di sicurezza

Se trovi un problema di sicurezza, NON aprire una issue. Inviaci un’email all’indirizzo info at openstamanager dot com.

Per capire se hai individuato un problema di sicurezza, prova a farti queste domande:

  • Posso accedere a qualcosa a cui non dovrei avere accesso?
  • Posso disabilitare qualcosa per altre persone?

Se la risposta a una di queste domande è positiva, allora probabilmente hai individuato un problema di sicurezza. Considera però che anche in caso negativo potrebbe trattarsi di un problema di questo tipo, quindi se sei insicuro contattaci comunque via email.

Segnalare un bug

Se hai individuato un bug e desideri segnalarlo, apri una nuova issue provando a mantenerti sulla base del file di template su GitHub.

Se vuoi suggerire una miglioramento di qualche tipo oppure una nuova funzionalità, sentiti libero di aprire una issue apposita dove spieghi dettagliatamente la modifica che vorresti, la sua utilità e il suo funzionamento generale

Pull Request

Se sei in grado di risolvere uno dei bug segnalati oppure vuoi completare una nuova funzionalità, apri una nuova Pull Request provando a mantenerti sulla base del file di template su GitHub.

Community

Siamo presenti su Facebook, e il nostro forum ufficiale è disponibile all’indirizzo http://www.openstamanager.com/forum/.

Cerchiamo di essere disponibili quanto possibile, ma non sempre riusciamo a rispondere tempestivamente.

Testing

Il progetto presenta, a partire dalla versione 2.4.2, un insieme di test per facilitare il controllo sul corretto funzionamento del gestionale.

Per eseguire i test è necessario seguire le seguenti istruzioni (https://codeception.com/docs/modules/WebDriver):

  • Scaricare (Selenium Server)[https://docs.seleniumhq.org/download/] e salvarlo come selenium-server-standalone.jar nella cartella principale
  • Scaricare (ChromeDriver)[https://sites.google.com/a/chromium.org/chromedriver/getting-started], rendendolo eseguibile da riga di comando (su Windows, aggiungerlo al PATH)
  • Configurare localmente Codeception nel file codeception.yml con l’URL del web server locale
  • Eseguire su shell differenti i seguenti comandi:
    npm run tests-server    # Avvia i server per i test di funzionamento grafico
    npm run tests-OSM       # Avvia i test