kanishkarj / snoopy

A highly configurable multi-threaded packet sniffer and parser build in rust-lang.
MIT License
177 stars 16 forks source link

Current latest version on crates.io does not compile #13

Open daviessm opened 2 years ago

daviessm commented 2 years ago

On a new installation of openSUSE with latest Rust compiler chain there are build failures. Latest git master compiles fine. Could you bump the version and upload it to crates.io?

steven@localhost:~> cargo --version
cargo 1.57.0 (b2e52d7ca 2021-10-21)
steven@localhost:~> rustc --version
rustc 1.57.0 (f1edd0429 2021-11-29)
steven@localhost:~> rustc --print cfg
debug_assertions
target_arch="x86_64"
target_endian="little"
target_env="gnu"
target_family="unix"
target_feature="fxsr"
target_feature="sse"
target_feature="sse2"
target_os="linux"
target_pointer_width="64"
target_vendor="unknown"
unix
   Compiling snoopy v0.3.2
error: cannot find derive macro `Serialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:16:17
   |
16 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                 ^^^^^^^^^
   |
note: `Serialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:26
   |
12 | use serde::{Deserialize, Serialize};
   |                          ^^^^^^^^^

error: cannot find derive macro `Deserialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:16:28
   |
16 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                            ^^^^^^^^^^^
   |
note: `Deserialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:13
   |
12 | use serde::{Deserialize, Serialize};
   |             ^^^^^^^^^^^

error: cannot find derive macro `Serialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:28:17
   |
28 | #[derive(Debug, Serialize, Deserialize)]
   |                 ^^^^^^^^^
   |
note: `Serialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:26
   |
12 | use serde::{Deserialize, Serialize};
   |                          ^^^^^^^^^

error: cannot find derive macro `Deserialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:28:28
   |
28 | #[derive(Debug, Serialize, Deserialize)]
   |                            ^^^^^^^^^^^
   |
note: `Deserialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:13
   |
12 | use serde::{Deserialize, Serialize};
   |             ^^^^^^^^^^^

error: cannot find derive macro `Serialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:47:17
   |
47 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                 ^^^^^^^^^
   |
note: `Serialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:26
   |
12 | use serde::{Deserialize, Serialize};
   |                          ^^^^^^^^^

error: cannot find derive macro `Deserialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:47:28
   |
47 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                            ^^^^^^^^^^^
   |
note: `Deserialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:13
   |
12 | use serde::{Deserialize, Serialize};
   |             ^^^^^^^^^^^

error: cannot find derive macro `Serialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:57:17
   |
57 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                 ^^^^^^^^^
   |
note: `Serialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:26
   |
12 | use serde::{Deserialize, Serialize};
   |                          ^^^^^^^^^

error: cannot find derive macro `Deserialize` in this scope
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:57:28
   |
57 | #[derive(Debug, Serialize, Deserialize, PartialEq)]
   |                            ^^^^^^^^^^^
   |
note: `Deserialize` is imported here, but it is only a trait, without a derive macro
  --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_parse.rs:12:13
   |
12 | use serde::{Deserialize, Serialize};
   |             ^^^^^^^^^^^

error[E0277]: the trait bound `ParsedPacket: Serialize` is not satisfied
    --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/snoopy-0.3.2/src/lib/packet_capture.rs:171:57
     |
171  |                     let packets = serde_json::to_string(&packets).unwrap();
     |                                   --------------------- ^^^^^^^^ the trait `Serialize` is not implemented for `ParsedPacket`
     |                                   |
     |                                   required by a bound introduced by this call
     |
     = note: required because of the requirements on the impl of `Serialize` for `Result<ParsedPacket, std::string::String>`
     = note: 2 redundant requirements hidden
     = note: required because of the requirements on the impl of `Serialize` for `&Vec<Result<ParsedPacket, std::string::String>>`
note: required by a bound in `serde_json::to_string`
    --> /home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.73/src/ser.rs:2216:17
     |
2216 |     T: ?Sized + Serialize,
     |                 ^^^^^^^^^ required by this bound in `serde_json::to_string`

For more information about this error, try `rustc --explain E0277`.
error: failed to compile `snoopy v0.3.2`, intermediate artifacts can be found at `/tmp/cargo-installKtYwe0`

Caused by:
  could not compile `snoopy` due to 9 previous errors
tan-wei commented 1 year ago

Confirmed in my computer.

ksananth4424 commented 8 months ago

Is there any fix for this?