msiemens / one2html

Convert OneNote files to HTML
MIT License
35 stars 7 forks source link

failed to compile `one2html v1.0.0` #10

Open cloudjumper2000 opened 3 years ago

cloudjumper2000 commented 3 years ago

Hello, im new to Rust but i managed to get this far and then error, any thoughts? Very well could be something im doing wrong. (Im on mac)


error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/one2html-1.0.0/src/main.rs:1:36
  |
1 | #![cfg_attr(feature = "backtrace", feature(backtrace))]
  |                                    ^^^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
  --> /Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/one2html-1.0.0/src/utils.rs:12:41
   |
12 |     let _state = happylog::set_progress(&bar);
   |                                         ^^^^ expected struct `indicatif::progress_bar::ProgressBar`, found struct `ProgressBar`
   |
   = note: expected reference `&indicatif::progress_bar::ProgressBar`
              found reference `&ProgressBar`

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0308, E0554.
For more information about an error, try `rustc --explain E0308`.
error: failed to compile `one2html v1.0.0`, intermediate artifacts can be found at `/var/folders/6y/wfd9d7ln57jbf4b_6kzc_bm80000gn/T/cargo-install05K6kd`

Caused by:
  could not compile `one2html`

To learn more, run the command again with --verbose.```
msiemens commented 3 years ago

Ah, that error is fixed in 9e6af3a50903ad4a4000a8b40674295447a2e8f9. I've published version 1.1.0 which contains the fix. Could you try if it works with the latest version?

cloudjumper2000 commented 3 years ago

Thanks for the quick response, I cloned master earlier today and had the error, I cloned master after you said to try again and still one of the two errors but looks like its in a different file now.

   Compiling tracing v0.1.26
   Compiling onenote_parser v0.3.0
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/onenote_parser-0.3.0/src/lib.rs:5:36
  |
5 | #![cfg_attr(feature = "backtrace", feature(backtrace))]
  |                                    ^^^^^^^^^^^^^^^^^^

   Compiling tracing-error v0.1.2
   Compiling structopt v0.3.21
   Compiling color-spantrace v0.1.6
   Compiling happylog v0.1.0
error: aborting due to previous error

For more information about this error, try `rustc --explain E0554`.
error: could not compile `onenote_parser`

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: failed to compile `one2html v1.1.0`, intermediate artifacts can be found at `/var/folders/6y/wfd9d7ln57jbf4b_6kzc_bm80000gn/T/cargo-installmFYRA8`

Caused by:
  build failed
msiemens commented 3 years ago

Ah, I see. It still tries to use the backtrace feature, which is only available on nightly. For now you should be able to install one2html on stable/beta using cargo install --no-default-features one2html. I'll add a note about this in the READMe

cloudjumper2000 commented 3 years ago

cargo install --no-default-features one2html worked thx, not to see if it will convert

JustCryen commented 9 months ago

I've just found this project and I can't get it to compile correctly (I'm not that familiar with rust though so that might be something easy). First time I had this error:

   Compiling onenote_parser v0.3.1
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onenote_parser-0.3.1/src/lib.rs:5:44
  |
5 | #![cfg_attr(feature = "backtrace", feature(error_generic_member_access))]
  |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onenote_parser-0.3.1/src/lib.rs:6:44
  |
6 | #![cfg_attr(feature = "backtrace", feature(provide_any))]
  |                                            ^^^^^^^^^^^

error[E0635]: unknown feature `provide_any`
 --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onenote_parser-0.3.1/src/lib.rs:6:44
  |
6 | #![cfg_attr(feature = "backtrace", feature(provide_any))]
  |                                            ^^^^^^^^^^^

Some errors have detailed explanations: E0554, E0635.
For more information about an error, try `rustc --explain E0554`.
error: could not compile `onenote_parser` (lib) due to 3 previous errors
warning: build failed, waiting for other jobs to finish...
error: failed to compile `one2html v1.1.1`, intermediate artifacts can be found at `/tmp/cargo-install0jEjBg`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

Figuring out that the standard compilation is made for nightly compiler, I've tried again with --no-default-features but this still failed:

   Compiling one2html v1.1.1
error[E0308]: mismatched types
  --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/one2html-1.1.1/src/utils.rs:12:41
   |
12 |     let _state = happylog::set_progress(&bar);
   |                  ---------------------- ^^^^ expected `ProgressBar`, found a different `ProgressBar`
   |                  |
   |                  arguments to this function are incorrect
   |
   = note: `ProgressBar` and `ProgressBar` have similar names, but are actually distinct types
note: `ProgressBar` is defined in crate `indicatif`
  --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/indicatif-0.16.2/src/progress_bar.rs:23:1
   |
23 | pub struct ProgressBar {
   | ^^^^^^^^^^^^^^^^^^^^^^
note: `ProgressBar` is defined in crate `indicatif`
  --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/indicatif-0.17.7/src/progress_bar.rs:25:1
   |
25 | pub struct ProgressBar {
   | ^^^^^^^^^^^^^^^^^^^^^^
   = note: perhaps two different versions of crate `indicatif` are being used?
note: function defined here
  --> /home/cryen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/happylog-0.2.0/src/console_emitter.rs:93:8
   |
93 | pub fn set_progress(pb: &ProgressBar) -> LogPBState {
   |        ^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0308`.
error: could not compile `one2html` (bin "one2html") due to previous error
error: failed to compile `one2html v1.1.1`, intermediate artifacts can be found at `/tmp/cargo-installuS3gso`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

OS: Archlinux Rust: 1.74.1