Sabato 28 maggio si è svolto a Milano "Pizza Bug & Fun", organizzato da Joomla! Lombardia, Joomla User Group Milano e Nicola Galgano secondo il format ufficiale di Joomla.org

I partecipanti hanno potuto conoscere gli strumenti che vengono utilizzati dalla comunità degli sviluppatori e dai volontari per la gestione del CHANGE MANAGMENT del software Joomla! e utilizzare sul campo le metofologie per confermare l'esistenza del bug ed eventualmente confermare il funzionamento delle patch proposte. Durante la prima parte dell'incontro ho spiegato come si lavora e il flow che deve seguire ogni singolo miglioramento per arrivare ad essere incluso nella prossima release di Joomla!.

Per effettuare i test, che rappresentano il cuore di un evento Pizza Bug & Fun, è necessario usare una installazione di Joomla che comprenda gli ultimissimi aggiornamenti già approvati ma non ancora rilasciati e che abbia installato un componente specifico (Joomla patch tester) che permetta di applicare una singola patch alla volta per poterne confermare il funzionamento. Per questo avevamo a disposizione una serie di siti di prova che ci sono stati preparati e messi a disposizione per l'evento. Inoltre occorre registrarsi su https://github.com/joomla/joomla-cms per poter inserire i risultati dei propri test.

Il contributo più semplice che ciascuno può dare è la verifica dei bug già segnalati e non ancora confermati che sono elencati a questa pagina https://issues.joomla.org/
Si tratta della seconda tappa che la scoperta di un bug deve compiere, infatti il problema dopo essere stato segnalato deve essere confermato da almeno due persone diverse, e per farlo bisogna mettersi nelle stesse condizioni descritte e verificare che il difetto o l'errore si presenti allo stesso modo.

Testare una patch.

Quando viene proposta una patch, vale a dire una modifica del codice, occorre testarne la validità. La patch viene rilevata dal componente Joomla patch tester che avete inserito nella vostra piattaforma di test e può essere attivata per procedere a verificare la soluzione del problema segnalato. Se tutto fila liscio si può andare a inserire il risultato del test su Github, e questa è stata la prima attività che abbiamo svolto durante la mattinata. Dopo aver inserito la nostra conferma abbiamo ricevuto una mail automatica dal sistema e anche un ringraziamento personale dallo sviluppatore che aveva segnalato il bug.

Possiamo dare un contributo più importante se ci siamo accorti di un malfunzionamento e lo vogliamo segnalare: questo è stato fatto dalla nostra Mariella Colombo, che ha sottoposto due errori che aveva notato nella gestione delle ACL nel componente del core di Joomla che gestisce i tag.

Uno dei problemi è dato dal fatto che il permesso di accesso e modifica che viene dato a un gruppo specifico non permette la visualizzazione della voce di menu per quel componente.
L'altro problema si presenta nella visualizzazione della lista dei tag che mostra un errore.

Secondo Mariella il bug si trova nel codice del componente, che cerca di stabilire se è presente o meno il permesso "editone" mentre al componente tag non deve essere assegnato il permesso "editone" ma solo "edit": la nostra docente non solo ha trovato il problema, ma ha anche trovato la soluzione e si tratta di un semplice cambiamento in una sola riga di un solo file.

Ovviamnte l'ho incoraggiata a sottoporre l'issue mostrando a tutti le modalità di segnalazione dei problemi. In questi casi è molto utile allegare alla spiegazione dei problemi gli screenshot nelle pagine dove si verifica il difetto, oltre alla descrizione sintetica ma completa delle condizioni in cui si verifica e delle funzioni coinvolte.

Abbiamo potuto vedere in tempo reale come Mariella ha dato un nome esplicativo alla sua proposta di modifica e l'ha descritta indicando in modo sintetico ma completo:
A) qual è il problema
b) come verificarlo
c) come risolverlo
La richiesta di modifica inserita è stata registrata al numero 10652.

La proposta di modifica non sarà inserita automaticamente ma, dopo la verifica dei tester volontari, dovrà sottostare all'approvazione del team di debug, che è costituito da almeno due sviluppatori abilitati. Se dovesse essere approvata, la modifica verrà inserita nella prossima versione di Joomla!

Il lavoro che siamo chiamati a fare in quanto tester volontari è sostanzialmente controllare che il problema si ripresenti alle condizioni indicate da Mariella seguendo le istruzioni che ha inserito nella segnalazione, completate dalle relative videate.
L'abbiamo fatto e verificato: l'errore si presenta!