Skip to content

Upgrade rand to 0.10, rand_distr to 0.6 #21839

Description

@Jefffrey

Is your feature request related to a problem or challenge?

Dependabot has a PR to upgrade rand_distr:

This is currently blocked as it requires rand = "0.10":

However it seems dependabot isn't raising a PR for rand = "0.10" because it removed a feature we use, small_rng.

Describe the solution you'd like

Manually upgrade to rand = "0.10" and rand_dist = "0.6"

rand = { workspace = true, features = ["small_rng"] }
rand_distr = "0.5"

rand = "0.9"

What is involved:

rng.clone().sample_iter(&Alphanumeric).take(len).collect();

rng.fill(&mut values[..]);

  • arrow-rs still depends on rand = "0.9" and we interface with this, so we need to upgrade arrow-rs
    • create_primitive_array comes from arrow-rs

let values = create_primitive_array::<T>(length, 0.0);

Describe alternatives you've considered

No response

Additional context

See changelog for rand:

Activity

  1. added theissue type on Apr 25, 2026
  2. getChan commented on Apr 26, 2026

    @getChan
    Contributor

    I took a pass at this and it looks like the remaining rough edge is arrow-rs still depending on rand 0.9 in places we interact with (for example some bench/test utilities). We can work around that locally, but that feels like the wrong direction.

    I think this will be much cleaner once the relevant arrow-rs pieces are updated to rand 0.10 as well. My preference would be to defer this until then rather than add local compatibility shims/workarounds on the DataFusion side.

  3. Jefffrey commented on Apr 26, 2026

    @Jefffrey
    ContributorAuthor

    It might actually be better to pin those places that depends on arrow-rs to 0.9 while we upgrade the other places, if possible. Otherwise we'd have to do these changes alongside an arrow-rs version bump.

  4. comphead commented on Apr 27, 2026

    @comphead
    Contributor

    Hope this would be easier than upgrade to 0.9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions