Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace ancient lazy_static crate with once_cell or const slices #471

Merged
merged 1 commit into from Jun 13, 2022

Commits on Jun 11, 2022

  1. Replace ancient lazy_static crate with once_cell or const slices

    Piggybacking on the [motivation in winit]: `lazy_static!` is a macro
    whereas `once_cell` achieves the same using generics.  Its
    implementation has also been [proposed for inclusion in `std`], making
    it easier to switch to a standardized version if/when that happens.  The
    author of that winit PR is making this change to many more crates,
    slowly turning the scales in favour of `once_cell` in most dependency
    trees.  Furthermore `lazy_static` hasn't published any updates for 3
    years.
    
    See also [the `once_cell` F.A.Q.].
    
    In addition "constant" `Vec`tor allocations don't need to be wrapped in
    a `lazy_static!` macro call at all but can be replaced with true `const`
    slices (or `const` sized arrays, but those are slightly more tedious to
    construct).
    
    [motivation in winit]: rust-windowing/winit#2313
    [proposed for inclusion in `std`]: rust-lang/rust#74465
    [the `once_cell` F.A.Q.]: https://docs.rs/once_cell/latest/once_cell/#faq
    MarijnS95 committed Jun 11, 2022
    Copy the full SHA
    78f351d View commit details
    Browse the repository at this point in the history