Yeni Özellikler​

  • auto: NodeJS, Python ve Go için oluşturulan otomasyon API'lerine up eklendi.
  • auto: NodeJS, Python ve Go için oluşturulan otomasyon API'lerine logs komutları eklendi.
  • pcl: Belirli bir ID'ye sahip kaynağın stack'e dahil edilmeden var olup olmadığını denetleyen resourceExists yerleşik fonksiyonu eklendi.
  • sdkgen/nodejs: Belirli bir ID'ye sahip kaynağın stack'e dahil edilmeden var olup olmadığını denetleyen statik exists metotları oluşturuluyor.
  • programgen/nodejs: Oluşturulan Node.js programlarında resourceExists destekleniyor.

İyileştirmeler​

  • cli: Kullanımdan kaldırılmış pulumi watch komutu kaldırıldı.
  • cli: Kullanımdan kaldırılmış tek başına pulumi logs komutu kaldırıldı.
  • cli: PULUMI_ENABLE_AUTOMATIC_AGENT_SIGNUP ayarlanmadıkça yapay zeka ajanları için Pulumi Cloud hesapları otomatik olarak oluşturulmuyor.

Hata Düzeltmeleri​

  • backend/service: pulumi login, pulumi whoami --verbose ve pulumi about komutlarında kullanıcı adıyla anılan bir sayfa yerine Pulumi Cloud konsolunun ana sayfasına bağlantı veriliyor; böylece bu adda organizasyonu olmayan kullanıcılar için bağlantı artık "Bulunamadı" sayfasına gitmiyor.
  • cli/package: Şema bir Go modül yolu veya içe aktarma taban yolu belirlediğinde, oluşturulan SDK'nın Go import yolu yazdırılıyor.
  • cli: Ajan modunda pulumi login, paylaşılan ajan kimlik bilgileri geçerli olsa bile tarayıcı üzerinden giriş yapıyor ve geçici ajan hesabını yeniden kullanmıyor.
  • pcl: Dalları null ve liste olan koşullu ifadenin length işlemine izin verildi.
  • programgen/go: İsteğe bağlı nesneler ve enum'lar üzerindeki ApplyT parametreleri işaretçi olarak tiplendiriliyor.
  • programgen/nodejs,python: Oluşturulan TypeScript ve Python programlarında iç içe koşullu ifadeler parantez içine alınıyor.
  • engine: Bir kaynağın var olup olmadığı denetlenirken sağlayıcının Read işlemine state değil yalnızca girdiler iletiliyor.
  • programgen/go: İsteğe bağlı string'lerden oluşan tuple için Go program üretimi düzeltildi.
  • cli: Sağlayıcının şeması sürümü içermediğinde pulumi package add komutunun "version must be provided when package supports packing" hatasıyla başarısız olması düzeltildi.
  • cli/env: pulumi env open veya pulumi env run bir ortamı değerlendiremediğinde biçimlendirilmiş tanılama mesajları gösteriliyor.
  • cli/install: pulumi install komutunun yerel SDK üretimi için başlattığı sağlayıcı eklentisi artık durduruluyor.
  • cli: Oturum açılmamışken pulumi whoami komutunun ajan hesabı oluşturması engellendi.
  • pcl: hideDiffs, girdi özellikleri yerine kaynak çıktı özelliklerini çözümlüyor.
  • cli/display: Gizli (secret) map ve dizilerin JSON önizleme ve güncelleme çıktısına sızması düzeltildi.

Çeşitli​

  • sdk/dotnet: dotnet v3.115.0, ardından v3.116.0 ve v3.116.2 sürümlerine yükseltildi.
  • yaml: yaml v1.38.12, ardından v1.38.13 ve v1.38.15 sürümlerine yükseltildi.
  • hcl: hcl v0.18.6, ardından v0.18.8 ve v0.19.0 sürümlerine yükseltildi.
  • java: java v1.37.7, ardından v1.38.0 sürümüne yükseltildi.
  • sdk: apitypes'a yönetilen ESC ortam alanları eklendi.
  • sdk/go: Stack tarafından yönetilen ESC ortamları için workspace.Environment.DefinitionNode eklendi.

