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

Pear requires a nightly or dev version of Rust #23

Closed
publicocean0 opened this issue Mar 15, 2020 · 9 comments
Closed

Pear requires a nightly or dev version of Rust #23

publicocean0 opened this issue Mar 15, 2020 · 9 comments

Comments

@publicocean0
Copy link

Compiling rocket v0.4.4
Compiling indexmap v1.3.2
Compiling ring v0.13.5
error: failed to run custom build command for pear_codegen v0.1.2

Caused by:
process didn't exit successfully: /mnt/c/data/develop/rust/rust2/target/debug/build/pear_codegen-fc224e597d476dfc/build-script-build (exit code: 101)
--- stderr
Error: Pear requires a nightly or dev version of Rust.
Installed version is: 1.42.0 (2020-03-09). Minimum required: 1.31.0-nightly (2018-10-05).
thread 'main' panicked at 'Aborting compilation due to incompatible compiler.', /home/d77154/.cargo/registry/src/github.51.al-1ecc6299db9ec823/pear_codegen-0.1.2/build.rs:31:13
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

warning: build failed, waiting for other jobs to finish...
error: build failed

@abedra
Copy link

abedra commented Mar 18, 2020

👍 on this. If there's still a nightly build requirement the message should be updated to match a newer nightly. If we are past that because of language maturity it would be nice to not have to use nightly.

@SergioBenitez
Copy link
Owner

The message indicates the nightly required by pear, not rocket. The message continues to be correct for the time being and will disappear in a later release of pear that doesn't require nightly.

@jonmz
Copy link

jonmz commented Jul 10, 2020

Out of curiousity, could you probably clarify why a dev or nightly build is needed? I am stumbling upon the same problem using Rust 1.43.1 from 2020-05-04. What feature needed by Pear would be available in a nightly build from 2018 (and are still available in current nightly builds), but not in a current released version?

@rogusdev
Copy link

Why is this closed? The issue trivially obviously merits an explanation when 1.31 is required and 1.42 won't satisfy, nightly or no. What needs to be changed to support this without a nightly flag?

@jebrosen
Copy link
Contributor

What feature needed by Pear would be available in a nightly build from 2018 (and are still available in current nightly builds), but not in a current released version?

pear uses the specialization feature, which is still unstable since several years now. Given the pace of the specialization feature, I expect pear will be modified to not need specialization before specialization is actually stabilized.

The issue trivially obviously merits an explanation when 1.31 is required and 1.42 won't satisfy, nightly or no.

This is not the case; any nightly since 2018-10-05 should work (excepting any individual buggy nightly builds). If the latest nightly doesn't work and it's not a regression in rustc, that should be reported as a separate issue.

@rogusdev
Copy link

So there are features in nightly that are not in stable despite the version increases?

@jebrosen
Copy link
Contributor

Yes. Unstable language features are opt-in with the #![feature] attribute, which is only available in nightly builds. Once a feature is stabilized, which could take months or even years of work, the corresponding #![feature] attribute is unnecessary and the feature will be usable in the next Rust beta (up to 6 weeks later) and in the stable channel 6 weeks after that.

@rayrrr
Copy link

rayrrr commented Jul 16, 2020

See rust-lang/rust#31844 and https://internals.rust-lang.org/t/idea-where-match-clauses/12309 for the latest details of the specialization situation.

@rayrrr
Copy link

rayrrr commented Jul 18, 2020

Update: looks like #27 actually takes care of these issues. All that's needed is a release. See rwf2/Rocket#19 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants