diff --git a/README.md b/README.md
index 88d27d7..4d9a456 100644
--- a/README.md
+++ b/README.md
@@ -202,8 +202,7 @@ Any other questions? Please check out our [FAQ](./FAQ.md), and if your question
* [Python](#python)
* [Ruby](#ruby)
* [Rust](#rust)
- * [Alternative GUI crates](#alternative-gui-crates)
- * [Alternative TUI crates](#alternative-tui-crates)
+ * [Alternatives](#rust-crate-alternatives)
* [Scala](#scala)
* [Zig](#zig)
* [Proof Assistants](#proof-assistants)
@@ -2157,44 +2156,43 @@ Note that Ruby is itself tainted; see [the Programming Languages section](#progr
Note that Rust is itself tainted; see [the Programming Languages section](#programming-languages).
-| Name | Last Untainted Version or Commit ID | Tags and Evidence | Alternative(s) |
+| Name | Last Untainted
Version/Commit ID | Evidence | Alternative(s) |
|---|:---:|---|---|
-| [c2rust](https://github.com/immunant/c2rust) | [`0.21.0`](https://github.com/immunant/c2rust/tree/v0.21.0) | [](#permissive-ai-policy) ([1](https://github.com/immunant/c2rust/issues/1653#issuecomment-4035773395),[2](https://github.com/immunant/c2rust/pull/1614))
[](#ai-functionality) ([1](https://github.com/immunant/c2rust/tree/master/c2rust-postprocess))
[](#ai-code-reviews) ([1](https://github.com/immunant/c2rust/pull/1664),[2](https://github.com/immunant/c2rust/pull/1595),[3](https://github.com/immunant/c2rust/pull/1587))| [](#request-for-help) |
-| [console](https://github.com/console-rs/console)| [`0.16.3`](https://github.com/console-rs/console/releases/tag/0.16.3) | [](#permissive-ai-policy) ([1](https://github.com/console-rs/console/pull/287),[2](https://github.com/console-rs/console/pull/296)) | See below |
-| [cursive](https://github.com/gyscos/cursive) | [`cursive-v0.21.1`](https://github.com/gyscos/cursive/releases/tag/cursive-v0.21.1) | [](#permissive-ai-policy) ([1](https://github.com/gyscos/cursive/commit/43dc0e91d89122435d65514b9222651c38b5a281)) | See below |
+| [ash](https://github.com/ash-rs/ash) | [`c13363c`](https://github.com/ash-rs/ash/commits/c13363c032da9e589ca9d8673a299a3735ee255c) | [](#permissive-ai-policy) ([1](https://github.com/ash-rs/ash/commit/69afb6b871c309caed667d799f906ca332847ced)) | [Vulkano] |
+| [c2rust](https://github.com/immunant/c2rust) | [`0.21.0`](https://github.com/immunant/c2rust/tree/v0.21.0) | [](#ai-functionality) ([1](https://github.com/immunant/c2rust/tree/master/c2rust-postprocess))
[](#permissive-ai-policy) ([1](https://github.com/immunant/c2rust/issues/1653#issuecomment-4035773395), [2](https://github.com/immunant/c2rust/pull/1614))
[](#ai-code-reviews) ([1](https://github.com/immunant/c2rust/pull/1664), [2](https://github.com/immunant/c2rust/pull/1595), [3](https://github.com/immunant/c2rust/pull/1587)) | [](#request-for-help) |
+| [chrono](https://github.com/chronotope/chrono) | [`v0.4.41`](https://github.com/chronotope/chrono/releases/tag/v0.4.41) | [](#ai-code-reviews) ([1](https://github.com/chronotope/chrono/pull/1731#commits-pushed-164930a)) | [](#request-for-help) |
+| [console](https://github.com/console-rs/console) | [`0.16.3`](https://github.com/console-rs/console/releases/tag/0.16.3) | [](#permissive-ai-policy) ([1](https://github.com/console-rs/console/pull/287), [2](https://github.com/console-rs/console/pull/296)) | See below |
+| [cursive](https://github.com/gyscos/cursive) | [`cursive-v0.21.1`](https://github.com/gyscos/cursive/releases/tag/cursive-v0.21.1) | [](#permissive-ai-policy) ([1](https://github.com/gyscos/cursive/commit/43dc0e91d89122435d65514b9222651c38b5a281), [2](https://github.com/gyscos/cursive/pull/884#issue-5395814736)) | See below |
| [egui](https://github.com/emilk/egui) | [`0.31.1`](https://github.com/emilk/egui/tree/0.31.1) | [](#permissive-ai-policy) ([1](https://github.com/emilk/egui/commit/f3611e3e5a448ba8a96cb880ea3a29245bb3a2d2), [2](https://github.com/emilk/egui/pull/8088), [3](https://github.com/emilk/egui/pull/8031))
[](#ai-code-reviews) ([1](https://github.com/emilk/egui/pull/7948), [2](https://github.com/emilk/egui/pull/7617), [3](https://github.com/emilk/egui/pull/7577)) | See below |
-| [facet](https://github.com/facet-rs/facet) | [`cad0de9`](https://github.com/facet-rs/facet/commit/cad0de9b14ce6a4b9a24018260b28998b4dd18c9) as Shapely
(before the `facet-rs` rebrand) | [](#permissive-ai-policy) ([1](https://archive.ph/YhcOh),[2](https://github.com/facet-rs/facet/pull/1607),[3](https://github.com/facet-rs/facet/pull/1465))
[](#ai-code-reviews) ([1](https://github.com/facet-rs/facet/pull/2170),[2](https://github.com/facet-rs/facet/pull/2127),[3](https://github.com/facet-rs/facet/pull/2109)) | [nanoserde](https://github.com/not-fl3/nanoserde)
See note below. |
-| [gtk4-rs](https://github.com/gtk-rs/gtk4-rs)| [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/gtk-rs/gtk4-rs/pull/2314),[2](https://github.com/gtk-rs/gtk4-rs/commit/8f319ce88aee0a67b7217f46684b3b740a6b0a51)) | See below |
-| [iocraft] | [`0.7.17`](https://github.com/ccbrown/iocraft/tree/iocraft-v0.7.17) | [](#permissive-ai-policy) ([1](https://github.com/ccbrown/iocraft/commit/1daff8bdef6d6c0f0ceeb89d0308b1990a5fa428),[2](https://github.com/ccbrown/iocraft/commits?author=domenkozar))
[](#ai-code-reviews) ([1](https://github.com/ccbrown/iocraft/pull/98), [2](https://github.com/ccbrown/iocraft/pull/70)) | [](#request-for-help) |
-| [jiff](https://github.com/BurntSushi/jiff) | [`0.2.26`](https://github.com/BurntSushi/jiff/tree/0.2.26) | [](#permissive-ai-policy) ([1](https://github.com/BurntSushi/jiff/commit/95332861e1b2941b9b1336202229290aeaeba353)) | [chrono](https://github.com/chronotope/chrono),
[time](https://github.com/time-rs/time) |
-| [Matrix-rust-sdk](https://github.com/matrix-org/matrix-rust-sdk/) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/matrix-org/matrix-rust-sdk/pull/6162), [2](https://github.com/matrix-org/matrix-rust-sdk/pull/6417)) |
+| [facet](https://github.com/facet-rs/facet) | [`cad0de9`](https://github.com/facet-rs/facet/commit/cad0de9b14ce6a4b9a24018260b28998b4dd18c9) as Shapely
(before the `facet-rs` rebrand) | [](#permissive-ai-policy) ([1](https://archive.ph/YhcOh), [2](https://github.com/facet-rs/facet/pull/1607), [3](https://github.com/facet-rs/facet/pull/1465))
[](#ai-code-reviews) ([1](https://github.com/facet-rs/facet/pull/2170), [2](https://github.com/facet-rs/facet/pull/2127), [3](https://github.com/facet-rs/facet/pull/2109)) | [nanoserde](https://github.com/not-fl3/nanoserde)1 |
+| [glow](https://github.com/grovesNL/glow) | [`578cdfa`](https://github.com/grovesNL/glow/commits/578cdfa3056727c68eb2d43c06475379cbc93d49) | [](#permissive-ai-policy) ([1](https://github.com/grovesNL/glow/pull/365)) | [](#request-for-help) |
+| [gtk4-rs](https://github.com/gtk-rs/gtk4-rs) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/gtk-rs/gtk4-rs/pull/2314), [2](https://github.com/gtk-rs/gtk4-rs/commit/8f319ce88aee0a67b7217f46684b3b740a6b0a51)) | See below |
+| [iced](https://github.com/iced-rs/iced) | [`0.13.1`](https://github.com/iced-rs/iced/releases/tag/0.13.1)
[`da1726b`](https://github.com/iced-rs/iced/commits/da1726b134ae084dd76b9e0a1107a771f69ed7c9) | [](#ai-functionality) ([1](https://github.com/iced-rs/iced/commit/e2c52c9728cb03d01b33388a8159db9bd9eac04c), [2](https://github.com/iced-rs/iced/blob/master/examples/gallery/src/civitai.rs))
[](#permissive-ai-policy) ([1](https://github.com/iced-rs/iced/pull/3442), [2](https://github.com/iced-rs/iced/commit/70f55887a59fb234b1d8f982d800f1df57c9bc66), [3](https://github.com/iced-rs/iced/commit/c2e7ddfe237b08331c2f72e244114a91f3167d8e)) | [](#request-for-help) |
+| [iocraft](https://github.com/ccbrown/iocraft) | [`0.7.17`](https://github.com/ccbrown/iocraft/tree/iocraft-v0.7.17) | [](#permissive-ai-policy) ([1](https://github.com/ccbrown/iocraft/commit/1daff8bdef6d6c0f0ceeb89d0308b1990a5fa428), [2](https://github.com/ccbrown/iocraft/commits?author=domenkozar))
[](#ai-code-reviews) ([1](https://github.com/ccbrown/iocraft/pull/98), [2](https://github.com/ccbrown/iocraft/pull/70)) | [](#request-for-help) |
+| [jiff](https://github.com/BurntSushi/jiff) | [`0.2.26`](https://github.com/BurntSushi/jiff/tree/0.2.26) | [](#permissive-ai-policy) ([1](https://github.com/BurntSushi/jiff/commit/95332861e1b2941b9b1336202229290aeaeba353)) | [](#request-for-help) |
+| [Matrix-rust-sdk](https://github.com/matrix-org/matrix-rust-sdk/) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/matrix-org/matrix-rust-sdk/pull/6162), [2](https://github.com/matrix-org/matrix-rust-sdk/pull/6417)) | [](#request-for-help) |
| [memchr](https://github.com/BurntSushi/memchr) | [`2.8.0`](https://github.com/BurntSushi/memchr/tree/2.8.0) | [](#permissive-ai-policy) ([1](https://github.com/BurntSushi/memchr/commit/ee18717a7002a3299a6b5ef718084e76d958a5c3)) | [](#request-for-help) |
| [Nextest](https://github.com/nextest-rs/nextest) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/nextest-rs/nextest/commit/3853279b41cc4a81f82e26fd88fac3bf85054af5)) | `cargo test` |
-| [PyO3](https://pyo3.rs) | [`v0.23.5`](https://github.com/PyO3/pyo3/releases/tag/v0.23.5) | [](#permissive-ai-policy) ([1](https://github.com/PyO3/pyo3/pull/5615), [2](https://github.com/PyO3/pyo3/pull/5933), [3](https://github.com/PyO3/pyo3/pull/5870))
[](#ai-code-reviews) ([1](https://github.com/PyO3/pyo3/pull/4768), [2](https://github.com/PyO3/pyo3/pull/5724), [3](https://github.com/PyO3/pyo3/pull/5729)) | [](#request-for-help) |
-| [ratatui](https://github.com/ratatui/ratatui) | None | [](#permissive-ai-policy) ([1](https://github.com/ratatui/ratatui/issues/2016#issuecomment-3512556433), [2](https://github.com/ratatui/ratatui/discussions/2201), [3](https://github.com/ratatui/ratatui/pull/2308))
[](#ai-code-reviews) ([1](https://github.com/ratatui/ratatui/pull/1998), [2](https://github.com/ratatui/ratatui/pull/1490)) |See below |
-| [rust-analyzer](https://github.com/rust-lang/rust-analyzer) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/rust-lang/rust-analyzer/pull/21314/changes),[2](https://github.com/rust-lang/rust-analyzer/blob/master/CLAUDE.md))
[](#ai-code-reviews) ([1](https://github.com/rust-lang/rust-analyzer/pull/21968),[2](https://github.com/rust-lang/rust-analyzer/pull/21957),[3](https://github.com/rust-lang/rust-analyzer/pull/21750)) | cargo check |
+| [PyO3](https://pyo3.rs/) | [`v0.23.5`](https://github.com/PyO3/pyo3/releases/tag/v0.23.5) | [](#permissive-ai-policy) ([1](https://github.com/PyO3/pyo3/pull/5615), [2](https://github.com/PyO3/pyo3/pull/5933), [3](https://github.com/PyO3/pyo3/pull/5870))
[](#ai-code-reviews) ([1](https://github.com/PyO3/pyo3/pull/4768), [2](https://github.com/PyO3/pyo3/pull/5724), [3](https://github.com/PyO3/pyo3/pull/5729)) | [](#request-for-help) |
+| [ratatui](https://github.com/ratatui/ratatui) | None | [](#permissive-ai-policy) ([1](https://github.com/ratatui/ratatui/issues/2016#issuecomment-3512556433), [2](https://github.com/ratatui/ratatui/discussions/2201), [3](https://github.com/ratatui/ratatui/pull/2308))
[](#ai-code-reviews) ([1](https://github.com/ratatui/ratatui/pull/1998), [2](https://github.com/ratatui/ratatui/pull/1490)) | See below |
+| [relm](https://github.com/antoyo/relm) | [`66b0f18`](https://github.com/antoyo/relm/commits/66b0f189440e9a9c40f2765134a1054e5e0fd291) | [](#vibecoded) ([1](https://github.com/antoyo/relm/commit/d5800dd8b3f92713681a55bda3cee8549615b96b))
[](#permissive-ai-policy) ([1](https://github.com/antoyo/relm/commit/52c2c9b19700938ea208de51451e37fdcf6ecacd), [2](https://github.com/antoyo/relm/commit/d5800dd8b3f92713681a55bda3cee8549615b96b)) | [](#request-for-help) |
+| [rust-analyzer](https://github.com/rust-lang/rust-analyzer) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/rust-lang/rust-analyzer/pull/21314/changes), [2](https://github.com/rust-lang/rust-analyzer/blob/master/CLAUDE.md))
[](#ai-code-reviews) ([1](https://github.com/rust-lang/rust-analyzer/pull/21968), [2](https://github.com/rust-lang/rust-analyzer/pull/21957), [3](https://github.com/rust-lang/rust-analyzer/pull/21750)) | `cargo check` |
| [rustup](https://github.com/rust-lang/rustup) | [`1.27.1`](https://github.com/rust-lang/rustup/releases/tag/1.27.1) | [](#ai-code-reviews) ([1](https://github.com/rust-lang/rustup/pull/4376#pullrequestreview-2907487524), [2](https://github.com/rust-lang/rustup/pull/4363#pullrequestreview-2888235691), [3](https://github.com/rust-lang/rustup/pull/4366#pullrequestreview-2895118917)) | [](#request-for-help) |
| [Slint](https://github.com/slint-ui/slint) | [`1.14.1`](https://github.com/slint-ui/slint/tree/v1.14.1) | [](#permissive-ai-policy) ([1](https://github.com/slint-ui/slint/blob/master/AGENTS.md), [2](https://github.com/slint-ui/slint/commit/f479ae6d8ee24de17634e22e8079374222a4a8fd)) | See below |
-| [wgpu](https://github.com/gfx-rs/wgpu) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/gfx-rs/wgpu?tab=contributing-ov-file#llms-ai), [2](https://github.com/gfx-rs/wgpu/commit/bed71efe59e2360c625163c28c70de598dee41b7), [3](https://github.com/gfx-rs/wgpu/pull/9141))
[](#ai-code-reviews) ([1](https://github.com/gfx-rs/wgpu/pull/9364),[2](https://github.com/gfx-rs/wgpu/pull/9089),[3](https://github.com/gfx-rs/wgpu/pull/8821))| [ash](https://github.com/ash-rs/ash),
[glow](https://github.com/grovesnl/glow),
[vulcano](https://github.com/vulkano-rs/vulkano) |
-| [zbus](https://github.com/z-galaxy/zbus) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/z-galaxy/zbus/blob/78f786cad319f9027a9893f73aa862ed2f4b45cd/CLAUDE.md), [2](https://github.com/z-galaxy/zbus/pull/1761))
[](#ai-code-reviews) ([1](https://github.com/z-galaxy/zbus/pull/1660)) | [](#request-for-help) |
-| [zerocopy](https://github.com/google/zerocopy) | [](#request-for-help) |[](#permissive-ai-policy) ([1](https://github.com/google/zerocopy/commits?author=google-labs-jules%5Bbot%5D),[2](https://github.com/google/zerocopy/blob/1834846b5aa8e2d95f9ec810f7b8e6e26909cb2e/AGENTS.md)) | [](#request-for-help) |
-
-> [!Note]
-> #### Alternative GUI crates
-> - [iced](https://github.com/iced-rs/iced)
-> - [imgui](https://github.com/imgui-rs/imgui-rs)
-> - [relm](https://github.com/antoyo/relm)
+| [time](https://github.com/time-rs/time) | [`v0.3.51`](https://github.com/time-rs/time/releases/tag/v0.3.51) | [](#permissive-ai-policy) ([1](https://github.com/time-rs/time/blob/main/AI_POLICY.md), [2](https://github.com/time-rs/time/pull/791#issuecomment-4824682271)) | [](#request-for-help) |
+| [wgpu](https://github.com/gfx-rs/wgpu) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/gfx-rs/wgpu?tab=contributing-ov-file#llms-ai), [2](https://github.com/gfx-rs/wgpu/commit/bed71efe59e2360c625163c28c70de598dee41b7), [3](https://github.com/gfx-rs/wgpu/pull/9141))
[](#ai-code-reviews) ([1](https://github.com/gfx-rs/wgpu/pull/9364), [2](https://github.com/gfx-rs/wgpu/pull/9089), [3](https://github.com/gfx-rs/wgpu/pull/8821)) | [Vulkano] |
+| [zbus](https://github.com/z-galaxy/zbus) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/z-galaxy/zbus/blob/main/AGENTS.md), [2](https://github.com/z-galaxy/zbus/pull/1761))
[](#ai-code-reviews) ([1](https://github.com/z-galaxy/zbus/pull/1660)) | [dbus-rs](https://github.com/diwic/dbus-rs) |
+| [zerocopy](https://github.com/google/zerocopy) | [](#request-for-help) | [](#permissive-ai-policy) ([1](https://github.com/google/zerocopy/commits?author=google-labs-jules%5Bbot%5D), [2](https://github.com/google/zerocopy/blob/main/zerocopy/AGENTS.md)) | [](#request-for-help) |
> [!NOTE]
-> #### Alternative TUI crates
-> - [tui-rs](https://github.com/fdehau/tui-rs/releases/tag/v0.19.0)
-
-> [!Note]
+> #### Rust Crate Alternatives
+> * [imgui-rs](https://github.com/imgui-rs/imgui-rs)
+> * [tui-rs](https://github.com/fdehau/tui-rs) (discontinued)
>
> Also, there is an advisory database of Rust slopware crates, which you can use in tools like
-> [cargo-deny](https://embarkstudios.github.io/cargo-deny): .
+> [cargo-deny](https://embarkstudios.github.io/cargo-deny): [rust-slopdb](https://codeberg.org/1millibyte/rust-slopdb).
>
-> On facet: If possible avoid all-in-one libraries for deserialization, and avoid macros that slow things down.
+> 1 On facet: If possible avoid all-in-one libraries for deserialization, and avoid macros that slow things down.
### Scala
@@ -2833,7 +2831,6 @@ This repository is licensed under the Creative Commons Attribution Share Alike 4
[HTTPie]: https://github.com/httpie/cli
[Hyper]: https://github.com/UltraOS/Hyper
[Idris]: https://idris-lang.org/
-[iocraft]: https://github.com/ccbrown/iocraft
[IronFox]: https://gitlab.com/ironfox-oss/IronFox
[keyd]: https://github.com/rvaiya/keyd
[KMonad]: https://github.com/kmonad/kmonad
@@ -2864,6 +2861,7 @@ This repository is licensed under the Creative Commons Attribution Share Alike 4
[The Silver Searcher]: https://github.com/ggreer/the_silver_searcher
[U-Boot]: https://github.com/u-boot/u-boot
[vis]: https://github.com/martanne/vis
+[Vulkano]: https://github.com/vulkano-rs/vulkano
[Waterfox]: https://github.com/BrowserWorks/waterfox
[Yarn Classic]: https://classic.yarnpkg.com/
[Xylophone]: https://codeberg.org/Xylophone/xserver