xtra icon indicating copy to clipboard operation
xtra copied to clipboard

chores: Bump smol version to 2.0

Open Altair-Bueno opened this issue 1 year ago • 12 comments

This should fix #220. The changes include removing smol-potat in favor of smol::block_on. However, this commit does not remove nor update smol-timeout as it is heavily used on tests and the crate seems to be unmaintained. Nonetheless tests keep working.

Altair-Bueno avatar Feb 15 '24 08:02 Altair-Bueno

Hey, thanks for the PR! Really sorry for getting back to this so late, studies have been all-consuming this year. I wonder if we would want to keep smol 1.0 support under a different feature (e.g. smol-1)?

Restioson avatar Nov 07 '24 19:11 Restioson

Hey, thanks for the PR! Really sorry for getting back to this so late, studies have been all-consuming this year. I wonder if we would want to keep smol 1.0 support under a different feature (e.g. smol-1)?

As long as there is a release with smol-1 support, I wouldn't bother too much :)

thomaseizinger avatar Nov 07 '24 22:11 thomaseizinger

That's fair, since I suppose we haven't really made any other changes

Restioson avatar Nov 08 '24 07:11 Restioson

So, almost a year later, I noticed this PR was still open and that I missed your review. Sorry for that. I ran cargo fmt --all so that the style is ok.

Altair-Bueno avatar Jul 27 '25 08:07 Altair-Bueno

Apologies - this dropped off my radar too!

Restioson avatar Jul 27 '25 09:07 Restioson

Hmm, looks like a build failure - I think smol relies on async_task?

Restioson avatar Jul 27 '25 09:07 Restioson

I think it had something to do with Cargo.lock being modified in both branches so it was stuck in an invalid state. I recreated the lock file with the latest dependencies.

I would advise removing the lockfile, as it mostly does nothing for libraries, and switch to something like https://crates.io/crates/cargo-minimal-versions to validate the minimum requirements.

Altair-Bueno avatar Jul 27 '25 11:07 Altair-Bueno

I would advise removing the lockfile, as it mostly does nothing for libraries, and switch to something like https://crates.io/crates/cargo-minimal-versions to validate the minimum requirements.

Having the lockfile ensures deterministic CI runs, which is important in the presence of e.g. semver-incompatible bumps etc

It is also the official recommendation from the Rust folks: https://blog.rust-lang.org/2023/08/29/committing-lockfiles/

thomaseizinger avatar Jul 27 '25 12:07 thomaseizinger

The diff on the lockfile seems a bit excessive to me. Can you checkout the one from main and redo the bump to make that smaller? Thanks!

thomaseizinger avatar Jul 27 '25 12:07 thomaseizinger

It is also the official recommendation from the Rust folks

Oh, I guess I was using the old guidelines. Thanks for sharing.

The diff on the lockfile seems a bit excessive to me. Can you checkout the one from main and redo the bump to make that smaller? Thanks!

Done. I had to use Rust 1.75 as 1.88 was failing for wasm_bindgen with the following error:

error: older versions of the `wasm-bindgen` crate are incompatible with current versions of Rust; please update to `wasm-bindgen` v0.2.88

Altair-Bueno avatar Jul 27 '25 12:07 Altair-Bueno

LGTM, happy for you to merge @thomaseizinger when you're happy

Restioson avatar Jul 27 '25 21:07 Restioson

Is the CI error reproducable locally?

thomaseizinger avatar Jul 27 '25 21:07 thomaseizinger