Skip to content

Remove small_rng feature? #1419

@dhardy

Description

@dhardy

Summary

Remove small_rng feature, thus enabling SmallRng by default and in all builds.

Motivation

Less complexity. Removes a trip-hazard for new users: #1225

If I remember correctly, the motivation for feature-gating adding small_rng was to remove a dependency from builds which don't use it. Later, we decided to add std_rng for the same reason (even though ThreadRng requires it).

We now define the two possible implementations of SmallRng in crate (around 250 LoC). If we changed the impl again, we'd very likely continue to do so (it would be unlikely to use more code).

The additional (small) cost is that SmallRng must be compiled in all builds; linking should remove unused code thus not affecting binary size.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions