grim-rs v0.2.0 と rust-fmt v0.1.7 - Windowsサポートとマクロパーサー改善
注:
grim-rsv0.2.0 は 2026年6月11日 に、rust-fmtv0.1.7 は 2026年6月22日 にリリースされました。
これは grim-rs と rust-fmt のアップデートと、LeetCode オープンソースプロジェクトへのコントリビューションのまとめです。
ざっくりまとめ
grim-rsは v0.2.0 になり、Windows バックエンドを追加しました。rust-fmtは v0.1.7 になり、マクロパーサーが改善されました。- LeetCode(
doocs/leetcode)に 4 件のソリューションがマージされました。
grim-rs v0.2.0
このリリースの主な変更点:
- Windows バックエンドを追加(DXGI Desktop Duplication API、D3D11 ハードウェアアクセラレーション)。
- Wayland / Windows の静的ディスパッチによる Platform 抽象レイヤーを追加。
DirectXError/ProtectedContent/NoGpuAdapterのエラーバリアントを追加。examples/windows_capture.rsサンプルを追加。- Windows では
Grim::new_ext()/Grim::new_wlr()がUnsupportedProtocolを返すように変更。 - Wayland 関連の依存を
cfg(target_os = "linux")でゲート。
要するに、grim-rs は Wayland コンポジターと Windows の両方で動作するクロスプラットフォームのスクリーンショットライブラリになりました。
rust-fmt v0.1.7
このリリースの主な変更点:
- raw string のクロージングデリミタ順序を修正(
#"ではなく"#)。マクロ本体末尾のエスケープによるオフバイワンと、空アーム本体のパースも修正。 normalize_body_indentを構造的深さを追跡するステートマシンに書き直し(where 句、ネストした繰り返し、インラインブレース、多段$()ネストのインデントを修正)。- VS Code 拡張の
normalizeMacroBodiesで行ごとのブレースカウントを事前計算し O(n²) を O(1) に高速化。
LeetCode へのコントリビューション
doocs/leetcode に 4 件のソリューションを追加しました:
- No.1331 Rank Transform of an Array — Rust(PR #5309)
- No.3559 Number of Ways to Assign Edge Weights II — C(PR #5298)
- No.3699 Number of ZigZag Arrays I — C(PR #5297)
- No.3753 Total Waviness of Numbers in Range II — C(PR #5249)
リンク
- grim-rs repository: https://github.com/vremyavnikuda/grim-rs
- rust-fmt repository: https://github.com/shikoucore/rust-fmt
- doocs/leetcode: https://github.com/doocs/leetcode