rabite0 / hunter

The fastest file manager in the galaxy!
Do What The F*ck You Want To Public License
1.31k stars 64 forks source link

Compilation error: #![feature] may not be used on the stable release channel #15

Closed doronbehar closed 5 years ago

doronbehar commented 5 years ago

I'm trying to compile hunter in evil mode - release 1.0.2 and I'm getting this error:

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

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

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

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

error: aborting due to 4 previous errors

For more information about this error, try `rustc --explain E0554`.

I understand why this error occurs and how I might be able to fix - by using the nightly version of rustc but I was wondering whether you have any plans in not using non-stable features of rustc such as this. I'm using Arch Linux and rust version 1.33.0.

rabite0 commented 5 years ago

The need for vec_remove_item and fnbox is easy to remove. trivial_bounds probably as well, don't know about try_trait, have to test that. It would definitely be nice if hunter worked on stable rust, for sure.

EDIT: Right, so try_trait is used heavily so that ? can be used on Options in functions that return Result and I don't really want to give up on that. Maybe there's a way to get rid of it anyway, everything else is easy to remove, trivial_bounds isn't even used at all.

rabite0 commented 5 years ago

Can't really do anything about this until try_trait is stabilized, so I'm closing this.