Yeni Özellikler​

  • engine: ReadResourceResponse'a bir id alanı eklendi; böylece sağlayıcılar (provider) istekte verilenden farklı, çözümlenmiş bir id döndürebiliyor. SDK'lar bu id'yi .id üzerinden sunuyor ve önizleme sırasında boşsa bilinmeyen (unknown) olarak çözümlüyor.
  • cli/policy: --policy-pack-config biçiminin 2. sürümü oluşturuldu; politika yapılandırmaları policies altına yerleştirildi ve exceptions alanı eklendi.
  • auto: NodeJS, Python ve Go için oluşturulan otomasyon API'lerine state komutları eklendi.
  • auto: NodeJS, Python ve Go için oluşturulan otomasyon API'lerine env komutları eklendi.

İyileştirmeler​

  • cli/new: İlk girişte, giriş pulumi new tarafından başlatıldıysa karşılama mesajında pulumi new önerilmiyor.
  • protobuf: GenerateProgram ve GenerateProject isteklerinde dil sunucularına (language host) bir mapper hedefi iletiliyor.

Hata Düzeltmeleri​

  • engine: Bir read işleminin bağımlılığı oluşturuluyor veya değiştiriliyorsa önizlemede sağlayıcı Read çağrısı atlanıyor ve SDK'ya bilinmeyen çıktılar döndürülüyor.
  • cli: pulumi org audit-log komutunun --user ve --event-type seçeneklerini yok saymasi düzeltildi, V2 audit log API'sine geçildi ve --end-time eklendi.
  • engine: Read isteğinin State alanında kaynak girdileri artık sağlayıcılara gönderilmiyor; sağlayıcılar State'in dolu olup olmadığına bakarak kullanıcı kaynaklı Get/import ile yenilemeyi (refresh) ayırt edebiliyor.
  • engine: Geçersiz girdi tanılarında gizli değerler, --show-secrets verilmedikçe gizleniyor.
  • pcl: PCL yorumlayıcısının lookup işlevi, anahtar map'te yoksa varsayılan değeri değiştirmeden döndürüyor.
  • sdk: --continue-on-error altında başarısız olan bir kaynağın çıktıları hata vermek yerine bilinmeyen olarak çözümleniyor, böylece programın geri kalanı çalışmaya devam ediyor; recover artık bu hataları yakalamıyor.
  • sdk: --continue-on-error altında başarısız olan bir read işleminin çıktıları, bilinen boş değerler yerine bilinmeyen olarak çözümleniyor.
  • sdk/python: Output.apply ve diğer Output yöntemlerinde ty'nin verdiği yanlış eksik argüman hataları düzeltildi.
  • sdk/nodejs: Node.js bileşen girdi ve çıktılarında tek üyeli enum'lar ve as const nesneleri destekleniyor.

Hata Düzeltmeleri​

  • Ortam tanımlarını düzenleyen, ayarlayan, silen veya sağlayıcı bilgilerini yöneten komutların, ortamı okuduktan sonra yapılan değişikliklerin üzerine yazması sorunu düzeltildi. Çakışma durumunda düzenleme komutu, mevcut tanımı ve yapılan değişiklikleri göstererek düzenleyiciyi yeniden açıyor; diğer komutlar ise işlemi hata ile sonlandırıyor.
  • Sapma tespiti hiç çalıştırılmadığında, yığın sapma durumu sorgusunda bilinmeyen bir sapma durumunun raporlanması sağlandı.

Yeni Özellikler​

  • Go, Node.js ve Python SDK'larına, belirtilen kimliğe sahip bir kaynağın yığına (stack) dâhil edilmeden mevcut olup olmadığını kontrol eden çalışma zamanı işlevleri eklendi.
  • SDK'ların her bir dönüş değeri için bağımlılık bilgilerini alabilmesi amacıyla, Call işlemi sırasında OutputValues üzerinde anlaşma sağlanması eklendi.
  • Node.js, Python ve Go için oluşturulan Automation API'lerine dönüştürme komutu eklendi.
  • Node.js, Python ve Go için oluşturulan Automation API'lerine yenileme komutu eklendi.
  • Node.js, Python ve Go için oluşturulan Automation API'lerine about komutları eklendi.
  • Node.js, Python ve Go için oluşturulan Automation API'lerine yapılandırma komutları eklendi.

