[INFO] fetching crate sh1108 0.2.0... [INFO] testing sh1108-0.2.0 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate sh1108 0.2.0 into /workspace/builds/worker-7-tc1/source [INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config [INFO] started tweaking crates.io crate sh1108 0.2.0 [INFO] finished tweaking crates.io crate sh1108 0.2.0 [INFO] tweaked toml for crates.io crate sh1108 0.2.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate sh1108 0.2.0 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate sh1108 0.2.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cortex-m-rt v0.7.3 [INFO] [stderr] Downloaded fugit v0.3.7 [INFO] [stderr] Downloaded usb-device v0.2.9 [INFO] [stderr] Downloaded stm32-usbd v0.6.0 [INFO] [stderr] Downloaded volatile-register v0.2.0 [INFO] [stderr] Downloaded float-cmp v0.9.0 [INFO] [stderr] Downloaded display-interface v0.5.0 [INFO] [stderr] Downloaded cortex-m-semihosting v0.5.0 [INFO] [stderr] Downloaded profont v0.7.0 [INFO] [stderr] Downloaded panic-semihosting v0.6.0 [INFO] [stderr] Downloaded display-interface-i2c v0.5.0 [INFO] [stderr] Downloaded display-interface-spi v0.5.0 [INFO] [stderr] Downloaded embedded-dma v0.2.0 [INFO] [stderr] Downloaded az v1.2.1 [INFO] [stderr] Downloaded autocfg v1.0.1 [INFO] [stderr] Downloaded embedded-graphics-core v0.4.0 [INFO] [stderr] Downloaded num-traits v0.2.14 [INFO] [stderr] Downloaded bxcan v0.7.0 [INFO] [stderr] Downloaded cortex-m v0.7.7 [INFO] [stderr] Downloaded syn v1.0.48 [INFO] [stderr] Downloaded micromath v2.1.0 [INFO] [stderr] Downloaded stm32f1xx-hal v0.10.0 [INFO] [stderr] Downloaded stm32f1 v0.15.1 [INFO] [stderr] Downloaded embedded-graphics v0.8.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 814b31bac5f6f1be05c20cd1ab67c8428eb75738445e06a52009dbd45a28c277 [INFO] running `Command { std: "docker" "start" "-a" "814b31bac5f6f1be05c20cd1ab67c8428eb75738445e06a52009dbd45a28c277", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "814b31bac5f6f1be05c20cd1ab67c8428eb75738445e06a52009dbd45a28c277", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "814b31bac5f6f1be05c20cd1ab67c8428eb75738445e06a52009dbd45a28c277", kill_on_drop: false }` [INFO] [stdout] 814b31bac5f6f1be05c20cd1ab67c8428eb75738445e06a52009dbd45a28c277 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8544aac4704340c0ec9a15b63032b09887b976ae57440aee75c16224cf894b4a [INFO] running `Command { std: "docker" "start" "-a" "8544aac4704340c0ec9a15b63032b09887b976ae57440aee75c16224cf894b4a", kill_on_drop: false }` [INFO] [stderr] Compiling az v1.2.1 [INFO] [stderr] Compiling sh1108 v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling embedded-hal v1.0.0 [INFO] [stderr] Compiling display-interface v0.5.0 [INFO] [stderr] Compiling embedded-graphics-core v0.4.0 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.44s [INFO] running `Command { std: "docker" "inspect" "8544aac4704340c0ec9a15b63032b09887b976ae57440aee75c16224cf894b4a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8544aac4704340c0ec9a15b63032b09887b976ae57440aee75c16224cf894b4a", kill_on_drop: false }` [INFO] [stdout] 8544aac4704340c0ec9a15b63032b09887b976ae57440aee75c16224cf894b4a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9add8240b12ffe77072d99fda751a14cfd24c6d4ec013155c223e4920bbc8391 [INFO] running `Command { std: "docker" "start" "-a" "9add8240b12ffe77072d99fda751a14cfd24c6d4ec013155c223e4920bbc8391", kill_on_drop: false }` [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling cortex-m v0.7.7 [INFO] [stderr] Compiling nb v1.0.0 [INFO] [stderr] Compiling vcell v0.1.3 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.48 [INFO] [stderr] Compiling bitfield v0.13.2 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling cortex-m-rt v0.7.3 [INFO] [stderr] Compiling embedded-hal-async v1.0.0 [INFO] [stderr] Compiling gcd v2.3.0 [INFO] [stderr] Compiling stm32-usbd v0.6.0 [INFO] [stderr] Compiling stm32f1 v0.15.1 [INFO] [stderr] Compiling cortex-m-semihosting v0.5.0 [INFO] [stderr] Compiling nb v0.1.3 [INFO] [stderr] Compiling volatile-register v0.2.0 [INFO] [stderr] Compiling fugit v0.3.7 [INFO] [stderr] Compiling bare-metal v1.0.0 [INFO] [stderr] Compiling embedded-hal v0.2.7 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling usb-device v0.2.9 [INFO] [stderr] Compiling micromath v2.1.0 [INFO] [stderr] Compiling embedded-dma v0.2.0 [INFO] [stderr] Compiling bxcan v0.7.0 [INFO] [stderr] Compiling byte-slice-cast v1.2.2 [INFO] [stderr] Compiling fugit-timer v0.1.3 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling display-interface-spi v0.5.0 [INFO] [stderr] Compiling display-interface-i2c v0.5.0 [INFO] [stderr] Compiling bare-metal v0.2.5 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling panic-semihosting v0.6.0 [INFO] [stderr] Compiling float-cmp v0.9.0 [INFO] [stderr] Compiling embedded-graphics v0.8.1 [INFO] [stderr] Compiling profont v0.7.0 [INFO] [stderr] Compiling cortex-m-rt-macros v0.7.0 [INFO] [stderr] Compiling stm32f1xx-hal v0.10.0 [INFO] [stderr] Compiling sh1108 v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/graphics.rs:72:60 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-10737140285134424527.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/image.rs:72:60 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-1962009999255825237.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/graphics.rs:72:75 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-10737140285134424527.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/image.rs:72:75 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-1962009999255825237.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/image.rs:72:75 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-1962009999255825237.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/image.rs:72:19 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-1962009999255825237.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/graphics.rs:72:75 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-10737140285134424527.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/graphics.rs:72:19 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-10737140285134424527.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "image") due to 9 previous errors [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/graphics.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 74 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-7344603237271702064.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 74 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-17837037198526282905.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-17837037198526282905.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/graphics.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-7344603237271702064.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/graphics.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-7344603237271702064.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-17837037198526282905.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/image.rs:81:40 [INFO] [stdout] | [INFO] [stdout] 81 | Image::new(&im, Point::new(32, 0)).draw(&mut disp).unwrap(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-1962009999255825237.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/graphics.rs:81:10 [INFO] [stdout] | [INFO] [stdout] 81 | .draw(&mut disp) [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-10737140285134424527.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image.rs:83:10 [INFO] [stdout] | [INFO] [stdout] 83 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image-ace8aba72b7dd85d.long-type-17837037198526282905.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/graphics.rs:104:10 [INFO] [stdout] | [INFO] [stdout] 104 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/graphics-501f367c2cec40c5.long-type-7344603237271702064.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:67:60 [INFO] [stdout] | [INFO] [stdout] 67 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-6658376864763378758.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:67:75 [INFO] [stdout] | [INFO] [stdout] 67 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-6658376864763378758.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:67:75 [INFO] [stdout] | [INFO] [stdout] 67 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-6658376864763378758.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 67 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-6658376864763378758.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:71:10 [INFO] [stdout] | [INFO] [stdout] 71 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "graphics") due to 9 previous errors [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | disp.set_pixel(0, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | disp.set_pixel(1, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | disp.set_pixel(2, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | disp.set_pixel(3, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:81:10 [INFO] [stdout] | [INFO] [stdout] 81 | disp.set_pixel(3, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | disp.set_pixel(3, 1, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:83:10 [INFO] [stdout] | [INFO] [stdout] 83 | disp.set_pixel(3, 2, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> examples/image_spi.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 57 | let spi = Spi::spi1( [INFO] [stdout] | --------- arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 61 | spi::MODE_0, [INFO] [stdout] | ^^^^^^^^^^^ expected `stm32f1xx_hal::spi::Mode`, found `embedded_hal::spi::Mode` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/spi.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct Mode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ this is the expected type [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:202:1 [INFO] [stdout] | [INFO] [stdout] 202 | pub struct Mode { [INFO] [stdout] | --------------- this is the found type [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn spi1( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied [INFO] [stdout] --> examples/image_spi.rs:66:25 [INFO] [stdout] | [INFO] [stdout] 66 | let spi_interface = SPIInterface::new(spi, dc, cs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ -- unexpected argument #3 of type `stm32f1xx_hal::gpio::Pin<'A', 1, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn new(spi: SPI, dc: DC) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 66 - let spi_interface = SPIInterface::new(spi, dc, cs); [INFO] [stdout] 66 + let spi_interface = SPIInterface::new(spi, dc); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:84:10 [INFO] [stdout] | [INFO] [stdout] 84 | disp.set_pixel(3, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:60 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-4082523492344348700.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:60 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-17572947811444601885.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-4082523492344348700.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 87 | disp.set_pixel(0, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-17572947811444601885.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-4082523492344348700.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> examples/demo.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 53 | let spi = Spi::spi1( [INFO] [stdout] | --------- arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 57 | spi::MODE_0, [INFO] [stdout] | ^^^^^^^^^^^ expected `stm32f1xx_hal::spi::Mode`, found `embedded_hal::spi::Mode` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/spi.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct Mode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ this is the expected type [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:202:1 [INFO] [stdout] | [INFO] [stdout] 202 | pub struct Mode { [INFO] [stdout] | --------------- this is the found type [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn spi1( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-17572947811444601885.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:88:10 [INFO] [stdout] | [INFO] [stdout] 88 | disp.set_pixel(1, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-4082523492344348700.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 71 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-17572947811444601885.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:89:10 [INFO] [stdout] | [INFO] [stdout] 89 | disp.set_pixel(2, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:60 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:60 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | disp.set_pixel(3, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:93:10 [INFO] [stdout] | [INFO] [stdout] 93 | disp.set_pixel(0, 0, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image_spi.rs:73:10 [INFO] [stdout] | [INFO] [stdout] 73 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-3147902085358590928.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | disp.set_pixel(0, 1, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image_spi.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-3147902085358590928.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:95:10 [INFO] [stdout] | [INFO] [stdout] 95 | disp.set_pixel(0, 2, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DisplayModeTrait, ...>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_pixel` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:96:10 [INFO] [stdout] | [INFO] [stdout] 96 | disp.set_pixel(0, 3, 1); [INFO] [stdout] | ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image_spi.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-3147902085358590928.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:19 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:64:19 [INFO] [stdout] | [INFO] [stdout] 64 | let mut disp: GraphicsMode<_> = Builder::new().connect(spi_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/pixelsquare.rs:98:10 [INFO] [stdout] | [INFO] [stdout] 98 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/pixelsquare-d62367e28388902e.long-type-11394005109320915848.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:80:40 [INFO] [stdout] | [INFO] [stdout] 80 | Image::new(&im, Point::new(32, 0)).draw(&mut disp).unwrap(); [INFO] [stdout] | ^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-4082523492344348700.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/image_spi.rs:80:40 [INFO] [stdout] | [INFO] [stdout] 80 | Image::new(&im, Point::new(32, 0)).draw(&mut disp).unwrap(); [INFO] [stdout] | ^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-17572947811444601885.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/demo.rs:66:10 [INFO] [stdout] | [INFO] [stdout] 66 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3491198752384108644.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/image_spi.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/image_spi-f68a63253678bffa.long-type-3147902085358590928.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/demo.rs:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3491198752384108644.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/demo.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3491198752384108644.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "pixelsquare") due to 24 previous errors [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | draw_demo(&mut disp).unwrap(); [INFO] [stdout] | --------- ^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] note: required by a bound in `draw_demo` [INFO] [stdout] --> examples/demo.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 78 | fn draw_demo(disp: &mut D) -> Result<(), D::Error> [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 79 | where [INFO] [stdout] 80 | D: embedded_graphics::draw_target::DrawTarget, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `draw_demo` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "image_spi") due to 16 previous errors [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | draw_demo(&mut disp).unwrap(); [INFO] [stdout] | --------- ^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] note: required by a bound in `draw_demo` [INFO] [stdout] --> examples/demo.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 78 | fn draw_demo(disp: &mut D) -> Result<(), D::Error> [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 79 | where [INFO] [stdout] 80 | D: embedded_graphics::draw_target::DrawTarget, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `draw_demo` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "demo") due to 17 previous errors [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/demo.rs:73:10 [INFO] [stdout] | [INFO] [stdout] 73 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-spi-0.5.0/src/lib.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct SPIInterface { [INFO] [stdout] | -------------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/spi.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct Spi { [INFO] [stdout] | --------------------------------------------------------------- doesn't satisfy `_: SpiDevice` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/gpio.rs:425:1 [INFO] [stdout] | [INFO] [stdout] 425 | pub struct Pin> { [INFO] [stdout] | ------------------------------------------------------------------ doesn't satisfy `_: OutputPin` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Spi, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>: SpiDevice` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` [INFO] [stdout] which is required by `SPIInterface, stm32f1xx_hal::gpio::Pin<'A', 6>, stm32f1xx_hal::gpio::Pin<'A', 7, stm32f1xx_hal::gpio::Alternate>), u8>, stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3491198752384108644.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Spi, ..., ...), u8>: SpiDevice` is not satisfied [INFO] [stdout] --> examples/demo.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | draw_demo(&mut disp).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the trait `SpiDevice` is not implemented for `Spi, Pin<'A', 6>, ...), u8>` [INFO] [stdout] | [INFO] [stdout] help: the trait `SpiDevice` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/spi.rs:406:1 [INFO] [stdout] | [INFO] [stdout] 406 | impl + ?Sized> SpiDevice for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-9086685319113417907.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>: OutputPin` is not satisfied [INFO] [stdout] --> examples/demo.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | draw_demo(&mut disp).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the trait `OutputPin` is not implemented for `stm32f1xx_hal::gpio::Pin<'A', 2, stm32f1xx_hal::gpio::Output>` [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `embedded_hal` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | pub trait OutputPin: ErrorType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-0.2.7/src/digital/v2.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 46 | pub trait OutputPin { [INFO] [stdout] | ------------------- [INFO] [stdout] | | [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] | this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] help: the following other types implement trait `OutputPin` [INFO] [stdout] --> src/builder.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | impl OutputPin for NoOutputPin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `NoOutputPin` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/digital.rs:150:1 [INFO] [stdout] | [INFO] [stdout] 150 | impl OutputPin for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&mut T` [INFO] [stdout] = note: required for `SPIInterface, ...>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/demo-ba7839a6d0e728d4.long-type-3745533317486512293.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/rotation.rs:75:18 [INFO] [stdout] | [INFO] [stdout] 75 | .connect(i2c_interface) [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-13049573905325844737.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/rotation.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | .into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-13049573905325844737.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/rotation.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | .into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-13049573905325844737.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/rotation.rs:72:19 [INFO] [stdout] | [INFO] [stdout] 72 | let mut disp: GraphicsMode<_> = Builder::new() [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-13049573905325844737.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/text.rs:74:60 [INFO] [stdout] | [INFO] [stdout] 74 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ------- ^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `Builder::connect` [INFO] [stdout] --> src/builder.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn connect(self, interface: DI) -> DisplayMode> [INFO] [stdout] | ------- required by a bound in this associated function [INFO] [stdout] 98 | where [INFO] [stdout] 99 | DI: display_interface::WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Builder::connect` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-2110373171424721286.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/text.rs:74:75 [INFO] [stdout] | [INFO] [stdout] 74 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `RawMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ---- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 34 | MODE: DisplayModeTrait, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-2110373171424721286.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/text.rs:74:75 [INFO] [stdout] | [INFO] [stdout] 74 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DisplayModeTrait>>` [INFO] [stdout] note: required by a bound in `DisplayMode::::into` [INFO] [stdout] --> src/mode/displaymode.rs:31:28 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn into>(self) -> NMODE [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `DisplayMode::::into` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-2110373171424721286.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/text.rs:74:19 [INFO] [stdout] | [INFO] [stdout] 74 | let mut disp: GraphicsMode<_> = Builder::new().connect(i2c_interface).into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] note: required by a bound in `sh1108::mode::GraphicsMode` [INFO] [stdout] --> src/mode/graphics.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct GraphicsMode [INFO] [stdout] | ------------ required by a bound in this struct [INFO] [stdout] 30 | where [INFO] [stdout] 31 | DI: WriteOnlyDataCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `GraphicsMode` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-2110373171424721286.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `reset` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/text.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | disp.reset(&mut res, &mut delay).unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-1475262940421130750.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/text.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-1475262940421130750.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `init` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:80:10 [INFO] [stdout] | [INFO] [stdout] 80 | disp.init().unwrap(); [INFO] [stdout] | ^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/text.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-1475262940421130750.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:81:10 [INFO] [stdout] | [INFO] [stdout] 81 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/text.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 87 | .draw(&mut disp) [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-2110373171424721286.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/text.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/text-a3d27ba41a1b0a61.long-type-1475262940421130750.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `set_rotation` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:85:10 [INFO] [stdout] | [INFO] [stdout] 85 | disp.set_rotation(DisplayRotation::Rotate270).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get_dimensions` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | let (w, h) = disp.get_dimensions(); [INFO] [stdout] | ^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BlockingI2c>, ...)>: I2c` is not satisfied [INFO] [stdout] --> examples/rotation.rs:95:6 [INFO] [stdout] | [INFO] [stdout] 95 | .draw(&mut disp) [INFO] [stdout] | ^^^^ the trait `embedded_hal::i2c::I2c` is not implemented for `BlockingI2c>, ...)>` [INFO] [stdout] | [INFO] [stdout] help: the trait `embedded_hal::i2c::I2c` is implemented for `&mut T` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/embedded-hal-1.0.0/src/i2c.rs:408:1 [INFO] [stdout] | [INFO] [stdout] 408 | impl + ?Sized> I2c for &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: required for `I2CInterface>, ...)>>` to implement `display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: required for `GraphicsMode, ...)>>>` to implement `DrawTarget` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-13049573905325844737.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flush` exists for struct `GraphicsMode, ...)>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> examples/rotation.rs:98:10 [INFO] [stdout] | [INFO] [stdout] 98 | disp.flush().unwrap(); [INFO] [stdout] | ^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/display-interface-i2c-0.5.0/src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct I2CInterface { [INFO] [stdout] | ---------------------------- doesn't satisfy `_: WriteOnlyDataCommand` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/stm32f1xx-hal-0.10.0/src/i2c/blocking.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BlockingI2c { [INFO] [stdout] | --------------------------------- doesn't satisfy `_: I2c` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `BlockingI2c>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>: embedded_hal::i2c::I2c` [INFO] [stdout] which is required by `I2CInterface>, stm32f1xx_hal::gpio::Pin<'B', 9, stm32f1xx_hal::gpio::Alternate>)>>: display_interface::WriteOnlyDataCommand` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/examples/rotation-ebfe4296d4b9a512.long-type-15800350483656911048.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "text") due to 9 previous errors [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `sh1108` (example "rotation") due to 11 previous errors [INFO] running `Command { std: "docker" "inspect" "9add8240b12ffe77072d99fda751a14cfd24c6d4ec013155c223e4920bbc8391", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9add8240b12ffe77072d99fda751a14cfd24c6d4ec013155c223e4920bbc8391", kill_on_drop: false }` [INFO] [stdout] 9add8240b12ffe77072d99fda751a14cfd24c6d4ec013155c223e4920bbc8391