Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "FabioMarconi/prove100"
Differenze tra le versioni 3 e 11 (in 8 versioni)
Versione 3 del 15/05/2011 18.38.39
Dimensione: 12082
Autore: FabioMarconi
Commento:
Versione 11 del 20/05/2011 21.35.07
Dimensione: 12684
Autore: FabioMarconi
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 32: Linea 32:
 * Riportare il bug contro il progetto [[https://bugs.launchpad.net/ayatana-design|Ayatana Design]] (NON contro il progetto Unity)  * Segnalare il bug contro il progetto [[https://bugs.launchpad.net/ayatana-design|Ayatana Design]] (NON contro il progetto Unity)
Linea 34: Linea 34:
 * Se il bug è urgente pingare JohnLea nel canale IRC #ayatana su freenode.  * Se il bug è urgente pingare ''JohnLea'' nel canale IRC #ayatana su freenode.
Linea 50: Linea 50:
Per segnalare un bug utilizzando un crashfile:To manually file a bug report using a crash file: Per segnalare un bug utilizzando un crashfile:
Linea 98: Linea 98:
Se si è afflitti da un freeze, ma è possibile utilizzare Ctrl-Alt-F1 per ottenere TTY1, è possibile usare gdb per connettere il processo compiz in esecuzione ed ottenere una traccia. Questa è una utilissima informazione per il debugging del problema. Per connettere il processo in esecuzione, andare su TTY1 e seguire le seguenti istruzioni: Se si è afflitti da un freeze, ma è possibile utilizzare Ctrl-Alt-F1 per ottenere TTY1, è possibile usare gdb per connettere il processo compiz in esecuzione ed ottenere una traccia. Questa informazione è utilissima per il debugging del problema. Per connettere il processo in esecuzione, andare su TTY1 e seguire le seguenti istruzioni:
Linea 117: Linea 117:
Il flusso di lavoro upstream e downstream per un'esperienza desktop è leggermente differente dagli altri progetti. Siccome non esiste alcuna distro che produce patch per i progetti di esperieze desktop, i bugs sono una frazione estremamente piccola di quelli segnalati. Per questa ragione il flusso di lavoro è il seguente:
 1. Make sure the bug has both an upstream and downstream task.
 2. Keep statuses in sync.
  * Upstream is the master. Sync downstream statuses to upstream.
  * The exception here is for downstream packages that are fix released. Occasionally a fix will be cherry-picked from unreleased DX code, and released in a package to fix a critical issue. In this case do not sync the downstream status to the upstream.
Il flusso di lavoro upstream e downstream per un'esperienza desktop è leggermente differente dagli altri progetti. Siccome non esiste alcuna distro che produce patch per i progetti di esperienze desktop, i bugs sono una frazione estremamente piccola di quelli segnalati. Per questa ragione il flusso di lavoro è il seguente:
 1. Assicurarsi che il bug sia segnalato sia upstream che downstream.
 2. Mantenere i due status sincronizzati.
  * Upstream è il pricipale. Sincronizzare lo status downstream come quello upstream.
  * Quì l'eccezione è per i pacchetti che vengono fixati downstream. Occasionalmente un fix potrà essere preso da un codice di esperienza desktop non ancora rilasciato e pacchettizzato per fixare un problema con status critical. In questo caso non si deve sincronizzare lo status upstream a quello downstream.
Linea 123: Linea 123:
=== Marking affected components ===
During triaging it is often the case that a bug reported will actually be a bug in a base component. When this occurs it is imperative to add a task on that component. For example, if a bug in nux is crashing unity, a task should be added against nux, and statuses should be sync'd with nux as the master.

Similarly, if a bug is reported against a component project a task should be added against the super project.
For example if a reporter reports a bug in nux, bamf, dee, etc. a task should be filed against unity so that we can keep track of all of the components in one place.
=== Marcare i componenti afflitti ===
Spesso, durante il triage di un bug, capita che il problema risieda in un componente base. Se ciò dovesse verificarsi è imperativo aprire la segnalazione anche contro il componente base. Se ad esempio un bug in nux fa crashare unity dovremo segnalare, nello stesso report, che il bug affligge sia unity che nux, syncronizzando i due status riferendoci a nux come principale.
Per fare ciò utilizzare la funzione 'Also afflict project
Similmente, se un bug è riportato contro un progetto componente, una segnalazione dovrà essere aperta anche contro il super progetto, nella medesima pagina.
Per esempio, se un reporter apre una segnalazione contro nux, bamf, dee, etc. una segnalazione deve essere aperta anche contro unity in modo da avere traccia di tutti i componenti affetti in un unica pagina.
Linea 130: Linea 130:
== Design Bugs ==
Some bugs are not technical defects, but behavioral, or visual ones. These often require input from the design team before they can be fixed. When a bug is determined to be a design bug, it should have an ''Ayatana design'' task added to it, and its Unity status should be set to ''incomplete'' with the tag ''needs-design''. After a design decision has been reached the Unity status should be set to ''triaged'' as there is then enough information for the bug to be fixed. See also the ''Blocked waiting for design decision'' canned response.
== Bugs inerenti il design ==
Alcuni bugs non sono difetti tecnici, bensì comportamentali o visuali. Questi spesso richiedono valutazioni da parte del design team prima di essere corretti. Quando si è stabilito che un bug è un bug di design deve essere segnalato anche contro ''Ayatana design'' e lo status relativo ad unity deve essere impostato ad ''incomplete'' con l'aggiunta del tag ''needs design''. Dopo che il team design si sarà pronunciato in merito lo status di unity potrà essere cambiato in ''Triaged'' dato che contiene tutte le informazioni necessarie agli sviluppatoriche dovranno fixare il bug. Vedi anche la risposta precompilata ''Bloccato in atttesa di decisione del team design''.
Linea 133: Linea 133:
An example (real world) design bug: [[https://bugs.launchpad.net/unity/+bug/649560]] Un esempio concreto di bug nel design: [[https://bugs.launchpad.net/unity/+bug/649560]]
Linea 135: Linea 135:
== Canned Responses ==
|| '''Situation''' || '''Response''' || '''Note''' ||
|| Patch needs author to sign Canonical Contributer agreement || Looks good but before we merge it we need you to sign the Canonical contributer agreement. It's a quick, but necessary step to getting your code into the tree. Luckily you only need to sign it once and it will apply to all other Canonical project contributions you may make in the future. http://www.canonical.com/contributors Make sure to CC David Barth when you send it in. || ||
|| Blocked waiting for design decision || This bug is awaiting design feedback before progress can be made. Confirming that there is a question to be answered. Will be marked triaged when design gives a suitable direction forward. || Mark status as ''incomplete'', and tag ''needs-design'' until design gives feedback. ||
|| Bug reported from clutter based Unity || This bug was reported against an old version of Unity. The new version of Unity is almost an entire rewrite based on very different technologies. Could you please check if this issue is present in the current version, and if it is reopen the bug to a NEW status. || Set the bug to WONTFIX, and let the user reopen it ||
|| Bugs that don't appear to be Unity related at all || The issue you're describing doesn't sound related to Unity. Could you log into a classic gnome session and see if this issue persists? || ||
|| Crashers for which you'd like the user to get a stack trace || Could you please follow the instructions on https://wiki.ubuntu.com/Unity/FilingBugs#Getting%20a%20stack%20trace and attach unity.log to this bug report? || ||
== Risposte precompilate ==
|| '''Situazione''' || '''Risposta''' || '''Note''' ||
|| L'autore della patch non ha sottoscritto il Canonical contributer agreement || Looks good but before we merge it we need you to sign the Canonical contributer agreement. It's a quick, but necessary step to getting your code into the tree. Luckily you only need to sign it once and it will apply to all other Canonical project contributions you may make in the future. http://www.canonical.com/contributors Make sure to CC David Barth when you send it in. || ||
|| Bloccato in atttesa di decisione del team design || This bug is awaiting design feedback before progress can be made. Confirming that there is a question to be answered. Will be marked triaged when design gives a suitable direction forward. || Marcare lo status come ''incomplete'', aggiungere il tag ''needs-design'' fino alla risposta dal team design ||
|| bug in Unity funzionante su clutter || This bug was reported against an old version of Unity. The new version of Unity is almost an entire rewrite based on very different technologies. Could you please check if this issue is present in the current version, and if it is reopen the bug to a NEW status. || impostare il bug come WONTFIX, e lasciare che l'utente lo riapra ||
|| Bugs che non sembrano affatto correlati ad Unity || The issue you're describing doesn't sound related to Unity. Could you log into a classic gnome session and see if this issue persists? || ||
|| Crashers per i quali è necessaria una stack trace || Could you please follow the instructions on https://wiki.ubuntu.com/Unity/FilingBugs#Getting%20a%20stack%20trace and attach unity.log to this bug report? || ||
Linea 143: Linea 143:
= Bug Tags = = Tags dei bug =
Linea 145: Linea 145:
These tags allow isolation of bugs into smaller groups, providing an easier and faster way to work on specific issues. Queste tags consentono di isolare i bugs in sottogruppi, fornendo un facile e veloce sistema per lavorare su uno specifico problema.
Linea 148: Linea 148:
|| [[https://launchpad.net/ubuntu/+source/compiz/+bugs?field.tag=unity|`unity`]] || Compiz bugs which are affecting Unity ||
|| [[https://launchpad.net/ubuntu/+bugs?field.tag=running-unity|`running-unity`]] || Bugs reported by people who are running Unity ||
|| [[https://launchpad.net/unity/+bugs?field.tag=bitesize|`bitesize`]] || Smaller bugs that would be ideal for new contributors. ||
|| [[https://launchpad.net/unity/+bugs?field.tag=needs-design|`needs-design`]] || A bug that needs UI design done first. ||
|| [[https://launchpad.net/ubuntu/+source/compiz/+bugs?field.tag=unity|`unity`]] || Bugs in Compiz che affliggono Unity ||
|| [[https://launchpad.net/ubuntu/+bugs?field.tag=running-unity|`running-unity`]] || Bugs segnalati quando Unity è in esecuzione ||
|| [[https://launchpad.net/unity/+bugs?field.tag=bitesize|`bitesize`]] || Piccoli bugs che possone essere l'ideale per nuovi contributori. ||
|| [[https://launchpad.net/unity/+bugs?field.tag=needs-design|`needs-design`]] || Un bug che necessita un UI design. ||
Linea 155: Linea 155:
= Testing a fix = = Testare un fix =
Linea 157: Linea 157:
Sometimes a developer might ask you to test a quick patch he came up with: check the [[https://launchpad.net/~unity/+archive/daily|Daily builds PPA]] to see if an updated version of Unity fixes the bugs you are experiencing. Be careful though, as those are daily builds that may break other things, and are to be considered unstable. Talvolta uno sviluppatore potrebbe richiedere di testare una veloce patch chiedendovi: check the [[https://launchpad.net/~unity/+archive/daily|Daily builds PPA]] per valutare se il problema è stato risolto in una versione aggiornata di Unity. Siate cauti nel fare ciò dato che questi sono rilasci giornalieri che potrebbero danneggiare altre parti del sistema e sono da considerarsi instabili. Meglio testare su macchine virtuali.
Linea 159: Linea 159:
= Known bugs = = Bugs noti =
Linea 161: Linea 161:
Known bugs, or missing features, are tracked in Launchpad and assigned to milestones to indicate when it is planned to be fixed and/or released. Bugs noti o funzioni mancanti sono tracciati in Launchpad ed assegnati a milestones per indicare quando è pianificato il loro fixing o rilascio.
Linea 163: Linea 163:
 * Unity milestones: https://bugs.launchpad.net/unity/+milestones
  * https://launchpad.net/unity/+milestone/3.4 - ubuntu milestones
   * https://launchpad.net/unity/+milestone/3.4.4 - weekly milestones
 * Milestones di Unity: https://bugs.launchpad.net/unity/+milestones
  * https://launchpad.net/unity/+milestone/3.4 - milestones di ubuntu
   * https://launchpad.net/unity/+milestone/3.4.4 - milestones settimanali
Linea 171: Linea 171:
'''Also see:'''
 * DebuggingProcedures
[[https://wiki.ubuntu.com/Unity/FilingBugs|Documento originale]]
Linea 175: Linea 173:
CategoryBugSquad CategoryDesktopTeam CategoryDebugging CategoryHomepage

Introduzione

Questa pagina fornisce istruzioni su come segnalare bugs relativi ad Unity, fornire le necessarie informazioni di debugging ed eseguirne il triage.

Segnalare bugs

Problemi tecnici

Utilizzare lo strumento standard di Ubuntu per la raccolta di informazioni dettagliate inerenti la vostra configurazione di sistema. Da linea di comando:

ubuntu-bug unity

Quando nel vostro sistema avviene un crash, apparirà una finestra di dialogo che vi inviterà a segnalare il problema. Raccoglierà inoltre, automaticamente, informazioni necessarie al debugging. Ma è possibile rendersi ulteriormente utili aggiungendo informazioni alla segnalazione del bug che ne faciliteranno il lavoro di analisi:

  • Fornire il risultato del comado glxinfo. Esso contiene importanti informazioni grafiche utili nell'identificazione del problema (glxinfo è fornito dal pacchetto mesa-utils ed è automaticamente in esecuzione in Natty)
  • fornire una completa descrizione della vostra GPU e quanta RAM video ha. Per esempio, il nome commerciale della vostra scheda video potrebbe essere Radeon HD 4650 oppure NVidia Geforce GTX 280. Per le schede video integrate Intel non è necessario fornire alcuna informazione.
  • La risoluzione del monitor e le modalità dello schermo (singolo, doppio monitor, triplo monitor)

Se la finestra di dialogo non dovesse apparire consultare la sezione "avanzata" descritta più avanti.

Anche se il problema è attualmente in Compiz, è ragionevole riportare il bug contro Unity, provvederemo noi comunque a gestire le cose in modo da coinvolgere anche Compiz. Lavoriamo a stretto contatto con il progetto Compiz. Se invece siete certi che il problema risieda realmente in Compiz allora leggete la relativa sezione DebuggingCompiz.

Problemi di design ed usabilità

Siccome Unity è un'interfaccia utente, qualsiasi bug relativo alla funzionalità deve essere segnalato all' Unity design team. Per riportare un bug nell'interfaccia utente:

  • Segnalare il bug contro il progetto Ayatana Design (NON contro il progetto Unity)

  • Impostare l'importanza come ti sembra corretto
  • Se il bug è urgente pingare JohnLea nel canale IRC #ayatana su freenode.

Consigli utili

  • La precedenza è data ai bugs che si verificano in una installazione standard, quindi se è stata forzata l'installazione del cubo od altri plugin disabilitati bisogna prima riprodurre il bug in una installazione standard, ricordando che se alcuni plugin sono stati disabilitati c'è un valido motivo.
  • È utile riferire i passi da compiere per riprodurre il bug, è altresì utile sapere se avviene solamente con alcuni temi o in tutti.
  • Eseguendo nel terminale unity --reset avverrà il reset delle impostazioni di Unity, può anche essere utile creare un nuovo utente e verificare se il bug è ancora riproducibile.

Procedure di debugging avanzate

Crashers bloccati

Se apport non si avvia automaticamente proponendovi di segnalare il bug potete verificare se una traccia del crasher è stata raccolta nella directory /var/crash. Controllate l'esistenza di un file il cui nome contenga 'compiz'.

ls -altr /var/crash per listarli in ordine cronologico.

Per segnalare un bug utilizzando un crashfile:

  • Rimanere nella attuale sessione di X.
  • Aggiungere un gestore finestre da una TTY se necessario, es. CTRL-ALT-F1, autenticarsi, DISPLAY=:0 metacity --replace

  • Dalla vostra sessione X eseguire: apport-bug -c /var/crash/<compiz crash file> e seguire la procedura nella pagina web che si aprirà. Attenzione, problemi di focalizzazione potrebbero impedire la comparsa della pagina, controllare quindi sullo spazio di lavoro l'apertura di una nuova finestra del browser web.

Ottenere uno stack trace

Se per una qualsiasi ragione apport non sia abilitato sul vostro sistema oppure avete un problema riproducibile, vi chiediamo di investigare spigandovi come ottenere uno stack trece in modo da ispezionare le variabili interne. Assicurasi di avere installato i debugging symbols per i pacchetti compiz, nux ed unity.

Altrimenti, da tty1 (Ctrl + Alt + F1)

$ unity --advanced-debug
GNU gdb (GDB) 7.2-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>

...

(gdb) set logging file unity.log
(gdb) set logging on
(gdb) b _exit
Function "_exit" not defined.
Make breakpoint pending on future shared library load? (y or [n])
[Rispondere yes (y)]

(gdb) run

[ e quando avviene il crash di compiz/unity eseguire...]

(gdb) bt full

[ quindi CTRL-D o riavviare compiz per continuare il lavoro ]

(gdb) run

È anche possibile ottenere una traccia con valgrind eseguendo valgrind compiz --replace & in un terminale. Questo sistema è un po' più lento poichè esegue compiz sotto emulazione ma consente di ottenere maggiori informazioni di quelle avute tramite gdb.

In circostanze estreme potrebbe esservi richiesto di utilizzare un plugin gestore di crash scaricabile da git ed abilitarlo in ccsm.

Se si è afflitti da un freeze, ma è possibile utilizzare Ctrl-Alt-F1 per ottenere TTY1, è possibile usare gdb per connettere il processo compiz in esecuzione ed ottenere una traccia. Questa informazione è utilissima per il debugging del problema. Per connettere il processo in esecuzione, andare su TTY1 e seguire le seguenti istruzioni:

$ sudo gdb compiz `pgrep compiz`

(gdb) set logging file unity.log
(gdb) set logging on
(gdb) bt full

[ quindi CTRL-D o riavviare compiz per continuare il lavoro ]

(gdb) run

È quindi possibile ritornare ad Unity premendo Ctrl-Alt-F7.

Istruzioni per il triage

Procedure operative standard

La mancata osservanza di queste semplici linee guida potrebbe causare seri danni alle mani di lamalex e didrocks.

Mantenenre gli stati Upstream e Downstream sincronizzati

Il flusso di lavoro upstream e downstream per un'esperienza desktop è leggermente differente dagli altri progetti. Siccome non esiste alcuna distro che produce patch per i progetti di esperienze desktop, i bugs sono una frazione estremamente piccola di quelli segnalati. Per questa ragione il flusso di lavoro è il seguente:

  1. Assicurarsi che il bug sia segnalato sia upstream che downstream.
  2. Mantenere i due status sincronizzati.
    • Upstream è il pricipale. Sincronizzare lo status downstream come quello upstream.
    • Quì l'eccezione è per i pacchetti che vengono fixati downstream. Occasionalmente un fix potrà essere preso da un codice di esperienza desktop non ancora rilasciato e pacchettizzato per fixare un problema con status critical. In questo caso non si deve sincronizzare lo status upstream a quello downstream.

Marcare i componenti afflitti

Spesso, durante il triage di un bug, capita che il problema risieda in un componente base. Se ciò dovesse verificarsi è imperativo aprire la segnalazione anche contro il componente base. Se ad esempio un bug in nux fa crashare unity dovremo segnalare, nello stesso report, che il bug affligge sia unity che nux, syncronizzando i due status riferendoci a nux come principale. Per fare ciò utilizzare la funzione 'Also afflict project Similmente, se un bug è riportato contro un progetto componente, una segnalazione dovrà essere aperta anche contro il super progetto, nella medesima pagina. Per esempio, se un reporter apre una segnalazione contro nux, bamf, dee, etc. una segnalazione deve essere aperta anche contro unity in modo da avere traccia di tutti i componenti affetti in un unica pagina.

Bugs inerenti il design

Alcuni bugs non sono difetti tecnici, bensì comportamentali o visuali. Questi spesso richiedono valutazioni da parte del design team prima di essere corretti. Quando si è stabilito che un bug è un bug di design deve essere segnalato anche contro Ayatana design e lo status relativo ad unity deve essere impostato ad incomplete con l'aggiunta del tag needs design. Dopo che il team design si sarà pronunciato in merito lo status di unity potrà essere cambiato in Triaged dato che contiene tutte le informazioni necessarie agli sviluppatoriche dovranno fixare il bug. Vedi anche la risposta precompilata Bloccato in atttesa di decisione del team design.

Un esempio concreto di bug nel design: https://bugs.launchpad.net/unity/+bug/649560

Risposte precompilate

Situazione

Risposta

Note

L'autore della patch non ha sottoscritto il Canonical contributer agreement

Looks good but before we merge it we need you to sign the Canonical contributer agreement. It's a quick, but necessary step to getting your code into the tree. Luckily you only need to sign it once and it will apply to all other Canonical project contributions you may make in the future. http://www.canonical.com/contributors Make sure to CC David Barth when you send it in.

Bloccato in atttesa di decisione del team design

This bug is awaiting design feedback before progress can be made. Confirming that there is a question to be answered. Will be marked triaged when design gives a suitable direction forward.

Marcare lo status come incomplete, aggiungere il tag needs-design fino alla risposta dal team design

bug in Unity funzionante su clutter

This bug was reported against an old version of Unity. The new version of Unity is almost an entire rewrite based on very different technologies. Could you please check if this issue is present in the current version, and if it is reopen the bug to a NEW status.

impostare il bug come WONTFIX, e lasciare che l'utente lo riapra

Bugs che non sembrano affatto correlati ad Unity

The issue you're describing doesn't sound related to Unity. Could you log into a classic gnome session and see if this issue persists?

Crashers per i quali è necessaria una stack trace

Could you please follow the instructions on https://wiki.ubuntu.com/Unity/FilingBugs#Getting%20a%20stack%20trace and attach unity.log to this bug report?

Tags dei bug

Queste tags consentono di isolare i bugs in sottogruppi, fornendo un facile e veloce sistema per lavorare su uno specifico problema.

Tag

Use case

`unity`

Bugs in Compiz che affliggono Unity

`running-unity`

Bugs segnalati quando Unity è in esecuzione

`bitesize`

Piccoli bugs che possone essere l'ideale per nuovi contributori.

`needs-design`

Un bug che necessita un UI design.

...

...

Testare un fix

Talvolta uno sviluppatore potrebbe richiedere di testare una veloce patch chiedendovi: check the Daily builds PPA per valutare se il problema è stato risolto in una versione aggiornata di Unity. Siate cauti nel fare ciò dato che questi sono rilasci giornalieri che potrebbero danneggiare altre parti del sistema e sono da considerarsi instabili. Meglio testare su macchine virtuali.

Bugs noti

Bugs noti o funzioni mancanti sono tracciati in Launchpad ed assegnati a milestones per indicare quando è pianificato il loro fixing o rilascio.


Documento originale


CategoryHomepage