software•

Bun Blog v1.0.30 Yayınlandı: Derinlemesine Mimari İnceleme ve Performans İyileştirmeleri

Bun v1.0.30'u keşfedin: 27 hata çözüldü, 8 katlık bir Bun.serve() gerilemesi giderildi ve Jest uyumlu test iddiaları eklendi.

OP
OPA Release DeskWIRE
•5 min read
Bun Blog v1.0.30 Yayınlandı: Derinlemesine Mimari İnceleme ve Performans İyileştirmeleri

⚠️ Breaking Changes & Migration Caveats

Önceki sürümlerle tamamen geriye dönük olarak uyumludur.

Bun Blog v1.0.30 Yayınlandı: Derinlemesine Mimari İnceleme

Yönetici Özeti ve Mimari Önem

Bun v1.0.30'un yayınlanması; son teknoloji JavaScript çalışma zamanı, paketleyicisi ve araç setinin istikrara kavuşturulmasında büyük bir dönüm noktasını temsil ediyor. Bu bakım ve optimizasyon sürümü, hata takip sisteminde 103'ten fazla geliştirici oyuyla önceliklendirilen 27 farklı hatayı çözerek kritik topluluk sorunlarını doğrudan hedef almaktadır. Rutin hata düzeltmelerinin ötesinde v1.0.30, Bun.serve() içerisindeki şiddetli bir 8 katlık performans gerilemesini ele alarak Bun'ı modern web mühendisliği için temel bir araç haline getiren yüksek verimli HTTP sunucusu yeteneklerini eski haline getiriyor. Mühendislik ekibi; bellek sızıntılarını, kararlılık uç durumlarını ve çalışma zamanı tutarsızlıklarını metodik olarak ortadan kaldırarak Bun'ın eski Node.js ortamlarına uygun, doğrudan kullanılabilir bir üretim alternatifi olarak konumunu sağlamlaştırmaya devam ediyor.

Mimari açıdan v1.0.30, JavaScriptCore ile yakından etkileşime giren, Zig destekli, yüksek performanslı bir çalışma zamanını korurken gereken hassas dengenin altını çizmektedir. Bun.serve() gibi çekirdek ağ ilkellerindeki performans gerilemeleri genellikle hızlı özellik yinelemeleri sırasında ortaya çıkan dahili senkronizasyon ek yükünden veya bellek tahsis darboğazlarından kaynaklanır. Çekirdek ekip, bu gerilemenin kök nedenini izole ederek ve düzelterek yalnızca temel verimlilik metriklerini eski haline getirmekle kalmamış, aynı zamanda dahili telemetri ve gerileme testi paketlerini de güçlendirmiştir. Bu sürüm, yüksek trafikli uygulamaları ölçeklendiren geliştiricilerin en son hız ile öngörülebilir çalışma zamanı kararlılığı arasında seçim yapmak zorunda kalmamasını sağlayarak kurumsal düzeyde güvenilirliğe olan sürekli bağlılığın altını çizmektedir.

Temel İyileştirmeler ve Geliştirici Ergonomisi

Sürüm 1.0.30, hem bun build hem de Bun çalışma zamanı için yeni --conditions bayrağının sunulmasıyla geliştirici ergonomisinde önemli bir artış almaktadır. Bu bayrak, Bun'ı modern paket dışarı aktarma standartlarıyla daha uyumlu hale getirerek geliştiricilerin özel dışarı aktarma koşullarını (örneğin production, development veya özel hedef ortamlar) doğrudan komut satırından açıkça tanımlamasına olanak tanır. Bu ekleme, package.json bildirimlerindeki koşullu dışarı aktarmalara güvenen karmaşık, çok hedefli npm paketleriyle sorunsuz birlikte çalışabilirlik sağlayarak kurumsal monorepolardaki ve karmaşık derleme hatlarındaki entegrasyon sorunlarını giderir.

Eşzamanlı olarak Bun'ın yerleşik test çalıştırıcısı, endüstri standardı iddia kontrollerini destekleyecek şekilde genişletilmiştir: expect.assertions() ve expect.hasAssertions(). Daha önce, eski test paketlerini Jest veya Vitest'ten Bun'ın yerli test çalıştırıcısına geçirmek, genellikle asenkron kod yürütme yollarını garanti etmek için iddia sayımına güvenen test dosyalarının yeniden düzenlenmesini gerektiriyordu. Bun, bu yardımcıları yerel olarak uygulayarak büyük test paketleri için geçiş sürtünmesini büyük ölçüde azaltır. Çözülmüş modül çözümleme uç durumlarından yerel bağlamalardaki kilitlenme düzeltmelerine kadar uzanan kapsamlı Node.js uyumluluk iyileştirmeleriyle birleştiğinde v1.0.30, mevcut kurumsal kod tabanlarını Bun'a geçirmeyi önemli ölçüde daha güvenli ve öngörülebilir hale getirir.

Mimari Karşılaştırma Matrisi

Metrik / Boyut Önceki Temel Çizgi (v1.0.29 ve öncesi) Bun v1.0.30 (Mevcut Sürüm) Mimari Etki
HTTP Sunucu Gecikmesi (Bun.serve()) Belirli yük kalıpları altında 8 kat gerileme Tamamen eski haline getirilmiş temel verimlilik Kenar yönlendirmesinde ve API yanıtlarında beklenmeyen darboğazları ortadan kaldırır
Bellek Ayak İzi ve Sızıntı Kararlılığı Uzun süre çalışan bağlamalarda ara sıra bellek tutma Geliştirilmiş çöp toplama ve kararlaştırılmış bağlamalar Uzun ömürlü üretim arka plan programlarında öngörülebilir kaynak tüketimi
Test Çalıştırıcısı API Uyumluluğu expect.assertions() / expect.hasAssertions() eksik Tam olarak desteklenen yerel iddia sayımı Asenkron test paketleri için sorunsuz Jest/Vitest geçiş yolu
Derleme ve Çalışma Zamanı Yapılandırılabilirliği Sınırlı ortam dışarı aktarma geçersiz kılmaları Yeni --conditions bayrağı uygulandı Derlemeler arasında koşullu paket dışarı aktarmaları üzerinde hassas kontrol

Sonlandırıcı Değişiklikler ve Geçiş Uyarıları

Önceki sürümlerle tamamen geriye dönük olarak uyumludur. Sürüm 1.0.30, hiçbir sonlandırıcı API değişikliği, şema değişikliği veya sözdizimi kullanım dışı bırakması içermez. v1.0.x üzerinde çalışan mevcut uygulamalar, kaynak kodu değişiklikleri gerektirmeden paketlenmiş hata düzeltmelerinden, gerileme yamalarından ve genişletilmiş test ilkellerinden anında yararlanarak bu sürümü doğrudan kullanılabilir bir yedek olarak güvenle benimseyebilir.

Adım Adım Yükseltme Kılavuzu

Geliştirme ve üretim ortamlarınızı Bun v1.0.30'a yükseltmek yalnızca birkaç an sürer. Sorunsuz bir geçiş sağlamak için şu adımları izleyin:

  1. Yerel veya CI Bun kurulumunuzu resmi kabuk betiğini veya tercih ettiğiniz paket yöneticisini kullanarak yükseltin:

    bun upgrade
    
  2. Yüklenen sürümü terminalinizde doğrulayarak v1.0.30'un etkin olduğundan emin olun:

    bun --version
    
  3. Belirli modül ortamlarını hedeflerken derleme betiklerinizde veya çalışma zamanı komutlarınızda yeni --conditions bayrağından yararlanın:

    {
      "scripts": {
        "build": "bun build ./src/index.ts --conditions=custom-env --outdir=./dist"
      }
    }
    
#Bun Blog#v1.0.30#software#Release#Changelog
E-E-A-T VerifiedRelease Intelligence & Editorial Methodology

OPA Release analyzes upstream repository commits, official changelogs, and runtime telemetry assisted by automated synthesis pipelines and verified under our Editorial Standards. Review our Affiliate Disclosure and Software Disclaimer before deploying changes to production environments.

OPA NETWORK EXPLORER

Deep Dive Across the Ecosystem