PowerShell 7.6 LTS Genel Kullanıma Sunuldu

Microsoft, PowerShell 7.6’yı .NET 10 (LTS) üzerine inşa edilen uzun süreli destek (LTS) sürümü olarak genel kullanıma sundu. Sekme tamamlama, modül güncellemeleri ve motor iyileştirmeleri öne çıkıyor.

Microsoft, uzun süreli destek (LTS) sürümü olarak konumlandırdığı PowerShell 7.6‘nın genel kullanıma açıldığını duyurdu. Yeni sürüm .NET 10 (LTS) üzerine inşa edildi; PowerShell’in modern.NET platformuyla hizalanma stratejisi bir kez daha sürdürüldü. Aşağıda 7.6’nın getirdiği başlıca yenilikler, motor tarafındaki iyileştirmeler, kırılmaya yol açan değişiklikler ve LTS olmasının üretim ortamları için ne anlama geldiği derlendi.

PowerShell 7.6 ile gelen genel tablo

Ekip, 7.6 döngüsünde büyük çaplı yeni özellikler yerine tutarlılık, kararlılık ve uzun süredir açık kalan sorunların giderilmesi üzerine yoğunlaştığını belirtiyor. Önizleme sürümleri boyunca yapılan çalışmalar, platformlar arası davranış farklılıklarını azaltmayı ve etkileşimli kabuk deneyimini iyileştirmeyi hedefledi.

Kaynağa göre 7.6’daki iyileştirme alanları şöyle:

  • Modül güncellemeleri
  • Motor (engine) kararlılık düzeltmeleri
  • Yerel (native) komut çağrılarının işlenmesindeki iyileştirmeler
  • Sekme tamamlama (tab completion) tutarlılığında iyileştirmeler
  • .NET 10 ile hizalanmış bağımlılık güncellemeleri

LTS etiketi taşıdığı için PowerShell 7.6, üretim ortamlarındaki otomasyon senaryoları için önerilen sürüm konumuna geliyor.

Güncellenen çekirdek modüller

Sürüm, PowerShell dağıtımıyla birlikte gelen bazı çekirdek modüllerin yeni sürümlerini içeriyor:

  • PSReadLine
  • Microsoft.PowerShell.PSResourceGet
  • Microsoft.PowerShell.ThreadJob

Sekme tamamlamada geniş çaplı iyileştirmeler

7.6 döngüsünde onlarca sekme tamamlama iyileştirmesi yapıldı. Kaynakta öne çıkarılan başlıca değişiklikler:

  • Sağlayıcılar (providers) arasında yol (path) tamamlamanın iyileştirilmesi
  • Bazı cmdlet parametreleri için değer tamamlama eklenmesi
  • Daha fazla bağlam ve kapsamda tamamlamanın çalışır hale getirilmesi
  • Modüllerin kısa adıyla (shortname) tamamlanabilmesi

Mevcut komutlara eklenen yetenekler

Yeni sürümde bazı komutlar ek parametreler ve davranış iyileştirmeleriyle genişletildi:

  • Get-Clipboard cmdlet’ine -Delimiter parametresi eklendi.
  • Register-ArgumentCompleter cmdlet’ine, yerel komutlar için genel bir tamamlayıcı kaydetmeye izin veren -NativeFallback parametresi eklendi.
  • New-Item komutunda -Target artık literal (birebir) değer olarak işleniyor.
  • Get-Command cmdlet’ine -ExcludeModule parametresi eklendi.
  • Start-Process -Wait için yoklama (polling) verimliliği iyileştirildi.

Motor tarafındaki iyileştirmeler

PowerShell’in çekirdek motorunda yapılan iyileştirmeler, hem dil düzeyinde ergonomiyi hem de platformlar arası davranışın öngörülebilirliğini artırmayı amaçlıyor:

  • PowerShell’in yerleşik Where() ve Foreach() metotlarına PSWhere() ve PSForEach() takma adları (alias) eklendi.
  • SystemPolicy genel API’leri Unix platformlarında görünür ancak işlevsel etkisi olmayan (no-op) hale getirildi; bu sayede ilgili API’ler PowerShellStandard.Library içine dahil edilebiliyor.
  • X509Certificate2 için DnsNameList, artık X509SubjectAlternativeNameExtension.EnumerateDnsNames() metodunu kullanacak şekilde güncellendi.
  • Konsol ana bilgisayarının (console host) stderr çıktısı artık NO_COLOR ortam değişkenine uyacak biçimde davranıyor.

