google / google/zerocopy

Unsafe Rust skill: Be more strict about exhaustive Rust version enumeration

Open Beginner friendly
#3,643 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

Currently, the unsafe Rust skill permits exhaustive enumeration of non-semver-stable guarantees – for example, "while it's not guaranteed, this API behaves like this on versions 1.56 and 1.57, and this code is explicitly gated and only compiles on those two versions".

We should be *slightly* more precise about this: If this sort of guard isn't a *list* of versions but rather a version *range* (as zerocopy uses), then this is technically unsound because there's nothing stopping Rust from later releasing a point release (e.g., 1.56.1) which breaks the assumption.

Contributor guide

Open the contributing guide

Research direction

Locate the unsafe Rust skill guidance and read its current wording and examples about exhaustive Rust version enumeration. Clarify that explicit version lists differ from version ranges, using the 1.56.1 point-release concern as the acceptance case; the issue names no file or test, so verify the updated guidance through the repository's relevant documentation checks.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation, security
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
64/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.