http-rs / tide

Fast and friendly HTTP server framework for async Rust
https://docs.rs/tide
Apache License 2.0
5.06k stars 321 forks source link

0.11, 0.10 and 0.9 have macro_exports problem on the log module #620

Open vertexclique opened 4 years ago

vertexclique commented 4 years ago

I am not quite sure but this is not expected behavior seems like: Upgrading from 0.8.1 to 0.11.0, 0.10, 0.9 made this available.

error[E0433]: failed to resolve: use of undeclared type or module `log`
  --> /Users/mahmut/.cargo/registry/src/github.com-1ecc6299db9ec823/tide-0.11.0/src/log/mod.rs:30:5
   |
30 |     crate::log::info!("Logger started", { level: "Info" });
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type or module `log`
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
jbr commented 4 years ago

try running cargo update

vertexclique commented 4 years ago

What is the relation between this problem and cargo update? Anyway:

╰─± cargo update -p tide
    Updating crates.io index
    Updating async-h1 v1.1.2 -> v2.0.2
    Updating async-sse v2.1.0 -> v3.0.0
    Updating cookie v0.12.0 -> v0.13.3
    Removing data-encoding v2.2.1
      Adding femme v2.1.0
    Removing http-service v0.5.0
    Removing http-service-h1 v0.1.0
    Updating http-types v1.3.1 -> v2.1.0
    Removing idna v0.1.5
    Removing mime v0.3.16
    Removing mime_guess v2.0.3
    Removing omnom v2.1.2
    Removing serde_qs v0.5.2
    Updating tide v0.8.1 -> v0.11.0
    Removing unicase v2.6.0
    Removing url v1.7.2
$
╰─± cargo watch
[Running 'cargo check']
    Checking tide v0.11.0
error[E0433]: failed to resolve: use of undeclared type or module `log`
  --> /Users/mahmut/.cargo/registry/src/github.com-1ecc6299db9ec823/tide-0.11.0/src/log/mod.rs:30:5
   |
30 |     crate::log::info!("Logger started", { level: "Info" });
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type or module `log`
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0433]: failed to resolve: use of undeclared type or module `log`
  --> /Users/mahmut/.cargo/registry/src/github.com-1ecc6299db9ec823/tide-0.11.0/src/log/mod.rs:36:5
   |
36 |     crate::log::info!("Logger started", { level: format!("{}", level) });
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type or module `log`
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0433`.
error: could not compile `tide`.
Fishrock123 commented 4 years ago

What is the relation between this problem and cargo update?

What is effectively a peer dependency issue. Previous identical issues were solved by running cargo update due to a missing dependency on femme.

Are you sure that rebuilt? Does cargo build now give you the same issue?