Düzeltildi
- Sansürlü ağlarda Snowflake'in yeniden başlatılabilmesi sağlandı (#71). AMP-önbellek buluşması (AMP-cache rendezvous) etkinleştirildiğinde Snowflake, "Managed proxy ... terminated with status code 2" hatası veriyor ve bağlantı çubuğu takılı kalıyordu. AMP önbelleği, gömülü Snowflake ikili dosyası (lyrebird) tarafından reddedilen bir "-ampcache" komut satırı bayrağı (flag) olarak aktarılıyordu ve bu yüzden uygulama anında kapanıyordu. Bu değer artık lyrebird tarafından okunabilen, Snowflake köprü satırındaki bir "ampcache=" parametresi olarak ayarlandı. Bu sorun esas olarak Akıllı Bağlantı'nın (Smart Connect) Snowflake AMP kullanımını zorunlu kıldığı ağları (örneğin İran) etkiliyordu.

Eklendi
  • SNI tarayıcısı için kompakt düzen (compact layout) eklendi. SNI tarayıcısı artık köprü tarayıcısıyla uyumlu hale getirildi: "Özel liste" (Custom list) geçişi, siz listeyi açana, yükleyene, içe aktarana veya talep edene kadar aday alan adı kutusunu daraltılmış (collapsed) tutar; böylece kontroller daha az yer kaplar.
  • SNI Talep Etme (ülkeye özel listeler) özelliği eklendi. Çalışan SNI sunucuları ülkeye özgü olduğundan, SNI tarayıcısına ülkeniz için aday bir listeyi OnionHop SNI-lists kaynağından çekip tarama için yükleyen bir "SNI Talep Et" (Request SNI) butonu eklendi. Kaynağa erişilebildiğinde bir ülke seçici görünür.
  • Çalışanları Dışa Aktar (Export Working) özelliği eklendi. SNI tarayıcısı artık çalışan SNI sunucularını bir metin (.txt) dosyasına kaydedebilir.
  • Hakkında sayfasına sürüm bağlantıları eklendi. Değişiklik günlüğü geçmişindeki her sürümün artık ilgili sürüm sayfasını açan bir "GitHub'da Görüntüle" bağlantısı var ve kaynaklar bölümünde yeni OnionHop SNI Lists kaynağı listeleniyor.
- SNI tarayıcısını kullanmanın daha kolay bir yolu eklendi ve tam macOS derlemesi (build) geri getirildi.

Eklendi:
- SNI tarayıcısı: "Adayları yükle" (Load candidates) — tek tıklamayla girdi alanını yaygın CDN/ön alan adlarından (Cloudflare, Fastly, Google, Microsoft, Apple, jsDelivr, Wikipedia ve daha fazlası) oluşan yerleşik bir başlangıç listesiyle doldurur; böylece hangi alan adlarını deneyeceğinizi bilmenize gerek kalmadan tarayabileceğiniz hazır bir listeye sahip olursunuz. Ardından Taramayı Başlat'a (Start Scan) basabilirsiniz; yeşil renkle gösterilen satırlar ağınızda çalışan SNI sunucularını (hosts) ifade eder. Listeyi dilediğiniz gibi düzenleyebilir, kendi listenizi içe aktarabilir veya daha fazlasını yapıştırabilirsiniz.

Not:
- macOS derlemeleri geri döndü — v3.6.2 sürümünün Mac dosyaları, onay bekleyen bir Apple geliştirici sözleşmesi nedeniyle gecikmişti, bu durum artık çözüldü. Bu sürüm, tüm platformlar için eksiksiz seti (complete set) içermektedir.
- Test geri bildirimlerine dayalı tarayıcı (scanner) iyileştirmeleri yapıldı.

Eklendi:
  • Köprü tarayıcısı (Bridge scanner): "Köprüleri yükle" (Load bridges) — seçilen kategori/aktarım (transport) listesini tarama yapmadan girdi alanına getirir; böylece listeyi önce inceleyebilir veya düzenleyebilir, ardından tarayabilirsiniz (BridgeHop'un iki adımlı akışına benzer şekilde).
  • Hem köprü tarayıcısı hem de SNI tarayıcısı için "Dosyayı içe aktar" (Import file) özelliği eklendi — köprü satırlarını / aday alan adlarını (candidate domains) bir .txt veya .csv dosyasından yüklemenize olanak tanır.
  • Kaydedilen köprüler (saved-bridges) kütüphanesi için ping rozeti (ping badge) eklendi — kaydedilen her girişin gecikme süresi (latency) artık düz bir sayı yerine yeşil (veya yavaş olduğunda sarı) bir "✔ ms" rozeti olarak gösterilmektedir.
Düzeltildi:
  • SNI tarayıcısının hiçbir zaman çalışan bir sunucu (host) bulamaması sorunu düzeltildi. Her deneme dahili bir .NET SslStream hatasıyla başarısız oluyordu (sertifika doğrulama geri çağrısı aynı anda iki farklı yerde ayarlanmıştı); bu nedenle sonuçlar her zaman "engellendi" (blocked) olarak dönüyor ve tarayıcı hiçbir işlem yapmıyormuş gibi görünüyordu. Tarayıcı artık TLS el sıkışmalarını (handshakes) başarıyla tamamlıyor ve ulaşılabilir SNI sunucularını doğru bir şekilde raporluyor.
  • SNI tarayıcısı durum mesajlarının her zaman İngilizce görünmesi yerine yerelleştirilmesi (localized) sağlandı ("Ready.", "Scanning…", "Enter at least one domain to test." vb.).

Eklendi:
- Kaydedilen köprüler (saved-bridges) kütüphanesine yeni bir Ping sütunu eklendi; bu sütun, her bir giriş kaydedildiğinde ölçülen gecikme süresini (latency) göstermektedir.
Eklendi
  • "Özel liste" (Custom list) köprü kaynağı: Ana sayfadaki köprü kaynağı (bridge source) açılır menüsüne (ve CLI için --bridge-source custom parametresine), Ayarlar bölümünde kaydedilen köprü satırları için açık bir giriş eklendi. Özel satırlar artık yalnızca bu kaynak seçildiğinde geçerli olacak; önceden doldurulmuş bir özel köprü kutusu, seçilen diğer kaynakları sessizce geçersiz kılıyordu. Kayıtlı özel köprüleri olan herkes otomatik olarak bu yeni kaynağa taşındı, böylece mevcut kurulumlar tamamen eskisi gibi davranmaya devam edecek. (#70)
  • Canlı "Kullanımda" (In use) köprüsü göstergesi: Mevcut Köprü (Current Bridge) sekmesi artık Tor'un yapılandırılmış köprülerden hangisi üzerinden gerçekten bağlı olduğunu gösteriyor: Aktif köprü üzerinde canlı bir rozet (sekme açıkken kontrol portu üzerinden kontrol edilir) ve bir köprü artık kullanımda olmadığında en son görülme zamanı görüntülenir. Klasik tor motorunda geçerlidir; Arti/ArtiHop bunu açığa çıkarmaz. (#69)
  • Çevrim dışı coğrafi kural kümeleri (geo rule-sets), Tor üzerinden güncellenir: Ülke ve alan adı kategorisi yönlendirme listeleri (.srs) artık diske önbelleğe alınıyor ve her başarılı bağlantıdan sonra Tor bağlantısının kendisi üzerinden arka planda yenileniyor; bu, köprü verileriyle aynı çalışma mantığına sahiptir. TUN başlangıcı, önbelleğe alınmış listeleri yerel dosyalar olarak referans alır; böylece bir kez çekildikten sonra coğrafi yönlendirmenin, bu kuralların en çok önem arz ettiği ve engellendiği yerlerde raw.githubusercontent.com adresine hiçbir bağımlılığı kalmaz. Doğrulanamayan veya indirilemeyen listeler, bağlantıyı koparmak yerine o bağlantı için atlanır ve daha sonraki bir bağlantıda otomatik olarak uygulanır. İndirmeler doğrulandığı için bir sansür engelleme sayfası önbelleği zehirleyemez (poison). (#68)
Kısıtlayıcı ağlar için bir güvenilirlik sürümü ve uzun süredir talep edilen bir yenilik: OnionHop CLI artık macOS için imzalanmış ve onaylanmış (notarized) olarak yayında.

Eklendi
- macOS CLI: Apple Silicon (OnionHopCLI-3.5-macos-arm64.tar.gz) ve Intel (OnionHopCLI-3.5-macos-x64.tar.gz) için tam evrensel yerel çalışma zamanını (universal native runtime) içeren bağımsız (self-contained) terminal istemcisi: tor, eklenebilir taşıyıcılar (pluggable transports: obfs4, snowflake, conjure, webtunnel, dnstt), sing-box/xray TUN çekirdekleri, ArtiHop motoru ve Snowflake gönüllü proxy'si dahildir. Her bir ikili dosya (binary) Rana GmbH Geliştirici Kimliği (Developer ID) ile imzalanmış ve paket onaylanmıştır (notarized); bu sayede Gatekeeper engelini aşma yöntemlerine gerek kalmadan çalışır. Arşivi çıkarıp ./OnionHopV3.Cli komutunu çalıştırmanız yeterlidir. Proxy modu doğrudan çalışır; TUN modu için sudo yetkisi gerekir.

Düzeltildi
  • Akıllı Bağlantı (Smart Connect) özelliği, düşmanca (hostile) ağlarda artık "İptal Edildi" (Canceled) diyerek yarıda kesilmiyor. Bir coğrafi konum/OONI testi zaman aşımına uğradığında .NET bunu bir kullanıcı iptali gibi raporluyor ve tüm bağlantı duruyordu. Zaman aşımları artık köprü yükseltmeli (bridge escalation) genel bağlantı planına geri dönüyor; böylece bu uç noktaların askıda kaldığı veya engellendiği ağlarda bile bağlantı çalışmaya devam ediyor. (#65)
  • Yanlış yazılmış bir geosite kategorisi artık TUN başlatma işlemini bozmayacak. sing-box, kural kümesindeki (rule-set) bir 404 hatasını "ÖLÜMCÜL" (FATAL) olarak değerlendiriyordu; OnionHop artık yapılandırmayı oluşturmadan önce her uzak coğrafi kural kümesini doğrular, düz ülke adlarını otomatik olarak SagerNet'in category- varyantına yükseltir (örneğin ir → category-ir) ve çözülemeyen her şeyi bağlantıyı koparmak yerine bir günlük (log) uyarısıyla atlar. (#68)
  • Mevcut Köprü (Current Bridge) sekmesine gerçek sütunlar eklendi. Köprü satırları, günlük satırı ayrıştırıcısına (log-line parser) zorlanıyor ve bu da taşıyıcı (transport) adını Zaman (Time) sütununa bölüyordu. Sekme artık 8 dilin tamamında yerelleştirilmiş olarak Tür (Type), Adres (Address) ve Detaylar (Details) sütunlarını gösteriyor. (#69)
  • Windows yüksek DPI ekranlar: Pencere artık %100'ün üzerinde ölçeklendirilmiş ekranlarda görünür ekrandan daha büyük açılmıyor; çalışma alanına sığacak şekilde kısıtlanıyor ve yeniden ortalanıyor. (#67)

Detaylı raporları için @daruk3 ve @Airuop'a teşekkürler.