Azure SDK’da Node.js 20 Desteği Bitiyor: Hazır mısınız?
Tuhaf ama, Geçen hafta bir müşterimizin DevOps ekibiyle toplantıdaydık. Konu bambaşkaydı aslında — CI/CD pipeline optimizasyonu konuşuyorduk. Ama tam ortasında birisi sordu: “Hocam, Azure SDK’nın Node 20 desteğini kaldıracağını duydunuz mu?” Masadaki herkes birbirine baktı. Kimse duymamıştı. Ben duymuştum ama açıkçası o kadar da önemsememiştim. Sonra düşündüm… Aslında — hayır dur, daha doğrusu bu konu düşündüğümden çok daha kritik.
📋 İçindekiler
-
Kısa bir not düşeyim buraya.
Şöyle ki, Ha bu arada, Azure SDK’nın bu değişikliği majör versiyon artışı olmadan yapabileceğini söylemiştim. Bu enterprise ekipler için biraz tuzaklı bir durum. Çünkü çoğu ekip sadece majör versiyon değişikliklerinde breaking change bekliyor. Ama burada minör veya patch update’le birlikte engines alanı değişecek. Otomatik dependency update araçları (Dependabot, Renovate) kullanıyorsanız, bir sabah uyandığınızda pipeline’larınız kırmızı olabilir.
Şöyle ki, Bu noktada GitHub’da Açık Kaynak Tedarik Zincirini Korumak: Benim Sahada Gördüklerim yazımda bahsettiğim tedarik zinciri güvenliği konusu tekrar devreye giriyor. Bağımlılık yönetimi sadece güvenlik açıkları değil, runtime uyumluluğu açısından da kritik.
Node.js 22’de Neler Farklı?
Peki Node.js 22’ye geçince ne kazanacağız? Sadece “destek devam ediyor” demek yetmez, somut avantajlar da var.
Node.js 22, V8 engine’in 12.4 versiyonuyla geliyor. Bu da demek oluyor ki —
Array.fromAsync(),Setmetotları (union, intersection, difference gibi),import.meta.resolve()desteği ve daha bir sürü ES2024 özelliği mevcut. Performans tarafında da özellikle garbage collection ve startup sürelerinde iyileştirmeler var.Ama açık konuşayım: Node.js 20’den 22’ye geçiş, 14’ten 18’e geçiş kadar dramatik değil. Çoğu proje için fark etmeyeceksiniz bile. Asıl mesele performans kazanımı değil, güvenlik ve destek sürekliliği.
Bir de şu var — 2025’in başında bir müşteride Node.js 22’ye geçtik, TypeScript 5.4 ile birlikte kullanıyorduk. ESM/CJS karmaşası konusunda Node 22 biraz daha tutarlı davranıyor diyebilirim. Ama “biraz” diyorum çünkü o karmaşa hâlâ tam çözülmüş değil — itiraf edeyim, beklentimin üstündeydi —. Peki bunu neden söylüyorum? Yanı mucize beklemeyin.
Eğer CI/CD pipeline’larınızda değişiklik yapmayı düşünüyorsanız, GitHub Actions Nisan 2026 Güncellemeleri: Üç Küçük Ama Etkili Hamle yazısına da göz atmanızı tavsiye ederim — runner imajlarındaki Node versiyonu değişiklikleri orada da gündem olmuştu (yanlış duymadınız)
Benim Tavsiyem: Bugün Başlayın, Yarına Bırakmayın
2019’da kendi test sunucularımda Node.js 10’dan 12’ye geçiş yapmıştım. “Ne olacak canım, iki versiyon fark” demiştim. Üç gün uğraştım. Native modüller, deprecated API’ler, değişen crypto davranışları… Küçük projede bile bu kadar sürdüyse, büyük projede ne olacağını sız düşünün.
Şu an 2026’nın ortasına kadar vaktiniz var gibi görünüyor ama aslında — dur bir saniye, hesap yapayım — yaklaşık 12 ay. 12 ay bir enterprise geçiş projesi için fena değil ama böl böl da değil. Hele bir de yaz tatili, sprint planlamaları, diğer öncelikler derken zaman uçup gidiyor.
Bunu biraz açayım.
Ha, bir de şunu söyleyeyim: Bu geçişi sadece Azure SDK yüzünden yapmayın. Node.js 20’nın kendisi zaten Nisan 2026’da end-of-life olacak. Yanı Azure SDK’dan bağımsız olarak da Node 22’ye geçmeniz gerekiyor. Microsoft sadece bu gerçeği SDK tarafında resmileştiriyor.
Sıkça Sorulan Sorular
Node.js 20.x’te Azure SDK kullanmaya devam edebilir mıyım?
Teknik olarak eski SDK versiyonları çalışmaya devam edecek. Ama 9 Temmuz 2026’dan sonra çıkan yeni SDK versiyonları Node.js 20.x’i resmî olarak desteklemeyecek. Güvenlik yaması ve bug fix almayacaksınız. Kendi riskinizde kullanabilirsiniz ama tavsiye etmiyorum.
Bu değişiklik SDK’nın majör versiyonunu değiştirecek mi?
Hayır. Microsoft’un politikasına göre, EOL olan bir Node.js versiyonunun desteğinin kaldırılması majör versiyon artışı gerektirmiyor. Bu yüzden minör veya patch update ile gelebilir — otomatik dependency update araçlarınız varsa dikkatli olun.
Node.js 22’ye geçiş zor mu? Uyumluluk sorunları olur mu?
Neyse, çoğu proje için geçiş sorunsuz oluyor. Ama native addon kullanan projeler, çok eski npm paketlerine bağımlı olan uygulamalar. ESM/CJS karışık yapılar sorun çıkarabiliyor. Mutlaka test ortamında deneyin, sonra üretime alın.
Azure Functions Node.js runtime’ı da etkileniyor mu?
Bi saniye — Evet. Azure Functions’ta runtime olarak Node.js 20.x seçtiyseniz, hem Node.js’in kendi EOL tarihi hem de SDK desteğinin kalkması sizi etkiliyor. Functions runtime’ınızı da Node.js 22’ye güncellemeniz gerekecek.
Geçiş için en uygun zaman ne zaman?
Şimdi, bir şey dikkatimi çekti: Şimdi. Ciddi söylüyorum. En geç 2026 Haziran başına kadar tamamlamayı hedefleyin. Test, staging, production derken minimum 2-3 ay ayırın — özellikle birden fazla servisiniz varsa.
Kaynaklar ve İleri Okuma
Yanı, Azure SDK Blog: Node.js 20.x Destek Sonu Duyurusu
Azure SDK for JavaScript Destek Politikası — Microsoft Learn
Node.js Release Takvimi. LTS Bilgileri
Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Ceren M.
Bizim pipeline’larda hala Node 18 kullanan servisler var, 20’ye geçerken zaten epey uğraşmıştık. Şimdi bir de 22’ye geçiş planlamak gerekecek, Azure Functions tarafında breaking change çıkmasa iyi olur.
Yorumlar kapalı.








1 yorum