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 once_cell with std lib's implementation #8303

Closed
james7132 opened this issue Apr 5, 2023 · 2 comments · Fixed by #10079
Closed

Replace once_cell with std lib's implementation #8303

james7132 opened this issue Apr 5, 2023 · 2 comments · Fixed by #10079
Labels
C-Dependencies A change to the crates that Bevy depends on

Comments

@james7132
Copy link
Member

james7132 commented Apr 5, 2023

OnceCell is set to be partially stabilized in Rust 1.70. (rust-lang/rust#105587).

If it releases as a part of Rust 1.70, it may be possible to replace the once_cell dependency within Bevy's crates with the stdlib's implementation.

@james7132 james7132 added the C-Dependencies A change to the crates that Bevy depends on label Apr 5, 2023
@hymm
Copy link
Contributor

hymm commented Jun 1, 2023

this was at least partially completed with #8739

@mockersf
Copy link
Member

mockersf commented Jun 1, 2023

Remaining are Lazy (rust-lang/rust#109736) and OnceBox that are not stabilised yet

github-merge-queue bot pushed a commit that referenced this issue Oct 12, 2023
# Objective

- Fixes #8303

## Solution

- Replaced 1 instance of `OnceBox<T>` with `OnceLock<T>` in
`NonGenericTypeCell`

## Notes

All changes are in the private side of Bevy, and appear to have no
observable change in performance or compilation time. This is purely to
reduce the quantity of direct dependencies in Bevy.
regnarock pushed a commit to regnarock/bevy that referenced this issue Oct 13, 2023
# Objective

- Fixes bevyengine#8303

## Solution

- Replaced 1 instance of `OnceBox<T>` with `OnceLock<T>` in
`NonGenericTypeCell`

## Notes

All changes are in the private side of Bevy, and appear to have no
observable change in performance or compilation time. This is purely to
reduce the quantity of direct dependencies in Bevy.
ameknite pushed a commit to ameknite/bevy that referenced this issue Nov 6, 2023
# Objective

- Fixes bevyengine#8303

## Solution

- Replaced 1 instance of `OnceBox<T>` with `OnceLock<T>` in
`NonGenericTypeCell`

## Notes

All changes are in the private side of Bevy, and appear to have no
observable change in performance or compilation time. This is purely to
reduce the quantity of direct dependencies in Bevy.
rdrpenguin04 pushed a commit to rdrpenguin04/bevy that referenced this issue Jan 9, 2024
# Objective

- Fixes bevyengine#8303

## Solution

- Replaced 1 instance of `OnceBox<T>` with `OnceLock<T>` in
`NonGenericTypeCell`

## Notes

All changes are in the private side of Bevy, and appear to have no
observable change in performance or compilation time. This is purely to
reduce the quantity of direct dependencies in Bevy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-Dependencies A change to the crates that Bevy depends on
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants