deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

Office.js 16.0.20619, belgelenmiş sekiz Word.LineFormat özelliğini sessizce kaldırdı

Microsoft'un Office.js 16.0.20619 derlemesi, Word'ün üretim API yüzeyinden belgelenmiş sekiz Word.LineFormat özelliğini kaldırdı; herhangi bir kullanımdan kaldırma bildirimi yapılmadı ve bu durum şekil konturlarını biçimlendiren eklentileri bozabilir.

Office.js 16.0.20619, belgelenmiş sekiz Word.LineFormat özelliğini sessizce kaldırdı

Word.LineFormat'tan sekiz özellik kayboldu

Office.js 16.0.20619.15190 derlemesi 30 Ekim 2026'da dağıtımını tamamladı ve dev.to'da yayımlanan bir analize göre, Word eklentilerinde şekil ve metin kutusu konturlarını yöneten Word.LineFormat nesnesinden sekiz özellik kaldırıldı. Etkilenen üyeler şunlar: backgroundColor, foregroundColor, pattern, beginArrowheadLength, beginArrowheadStyle, beginArrowheadWidth, endArrowheadLength, endArrowheadStyle ve endArrowheadWidth. Aynı sınıftaki kardeşleri — dashStyle, weight, style, transparency, isVisible ve insetPen — dokunulmamış durumda.

dev.to yazısı ayrıca aynı derlemede sınıftaki set() ve toJSON() yöntemlerinin de değiştiğine dikkat çekiyor; bu da özelliklerin başka bir yere taşınmadığını, tamamen silindiğini gösteriyor.

Özellikler hâlâ belgelenmiş durumda

Sekizinin tamamı WordApiDesktop 1.3 gereksinim setine ait. dev.to raporuna göre, Microsoft'un gereksinim seti sayfası bunların her birini listeliyor ve WordApiDesktop 1.3'ü Windows ve Mac'teki Word için üretime hazır olarak etiketliyor. Word.LineFormat referans belgeleri de 30 Ekim kontrolü itibarıyla bunları hâlâ içeriyordu ve hiçbir kullanımdan kaldırma notu yoktu.

Kaldırma işlemi üretim CDN'indeki word-win32-16.01.js ve word-mac-16.00.js dosyalarına ulaştı; dolayısıyla yalnızca iOS ve web host'ları değil, masaüstü Word eklentileri de risk altında.

Bir kaldırma, bir yeniden adlandırma değil

API yüzeyi farkı reflection'dan geldiği için yazar, arşivlenmiş host dosyalarını doğrudan çapraz kontrol etti. Yeni derlemenin her Word host dosyasında beginArrowheadLength tamamen yok, buna karşılık aynı sınıftaki kardeş özellik olan dashStyle hâlâ mevcut. Word host dosyası yaklaşık 1,1 KB küçülürken, aynı derlemedeki diğer uygulamaların host dosyaları yaklaşık 1,8 KB büyüdü. Sonuç: bu özellikleri destekleyen kod Word'ün Office.js dosyalarından çıkarıldı; yeniden adlandırılmadı ya da reflection'dan gizlenmedi.

Eklentiler neler beklemeli

Yazar her Word sürümünde runtime davranışını test etmediği için aşağıdakiler doğrulanmış bir sonuç değil, izlenmesi muhtemel davranışlar olarak değerlendirilmeli:

  • Kaldırılan bir özelliği okumak — örneğin yüklenmiş bir şeklin line formatındaki beginArrowheadStyle'ı — değer yerine undefined döndürmesi beklenir.

  • Yazmak ise tehlikeli senaryo. Office.js özelliğine atama yapmak normalde değişikliği sınıftaki bir setter üzerinden yönlendirir. Özellik ortadan kalktığında, bir line formatında pattern ayarlamak yalnızca düz bir JavaScript özelliği oluşturur: hata fırlatılmaz ve belgede hiçbir şey değişmez.

  • endArrowheadStyle gibi kaldırılmış bir anahtarla set() çağırmak, değiştirilen set() üzerinden geçer; dolayısıyla host'a bağlı olarak anahtarı yok sayabilir ya da hata fırlatabilir.

Etkilenen kodu bulmak için yazı, kaynak ve bundle'larda begin/end Arrowhead özellik adlarını ile lineFormat pattern veya backgroundColor başvurularını aramayı öneriyor. Bir eklenti bu üyelere bağlıysa, yalnızca gereksinim seti kontrollerine güvenmek yerine, kullanmadan önce Word.LineFormat.prototype üzerinde özelliği yoklamayı (probe) öneriyor.

Üç günlük kademeli dağıtım

Yeni derleme ilk kez 26 Ekim'de saat 18:50 UTC'de üretimde göründü; beta kanalı bir dakika sonra göründü. 27 Ekim'in büyük bölümünde örneklenen CDN edge'lerinin yaklaşık %1'inde kaldıktan sonra tekrar ilerledi. OneCDN'de 30 Ekim'de 01:50 UTC'de tamamlandı; eski appsforoffice.microsoft.com uç noktası 03:10 UTC'de tamamlandı ve bitildiğinde her iki uç noktadaki host dosyaları bayt bayt aynıydı.

Bu üç gün boyunca, aynı Word kurulumundaki aynı eklenti, hangi CDN edge'in yanıt verdiğine bağlı olarak eski ya da yeni derlemeyi yükleyebiliyordu; dolayısıyla şekil biçimlendirme hataları yeniden yüklemeler arasında gelip gidebilirdi.

İzole bir değişiklik değil

Yazıya göre Word'ün API yüzeyi üst üste ikinci haftada da değişti: 16.0.20612 derlemesi, preview'daki SensitivityLabelUpdateResult'ı SensitivityLabelUpdateStatus olarak yeniden adlandırdı; Excel ve PowerPoint'te aynı yeniden adlandırma bir hafta önce yapılmıştı. 16.0.20619'daki diğer değişiklikler — belgelenmemiş OfficeCore.FlightingService.getABConfigs ve belgelenmemiş OneNote.ServiceId içindeki yeni immersiveReader değeri — dahili olarak nitelendirildi ve eklentileri etkilemiyor.

Neden önemli

Gereksinim setleri Microsoft ile eklenti geliştiricileri arasındaki sözleşme olmalıdır: belgeler bir özelliği üretim gereksinim setinde listeliyorsa, kod ona güvenebilir. Bu derleme sözleşmeyi bir duyuru ya da kullanımdan kaldırma bildirimi olmadan bozdu ve hata modu sessiz — yazma işlemleri hata fırlatmak yerine no-op'a dönüştüğü için hatalar fark edilmeden belgelerin içine sızabiliyor. Kademeli CDN dağıtımı, davranışın ne zaman değiştiğine dair net bir sinyali ortadan kaldırdı. Şekil konturlarına dokunan Word eklentisi olan geliştiriciler kodlarını denetlemeli, önemli yerlerde gereksinim seti kontrollerini doğrudan özellik yoklamalarıyla değiştirmeli ve host dosyalarını izlemeye devam etmeli — üst üste ikinci haftada ikinci belgelenmemiş API değişikliği, ardından daha fazlasının gelebileceğine işaret ediyor.

  • #office-js
  • #microsoft-office
  • #word
  • #add-ins
  • #javascript

İlgili yazılar