feather-rs / feather

A Minecraft server implementation in Rust
Apache License 2.0
2.58k stars 143 forks source link

Change vanilla JAR download timeout and add warnings #474

Closed Iaiao closed 2 years ago

Iaiao commented 2 years ago

Change vanilla JAR download timeout and add warnings

Status

Description

Changed vanilla JAR download timeout, made it const Added warnings when the network is very slow (with 2, 4, 6, ... minutes timeout). No one will see this because we don't have a logging frontend in feather-datapacks build script. Also, in build scripts, the stdout is only saved to target/debug/build/feather-datapacks-{hash}/output and not displayed on cargo build's stdout (except for cargo build -vv, which shows too much output to find the warning)

Related issues

473

Checklist

Note: if you locally don't get any errors, but GitHub Actions fails (especially at clippy) you might want to check your rust toolchain version. You can then feel free to fix these warnings/errors in your PR.

Defman commented 2 years ago

Suggestion to switch to reqwest, which have better support for getting chunks. Then advancing the timer on every chunk instead of separate thread.

Iaiao commented 2 years ago

reqwest doesn't have chunks in reqwest::blocking, and I'm not sure it's ok to do something like tokio::spawn_blocking just for a simple warning. Also, the warning is for users with bad internet connection, so they may not receive chunks or receive them with a delay, but the warning should not be delayed because of these problems.