İyileştirmeler​

  • OPA policy pack'leri artık CLI tarafından gerektiğinde indirilen pulumi-language-opa dil eklentisi üzerinden çalıştırılıyor. Çalışma zamanına ait bir dil eklentisi bulunmadığında pulumi-analyzer-policy-<runtime> eklentisine geri dönülmesi durduruldu.
  • pulumi new komutunda paket yöneticisi seçimi sorulurken npm önerilen paket yöneticisi olarak işaretlendi.
  • Go SDK'sında IDInput ve URNInput türlerinin StringInput, AssetInput ve ArchiveInput türlerinin ise AssetOrArchiveInput arayüzlerini karşılaması sağlandı.
  • Yeni Node.js projelerinde yalnızca bir paket yöneticisi kuruluysa paket yöneticisi seçimi sorusu atlanıyor.
  • Poetry veya uv kurulu olmadığında pulumi new komutunda araç zinciri seçimi sorulmadan pip kullanılıyor.
  • Kaldırılmadan önce pulumi logs komutunun varsayılan olarak hata vermesi sağlandı.
  • Kaldırılmadan önce pulumi watch komutunun varsayılan olarak hata vermesi sağlandı.

Hata Düzeltmeleri​

  • PCL'de lookup varsayılanının herhangi bir türde olabilmesi ve sonucun, öğe türü ile varsayılan türünün birleştirilmesiyle elde edilen tür olarak belirlenmesi sağlandı.
  • PCL'de eksik lookup varsayılanı hatasının program çalışırken ortaya çıkması yerine bağlama aşamasında bildirilmesi sağlandı.
  • PCL'de, bir işlevin veya özelliğin tuple türünün girdi biçimini beklediği durumlarda çıktı içeren tuple sabitlerinin kabul edilmesi sağlandı. Örneğin length([secret(x)]) artık kabul ediliyor.
  • PCL yorumlayıcısındaki entries yerleşik işlevinin, değerleri farklı yapılara sahip bir map veya boş bir map üzerinde panik hatası vermesi düzeltildi.
  • pulumi policy group edit komutunun yığınları, Policy Pack'leri ve Insights hesaplarını ekleyip kaldırması düzeltildi.
  • PCL'de bir prompt işleneninin tür dönüştürme sarmalayıcısının gereksiz bir apply işlemine taşınması engellendi. Bu durum geçersiz Go kodu oluşturuyordu.
  • Öneklerin eşleştiği durumlarda şablon kaynağı değiştirilirken oluşan sorun düzeltildi.
  • Çıktı değerlerinde taşınan gizli bilgilerin düz metin günlüklerinde ve pulumi logs share çıktısında açıkça gösterilmesi engellendi.
  • Dal değiştirilirken şablonların alınmasında yaşanan sorun düzeltildi.
  • Agent modunda pulumi login komutunun yeni bir agent hesabı oluşturmak yerine tarayıcı üzerinden oturum açması sağlandı.
  • Go kodu oluşturulurken kaynak kimlikleri metin girdilerine aktarılırken yapılan gereksiz ToIDOutput().ToStringOutput() dönüşümleri kaldırıldı.
  • Go kodu oluşturulurken çıktı içeren nesne sabitlerinin pulumi.StringMap ve benzeri türlerle tanımlanması sağlandı. Böylece tür dönüşümü gerekmeksizin derlenip dışa aktarılabiliyorlar.
  • Agent önizlemelerinde isteğe bağlı yenileme ayarlarının, yenilenen durum kalıcı olarak kaydedilmeden uygulanması sağlandı.
  • Tamamlanan indirme ve açma işlemlerine ait ilerleme çubuklarının, pulumi new başarı mesajı gibi sonraki çıktıların altında yeniden görünmesi engellendi.
  • Python SDK'sında Output.recover işlevinin, apply üzerinden veya program gövdesi döndükten sonra gelen hataları yakalayamaması düzeltildi.
  • PCL yorumlayıcısında başarısız işlev çağrılarından recover ile kurtarılması sağlandı.
  • Kendi içinde iç içe geçen şema nesneleri gibi özyinelemeli türlerin atanabilirliği, yığın taşmasına neden olmadan denetleniyor.
  • PCL'de bir döngü boyunca farklılık gösteren özyinelemeli nesne türlerinde Equals işlevinin hatalı davranması düzeltildi.

Yeni Özellikler​

  • [engine] SDK'ların bağımlılık taşıyan değerleri bağımsız değişken olarak gönderip yanıtta alabilmesi ve sağlayıcıların bunları işleyebilmesi için Invoke üzerinde OutputValues görüşmesi eklendi. Bu özellik yeni bir accepts_outputs_in_invoke el sıkışma yeteneğiyle denetleniyor.
  • [auto] Node.js, Python ve Go için oluşturulan Automation API'lerine sürüm bilgisi eklendi.
  • [auto] Node.js, Python ve Go için oluşturulan Automation API'lerine whoami eklendi.
  • [auto] Node.js, Python ve Go için oluşturulan Automation API'lerine install eklendi.

Hata Düzeltmeleri​

  • [engine] Bir sağlayıcı yenileme veya güncelleme sırasında varlıkları geri gönderdiğinde, önceki durumdaki çıkarılmış varlık içerikleri geri yükleniyor.
  • [engine] Bir üst bileşende tanımlanan kaynak dönüşümlerinin kaynak okuması altında ebeveynlenen kaynaklara uygulanması düzeltildi.
  • [pcl] İki özyinelemeli nesne türü veya bir harita ile nesnenin her çalıştırmada aynı sonlu türe dönüştürülmesi sağlandı. Böylece yığın taşması veya her çalıştırmada farklı tür seçilmesi engellendi.
  • [sdkgen/nodejs] Oluşturulan belgelerde @pulumi/pulumi türleri eksik bağlantılar yerine TypeDoc sayfalarına bağlanıyor.
  • [engine] Hedeflenmeyen adımlar programdaki bağımlılıkları değiştirdiğinde oluşan snapshot bütünlüğü hatası düzeltildi.
  • [sdk/nodejs] Dinamik sağlayıcılar, properties alanı boş olduğunda Read isteğinin inputs alanına geri dönüyor; böylece motor inputs değerlerini duruma kopyalamayı bıraktıktan sonra Get çalışmaya devam ediyor.
  • [sdk/python] Dinamik sağlayıcılar, properties alanı boş olduğunda Read isteğinin inputs alanına geri dönüyor; böylece motor inputs değerlerini duruma kopyalamayı bıraktıktan sonra Get çalışmaya devam ediyor.
  • [cli/package] Sürüm etiketlerinde v ön eki bulunmayan Git depolarından eklenti indirme desteği düzeltildi.
  • [engine] Şema yükleyicisi bir dil ana bilgisayarında çalışan eklentiyi başlattığında oluşan dil ana bilgisayarı işlemi sızıntısı düzeltildi.
  • [sdkgen] moduleFormat aracılığıyla kök modülde provider adında kaynak tanımlayan şemaların SDK oluşturma sırasında çökmesine neden olması engellendi.
  • [engine] Zaman aşımını önlemek için eklentilerin paralel olarak kapatılması sağlandı.
  • [cli/plugin] HTTP/1.1 üzerinden yapılan geçerli indirmelerin eklenti sağlama toplamı doğrulaması tarafından reddedilmesi ve arşivin sonundaki verilerin yok sayılması düzeltildi.
  • [cli/new] Zaman aşımı kaldırılan pulumi new kimlik bilgisi kontrolündeki hatalı “provider erken sonlandı” hatası düzeltildi.
  • [auto] Sembolik bağlantılı dizinlerde bulunan projelerde proje ayarlarının düzeltilmesi sağlandı.

İyileştirmeler​

  • [backend/service] --otel-traces etkin olduğunda Pulumi Cloud API çağrılarına W3C traceparent başlığı gönderiliyor.

Diğer Değişiklikler​

  • [java] Java 1.37.4 sürümüne yükseltildi.
  • [yaml] YAML 1.38.9 sürümüne yükseltildi.
  • [hcl] HCL 0.18.4 sürümüne yükseltildi.
  • [sdk/dotnet] .NET 3.114.2 sürümüne yükseltildi.