Skip to content

Error compiling v0.10.0 #134

@konstantin-kornienko

Description

@konstantin-kornienko

Trying to compile on GitHub Actions (using actions-rust-lang/setup-rust-toolchain@v1).

v0.9.0 - OK
v0.10.0 - errors:

Maybe something should be tuned on my side?
Thank you!

   Compiling snpguest v0.10.0 
error[E0277]: the trait bound `AttestationReport: serde::Deserialize<'de>` is not satisfied
Error:     --> src/hyperv/mod.rs:95:17
     |
  95 |         report: AttestationReport,
     |                 ^^^^^^^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `AttestationReport`
     |
     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `AttestationReport` type
     = note: for types from other crates check whether the crate offers a `serde` feature flag
     = help: the following other types implement trait `Deserialize<'de>`:
               &'a Path
               &'a [u8]
               &'a serde_bytes::bytearray::ByteArray<N>
               &'a serde_bytes::bytes::Bytes
               &'a str
               ()
               (T,)
               (T0, T1)
             and 246 others
note: required by a bound in `next_element`
    --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.225/src/de/mod.rs:1772:12
     |
1770 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
     |        ------------ required by a bound in this associated function
1771 |     where
1772 |         T: Deserialize<'de>,
     |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
error[E0277]: the trait bound `AttestationReport: serde::Deserialize<'de>` is not satisfied
Error:     --> src/hyperv/mod.rs:95:17
     |
  95 |         report: AttestationReport,
     |                 ^^^^^^^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `AttestationReport`
     |
     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `AttestationReport` type
     = note: for types from other crates check whether the crate offers a `serde` feature flag
     = help: the following other types implement trait `Deserialize<'de>`:
  95 |         report: AttestationReport,
     |         ------ required by a bound introduced by this call
     |
     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `AttestationReport` type
     = note: for types from other crates check whether the crate offers a `serde` feature flag
     = help: the following other types implement trait `ok::_::_serde::Serialize`:
               &'a T
               &'a mut T
               ()
               (T,)
               (T0, T1)
               (T0, T1, T2)
               (T0, T1, T2, T3)
               (T0, T1, T2, T3, T4)
             and 236 others
note: required by a bound in `ok::_::_serde::ser::SerializeStruct::serialize_field`
    --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.225/src/ser/mod.rs:1917:21
     |
1915 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
     |        --------------- required by a bound in this associated function
1916 |     where
1917 |         T: ?Sized + Serialize;
     |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
     = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0599]: no function or associated item named `from_bytes` found for struct `AttestationReport` in the current scope
Error:    --> src/hyperv/mod.rs:129:28
    |
129 |         AttestationReport::from_bytes(report_bytes)
    |                            ^^^^^^^^^^ function or associated item not found in `AttestationReport`
    |
    = help: items from traits can only be used if the trait is in scope
help: there is an associated function `from_bytes_with` with a similar name
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sev-7.1.0/src/parser/byte_parser.rs:17:5
    |
 17 | /     fn from_bytes_with(bytes: &[u8], params: P) -> Result<Self, std::io::Error>
 18 | |     where
 19 | |         Self: Sized + Decoder<P>,
    | |_________________________________^
help: trait `ByteParser` which provides `from_bytes` is implemented but not in scope; perhaps you want to import it
    |
 77 +     use sev::parser::ByteParser;
    |
Some errors have detailed explanations: E0277, E0599.
For more information about an error, try `rustc --explain E0277`.
error: could not compile `snpguest` (bin "snpguest") due to 5 previous errors

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions