Rust 1.100公開、never型とCargoの依存パッケージ待機機能が安定化

プログラミング言語Rustのバージョン1.100が公開され、値を返さない処理を表すnever型「!」が安定化しました。パッケージ管理ツールCargoでは、公開されたばかりの依存パッケージを一定期間、選択対象から外す機能も使えるようになりました。
好奇心が、日常をおもしろくする

プログラミング言語Rustのバージョン1.100が公開され、値を返さない処理を表すnever型「!」が安定化しました。パッケージ管理ツールCargoでは、公開されたばかりの依存パッケージを一定期間、選択対象から外す機能も使えるようになりました。

ソフトウェアエンジニアのJameson Hodge氏が、肺や声帯、声道を物理モデルで再現して音声を作る「CHIMERA Vocal Synth」を公開しています。録音サンプルをつなぐ方式ではなく、発声器官を模した気道の空気の流れや圧力を計算し、ブラウザで舌や唇を動かしながら発話や歌唱を合成する仕組みです。ブラウザで動くデモに加え、ソースコードもMITライセンスで公開されています。

Servo 0.7.0では、HTMLやCSSの新機能に対応し、WebGL 2の仕様適合性や実際のウェブサイトとの互換性を改善しました。9月に取り込まれた変更をまとめたリリースで、開発者向け機能や性能改善も含まれています。

GitHub NextとMicrosoft Researchは、AIエージェントが生成したコードを仕様に照らして検証する「Proof-Driven Development Kit(PDD Kit)」を紹介しました。開発者が要求を確認して機械で検証できる仕様にまとめ、エージェントが実装と証明を作成し、Rust向け検証ツールのVerusが証明を検査します。

Discordはデスクトップ版をRustで再構築し、画面の構築にはGPUIを採用します。共同創業者兼CTOのスタニスラフ・ヴィシュネフスキー氏は、Electronを使わない構成になると説明しています。

CentOSの共同創設者でRocky Linuxを立ち上げたGregory Kurtzer氏が、AIエージェントを使って独立したカーネル「Ginux」を11日間で開発しました。約13万9,000行のコードとテストが作られ、GinuxはRocky Linux 10を起動してsystemdのマルチユーザー目標まで進みます。

AWSのプリンシパルエンジニアでTokioの開発者でもあるCarl Lerche氏が、RustでWebアプリを作るためのフレームワーク「Topcoat」を開発しています。TopcoatはRustのコードをJavaScriptへ変換し、ブラウザーとのやり取りにJavaScriptを使います。

systemdの開発版に、C言語に加えてRustで新しいプログラムを書ける仕組みが追加されました。対象は既存コードと連携する末端のプログラムで、systemdの中核部分をRustへ移す変更ではありません。Rust対応は任意で、ビルド時に有効化できます。

CloudflareとVoidZeroは、Owner.comのMax Schwenk氏とともに、TypeScriptコンパイラをRustへ移植する「tsrs」に取り組んでいます。プロジェクトはOxc JavaScriptツールチェーンの一部として進められ、TypeScriptチームとも連携しています。

Linux 7.4に向け、約1万7000行のRustカーネルコードが追加される予定です。更新の中心は、バイト列と構造体を安全に変換するライブラリー「Zerocopy」と、カーネル内でRustを使うための基盤です。自己参照を含む構造体の初期化や診断機能の改善も盛り込まれています。
RustコンパイラーとビルドツールCargoに早期メタデータを使う実験的な変更「Headstart」を適用すると、13の実プロジェクトでcargo checkが最大54%、cargo buildが最大42%速くなりました。 依存クレートの関数本体のチェックが終わる前に、下流のクレートが処理を始める仕組みです。CPUコアが空く時間を減らす一方、エラーが後から判明した場合のやり直しや、メモリー使用量の増加を伴います。