Daha önce deneysel (experimental) statüde olan bazı özellikler de bu sürümde ana akım (mainstream) özelliklere dönüştürüldü:

  • PSFeedbackProvider
  • PSNativeWindowsTildeExpansion
  • PSRedirectToVariable
  • PSSubsystemPluginModel

Kırılmaya yol açan değişiklikler

Duyuruda vurgulandığı üzere 7.6, uzun vadede tutarlılığı iyileştirmek amacıyla sınırlı sayıda kırıcı (breaking) değişiklik içeriyor. Var olanların otomasyon senaryolarını etkileyebileceği akılda tutulmalı:

  • Join-Path cmdlet’inin -ChildPath parametresi artık string[] türünde. Kullanıcı alt yolları dizi olarak verebiliyor, -AdditionalChildPath kullanma zorunluluğu da ortadan kalkıyor.
  • WildcardPattern.Escape(), tek başına duran geri tırnak (backtick) karakterlerini artık doğru biçimde kaçırıyor.
  • GetHelpCommand izleme kaynağı (trace source) adının sonundaki fazladan boşluk kaldırıldı.

Topluluk katkısı ve LTS’in anlamı

PowerShell, global bir topluluk tarafından geliştirilmeye devam ediyor. Duyuru, 7.6 sürümüne kod katkısı sağlayan çok sayıda kişiyi isim isim listeliyor; konu açan, sorun bildiren, önizleme sürümlerini test eden, dokümantasyona katkı sunan ve düzeltme gönderen herkese teşekkür ediliyor.

Uzun süreli destek etiketi, sürümün belirli bir zaman aralığı boyunca güvenlik ve hata düzeltmeleriyle sürdürüleceği anlamına gelir. Bu nedenle üretim otomasyonu, CI/CD boru hatları ve sunucu tarafı betikler için PowerShell 7.6, geçişin planlanması gereken temel sürüm. Deneysel özelliklerin ana akıma alınması da senaryoların Enable-ExperimentalFeature gibi ek yapılandırma adımlarına gerek kalmadan çalışabileceğini gösteriyor.

Sonraki adımlar

Ekip, önizleme sürümleri üzerinden yeni yetenekler ve iyileştirmeler sunmaya devam edeceğini belirtiyor. PowerShell 7.7 ve sonrası için planlar hakkında bilgi almak isteyenler, PowerShell ekibinin blogunda Steve Lee tarafından paylaşılan geleceğe dönük yol haritası yazısına başvurabilir.

Kaynaklar ve İleri Okuma

Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Aşkın KILIÇ

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

4 Yorum

  1. .NET 10 üzerine kurulmuş olması güzel, en azından LTS olduğu için bir süre güncellemelerle boğuşmayacağız. Sekme tamamlama iyileştirmeleri küçük görünüyor ama günlük kullanımda gerçekten fark yaratıyor, bunu söylemeliyim.

  2. .NET 10 üzerine kurulmuş olması güzel, en azından LTS olduğu için bir süre güncelleme derdi olmayacak. Sekme tamamlama iyileştirmeleri günlük kullanımda gerçekten fark yaratıyor, bu konuda ne gibi değişiklikler gelmiş merak ettim.

  3. .NET 10 üzerine kurulu olması güzel, özellikle sekme tamamlama iyileştirmeleri günlük kullanımda ciddi fark yaratıyor. LTS olması da kurumsal ortamlarda benimsenmesini hızlandırır sanırım, siz PowerShell’i aktif olarak kullanıyor musunuz?

Yoruma kapalı.

✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Kategoriler
Ara
Paylaş
WhatsApp
İçindekiler
← Cluster API v1.12: Yerinde Gün...
Copilot Impact Dashboard’... →
📩

Gitmeden önce!

Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

📬 Haftalık bülten: Teknoloji + AI haberleri
Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.