Segnalazione di bug in LibreOffice

From The Document Foundation Wiki
< QA‎ | BugReport
Jump to: navigation, search

Grande passo!

State per apportare un importante contributo a LibreOffice: una chiara segnalazione di bug è molto importante per aiutare i nostri sviluppatori. Quindi grazie!
Per rendere il processo più semplice, abbiamo preparato alcuni suggerimenti per aiutarvi.

Prima di segnalare un bug

  1. Il vostro problema è veramente un bug?
    1. Se vi serve aiuto per usare LibreOffice, considerate la lettura della documentazione utente in Official LibreOffice Documentation. E se ancora avete bisogno di assistenza, scrivete la vostra richiesta sulle Mailing List dedicate agli Utenti di LibreOffice (quella globale o quella italiana), oppure sul sito Ask.Libreoffice.
  2. Controllare se esiste già una segnalazione di un bug simile.
    1. Selezionare il corretto componente alla pagina Components. Verrà mostrato un elenco di bug relativi.
    2. In calce alla pagina selezionare "Edit Search". Sarà possibile modificare la ricerca in funzione delle proprie esigenze.
  3. Se trovate una segnalazione di un bug relativa al vostro problema potete contribuire ad essa. Se invece non trovate nessuna segnalazione pertinente potete sottoporre un nuovo bug.
  4. Se il bug si presenta solo in Ubuntu andare a Segnalare bug Ubuntu. Se invece si manifesta anche in altri sistemi operativi seguire le indicazioni per Sottoporre un bug

Segnalare un bug

