Frontend Weekly 2025-11-21
Bun v1.3.3リリース
日付:2025年11月21日
Bun v1.3.3がリリースされた。
主な新機能:
CompressionStreamとDecompressionStreamを実装。標準Web APIでストリーミング圧縮・展開が可能。gzip、deflate、deflate-rawに加えてbrotliとzstdをサポート- standalone実行ファイルで
.envとbunfig.tomlの読み込みを制御可能。--no-compile-autoload-dotenvと--no-compile-autoload-bunfigフラグで無効化可能 bun:testでretryとrepeatsオプションを追加。retryは指定回数まで再試行し、1回でも成功すればテストがパス。repeatsは指定回数まで実行し、1回でも失敗すればテストが失敗。不安定なテストの処理に有用--no-env-fileフラグで自動.envファイル読み込みを無効化可能。bunfig.tomlでもenv = falseで設定可能- SQLite 3.51.0に更新
- Zig 0.15.2にアップグレードし、バイナリサイズを0.8MB削減。
主な修正として、bundlerでのdev serverのpanic、bun installでのクラッシュ、Windowsでのprocess.stdoutのresizeイベントとSIGWINCHシグナル対応、Node.js互換性の改善(_handle.fdの実装、N-APIバグ修正)、Web APIsでのクラッシュとメモリリーク修正、Bun.serveでのUnicode文字処理、Networkingでのメモリリーク修正、YAMLのシリアライズ問題とパフォーマンス改善、TypeScript定義の改善、セキュリティ更新(ルート証明書をMozilla NSS 3.117に更新)、bun upgradeでのダウンロードサイズ表示改善が含まれる。
出展:Bun v1.3.3
GitHub Actionsのキャッシュサイズが10GBを超えられるように
日付:2025年11月20日
GitHub Actionsのキャッシュストレージが拡張され、リポジトリあたり10GBを超えるキャッシュを保存できるようになった。10GBまでは無料で提供され、それ以上は従量課金モデルで利用可能。Pro、Team、Enterpriseアカウントが必要。
キャッシュ管理ポリシーとして、キャッシュサイズの上限(GB)と保持期間(日数)を設定できる。デフォルトは10GBのサイズ制限と7日間の保持期間。上限を超えた場合、最も使用頻度の低いキャッシュエントリが自動的に削除される。
Enterprise、Organization、Repository管理者がActions設定またはPoliciesで管理可能。ポリシーは階層的に適用される(Enterpriseの設定がOrganizationに継承される)。
出展:GitHub Actions cache size can now exceed 10 GB per repository
webpack v5.103.0リリース
日付:2025年11月18日
webpack v5.103.0がリリースされた。
主な新機能:
DotenvPluginとトップレベルのdotenvオプションを追加WebpackManifestPluginを追加- devtoolプラグインで
ignoreListオプションをサポート - カスタムJavaScriptパース関数の使用が可能
import.meta.envで環境変数をサポートimport.meta.dirnameとimport.meta.filenameをサポートimport.defer()をサポートimport.meta.mainを処理- JSONモジュールのnamed exportsを設定可能
import file from "./file.json" with { type: "json" }でのnamed exportの使用を無効化可能- universal targetで
__dirname/__filename/import.meta.dirname/import.meta.filenameをサポート - CSSの
exportTypeオプションを追加(デフォルトはlink、textとcss-style-sheetも利用可能) - CSSの
composesプロパティをサポート
vltのPhased Package Installations
日付:2025年11月19日
vlt v1.0.0-rc.1でPhased Package Installationsを導入。パッケージのインストールとビルドを2つのフェーズに分離し、セキュリティを向上。
従来のパッケージマネージャーはインストール時に自動的にライフサイクルスクリプト(preinstall、postinstallなど)を実行。これにより、インストール前にスクリプトの内容を確認できず、悪意のある依存関係が即座にコードを実行するリスクがあった。
vltではvlt installとvlt buildを分離。vlt installはパッケージの解決・ダウンロード・展開のみを実行し、デフォルトで全てのinstall scriptsをブロック(--allow-scriptsのデフォルト値は:not(*))。vlt buildでライフサイクルスクリプトを実行。デフォルトのvlt buildは:scripts:not(:built):not(:malware)をターゲットとし、スクリプトを持つパッケージのうち、未ビルドかつマルウェアフラグが立っていないもののみをビルド。
Dependency Selector Syntaxで細かく制御可能。特定のスコープやパッケージのみにスクリプト実行を許可、直接依存関係のみに制限、マルウェアフラグが立ったパッケージを除外などが可能。設定はvlt.jsonに保存してチーム全体で共有可能。
# Phase 1: パッケージのダウンロード・展開のみ(スクリプトは実行されない)$ vlt install
# Phase 2: ライフサイクルスクリプトの実行$ vlt buildvlt queryで依存関係を確認可能。:scriptsでスクリプトを持つパッケージを一覧、:malwareでマルウェアフラグが立ったパッケージを確認、:builtでビルド済みパッケージを確認できる。