uuid-rs / uuid

Generate and parse UUIDs.

Home Page:https://www.crates.io/crates/uuid

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Uuid 0.8.2 no_std with features = "v5" is broken

bootstrap-prime opened this issue · comments

What happened?
A clear and concise description of what the bug is.

Uuid 0.8.2 feature "v5" depends on sha1 which requires std even if std is not selected and default-features = false.

Steps to reproduce the behavior:

  1. Create a no_std project
  2. add dependency
    uuid = { version = "0.8.2", default-features = false, features = ["v5"] }
  3. attempt to compile
  4. Get an error
error[E0463]: can't find crate for `std`
  |
  = note: the `thumbv7em-none-eabihf` target may not support the standard library
  = note: `std` is required by `sha1` because it does not declare `#![no_std]`
  = help: consider building the standard library from source with `cargo build -Zbuild-std`

What were you expecting?
A clear and concise description of what you expected to happen.
The project should compile successfully with no errors.

What's the context?

  • Target (rustc --version)
    rustc 1.60.0-nightly (1bd4fdc94 2022-01-12)
  • Version (e.g. 1.0)
    uuid 0.8.2
    (which depends on sha1 v0.6.1)
  • Cargo features enabled
    cargo-features = ["strip", "per-package-target"]

Anything else?
Other information like relevant issues, external links, etc

The latest main branch does not cause this error.

Hey @bootstrap-prime 👋 It looks like we missed a default-features = false in that version. This is fixed up on main and in the current 1.0.0-alpha.1 release. I'd suggest upgrading to it if possible. We're currently running through a 1.0.0 release now which you'll end up with if you start with 1.0.0-alpha.1.

1.0.0 is now out in the wild and fixes this issue so I'll go ahead and close this one now. Thanks for the report @bootstrap-prime 🙇