google / google/zerocopy

List of TODOs blocked on MSRV

Open
#67 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2.6k
Forks
179
Avg merge
1d 19h
Merged PRs (30d)
29

Description

This issue is a repository of TODOs which are blocked on updating to a particular MSRV. In addition to those listed here, also see `TODO(#67)` comments in the source code.

- In `FromZeroes::new_box_slice_zeroed`, remove defensive programming which currently works around a bug in `Layout::from_size_align`
- Make `MaybeValid::as_slice` (pending in [#279](https://github.com/google/zerocopy/pull/279)) `const` once our MSRV is >= 1.64.0, when [`slice_from_raw_parts`](https://doc.rust-lang.org/std/ptr/fn.slice_from_raw_parts.html) was stabilized as `const`
- Some instances of `#[allow(clippy::as_conversions)]` (pending in the current draft of [#196](https://github.com/google/zerocopy/issues/196)) are spurious, and more recent versions of Clippy don't fire in those locations.
- Some `unsafe` blocks in macros are marked with `#[allow(clippy::undocumented_unsafe_blocks)]`; more recent versions of Clippy don't fire in those locations.
- Once our MSRV is 1.64, we can use [this feature](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-package-table) to mimic [this setting](https://github.com/rust-marker/marker/blob/cbe526c2cf0f59e5bfbe3906a9bdef1508690267/marker_uitest/Cargo.toml#L6-L11) in zerocopy-derive's Cargo.toml in order to cut down on duplication between it and zerocopy's Cargo.toml. This should also allow us to remove some of the CI logic that verifies that metadata in both files matches, since this will be true automatically.
- Make any functions that use these `const`: https://github.com/rust-lang/rust/pull/116218
- Use [`ptr::from_ref`](https://doc.rust-lang.org/std/ptr/fn.from_ref.html) and [`ptr::from_mut`](https://doc.rust-lang.org/std/ptr/fn.from_mut.html)
- [Use `&mut` references in a const context](https://github.com/rust-lang/rust/issues/57349)
- 1.81: Replace `#[allow(...)]` with `#[expect(...)]` where appropriate

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.