Windows desteği
- Bun artık Windows 10 ve üzeri sürümlerde çalışabiliyor
- macOS ve Linux’taki Bun test paketinin %98’ini geçiyor
- Yerleşik npm uyumlu paket yöneticisiyle birlikte, Vite React uygulaması kurulumunda
yarn’dan 18 kat, npm’den 30 kat daha hızlı
- Windows’ta daha hızlı script çalıştırma için
.bunx dosya biçimi desteği
- Windows’ta en hızlı sistem çağrılarını kullanarak Node.js API optimizasyonu
- Örnek:
fs.readdir(), Node.js’ten %58 daha hızlı
Bun bir JavaScript runtime’ıdır
- JavaScript, TypeScript, JSX desteği
tsc gibi komut satırı araçları Bun 1.0’a göre 2 kata kadar daha hızlı
- Bun Shell artık Windows’ta da kullanılabilen çapraz platform bir shell oldu
ls, rm, cat gibi temel yardımcı araçlar içeriyor
- JavaScript ve TypeScript’te
Bun.$ API’si kullanılarak shell çalıştırılabiliyor
Bun.Glob
- Dosya ve string eşleştirme için yerleşik Glob API sunuyor
fast-glob ve micromatch’e benzer, ancak string eşleştirmede 3 kat daha hızlı
Bun.Semver
- semver string’lerini ayrıştırmak ve sıralamak için yeni bir Semver API’si
node-semver paketiyle benzer, ancak 20 kat daha hızlı
Bun.stringWidth()
- Terminalde string’in görünür genişliğini ölçmek için yeni API
- ANSI escape kodları, tam genişlikli karakterler, grapheme ve emoji desteği
server.url: Bun.serve() ile oluşturulan HTTP sunucusunun URL’si server.url özelliğinden alınabiliyor
server.requestIP(): HTTP isteğinin IP adresi server.requestIP() metoduyla alınabiliyor
subprocess.resourceUsage(): Bun.spawn() ile oluşturulan alt sürecin CPU ve bellek kullanımı resourceUsage() metoduyla erişilebiliyor
- Geliştirilmiş Node.js uyumluluğu
node:http2 istemci API’si, Date.parse() uyumluluğu, özyinelemeli fs.readdir() desteği gibi çeşitli API iyileştirmeleri
- Bun ile Node.js arasında IPC mümkün
- Belgelenmemiş bazı Node.js API’leri de destekleniyor
- Web API’leri:
WebSocket, performance.mark(), Brotli sıkıştırmalı fetch(), URL.canParse() gibi Web standart API’leri desteği
Bun npm uyumlu bir paket yöneticisidir
bun install ile npm paketleri 29 kata kadar daha hızlı kurulabiliyor
- Lifecycle script’leri,
trustedDependencies, bun pm trust gibi özelliklerde iyileştirmeler
Bun bir JavaScript bundler’ıdır
bun build --target=node ile Node.js’te çalışabilecek kodların bundle alınması destekleniyor
--compile bayrağıyla TypeScript ve JavaScript dosyaları tek dosyalık çalıştırılabilir dosyalara derlenebiliyor
Bun bir test runner’dır
- Jest ile aynı API’yi destekleyen yerleşik test modülü sunuyor
- Yeni
expect() matcher’ları eklendi ve modül mocking desteği geliyor
Yerleşik SQLite desteği
better-sqlite3’ten ilham alan bir API ile SQLite desteği
- Çoklu ifade sorguları, ayrıntılı hata mesajları, veritabanı içe aktarma ve yerleşik destek iyileştirildi
GN⁺ görüşü
- Bun, Node.js ile uyumluluğu korurken performansı büyük ölçüde artıran bir JavaScript araç seti ve Windows desteği sayesinde daha geniş bir geliştirici topluluğuna ulaşabiliyor.
- Yerleşik test runner ve SQLite desteği, geliştiricilerin ek araçlara ihtiyaç duymadan verimli çalışmasını sağlıyor.
- Bun’un yüksek performansı ve iyileştirilmiş geliştirici deneyimi, özellikle büyük ölçekli projelerde veya performansa duyarlı uygulamalarda öne çıkabilir.
- Bun’un sunduğu çeşitli özellik ve iyileştirmelere rağmen, Node.js ekosistemindeki geniş paket yelpazesiyle tam uyumluluğa ulaşmak için sürekli geliştirme ve topluluk geri bildirimi gerekiyor.
- Bun’un yeni özelliklerinin mevcut Node.js tabanlı araçlarla nasıl rekabet edebileceği veya birlikte çalışabileceği konusunda ek analiz gerekiyor.
1 yorum
Hacker News görüşleri
Bun’daki etkileyici değişiklik listesi
Bun’un makro özelliği
Bun ve Deno kullanma nedenine dair soru işaretleri
Bun’un sıkı bir hayranı
Bun’un yeni sürümüne dair değerlendirme
.jsgiriş noktasını ve runtime’ı birlikte bundle ederek bağımlılığı olmayan çalıştırılabilir dosyalar üretme seçeneği sunuyor. Bu, kullanıcılara tek bir binary dağıtmak istendiğinde yararlı, ancak şu anda dosya boyutu hâlâ oldukça büyük (GNU/Linux’ta küçük bir proje için 90MB’tan fazla).Bun ekibine bir talep
Bun geliştiricisinin katılımı
Bun’un kararlılığına dair soru
Bun’un gelir modeli ve VC finansmanı