Önemli

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.

Çöp raporları rehberi

Bu rehber, Jami’de karşılaştığınız hataları ve sorunları rapor etmek için adım adım talimatları içerir.

Çevreyi ayarlayın

  • Verileri kaybına karşı hazır ol. Hesabını yedekle ve hesabını mümkün olduğunca çok aygıtla bağla.

  • Jami’nin en son sürümünü (veya hatta bir beta sürümünü) yükleyin. Eski sürümlere karşı hataları/ sorunları rapor etmek daha az yararlıdır ve daha yeni sürümlerde zaten düzeltilmiş olma olasılığı vardır.

Bir böceği nasıl bildirilir

  1. Eğer henüz bir hesabınız yoksa [Jami GitLab]https://git.jami.net/users/sign_up) üzerinden bir hesap oluşturun.

  2. Konuyu yayınlamak için doğru projeyi seçin:

    • Android istemcisi

    • {gitlab-project}`Qt müşterisi

    • {gitlab-project}`IOS istemcisi

    • MacOS istemcisi (gitlab-project’le değiştirilmiş)

    • Genel olarak Jami projesi (veya emin değilseniz)

    • [Ne yaptığını biliyorsan diğer projelerden birini seçebilirsin]

  3. Eğer birden fazla sorununuz varsa, lütfen ayrı bir hata raporunuzu gönderin.

  4. Başlık, hatanın açık bir özetidir (örneğin: başlık çubuğu simge boyutu nedeniyle çok büyüktür)

  5. Buğdayı yeniden üretmek için adımları bul:

    • Eğer onu yeniden üretmek için kesin adımlarınız varsa (özel!) yararlı bir hata raporunu oluşturmaya gidiyorsunuz.

    • Bazen tekrarlayabiliyorsanız, ancak belirli adımları izledikten sonra değilse, lütfen başkalarının anlamasına ve tekrarlamaya çalışmasına yardımcı olmak için konu hakkında ek bilgi verin.

    • 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. Yazılımınızın güncel olduğundan emin olun. İdeal olarak, hatalarınızın zaten düzeltilmiş olup olmadığını görmek için geliştirme sürümünü test edin.

  7. Ortamdan izole etmeye ve çoğaltmaya çalış (yani birden fazla aygıtta test et).

  8. Çevrenizi aşağıdaki özellikleri belirleyerek tanımlayın:

    • OS sürümü

    • net aygıt modeli (mobil aygıt için önemlidir)

    • Beta sürümü kullanıyorsanız

    • 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.

Açık bir özet yazmak

Bu bir geliştiricinin göreceği bug raporunun ilk kısmı.

İyi bir özet, bir hata raporunu hızlı ve benzersiz bir şekilde tanımlamalıdır. Sorunu açıklamalıdır, önerdiğiniz çözüm değil.

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"

Yüklenmek için kesin adımları yazmak

  • Bir geliştiricinin kendi cihazında bu virüsü nasıl yeniden üretmesi mümkün olabilir?

    Yürütme adımları herhangi bir hata raporunun en önemli parçasıdır. Eğer bir geliştiriciler hataları yeniden üretebilse, hataların düzeltilmesi çok olasıdır. Eğer adımlar net değilse hataların düzeltildiğini bile bilmemek mümkün olmayabilir. Bazı hataların size açık göründüğünü tamamen biliyoruz, ancak muhtemelen çevrenizle ilişkililerdir. Ne kadar hassas olursunuz, hataların düzeltilmesi o kadar hızlıdır.

  • Bir böcek raporuna ne eklemelisiniz?

    Bu hataları istedikleri zaman tekrarlayabilir misiniz, bazen mi, yoksa hiç de yapamazsınız mı? Her adımın amacı dışında Jami ile etkileşim yönteminizi açıklayın. Adımlarınızdan sonra gözlemlenen (gerçek) sonucu ve beklenen sonucu kesin olarak açıklayın. Gerçekleri (közetmeler) spekülasyonlardan açıkça ayırın.

Good

Bu adımları izleyerek her zaman çoğalabilirim:

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.

Sonuçlar

Lütfen şunları ekleyin:

  • Jami demonu (jamid veya libjami veya libring) ve istemci defeg günlüğü.

  • Eğer bir tane üretilmişse, çekirdek çöplüğü.

Beklenen Sonuç

Beklenen veya istenen davranışın bir tanımlaması.

Ek bilgi sağlama

Çoğu hata raporunda aşağıdaki bilgiler talep edilir. Bu bilgileri beklenen sonuçların altında vererek zaman tasarrufu yapabilirsiniz.

Kayıtlar

Qt tabanlı Jami istemcisi (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.

GNU/Linux’ta

Klasik kayıtlar (devayla sadece >= uyarı kayıtları kaydedilmiştir):

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

Tam günlük: Jami istemcisi (GUI) ve daemon ayrı süreçler olduğundan, her ikisinden de günlükler elde etmenin en kolay yolu onları birbiriyle, elle başlatmaktır.

  1. Jami istemcisinin veya daemon instance’ların çalışmadığından emin olun: bir terminalde ps aux p jami` ile kontrol edin.

    • Tercihlerinize bağlı olarak hiçbir pencere açık olmasa bile Jami hala çalışıyor olabilir.

    • Eğer bir istemci veya bir demon çalışıyorsanız, kill PID kullanarak onları sona erdirin.

  2. Bir terminalde, daemon’u jamid -d -c ile başlatın

    • Bu uygulanabilir, normalde PATH’de bulunmaz ve Debian/Trisquel/Ubuntu paketlerinde /usr/lib/x86_64-linux-gnu/jamid -d -c veya /usr/libexec/jamid -d -c’de bulunur.

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

Geriye bir iz almak için, GDB’nin içinde programı çalıştırın:

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

Çarpıldığında bt (veya daha da iyi, thread tüm bt) yazabilir, sonra Enter tıklayabilirsiniz.

MacOS’ta

  • /Applications/Jami.app/Contents/MacOS/’ye git.

  • Jami’yi iki kere tıklayıp Jami’yi fırlatır ve terminal’e kayıt kayıtlarını basar.

  • Terminalden kayıt kayıtlarını dosyaya kopyalayın.

Alternatif olarak, /<path to Jami>/Jami.app/Contents/MacOS/Jami -d’yi terminalden çalıştırmak mümkündür.

Android’de

Jami’nin kendisiyle telefonunuzla kayıtları toplamak için:

  • Görüşmelere dokun

  • Sağ üstteki üç nokta menüsüne dokunun

  • Çık Settings

  • “Teşhis günlükleri”ne dokunun

Android Debug Bridge (adb) ile bilgisayarınız üzerinden kayıtları toplamak için:

  • Bilgisayarında AdB ayarlanmalı.

  • Jami’yi akıllı telefonunla başlat ve sonra idam et.

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

  • Şimdi müşterinin günlüğünü içeren bir dosya var.

Windows için

Bir terminal aç (cmd.exe) ve Jami.exe’yi aşağıdaki seçeneklerle başlat:

  • -d kayıtları almak için ayrı bir konsol penceresi açmak

  • -f log yazmak için %localappdata%\jami\jami.log