Important

We are currently a small number of developers active on the project. As such, we cannot answer and tag all of the opened issues immediately, but we do notice and read them. Good bug reports provide us important feedback, which we thank you for and always appreciate.

Gvidilo pri la raporto de insektoj

Ĉi tiu gvidilo inkluzivas paŝojn post paŝoj por raporti pri eraroj kaj problemoj, kiujn vi renkontas en Jami.

Konstruu vian medion

  • Estu preta por perdo de datumoj. Rezervu vian konton kaj ligu vian konton al kiom eble plej multaj aparatoj.

  • Instali la plej lastan version (aŭ eĉ beta version) de Jami. Raporti erarojn/problemojn kontraŭ pli malnovaj versioj estas malpli utila, kaj ekzistas verŝajneco de ĝi jam estinta fiksita en pli novaj versioj.

Kiel raporti insekton

  1. Krei konton en la [Jami GitLab] (https://git.jami.net/users/sign_up) se vi ne havas unu jam.

  2. Elektu la ĝustan projekton por afiŝi vian temon en:

    • (depreciita per )

    • [Se vi scias kion vi faras vi povas elekti unu el la aliaj projektoj]

  3. Se vi havas plurajn problemojn, bonvolu arkivi apartajn erarojn. Estos multe pli facile kontroli ilin tiel.

  4. La titolo estas eksplicita resumo de la bugo (ekz.: header-balkono estas tro granda pro ikona grandeco)

  5. Rakontu la paŝojn por reprodukti la bugon:

    • Se vi havas precizajn paŝojn por reprodukti ĝin (granda!) vi estas sur via vojo al kreado de utila bug raporto.

    • Se vi povas reproduktadi foje, sed ne post sekvado de specifaj paŝoj, bonvolu doni aldonajn informojn pri la temo por helpi al aliaj kompreni kaj provi reproduktadon.

    • If you can not reproduce the problem, there may be little chance of it being reasonably fixable. If you do report it, please try your best to provide as much information/clues about its occurrence as possible.

  6. Certigu, ke via programaro estas ĝisdatigita. Ideale, provu evoluantan version por vidi, ĉu via eraro jam estas riparita.

  7. Provu izoli de la medio kaj reprodukti (t.e. testo sur multoblaj aparatoj).

  8. Deskribi vian medion (s) precizigante la sekvajn:

    • Versio de operaciumo

    • Preciza aparato modelo (grava por moveblaj aparatoj)

    • se vi uzas beta-version

    • what build you are using (F-Droid, Play Store, App Store, from dl.jami.net, your own build, etc.). If you have built your own version of Jami, please specify the exact Jami Daemon version and client version (you can obtain it using jamid -v and jami -v; but note that our packages are updated quite often) and the Git commit.

    • network conditions:

      • are both devices on the same local network?

      • Different networks?

      • Is one or both behind NAT?

      • Are you using LTE?

      • Are you using WiFi?

    • other elements if needed:

      • SIP provider,

      • hardware,

      • etc.

Skribado de klara resumo

Kiel vi priskribus la bugon uzante ĉirkaŭ 10 vortojn? Tio estas la unua parto de via bug-raporto kiun evoluisto vidos.

Bona resumo devas rapide kaj unue identigi eraron. Ĝi devus klarigi la problemon, ne vian proponitan solvon.

Good: "Cancelling a file transfer crashes Jami"
Bad: "Software crashes"
Good: "All calls hang up after 32 seconds"
Bad: "Not able to call my friends"

Skribi precizajn paŝojn por reprodukti

  • Kiel evoluisto povas reprodukti la bugon sur sia propra aparato?

    Paŝoj por reprodukti estas la plej grava parto de iu ajn bug-raporto. Se programisto kapablas reprodukti la eraron, la eraro estas tre verŝajna esti riparita. Se la paŝoj ne estas klaraj, eble eĉ ne eblas scii ĉu la eraro estis riparita. Ni tute konscias, ke kelkaj eraroj povas aspekti evidentaj al vi, sed ili verŝajne rilatas al via medio. Ju pli preciza vi estas, des pli rapide la eraro povas esti riparita.

  • Kion vi devus inkludi en la raporto pri eraroj?

    Indicu, ĉu vi povas reprodukti la eraron laŭvole, foje aŭ tute ne. Deskribu vian metodon de interagado kun Jami krom la intenco de ĉiu paŝo. Post viaj paŝoj, precize priskribu la observitajn (aktualan) rezulton kaj la atendatan rezulton. klare apartigas faktojn (observadojn) de spekulacioj.

Good

Mi ĉiam povas reprodukti sekvante tiujn paŝojn:

1. Start Jami by clicking on the desktop icon
2. Start a new conversation with anyone
3. Click the file transfer icon

Expected results: A window opens and asks me to choose a file to send.
Actual results: When I click the file transfer icon, nothing happens.

Bad

Try to transfer a file.
It doesn't work.

La rezulto atingita

Bonvolu inkludi:

  • La Jami demono (jamid aŭ libjami aŭ librado) kaj kliento debug registrojn.

  • La kernaĵaĵejo, se oni produktis unu.

Atendita rezulto

Ĝi estas priskribo de atendata aŭ dezirata konduto.

Provizado de kromaj informoj

La sekvaj informoj estas postulataj por la plej multaj eraroj. Vi povas ŝpari tempon provizante ĉi tiujn informojn sub la Atenditaj rezultoj.

Logoj

Qt-bazita Jami kliento (GNU/Linux, Windows, macOS)

Go to the General settings. In the Troubleshoot section, you can click on “Open logs”, where you will be able to get statistics (“Show stats”) or start recording information via “Receive logs”. Then you can just copy the result and explain your scenario.

Sur GNU/Linux

Klasikaj registroj (defaŭlte nur >= averto registroj estas registritaj):

journalctl --since "24h ago" | grep jami

Full log: The Jami client (GUI) and daemon are separate processes. To obtain logs from both processes, start each process manually, one at a time.

  1. Certigu ke neniu kliento Jami aŭ demono instancoj estas kuranta: kontroli per kuranta ps aux grep jami en terminalo.

    • Jamj eble ankoraŭ kuras eĉ se ne estas malfermitaj fenestroj, depende de viaj preferoj.

    • Se unu el klientoj aŭ demono estas funkcianta, fini ilin uzante kill PID.

  2. En unu termino, komenci la demonon kun jamid -d -c

    • Tiu ekzekutibla estas kutime ne en la PATH, kaj en la Debian/Trisquel/Ubuntu paketoj, ĝi situas ĉe /usr/lib/x86_64-linux-gnu/jamid -d -c/usr/libexec/jamid -d -c.

  3. In another terminal, start the client, using jami -d.

Por trovi retrokurson, vi povas prizorgi la programon en GDB:

gdb -ex run --args jami -d, or gdb -ex run --args /usr/libexec/jamid -cd, depending on the component you need to debug.

Kiam ĝi kraŝas, vi povas tajpi bt (aŭ eĉ pli bone, thread aplikas ĉiujn bt) tiam premas Enter. Tiam kopii la retrokurson kaj gluti ĝin en la temo.

Sur macOS

  • Navigado al /Applications/Jami.app/Contents/MacOS/.

  • Duoble alklaku Jami, ĝi lanĉos Jami kaj presos la registron al la stacidomo.

  • Kopii la registraron de la stacio al dosiero.

Alternative, vi povus kuri /<paŝon al Jami>/Jami.app/Contents/MacOS/Jami -d de la stacio.

Sur Android

Por kolekti registrojn per via telefono uzante Jamie mem:

  • Tlaku Konversacioj

  • Tuŝu la tri-punktan menuon supre dekstre

  • Tapo Settings

  • Tlaku Diagnostic logs

Por kolekti registrojn per via komputilo uzante la Android Debug Bridge (adb):

  • Vi bezonas havi AdB-on instalitan sur via komputilo.

  • Lanĉu Jami sur via inteligenta telefono kaj poste ekzekutu

  • ```adb logcat *:D ♬ grep adb shell ps egrep 'cx.ring' cut -c10-15 > logring.txt``

  • Vi nun havas dosieron enhavanta la registron de la kliento

Por fenestroj

Malfermu terminalon (cmd.exe) kaj lanĉu Jami.exe kun la sekvaj ebloj:

  • -d por malfermi apartan konzolon fenestron por ricevi registrojn

  • -f por skribi registrojn al %localappdata%\jami\jami.log