Build failed. If you want to re-trigger a documentation build, you can do it here. You can find more information on docs.rs builds documentation on the builds page.
# rustc version
rustc 1.95.0-nightly (d222ddc4d 2026-01-23)# docs.rs version
docsrs 0.1.0 (07f7a059 2026-01-22 )# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/g3-cli-0.2.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/g3-cli-0.2.0/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20260123-1.95.0-nightly-d222ddc4d\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 88b8e6d3becfabcbf720206f3b4d46fb09090066da778ab71e611f0e1d56529e
[INFO] running `Command { std: "docker" "start" "-a" "88b8e6d3becfabcbf720206f3b4d46fb09090066da778ab71e611f0e1d56529e", kill_on_drop: false }`
[INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op
[INFO] [stderr] Checking g3-computer-control v0.2.0
[INFO] [stderr] Checking thiserror v2.0.18
[INFO] [stderr] Checking onig_sys v69.9.1
[INFO] [stderr] Compiling clap_derive v4.5.49
[INFO] [stderr] Compiling strum_macros v0.26.4
[INFO] [stderr] Compiling lazy-regex-proc_macros v3.5.1
[INFO] [stderr] Checking crossbeam-queue v0.3.12
[INFO] [stderr] Checking crossbeam-channel v0.5.15
[INFO] [stderr] error[E0432]: unresolved import `tesseract`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:4:5
[INFO] [stderr] |
[INFO] [stderr] 4 | use tesseract::Tesseract;
[INFO] [stderr] | ^^^^^^^^^ use of unresolved module or unlinked crate `tesseract`
[INFO] [stderr] |
[INFO] [stderr] = help: if you wanted to use a crate named `tesseract`, use `cargo add tesseract` to add it to your `Cargo.toml`
[INFO] [stderr]
[INFO] [stderr] Checking quick-xml v0.38.4
[INFO] [stderr] error[E0407]: method `click` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:25:5
[INFO] [stderr] |
[INFO] [stderr] 25 | / async fn click(&self, _button: MouseButton) -> Result<()> {
[INFO] [stderr] 26 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 27 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `double_click` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:29:5
[INFO] [stderr] |
[INFO] [stderr] 29 | / async fn double_click(&self, _button: MouseButton) -> Result<()> {
[INFO] [stderr] 30 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 31 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `type_text` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:33:5
[INFO] [stderr] |
[INFO] [stderr] 33 | / async fn type_text(&self, _text: &str) -> Result<()> {
[INFO] [stderr] 34 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 35 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `press_key` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:37:5
[INFO] [stderr] |
[INFO] [stderr] 37 | / async fn press_key(&self, _key: &str) -> Result<()> {
[INFO] [stderr] 38 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 39 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `list_windows` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:41:5
[INFO] [stderr] |
[INFO] [stderr] 41 | / async fn list_windows(&self) -> Result<Vec<Window>> {
[INFO] [stderr] 42 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 43 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `focus_window` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:45:5
[INFO] [stderr] |
[INFO] [stderr] 45 | / async fn focus_window(&self, _window_id: &str) -> Result<()> {
[INFO] [stderr] 46 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 47 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `get_window_bounds` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:49:5
[INFO] [stderr] |
[INFO] [stderr] 49 | / async fn get_window_bounds(&self, _window_id: &str) -> Result<Rect> {
[INFO] [stderr] 50 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 51 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `find_element` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:53:5
[INFO] [stderr] |
[INFO] [stderr] 53 | / async fn find_element(&self, _selector: &ElementSelector) -> Result<Option<UIElement>> {
[INFO] [stderr] 54 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 55 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `get_element_text` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:57:5
[INFO] [stderr] |
[INFO] [stderr] 57 | / async fn get_element_text(&self, _element_id: &str) -> Result<String> {
[INFO] [stderr] 58 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 59 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `get_element_bounds` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:61:5
[INFO] [stderr] |
[INFO] [stderr] 61 | / async fn get_element_bounds(&self, _element_id: &str) -> Result<Rect> {
[INFO] [stderr] 62 | | anyhow::bail!("Linux implementation not yet available")
[INFO] [stderr] 63 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0407]: method `find_text_on_screen` is not a member of trait `ComputerController`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:134:5
[INFO] [stderr] |
[INFO] [stderr] 134 | / async fn find_text_on_screen(&self, _text: &str) -> Result<Option<Point>> {
[INFO] [stderr] 135 | | // Check if tesseract is available on the system
[INFO] [stderr] 136 | | let tesseract_check = std::process::Command::new("which")
[INFO] [stderr] 137 | | .arg("tesseract")
[INFO] [stderr] ... |
[INFO] [stderr] 187 | | }
[INFO] [stderr] | |_____^ not a member of trait `ComputerController`
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `AXUIElement` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/macax/controller.rs:19:49
[INFO] [stderr] |
[INFO] [stderr] 19 | app_cache: std::sync::Mutex<HashMap<String, AXUIElement>>,
[INFO] [stderr] | ^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/macax/mod.rs:12:1
[INFO] [stderr] |
[INFO] [stderr] 12 | pub struct AXElement {
[INFO] [stderr] | -------------------- similarly named struct `AXElement` defined here
[INFO] [stderr] |
[INFO] [stderr] help: a struct with a similar name exists
[INFO] [stderr] |
[INFO] [stderr] 19 - app_cache: std::sync::Mutex<HashMap<String, AXUIElement>>,
[INFO] [stderr] 19 + app_cache: std::sync::Mutex<HashMap<String, AXElement>>,
[INFO] [stderr] |
[INFO] [stderr] help: you might be missing a type parameter
[INFO] [stderr] |
[INFO] [stderr] 17 | pub struct MacAxController<AXUIElement> {
[INFO] [stderr] | +++++++++++++
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `MouseButton` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:25:36
[INFO] [stderr] |
[INFO] [stderr] 25 | async fn click(&self, _button: MouseButton) -> Result<()> {
[INFO] [stderr] | ^^^^^^^^^^^ not found in this scope
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `MouseButton` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:29:43
[INFO] [stderr] |
[INFO] [stderr] 29 | async fn double_click(&self, _button: MouseButton) -> Result<()> {
[INFO] [stderr] | ^^^^^^^^^^^ not found in this scope
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `Window` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:41:48
[INFO] [stderr] |
[INFO] [stderr] 41 | async fn list_windows(&self) -> Result<Vec<Window>> {
[INFO] [stderr] | ^^^^^^ not found in this scope
[INFO] [stderr] |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr] |
[INFO] [stderr] 1 + use x11::xlib::Window;
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `ElementSelector` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:53:46
[INFO] [stderr] |
[INFO] [stderr] 53 | async fn find_element(&self, _selector: &ElementSelector) -> Result<Option<UIElement>> {
[INFO] [stderr] | ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `UIElement` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:53:80
[INFO] [stderr] |
[INFO] [stderr] 53 | async fn find_element(&self, _selector: &ElementSelector) -> Result<Option<UIElement>> {
[INFO] [stderr] | ^^^^^^^^^ not found in this scope
[INFO] [stderr] |
[INFO] [stderr] help: you might be missing a type parameter
[INFO] [stderr] |
[INFO] [stderr] 20 | impl<UIElement> ComputerController for LinuxController {
[INFO] [stderr] | +++++++++++
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `OCRResult` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:83:68
[INFO] [stderr] |
[INFO] [stderr] 83 | async fn extract_text_from_image(&self, _path: &str) -> Result<OCRResult> {
[INFO] [stderr] | ^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/lib.rs:472:1
[INFO] [stderr] |
[INFO] [stderr] 472 | pub type Result<T, E = Error> = core::result::Result<T, E>;
[INFO] [stderr] | ----------------------------- similarly named type alias `Result` defined here
[INFO] [stderr] |
[INFO] [stderr] help: a type alias with a similar name exists
[INFO] [stderr] |
[INFO] [stderr] 83 - async fn extract_text_from_image(&self, _path: &str) -> Result<OCRResult> {
[INFO] [stderr] 83 + async fn extract_text_from_image(&self, _path: &str) -> Result<Result> {
[INFO] [stderr] |
[INFO] [stderr] help: you might be missing a type parameter
[INFO] [stderr] |
[INFO] [stderr] 20 | impl<OCRResult> ComputerController for LinuxController {
[INFO] [stderr] | +++++++++++
[INFO] [stderr]
[INFO] [stderr] error[E0422]: cannot find struct, variant or union type `OCRResult` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:122:12
[INFO] [stderr] |
[INFO] [stderr] 122 | Ok(OCRResult {
[INFO] [stderr] | ^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/lib.rs:472:1
[INFO] [stderr] |
[INFO] [stderr] 472 | pub type Result<T, E = Error> = core::result::Result<T, E>;
[INFO] [stderr] | ----------------------------- similarly named type alias `Result` defined here
[INFO] [stderr] |
[INFO] [stderr] help: a type alias with a similar name exists
[INFO] [stderr] |
[INFO] [stderr] 122 - Ok(OCRResult {
[INFO] [stderr] 122 + Ok(Result {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] error[E0425]: cannot find type `Point` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:134:71
[INFO] [stderr] |
[INFO] [stderr] 134 | async fn find_text_on_screen(&self, _text: &str) -> Result<Option<Point>> {
[INFO] [stderr] | ^^^^^ not found in this scope
[INFO] [stderr] |
[INFO] [stderr] help: you might be missing a type parameter
[INFO] [stderr] |
[INFO] [stderr] 20 | impl<Point> ComputerController for LinuxController {
[INFO] [stderr] | +++++++
[INFO] [stderr]
[INFO] [stderr] error[E0422]: cannot find struct, variant or union type `Point` in this scope
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:183:21
[INFO] [stderr] |
[INFO] [stderr] 183 | Ok(Some(Point { x: 0, y: 0 }))
[INFO] [stderr] | ^^^^^ not found in this scope
[INFO] [stderr]
[INFO] [stderr] error[E0195]: lifetime parameters or bounds on method `move_mouse` do not match the trait declaration
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:21:14
[INFO] [stderr] |
[INFO] [stderr] 19 | #[async_trait]
[INFO] [stderr] | -------------- this `where` clause might not match the one in the trait
[INFO] [stderr] 20 | impl ComputerController for LinuxController {
[INFO] [stderr] 21 | async fn move_mouse(&self, _x: i32, _y: i32) -> Result<()> {
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetimes do not match method in trait
[INFO] [stderr] |
[INFO] [stderr] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/lib.rs:43:18
[INFO] [stderr] |
[INFO] [stderr] 43 | fn move_mouse(&self, x: i32, y: i32) -> Result<()>;
[INFO] [stderr] | - lifetimes in impl do not match this method in trait
[INFO] [stderr]
[INFO] [stderr] error[E0046]: not all trait items implemented, missing: `extract_text_with_locations`, `find_text_in_app`, `click_at`
[INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/platform/linux.rs:20:1
[INFO] [stderr] |
[INFO] [stderr] 20 | impl ComputerController for LinuxController {
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `extract_text_with_locations`, `find_text_in_app`, `click_at` in implementation
[INFO] [stderr] |
[INFO] [stderr] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/g3-computer-control-0.2.0/src/lib.rs:35:5
[INFO] [stderr] |
[INFO] [stderr] 35 | async fn extract_text_with_locations(&self, path: &str) -> Result<Vec<TextLocation>>;
[INFO] [stderr] | ------------------------------------------------------------------------------------- `extract_text_with_locations` from trait
[INFO] [stderr] 36 | / async fn find_text_in_app(
[INFO] [stderr] 37 | | &self,
[INFO] [stderr] 38 | | app_name: &str,
[INFO] [stderr] 39 | | search_text: &str,
[INFO] [stderr] 40 | | ) -> Result<Option<TextLocation>>;
[INFO] [stderr] | |______________________________________- `find_text_in_app` from trait
[INFO] [stderr] ...
[INFO] [stderr] 44 | fn click_at(&self, x: i32, y: i32, app_name: Option<&str>) -> Result<()>;
[INFO] [stderr] | ------------------------------------------------------------------------- `click_at` from trait
[INFO] [stderr]
[INFO] [stderr] Checking nibble_vec v0.1.0
[INFO] [stderr] Checking endian-type v0.1.2
[INFO] [stderr] Checking lazy_static v1.5.0
[INFO] [stderr] Compiling indoc v2.0.7
[INFO] [stderr] Checking linked-hash-map v0.5.6
[INFO] [stderr] Checking strict v0.2.0
[INFO] [stderr] Some errors have detailed explanations: E0046, E0195, E0407, E0422, E0425, E0432.
[INFO] [stderr] For more information about an error, try `rustc --explain E0046`.
[INFO] [stderr] Checking static_assertions v1.1.0
[INFO] [stderr] error: could not compile `g3-computer-control` (lib) due to 24 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "88b8e6d3becfabcbf720206f3b4d46fb09090066da778ab71e611f0e1d56529e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "88b8e6d3becfabcbf720206f3b4d46fb09090066da778ab71e611f0e1d56529e", kill_on_drop: false }`
[INFO] [stdout] 88b8e6d3becfabcbf720206f3b4d46fb09090066da778ab71e611f0e1d56529e