Skip to content

Introduce doc(hidden) derive(Project) - #3492

Merged
jswrenn merged 1 commit into
mainfrom
Gcc56a15ce65387a017464947e8c2f25dc9e8c737
Sep 10, 2026
Merged

Introduce doc(hidden) derive(Project)#3492
jswrenn merged 1 commit into
mainfrom
Gcc56a15ce65387a017464947e8c2f25dc9e8c737

Conversation

@jswrenn

@jswrenn jswrenn commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

This factors out the derive(TryFromBytes) into project.rs, and
exposes this machinery as a doc-hidden derive(Project). The
implementation of is_bit_valid on enums is now fully safe, and a
soundness issue of mutable enum tag projection is resolved by
permitting only immutable tag projection.


Latest Update: v16 — Compare vs v15

📚 Full Patch History

Links show the diff between the row version and the column version.

Version v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v8 v7 v6 v5 v4 v3 v2 v1 Base
v7 v6 v5 v4 v3 v2 v1 Base
v6 v5 v4 v3 v2 v1 Base
v5 v4 v3 v2 v1 Base
v4 v3 v2 v1 Base
v3 v2 v1 Base
v2 v1 Base
v1 Base
⬇️ Download this PR

Branch

git fetch origin refs/heads/Gcc56a15ce65387a017464947e8c2f25dc9e8c737 && git checkout -b pr-Gcc56a15ce65387a017464947e8c2f25dc9e8c737 FETCH_HEAD

Checkout

git fetch origin refs/heads/Gcc56a15ce65387a017464947e8c2f25dc9e8c737 && git checkout FETCH_HEAD

Cherry Pick

git fetch origin refs/heads/Gcc56a15ce65387a017464947e8c2f25dc9e8c737 && git cherry-pick FETCH_HEAD

Pull

git pull origin refs/heads/Gcc56a15ce65387a017464947e8c2f25dc9e8c737

Stacked PRs enabled by GHerrit.

@codecov-commenter

codecov-commenter commented Jul 21, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.82%. Comparing base (b9e3697) to head (b7a0e7d).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3492      +/-   ##
==========================================
- Coverage   91.90%   91.82%   -0.09%     
==========================================
  Files          20       20              
  Lines        6130     6150      +20     
==========================================
+ Hits         5634     5647      +13     
- Misses        496      503       +7     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 35b52b5 to ba8ac3a Compare August 18, 2026 20:27
Comment thread zerocopy/src/lib.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch 5 times, most recently from f14a0cc to f2265d4 Compare August 27, 2026 21:19
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch 2 times, most recently from df8080c to d32515a Compare August 28, 2026 14:19
@jswrenn jswrenn changed the title [wip] Introduce derive(Project) Introduce doc(hidden) derive(Project) Aug 28, 2026
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch 2 times, most recently from 3501462 to 19a6a1b Compare August 28, 2026 15:31
@jswrenn
jswrenn force-pushed the Gd2bc8560585e8f472223acf71b96e0f71b2d00c2 branch from 644b98b to a175cac Compare August 28, 2026 15:31
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs
Comment thread zerocopy/zerocopy-derive/src/derive/project.rs Outdated
@jswrenn
jswrenn requested a review from joshlf September 1, 2026 16:02
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 19a6a1b to 0484aa3 Compare September 9, 2026 15:29
@jswrenn
jswrenn force-pushed the Gd2bc8560585e8f472223acf71b96e0f71b2d00c2 branch 2 times, most recently from b7230a3 to 5d9811e Compare September 9, 2026 20:42
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 0484aa3 to 2b3ab46 Compare September 9, 2026 21:16
@jswrenn
jswrenn force-pushed the Gd2bc8560585e8f472223acf71b96e0f71b2d00c2 branch from 5d9811e to ea4e7c3 Compare September 9, 2026 21:16
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 2b3ab46 to 3a44dbe Compare September 9, 2026 21:45
@jswrenn
jswrenn force-pushed the Gd2bc8560585e8f472223acf71b96e0f71b2d00c2 branch from ea4e7c3 to 1101194 Compare September 9, 2026 21:45
Base automatically changed from Gd2bc8560585e8f472223acf71b96e0f71b2d00c2 to main September 10, 2026 16:03
@joshlf
joshlf force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 3a44dbe to 5239e82 Compare September 10, 2026 16:10
This factors out the `derive(TryFromBytes)` into `project.rs`, and
exposes this machinery as a doc-hidden `derive(Project)`. The
implementation of `is_bit_valid` on enums is now fully safe, and a
soundness issue of mutable enum tag projection is resolved by
permitting only immutable tag projection.

gherrit-pr-id: Gcc56a15ce65387a017464947e8c2f25dc9e8c737
@jswrenn
jswrenn force-pushed the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch from 5239e82 to b7a0e7d Compare September 10, 2026 18:35
@jswrenn
jswrenn added this pull request to the merge queue Sep 10, 2026
Merged via the queue into main with commit ebfc77e Sep 10, 2026
111 checks passed
@jswrenn
jswrenn deleted the Gcc56a15ce65387a017464947e8c2f25dc9e8c737 branch September 10, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants