B függelék - Hogyan jelezd a hibákat

Egy jó bugreport nagyon hasznosan járul hozzá a szoftver fejlődéséhez. Ennek megfelelően mindkettejük elkészítése is bizonyos időt igényel. Kérlek vedd figyelembe hogy a legtöbb feljesztő elfoglalt, és emellett még vad mennyiségű e-mailt is el kell olvasnia. Tehát, - bár a visszajelzésed nagyon fontos - meg kell értened hogy az összes általunk kért információt meg kell adnod, és lépésről-lépésre követned kell az itt leírtakat.

Hogyan javítsak egy bugot?

Ha elég tudást érzel magadban, próbáld kijavítani a hibát saját magad. Vagy talán már meg is tetted? Olvasd el ezt a rövid kis szöveget, hogy megtudd mit kell tenned hogy a javításod bekerüljön az MPlayerbe. Az mplayer-dev-eng listán lévők segítenek ha kérdésed van.

Hogyan jelents be hibát?

Először is nézd meg a CVS verziót, mert lehet hogy az általad talált hibát már kijavítottuk. A fejlesztés nagyon gyors ütemben zajlik, a "hivatalosan" kiadott MPlayerben lévő hibákat napokon vagy akár órákon belül kijavítjuk. Éppen ezért csak a CVS verziót használd hibák bejelentésére. A CVS letöltésére vonatkozó utasításokat ezen a lapon találhatod meg. Ha ez nem segített a probléma megoldásában, akkor olvasd el az ismert hibák fejezetet, és a dokumentáció többi részét. Ha a problémád nem ismert, vagy a mi tanácsaink alapján nem oldódik meg, akkor kérjük jelentsd be.

Ne küldj bugreportot közvetlenül valamelyik készítőnek. Együtt dolgozunk a kódon, ezért mindenkit érdekelhet a hiba. Előfordulhat, hogy más felhasználók már tudják a megoldást a problémádra. Ha a levelezési listára írsz hamarabb juthatsz segítséghez, hiszen azt több ember olvassa.

Kérjük részletezd a problémát olyan mélységben ahogyan csak tudod. Szűkítsd le a lehetséges okokat amik a hibához vezethetnek. A hiba csak bizonyos szituációkban jön elő? Bizonyos fileokhoz vagy file formátumokhoz kapcsolódik? Csak egy codec-kel, vagy minddel előjön? Az összes kimenettel reprodukálható? Minél több információt küldesz, annál több esélyünk van arra hogy sikeresen javítsunk. Ne feledd továbbá csatolni az összes, lejjebb felsorolt információt, különben valószínűleg nem fogunk sikerrel járni.

A nyilvános fórumokon történő kérdésfeltevéshez egy nagyszerű és jól megírt útmutató a Hogyan tegyünk fel hasznos kérdéseket, Eric S. Raymond-tól. Egy másik hasznos írás a Hatékony Bugreportolás című, amit Simon Tatham követett el. Ha ezeket követed, biztonságban vagy. Másrészről viszont mivel mindannyiónk szabad idejében és nem kötelezően követi a listák forgalmát, így nem következik hogy mindig ráérünk, és/vagy azonnal szolgáltatjuk a probléma megoldását.

Hol jelentheted be?

Iratkozz fel az mplayer-users levelezési listára:
    http://mplayerhq.hu/mailman/listinfo/mplayer-users
és küldd a bugreportot az
    mplayer-users@mplayerhq.hu
címre.

A lista nyelve angol. Kérjük kövesd a szabvány Netikettet, és ne küldj HTML formátumú levelet egyik listánkra se, különben vagy nem fog senkit se érdekelni a leveled, vagy ki leszel tiltva. Ha nem tudod mi az a HTML formátumú levél, olvasd el ezt a leírást. Megjegyzendő továbbá, hogy nem fogunk CC-zni (carbon copy) mindenkinek, így jó ötlet feliratkozni a listára mielőtt elküldöd a leveled.

Miből álljon a bugreport:

Szükség lehet naplófile-okra, konfigurációra, vagy egy minta file-ra a bugreporthoz.Ha ezek közül valamelyik nagy méretű, akkor jobb ha FTP-re töltöd fel (gzip és bzip2 előnyben ..), és csak a file nevét, elérhetőségét írod bele a bugreportba! A levelezési listáink 80k-ra vannak korlátozva, így ha ennél nagyobb állományt akarsz küldeni tömörítsd, vagy tedd letölthetővé.

Mit tartalmazzon a bugreport?

Rendszer információ

Hardver és eszközmeghajtók:

Fordítási problémákhoz, hibákhoz

Kérlek küldd el az alábbi file-okat:

Ha a fordítás az alább felsorolt könyvtárak egyikében áll le, a következő file-okat is küldd el:

Configure problémákhoz

A configure.log-ot.

Lejátszási problémákhoz

Kérjük mellékeld az MPlayer kimenetét legalább 1-es bőségi (verbosity) szinten, de ne töröld ki sorokat a kimenetből, mikor a levélbe másolod. A fejlesztőknek az összes üzenetre szükségük van. A következőképpen tudod file-ba irányítani a kimenetet:

    mplayer -v [opciók] filenév &> mplayer.log

Ha a probléma csak egy, vagy néhány file-nál jelentkezik, töltsd fel a file-t (file-okat) ide:

   ftp://mplayerhq.hu/MPlayer/incoming/

Tölts fel egy (a fájloddal azonos nevű) kis .txt fájlt, amiben leírod hogy mi a baj, plusz egy mplayer -v kimenet, és az email címed!
Általában az első 1-5 MB elég, hogy reprodukáljuk a problémát, de először próbáld ki:

   dd if=a_file of=kis_file bs=1024k count=5

Ez az a_file első 5 MB-ját elmenti kis_file néven. Ekkor próbáld lejátszani a keletkező file-t, és ha a bug jelentkezik, akkor elég lesz csak ennyit feltölteni.
Soha ne küldj file-t levélben! Töltsd fel, és csak a file nevét küldd el! Ha a file a neten hozzaférhető, akkor a pontos URL elküldése is elég!

Összeomlás (Michael Douglas) esetén

Futtasd az MPlayer-t gdb-ben, és a kimenetét küldd el nekünk, vagy coredump file esetén a következők szerint járj el:

Hogyan nyerjünk ki értelmes tartalmat egy reprodukálható crash-ből

Fordítsd újra az MPlayer-t engedélyezve a hibakereső módot:

    ./configure --enable-debug=3
    make

majd futtasd az MPlayer-t gdb-ből:

    gdb ./mplayer

Most a gdb-n belül vagy. Írd be a következőket:

    run -v [mplayer-opciók] filenév

és reprodukáld a hibát. Amint megtörtént, a gdb visszaadja a promptot, ahova a következőket kell beírnod

    bt
    disass $eip-32 $eip+32
    info all-registers

és a kimenetet elküldeni nekünk.

Hogyan nyerjünk ki értelmes tartalmat a coredump-ból

Hozz létre egy file-t (parancs_file) a következő tartalommal:

disass $pc-32 $pc+32
info all-registers

Ezután írd be a következő parancsot:

    gdb mplayer --core=core -batch --command=parancs_file > mplayer.bug

Tudom hogy mit csinálok...

Ha a fentieket követve csináltál egy megfelelő bugreportot, biztos vagy benne hogy MPlayer, nem pedig fordító, file, hang-meghajtó hibáról van szó, elolvastad a dokumentációt és nem találtál benne megoldást, iratkozz fel az mplayer-advusers levelezési listára és oda küldd a reportot, biztos lehetsz benne hogy jobb és gyorsabb választ kapsz.

Ha kezdő, vagy a dokumentációban már megválaszolt kérdést küldesz, vagy figyelmen kívül hagyunk, vagy leordítjuk a hajad.
Ne flamelj minket, és csak akkor iratkozz fel az advusers listára ha tényleg tudod hogy mit csinálsz, és/vagy hozzáértő MPlayer felhasználónak/fejlesztőnek érzed magad. Ha ez mind rád illik, nem lesz nehéz kitalálni a feliratkozás módját...