Nota: Bug diversi richiedono segnalazioni diverse. Anche se i sintomi possono sembrare i medesimi dal punto di vista dell'utlizzatore, problemi diversi, con origini diverse, che compaiono su differenti versioni di LibO potrebbero dover essere gestiti da persone diverse, in momenti diversi, su versioni diverse. È impossibile tenerne traccia all'interno di un'unica segnalazione bug.

  1. Andare alla pagina Bug Submission Assistant. Oppure in alternativa alla pagina: bug submission assistant directly in Bugzilla.
  2. Alla richiesta di login autenticarsi con le proprie credenziali Bugzilla.
  3. Selezionare il corretto componente alla voce "Component".
    1. Se non siete sicuri/e di quale sia il componente oggetto del vostro problema, selezionate il componente Libreoffice. Un valutatore di bug lo assegnerà al giusto componente. Per maggiori info in merito, date uno sguardo in "BugTriage". Se si tratta di un problema ad alta priorità (parti corrotte, regressioni, ecc.), utenti esperti possono assegnarlo ad uno degli sviluppatori elencati nella pagina FindTheExpert.
  4. Se c'è una sezione "Sub component" selezionare il valore appropriato. Controllate la pagina Components.
  5. Selezionare in quale versione dell'applicazione il bug compare. Per controllare in LibreOffice selezionate Aiuto ▸ Informazioni su LibreOffice.
  6. Selezionare il Sistema Operativo alla voce "Operating system" o "OS".
  7. Se c'è una sezione "Hardware" compilarla.
  8. La sezione "Severity" se presente deve essere ignorata a meno di non conoscere bene come funziona. Scegliere "Blocker" non renderà più veloce la risoluzione del bug. Se volete conoscere le definizioni di "Severity" potete fare riferimento a questa tabella.
  9. Controllare la tabella "possibly related Bugs" sulla pagina Bug Report Page ed anche nella Duplicates Table per verificare che davvero il problema non sia stato segnalato in precedenza.
  10. Nella sezione "Subject" (nota anche come riassunto):
    1. Scrivere un riassunto significativo del bug che si vuole sottoporre. Un pessimo esempio è "Problem with LibreOffice Writer 3.4.5". Quasi tutte le segnalazioni sono relative ad un "Problem" e le altre informazioni "Writer", "3.4.5" sono già disponibili nelle caselle di scelta, quindi tale esempio non conterrebbe alcuna informazione utile. Un esempio valido è: "UI FILESAVE: no progress bar" utlizzando i riferimenti da BugReport Details. Altri esempi:
      1. Non: "Broken file"
      2. Ma: "Menu File > Save as not available (greyed out)"
    2. Evitare le contrazioni in inglese. Scrivere "does not" invece di "doesn't" per agevolare le ricerche.
    3. Se il problema segnalato riguarda un crash oppure LibO non risponde più (si blocca), per cortesia aggiungere la parola CRASH nella sezione "Subject", per facilitare il tracciamento.
  11. Nella sezione "Long Description" o "Description" fornite una descrizione concreta del problema.
  12. Nella sezione "Long Description" o "Description" elencate i passi necessari per ricreare il bug.
    1. Utilizzate una lista numerata.
    2. Siate precisi.
      1. Non scrivete: "Open document"
      2. Ma invece: "In new empty LibO Spreadsheet document, use menu File > Open (LibO dialog) > file type "Text documents" > select attached sample document > double click"
  13. Nella sezione "Long Description" o "Description": indicare la versione esatta di LibreOffice se state utilizzando una versione già pronta (compilata). Versioni Linux: riportare la versione completa fornita dal gestore pacchetti. Versioni Windows: indicare il nome completo del file di installazione a da dove è stato scaricato.
    1. Potrebbe risultare utile includere informazioni aggiuntive riguardo la localizzazione di LibO (lingua dell'interfaccia utente e lingua del documento).
    2. Specificare se si tratta di una versione a 32 bit su un sistema (Linux) a 64 bit.
    3. Qualora il pacchetto LibO non sia quello ufficiale indicarne la fonte.
  14. Nella sezione "Long Description" o "Description" riportare il comportamento aspettato e quello reale.
  15. A completezza è possibile allegare file quali schermate o documenti di esempio.
    1. Prima di includere una schermata è consigliato impostare la lingua inglese per l'interfaccia per aiutare gli sviluppatori. Si può cambiare da Strumenti ▸ Opzioni ▸ Impostazioni della lingua ▸ Lingue.
    2. Utilizzando LibreOffice Draw è possibile arricchire le schermate aggiungendo commenti ed evidenziando delle aree.
    3. Per allegare più immagini raggruppatele in unico file con LibreOffice Draw e salvate il documento come PDF. Per cortesia aggiungete un breve commento ad ogni schermata per chiarire cosa mostra.
    4. Per allegare più di un documento creare un file compresso .zip contenente tutti i documenti da allegare.
    5. Nel caso il file da allegare superi le dimensioni consentite (maggiore di 1MB) è possibile provare ad utilizzare la pagina Experimental upload page.
  16. Fate clic su "Submit" e la segnalazione verrà aggiunta al database Bugzilla.
  17. Suggerimento: Se il sistema di tracciamento BugZilla sembra scoraggiante o troppo complesso da capire, potete postare il vostro problema qui users@global.libreoffice.org LibreOffice user mailing list o libreofficeforum.org

Dopo aver segnalato un bug

  1. Se nessuno esamina la vostra segnalazione in tempi appropriati (24 h per bug critici, 14 giorni per richieste di migliorie) prendete in considerazione di chiedere a qualcun altro di riprodurre il vostro problema in users@global.libreoffice.org mailing list, o sul canale IRC #libreoffice.

Segnalare bug Ubuntu

Prima di segnalare un bug specifico per la versione Ubuntu controllare l'elenco attuale dei bug, e quindi:

  • Se utilizzate Ubuntu 10.04 o Ubuntu 10.10 LibreOffice non è supportato. Aggiornare Ubuntu ad una versione più recente oppure segnalare il bug direttamente su LibreOffice.
  • Se utilizzate Ubuntu 11.04 o una versione più recente, aprite un terminale utilizzando Applicazioni ▸ Accessori ▸ Terminale (potrebbe non essere necessario fare clic su Accessori) e digitate ubuntu-bug libreoffice Invio, quindi seguite la procedura per completare la segnalazione. In alternativa usate questo modulo.

Ricordare di includere tutti i dettagli su come sia stato installato LibreOffice, la piattaforma in uso (32 bit o 64 bit) ed i passi necessari per riprodurre il problema.

Fornire informazioni extra a beneficio degli sviluppatori (per utenti ESPERTI)

Come ottenere un backtrace (in Windows)

Sono disponibili programmi di installazione per la versione di sviluppo di LibreOffice pensata per il debug insieme ad un server di test con i corrispondenti debug symbols. Leggere l'articolo How to get a backtrace with WinDbg per capire come installare un ambiente di debug.

Un video dedicato spiega come ottenere le informazioni relative al crash da fornire agli sviluppatori.

Per favore ricordatevi di copiare il testo ottenuto in un nuovo documento da allegare alla segnalazione del bug. Ciò consente di mantenere la segnalazione leggibile ed al contempo evita risultati inutilizzabili dalle interrogazioni in Bugzilla.

Come ottenere informazioni di debug (in Mac OS X)

Le informazioni di debug sono utili per capire le ragioni che mandano in crash o bloccano un'applicazione. In Mac OS X è estremamente semplice ottenere le informazioni di debug senza dover installare alcun software aggiuntivo (queste informazioni contengono anche uno stack trace senza tutti i simboli ma che lo stesso può risultare prezioso).

I passi esatti possono variare in funzione della versione di Mac OS X e della sua configurazione ma in generale potete procedere come segue:

  • Quando un'applicazione va in crash Mac OS X propone una finestra di dialogo "LibreOffice si è chiusa inaspettatamente" e chiede se si vuole inviare un resoconto ad Apple. Fate clic sul pulsante “Resoconto…”. Apparirà una finestra più grande “Resoconto del problema per LibreOffice”; alla voce “Dettagli del problema e configurazione di sistema”, è presente una casella di testo che conterrà molte informazioni tecniche. Fate clic su questo testo e selezionatelo per intero con ⌘ Cmd+a, premete ⌘ Cmd+c per copiarlo. Incollatelo quindi in un editor di testo (ad esempio Apple TextEdit) con ⌘ Cmd+v e salvate il file in formato testo (.txt). Per cortesia allegate tale file alla segnalazione di bug. (Non è necessario inviare la segnalazione ad Apple, fate clic su “Non inviare” nella finestra “Problem Report”.)
  • Quando un'applicazione si blocca è possibile forzarne la chiusura premendo ⌘ Cmd+Alt+Esc. Mac OS X mostra una finestra di dialogo chiedendo quale applicazione terminare, nella lista è possibile identificare l'applicazione bloccata poiché spesso presenta la dicitura "(non risponde)". Selezionate l'applicazione e fate clic sul pulsante "Uscita forzata". Quando viene richiesto se inviare un resoconto ad Apple seguire la procedura al punto precedente.

NB: In alcuni casi, a seconda della configurazione, è necessario avere fatto il login come utente amministratore perché si abbia la possibilità di inviare resoconti sui crash delle applicazioni.

Come ottenere un backtrace (in Linux)

Il backtrace è utile per analizzare e capire perché un'applicazione va in crash o si blocca. È possibile eseguire i seguenti passaggi:

  1. Installare il pacchetto libreoffice*-debuginfo (in Debian, Ubuntu e derivate, il nome del pacchetto è libreoffice-dbg), se disponibile. Se il pacchetto non è installato, le informazioni di backtrace sono meno dettagliate e quindi meno utili, ma potrebbero comunque fornire alcune informazioni agli sviluppatori.
  2. Avviare una finestra del terminale (in molte distribuzioni ciò è possibile con Ctrl+Alt+T)
  3. Eseguire il comando soffice --backtrace
  4. Riprodurre i passi per mandare in crash il programma. Se invece di andare in crash l'applicazione si blocca (hang), quando è bloccata aprire un'altra finestra terminale e digitare il comando pkill -15 soffice.bin che forza un crash.
  5. Allegare il file gdbtrace.log alla segnalazione bug.

Come ottenere un strace log (in Linux)

strace tiene traccia delle chiamate di sistema che un processo esegue. Se vi sono problemi di I/O sui file può risultare efficace per capire esattamente cosa succede al livello del sistema operativo. Inoltre è un modo veloce di stabilire se il programma continua ad essere in esecuzione o si è bloccato. Infine fornisce informazioni sul sistema dove LibreOffice sta girando.

  1. Avviare una finestra terminale Ctrl+Alt+T
  2. Eseguire soffice --strace
  3. Riprodurre il problema
  4. Comprimere il file di log: bzip2 strace.log
  5. Allegare il file compresso strace.log.bz2 alla segnalazione di bug.

Come ottenere un valgrind log (in Linux)

Il valgrind log è estremamente utile per trovare errori di memoria corrotta altrimenti difficilmente identificabili. Il suo funzionamento si basa sull'emulazione della CPU con il rovescio della medaglia che il codice gira circa ottanta volte più lento e di conseguenza l'applicazione sembra davvero molto lenta. Il fatto positivo è appunto quello di mostrare problemi che non sarebbero scopribili in altro modo ed inoltre i log forniti sono sufficientemente dettagliati da semplificare molto il lavoro degli sviluppatori: la vostra pazienza è quindi molto apprezzata. Il metodo dei log Valgrind può produrre un certo numero di falsi positivi.

  1. installare il pacchetto libreoffice*-debuginfo (se disponibile nella propria distribuzione)
  2. installare il pacchetto valgrind
  3. avviare una finestra del terminale
  4. soffice --valgrind >& /tmp/valgrind.log
  5. armarsi di pazienza ... 80x è estremamente lento ... riprodurre il problema.
  6. allegare il file /tmp/valgrind.log alla segnalazione di bug.