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

ureq 2.9.3 compilation fails due to hoot requiring rustc 1.65 #713

Closed
tnull opened this issue Jan 31, 2024 · 4 comments
Closed

ureq 2.9.3 compilation fails due to hoot requiring rustc 1.65 #713

tnull opened this issue Jan 31, 2024 · 4 comments

Comments

@tnull
Copy link

tnull commented Jan 31, 2024

I'm aware that ureq doesn't officially have any MSRV guarantee (#543), but so far we were able to use it with our MSRV of 1.63 easily.

Now ureq introduced the hoot dependency which seems to require let.. else bindings that have only been stabilized with rustc 1.65 (cf. https://doc.rust-lang.org/rust-by-example/flow_control/let_else.html). This breaks builds for us:

error[E0658]: `let...else` statements are unstable
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/chunk.rs:63:9
   |
63 | /         let Some(i) = find_crlf(src) else {
64 | |             return Ok(false);
65 | |         };
   | |__________^
   |
   = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

error[E0658]: `let...else` statements are unstable
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/chunk.rs:85:9
   |
85 | /         let Self::Chunk(left) = self else {
86 | |             unreachable!();
87 | |         };
   | |__________^
   |
   = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

error[E0658]: `let...else` statements are unstable
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/chunk.rs:107:9
    |
107 | /         let Some(i) = find_crlf(src) else {
108 | |             return Ok(false);
109 | |         };
    | |__________^
    |
    = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

error[E0658]: `let...else` statements are unstable
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/out.rs:80:9
   |
80 | /         let Some(i) = self.inc else {
81 | |             return (&[], &mut []);
82 | |         };
   | |__________^
   |
   = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

error[E0658]: `let...else` statements are unstable
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/client/res.rs:185:9
    |
185 | /         let Some(mode) = self.state.recv_body_mode else {
186 | |             return false;
187 | |         };
    | |__________^
    |
    = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

error[E0658]: `let...else` statements are unstable
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hoot-0.1.2/src/server/req.rs:184:9
    |
184 | /         let Some(mode) = self.state.recv_body_mode else {
185 | |             return false;
186 | |         };
    | |__________^
    |
    = note: see issue #87335 <https://github.com/rust-lang/rust/issues/87335> for more information

For more information about this error, try `rustc --explain E0658`.
error: could not compile `hoot` due to 6 previous errors

Since there are other related issues (#712), I'd appreciate if the introduction of the hoot dependency could be reconsidered, and would also suggest to reconsider whether ureq should introduce an official MSRV policy.

@algesten
Copy link
Owner

Thank you! I'm looking into this now. Closing as a dupe of #712

@algesten algesten changed the title ureq 2.9.3 compilation fails due to hoot requiring rustc 1.6.5 ureq 2.9.3 compilation fails due to hoot requiring rustc 1.65 Jan 31, 2024
@algesten
Copy link
Owner

Fixed in 2.9.4

@tnull
Copy link
Author

tnull commented Jan 31, 2024

Fixed in 2.9.4

Thanks for the quick reaction and for introducing an MSRV! I'm still a bit dubious about adding hoot as a dependency though, see #703 (comment)

@algesten
Copy link
Owner

Answered #703 (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

2 participants