2.4.3 ile bir "Yeniden başlat ve kur" düğmesi gelmişti. Bu düğmeyle yapılan ilk gerçek güncelleme, kendi Mac'imizde 2.4.3'ten 2.4.4'e geçiş oldu ve testlerimizin kaçırdığı iki sorunu gösterdi. 2.4.5 ikisini de düzeltiyor.
Basılamayan bir düğme
S3, güncelleyicinin durumuna 300 ms'de bir bakıyor. Güncelleyici yeni sürüm numarasını yalnızca kısa süren "bulundu" adımında bildiriyordu. Hızlı bir bağlantıda bu adım, S3 bakmadan bitmişti. Ada bildirimi sürümsüz kaldı (Güncelleme hazır · S3). S3 hangi sürümün beklediğini bilmediği için de düğme kapalı kaldı.
Artık sürüm her adımda taşınıyor: indirme, açma, hazır ve kurulum. Düğme de artık etikete hiç bakmıyor; gerçekten hazır bekleyen güncellemeye bakıyor.
S3 geri açılmadı
Kurulumdan sonra S3'ün kendiliğinden yeniden açılması gerekiyordu. Kurulum yaklaşık iki saniyede bitti ama S3 kapalı kaldı. Bir Codex işçisi, yeni kalıcı günlükleri kullanarak gerçek yolu yeniden üretti: Developer ID ile imzalı iki derleme, yerelde sunulan imzalı bir güncelleme kaynağı ve kullanıcıların aldığı Sparkle kurucusunun aynısı.
Neden günlükte göründü. S3'ü yeniden açan küçük görevli, güncelleyici tarafından S3 kapandıktan sonra başlatılıyordu. Ama Sparkle kurulumu bitirip güncelleyiciyi daha önce kapatıyordu, bu yüzden görevli hiç oluşmuyordu. Artık görevliyi S3, kapanmadan önce kendisi hazırlıyor. Görevli yeni derlemenin beklenen sürüm olduğunu ve Developer ID imzasının geçerli olduğunu doğruluyor, sonra onu bir kez açıyor.
İmzalı test, Yeniden başlat ve kur: S3 0,95 sn'de yeniden açıldı
İmzalı test, normal çıkış: güncelleme kuruldu ve S3 olması gerektiği gibi kapalı kaldı
Temiz çıkana kadar incelendi
Değişikliği üç bağımsız Codex incelemesi taradı. Dört sorun daha buldular: yayın paketine sızabilecek bir test derlemesi, iptal etmeyen bir İptal düğmesi, sonraki normal bir çıkışta S3'ü açabilecek eski bir görevli ve hiç temizlenmeyen bitmiş görevli süreçleri. Hepsi düzeltildi; son inceleme hiçbir sorun bulmadı. 116 güncelleme testi geçiyor.
Dürüst bir not: 2.4.4'ten 2.4.5'e geçişte hâlâ 2.4.4'ün güncelleyicisi çalışıyor, bu yüzden o adımda düğme gri kalabilir. O arada normal çıkış güncellemeyi kurar. 2.4.5'ten itibaren Yeniden başlat ve kur anlatıldığı gibi çalışıyor.