Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Error while compiling #91

Closed
bree29 opened this issue Jan 10, 2021 · 2 comments
Closed

[BUG] Error while compiling #91

bree29 opened this issue Jan 10, 2021 · 2 comments
Labels
no-actual-bug Issues that where reported as bugs, but turned out not to be bugs in eww

Comments

@bree29
Copy link

bree29 commented Jan 10, 2021

Describe the bug

I follow the step to compile eww (there aren't many), satisfying all the dependencies I might have (glib-2.0) ; but then... Well. I have the report with --verbose ; and I'm not qualified enough to find the issue.

Expected behaviour

Everything goes well ?

Additional context

 $ git clone https://github.com/elkowar/eww
 $ cd eww
 $ cargo build --release --verbose 
       Fresh unicode-xid v0.2.1
       Fresh unicode-segmentation v1.7.1
       Fresh pkg-config v0.3.19
       Fresh version-compare v0.0.10
       Fresh strum v0.18.0
       Fresh autocfg v1.0.1
       Fresh version_check v0.9.2
       Fresh once_cell v1.5.2
       Fresh cfg-if v1.0.0
       Fresh futures-core v0.3.8
       Fresh futures-sink v0.3.8
       Fresh futures-io v0.3.8
       Fresh either v1.6.1
       Fresh pin-utils v0.1.0
       Fresh slab v0.4.2
       Fresh smallvec v1.6.0
       Fresh cfg-if v0.1.10
       Fresh ppv-lite86 v0.2.10
       Fresh lazy_static v1.4.0
       Fresh scopeguard v1.1.0
       Fresh siphasher v0.3.3
       Fresh unicode-width v0.1.8
       Fresh pin-project-lite v0.2.1
       Fresh bytes v1.0.0
       Fresh ahash v0.3.8
       Fresh ansi_term v0.11.0
       Fresh quick-error v1.2.3
       Fresh unicode-xid v0.0.4
       Fresh regex-syntax v0.6.21
       Fresh vec_map v0.8.2
       Fresh strsim v0.8.0
       Fresh termcolor v1.1.2
       Fresh hashbrown v0.9.1
       Fresh quote v0.3.15
       Fresh codemap v0.1.3
       Fresh xmlparser v0.13.3
       Fresh beef v0.4.4
       Fresh unescape v0.1.0
       Fresh maplit v1.0.2
       Fresh heck v0.3.2
       Fresh futures-channel v0.3.8
       Fresh futures-task v0.3.8
       Fresh instant v0.1.9
       Fresh itertools v0.9.0
       Fresh itertools v0.10.0
       Fresh lock_api v0.4.2
       Fresh phf_shared v0.8.0
       Fresh thread_local v1.0.1
       Fresh peekmore v0.5.6
       Fresh textwrap v0.11.0
       Fresh synom v0.11.3
       Fresh humantime v1.3.0
       Fresh proc-macro2 v1.0.24
       Fresh roxmltree v0.14.0
       Fresh libc v0.2.81
       Fresh memchr v2.3.4
       Fresh proc-macro-hack v0.5.19
       Fresh bitflags v1.2.1
       Fresh proc-macro-nested v0.1.6
       Fresh anyhow v1.0.37
       Fresh log v0.4.11
       Fresh quote v1.0.8
       Fresh getrandom v0.1.16
       Fresh num-traits v0.2.14
       Fresh atty v0.2.14
       Fresh parking_lot_core v0.8.2
       Fresh num_cpus v1.13.0
       Fresh signal-hook-registry v1.3.0
       Fresh byteorder v1.3.4
       Fresh inotify-sys v0.1.4
       Fresh syn v0.11.11
       Fresh simple-signal v1.1.1
       Fresh aho-corasick v0.7.15
       Fresh hashbrown v0.8.2
       Fresh syn v1.0.58
       Fresh proc-macro-error-attr v1.0.4
       Fresh mio v0.7.7
       Fresh indexmap v1.6.1
       Fresh nix v0.19.1
       Fresh rand_core v0.5.1
       Fresh num-integer v0.1.44
       Fresh parking_lot v0.11.1
       Fresh clap v2.33.3
       Fresh num-complex v0.3.1
       Fresh serde_derive v1.0.118
       Fresh thiserror-impl v1.0.23
       Fresh strum_macros v0.18.0
       Fresh pin-project-internal v1.0.3
       Fresh proc-macro-error v1.0.4
       Fresh futures-macro v0.3.8
       Fresh tokio-macros v1.0.0
       Fresh regex v1.4.2
       Fresh lasso v0.3.1
       Fresh async-stream-impl v0.3.0
       Fresh smart-default v0.6.0
       Fresh debug_stub_derive v0.3.0
       Fresh derive_more v0.99.11
       Fresh serde v1.0.118
       Fresh thiserror v1.0.23
       Fresh rand_chacha v0.2.2
       Fresh rand_pcg v0.2.1
       Fresh num-bigint v0.3.1
       Fresh num-iter v0.1.42
       Fresh pin-project v1.0.3
       Fresh tokio v1.0.1
       Fresh env_logger v0.7.1
       Fresh structopt-derive v0.4.14
       Fresh async-stream v0.3.0
       Fresh extend v0.3.0
       Fresh toml v0.5.8
       Fresh rand v0.7.3
       Fresh num-rational v0.3.2
       Fresh bincode v1.3.1
       Fresh system-deps v1.3.2
       Fresh futures-util v0.3.8
       Fresh proc-macro-crate v0.1.5
       Fresh tokio-stream v0.1.1
       Fresh structopt v0.3.21
       Fresh pretty_env_logger v0.4.0
       Fresh inotify v0.9.2
       Fresh futures-executor v0.3.8
       Fresh glib-macros v0.10.1
       Fresh phf_generator v0.8.0
       Fresh tokio-util v0.6.0
       Fresh num v0.3.1
       Fresh futures v0.3.8
       Fresh phf_macros v0.8.0
       Fresh glib-sys v0.10.1
       Fresh phf v0.8.0
       Fresh gobject-sys v0.10.0
       Fresh cairo-sys-rs v0.10.0
       Fresh grass v0.10.4
       Fresh glib v0.10.3
       Fresh gio-sys v0.10.1
       Fresh pango-sys v0.10.0
       Fresh atk-sys v0.10.0
       Fresh gdk-pixbuf-sys v0.10.0
       Fresh gio v0.9.1
       Fresh pango v0.9.1
       Fresh cairo-rs v0.9.1
       Fresh atk v0.9.0
       Fresh gdk-sys v0.10.0
       Fresh gdk-pixbuf v0.9.0
       Fresh gtk-sys v0.10.0
       Fresh gdk v0.13.2
       Fresh gtk v0.9.2
   Compiling eww v0.1.0 (/home/brieucdug/eww)
     Running `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib`
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:1:1
  |
1 | #![feature(trace_macros)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:2:1
  |
2 | #![feature(slice_concat_trait)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:3:1
  |
3 | #![feature(result_cloned)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:4:1
  |
4 | #![feature(iterator_fold_self)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:5:1
  |
5 | #![feature(try_blocks)]
  | ^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:6:1
  |
6 | #![feature(str_split_once)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0277]: arrays only have std trait implementations for lengths 0..=32
   --> src/server.rs:121:49
    |
121 |     let mut event_stream = inotify.event_stream(&mut buffer)?;
    |                                                 ^^^^^^^^^^^ the trait `std::array::LengthAtMost32` is not implemented for `[u8; 1024]`
    |
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `[u8; 1024]`
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `&mut [u8; 1024]`

error[E0599]: no method named `next` found for struct `inotify::stream::EventStream<&mut [u8; 1024]>` in the current scope
   --> src/server.rs:124:40
    |
124 |         Some(Ok(event)) = event_stream.next() => {
    |                                        ^^^^ method not found in `inotify::stream::EventStream<&mut [u8; 1024]>`
    | 
   ::: /home/brieucdug/.cargo/registry/src/github.com-1ecc6299db9ec823/inotify-0.9.2/src/stream.rs:21:1
    |
21  | pub struct EventStream<T> {
    | -------------------------
    | |
    | doesn't satisfy `_: futures_core::stream::Stream`
    | doesn't satisfy `_: futures_util::stream::stream::StreamExt`
    |
    = note: the method `next` exists but the following trait bounds were not satisfied:
            `inotify::stream::EventStream<&mut [u8; 1024]>: futures_core::stream::Stream`
            which is required by `inotify::stream::EventStream<&mut [u8; 1024]>: futures_util::stream::stream::StreamExt`

error[E0599]: no method named `poll` found for struct `std::pin::Pin<&mut _>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<&mut _>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: no method named `poll` found for struct `std::pin::Pin<_>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<_>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 10 previous errors

Some errors have detailed explanations: E0277, E0554, E0599.
For more information about an error, try `rustc --explain E0277`.
error: could not compile `eww`.

Caused by:
  process didn't exit successfully: `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib` (exit code: 1)
@bree29 bree29 added the bug Something isn't working label Jan 10, 2021
@elkowar
Copy link
Owner

elkowar commented Jan 10, 2021

you didn't follow closely enough, as the issue is that you're not on nightly rust - which is required to build eww

@elkowar elkowar closed this as completed Jan 10, 2021
@bree29
Copy link
Author

bree29 commented Jan 10, 2021

Edit : for ubuntu folks, go directly to the bottom for solution.

you didn't follow closely enough, as the issue is that you're not on nightly rust - which is required to build eww

Hello, thanks for you answer. ndeed, I missed the nightly thing. But making nightly default didn't fix the issue.

brieucdug@msi:~/eww
 $ rustup default nightly
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
info: latest update on 2021-01-10, rust version 1.51.0-nightly (6184f2395 2021-01-09)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
info: downloading component 'rust-std'
 24.7 MiB /  24.7 MiB (100 %)  19.5 MiB/s in  2s ETA:  0s
info: downloading component 'rustc'
 50.3 MiB /  50.3 MiB (100 %)  28.3 MiB/s in  2s ETA:  0s
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: using up to 500.0 MiB of RAM to unpack components
info: installing component 'clippy'
info: installing component 'rust-docs'
 14.7 MiB /  14.7 MiB (100 %)  11.2 MiB/s in  1s ETA:  0s
info: installing component 'rust-std'
 24.7 MiB /  24.7 MiB (100 %)  12.9 MiB/s in  2s ETA:  0s
info: installing component 'rustc'
 50.3 MiB /  50.3 MiB (100 %)  12.6 MiB/s in  3s ETA:  0s
info: installing component 'rustfmt'
info: default toolchain set to 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu installed - rustc 1.51.0-nightly (6184f2395 2021-01-09)

info: note that the toolchain 'nightly-x86_64-unknown-linux-gnu' is currently in use (overridden by '/home/brieucdug/eww/rust-toolchain')

brieucdug@msi:~/eww
 $ cargo clean 

brieucdug@msi:~/eww
 $ cargo build --release --verbose
       Fresh unicode-xid v0.2.1
       Fresh unicode-segmentation v1.7.1
       Fresh pkg-config v0.3.19
       Fresh strum v0.18.0
       Fresh version-compare v0.0.10
       Fresh autocfg v1.0.1
       Fresh version_check v0.9.2
       Fresh cfg-if v1.0.0
       Fresh once_cell v1.5.2
       Fresh futures-core v0.3.8
       Fresh futures-sink v0.3.8
       Fresh pin-utils v0.1.0
       Fresh slab v0.4.2
       Fresh futures-io v0.3.8
       Fresh either v1.6.1
       Fresh cfg-if v0.1.10
       Fresh smallvec v1.6.0
       Fresh scopeguard v1.1.0
       Fresh ppv-lite86 v0.2.10
       Fresh lazy_static v1.4.0
       Fresh siphasher v0.3.3
       Fresh pin-project-lite v0.2.1
       Fresh bytes v1.0.0
       Fresh unicode-width v0.1.8
       Fresh unicode-xid v0.0.4
       Fresh strsim v0.8.0
       Fresh ansi_term v0.11.0
       Fresh quick-error v1.2.3
       Fresh ahash v0.3.8
       Fresh regex-syntax v0.6.21
       Fresh vec_map v0.8.2
       Fresh termcolor v1.1.2
       Fresh hashbrown v0.9.1
       Fresh quote v0.3.15
       Fresh beef v0.4.4
       Fresh codemap v0.1.3
       Fresh xmlparser v0.13.3
       Fresh maplit v1.0.2
       Fresh unescape v0.1.0
       Fresh heck v0.3.2
       Fresh futures-task v0.3.8
       Fresh instant v0.1.9
       Fresh futures-channel v0.3.8
       Fresh itertools v0.9.0
       Fresh lock_api v0.4.2
       Fresh peekmore v0.5.6
       Fresh itertools v0.10.0
       Fresh phf_shared v0.8.0
       Fresh thread_local v1.0.1
       Fresh textwrap v0.11.0
       Fresh humantime v1.3.0
       Fresh synom v0.11.3
       Fresh proc-macro2 v1.0.24
       Fresh roxmltree v0.14.0
       Fresh libc v0.2.81
       Fresh memchr v2.3.4
       Fresh proc-macro-hack v0.5.19
       Fresh bitflags v1.2.1
       Fresh proc-macro-nested v0.1.6
       Fresh anyhow v1.0.37
       Fresh log v0.4.11
       Fresh syn v0.11.11
       Fresh byteorder v1.3.4
       Fresh quote v1.0.8
       Fresh getrandom v0.1.16
       Fresh num-traits v0.2.14
       Fresh atty v0.2.14
       Fresh parking_lot_core v0.8.2
       Fresh num_cpus v1.13.0
       Fresh signal-hook-registry v1.3.0
       Fresh aho-corasick v0.7.15
       Fresh inotify-sys v0.1.4
       Fresh simple-signal v1.1.1
       Fresh hashbrown v0.8.2
       Fresh indexmap v1.6.1
       Fresh nix v0.19.1
       Fresh syn v1.0.58
       Fresh proc-macro-error-attr v1.0.4
       Fresh rand_core v0.5.1
       Fresh num-integer v0.1.44
       Fresh mio v0.7.7
       Fresh num-complex v0.3.1
       Fresh debug_stub_derive v0.3.0
       Fresh parking_lot v0.11.1
       Fresh regex v1.4.2
       Fresh clap v2.33.3
       Fresh lasso v0.3.1
       Fresh serde_derive v1.0.118
       Fresh thiserror-impl v1.0.23
       Fresh strum_macros v0.18.0
       Fresh pin-project-internal v1.0.3
       Fresh proc-macro-error v1.0.4
       Fresh futures-macro v0.3.8
       Fresh rand_chacha v0.2.2
       Fresh rand_pcg v0.2.1
       Fresh tokio-macros v1.0.0
       Fresh num-bigint v0.3.1
       Fresh async-stream-impl v0.3.0
       Fresh num-iter v0.1.42
       Fresh derive_more v0.99.11
       Fresh smart-default v0.6.0
       Fresh serde v1.0.118
       Fresh thiserror v1.0.23
       Fresh env_logger v0.7.1
       Fresh pin-project v1.0.3
       Fresh rand v0.7.3
       Fresh tokio v1.0.1
       Fresh num-rational v0.3.2
       Fresh structopt-derive v0.4.14
       Fresh extend v0.3.0
       Fresh async-stream v0.3.0
       Fresh toml v0.5.8
       Fresh futures-util v0.3.8
       Fresh phf_generator v0.8.0
       Fresh bincode v1.3.1
       Fresh pretty_env_logger v0.4.0
       Fresh system-deps v1.3.2
       Fresh proc-macro-crate v0.1.5
       Fresh futures-executor v0.3.8
       Fresh phf_macros v0.8.0
       Fresh tokio-stream v0.1.1
       Fresh num v0.3.1
       Fresh inotify v0.9.2
       Fresh structopt v0.3.21
       Fresh glib-macros v0.10.1
       Fresh futures v0.3.8
       Fresh phf v0.8.0
       Fresh tokio-util v0.6.0
       Fresh glib-sys v0.10.1
       Fresh grass v0.10.4
       Fresh gobject-sys v0.10.0
       Fresh cairo-sys-rs v0.10.0
       Fresh glib v0.10.3
       Fresh gio-sys v0.10.1
       Fresh pango-sys v0.10.0
       Fresh atk-sys v0.10.0
       Fresh gdk-pixbuf-sys v0.10.0
       Fresh gio v0.9.1
       Fresh cairo-rs v0.9.1
       Fresh pango v0.9.1
       Fresh atk v0.9.0
       Fresh gdk-sys v0.10.0
       Fresh gdk-pixbuf v0.9.0
       Fresh gtk-sys v0.10.0
       Fresh gdk v0.13.2
       Fresh gtk v0.9.2
   Compiling eww v0.1.0 (/home/brieucdug/eww)
     Running `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib`
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:1:1
  |
1 | #![feature(trace_macros)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:2:1
  |
2 | #![feature(slice_concat_trait)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:3:1
  |
3 | #![feature(result_cloned)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:4:1
  |
4 | #![feature(iterator_fold_self)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:5:1
  |
5 | #![feature(try_blocks)]
  | ^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:6:1
  |
6 | #![feature(str_split_once)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0277]: arrays only have std trait implementations for lengths 0..=32
   --> src/server.rs:121:49
    |
121 |     let mut event_stream = inotify.event_stream(&mut buffer)?;
    |                                                 ^^^^^^^^^^^ the trait `std::array::LengthAtMost32` is not implemented for `[u8; 1024]`
    |
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `[u8; 1024]`
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `&mut [u8; 1024]`

error[E0599]: no method named `next` found for struct `inotify::stream::EventStream<&mut [u8; 1024]>` in the current scope
   --> src/server.rs:124:40
    |
124 |         Some(Ok(event)) = event_stream.next() => {
    |                                        ^^^^ method not found in `inotify::stream::EventStream<&mut [u8; 1024]>`
    | 
   ::: /home/brieucdug/.cargo/registry/src/github.com-1ecc6299db9ec823/inotify-0.9.2/src/stream.rs:21:1
    |
21  | pub struct EventStream<T> {
    | -------------------------
    | |
    | doesn't satisfy `_: futures_core::stream::Stream`
    | doesn't satisfy `_: futures_util::stream::stream::StreamExt`
    |
    = note: the method `next` exists but the following trait bounds were not satisfied:
            `inotify::stream::EventStream<&mut [u8; 1024]>: futures_core::stream::Stream`
            which is required by `inotify::stream::EventStream<&mut [u8; 1024]>: futures_util::stream::stream::StreamExt`

error[E0599]: no method named `poll` found for struct `std::pin::Pin<&mut _>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<&mut _>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: no method named `poll` found for struct `std::pin::Pin<_>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<_>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 10 previous errors

Some errors have detailed explanations: E0277, E0554, E0599.
For more information about an error, try `rustc --explain E0277`.
error: could not compile `eww`.

Caused by:
  process didn't exit successfully: `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib` (exit code: 1)

What am I missing ?


Edit : these don't resolve my issue

brieucdug@msi:~/eww
 $ cargo update
    Updating crates.io index
    Updating byteorder v1.3.4 -> v1.4.2
    Updating futures v0.3.8 -> v0.3.9
    Updating futures-channel v0.3.8 -> v0.3.9
    Updating futures-core v0.3.8 -> v0.3.9
    Updating futures-executor v0.3.8 -> v0.3.9
    Updating futures-io v0.3.8 -> v0.3.9
    Updating futures-macro v0.3.8 -> v0.3.9
    Updating futures-sink v0.3.8 -> v0.3.9
    Updating futures-task v0.3.8 -> v0.3.9
    Updating futures-util v0.3.8 -> v0.3.9
    Updating libc v0.2.81 -> v0.2.82
    Removing pin-project v1.0.3
    Removing pin-project-internal v1.0.3
    Updating pin-project-lite v0.2.1 -> v0.2.3
    Updating regex v1.4.2 -> v1.4.3
    Updating regex-syntax v0.6.21 -> v0.6.22
    Updating smallvec v1.6.0 -> v1.6.1
    Updating thread_local v1.0.1 -> v1.1.0
brieucdug@msi:~/eww
 $ rustup install nightly
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.51.0-nightly (6184f2395 2021-01-09)
brieucdug@msi:~/eww
 $ rustup override add nightly
info: using existing install for 'nightly-x86_64-unknown-linux-gnu'
info: override toolchain for '/home/brieucdug/eww' set to 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.51.0-nightly (6184f2395 2021-01-09)

Solution

I had 2 cargo installed. One with apt install ; the other one with snap (called with rustup.cargo). cargo --version was wayyyy old, and no way to update it apparently.
In fact, rustup installed with snap (since not available in depots) is ****.
You also have to apt remove rustc

then install rustup properly
https://rustup.rs/

and then

rustup install nightly
rustup default nightly
cargo clean
cargo build --release

@elkowar elkowar added no-actual-bug Issues that where reported as bugs, but turned out not to be bugs in eww and removed bug Something isn't working labels Jul 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-actual-bug Issues that where reported as bugs, but turned out not to be bugs in eww
Projects
None yet
Development

No branches or pull requests

2 participants