cucumber-rs / cucumber

Cucumber testing framework for Rust. Fully native, no external test runners or dependencies.
https://cucumber-rs.github.io/cucumber/main
Apache License 2.0
564 stars 69 forks source link

Unable to compile on stable rust release channel #247

Closed ikkerens closed 1 year ago

ikkerens commented 1 year ago

Recently I've started running into the issue causing me to be unable to compile this library for my tests, with the following error:

error[E0554]: `#![feature]` may not be used on the stable release channel
  --> /Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/io-lifetimes-0.7.5/src/lib.rs:31:26
   |
31 | #![cfg_attr(rustc_attrs, feature(rustc_attrs))]
   |                          ^^^^^^^^^^^^^^^^^^^^

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

Looking into this particular dependency, cucumber-rs seems to be the only dependant:

$ cargo tree -i io-lifetimes@0.7.5
io-lifetimes v0.7.5
└── rustix v0.35.13
    └── terminal_size v0.2.2
        └── clap v4.0.27
            └── cucumber v0.17.0
                └── project v0.1.0 (/Users/user/project/integration_test)

This issue has occured since at least cucumber-rs 0.15, I have not tested with even earlier releases. I am running the latest rust, as of writing: stable-aarch64-apple-darwin unchanged - rustc 1.65.0 (897e37553 2022-11-02)

Your assistance and/or a resolution would be appreciated.

ilslv commented 1 year ago

@ikkerens have you tried running cargo clean and recompiling?

ikkerens commented 1 year ago

Huh, did not expect that'd work since I am was running it on a different device as well, but it did.

cargo clean seems to have resolved the issue, thanks!