Skip to content

rkyv-08 feature#1619

Closed
Awpteamoose wants to merge 2 commits intochronotope:mainfrom
Awpteamoose:rkyv-08
Closed

rkyv-08 feature#1619
Awpteamoose wants to merge 2 commits intochronotope:mainfrom
Awpteamoose:rkyv-08

Conversation

@Awpteamoose
Copy link
Copy Markdown
Contributor

Supersedes #1614

Not sure what to do about CI as currently the features are incompatible with rkyv 0.7, but I could use fully qualified paths for rkyv_08::Archive etc and then it should be ok?

Alternatively, could do smth like

// lib.rs
#[cfg(any(feature = "rkyv", feature = "rkyv-16", feature = "rkyv-32", feature = "rkyv-64"))]
pub(crate) use rkyv_07 as rkyv;

#[cfg(any(feature = "rkyv-08", feature = "rkyv-08-16", feature = "rkyv-08-32", feature = "rkyv-08-64"))]
pub(crate) use rkyv_08 as rkyv;

// elsewhere
use crate::rkyv::{Archive, Serialize, Deserialize};

@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 10, 2024

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.11%. Comparing base (05a6ce6) to head (4f21757).
⚠️ Report is 99 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1619      +/-   ##
==========================================
- Coverage   91.12%   91.11%   -0.01%     
==========================================
  Files          37       37              
  Lines       17123    17123              
==========================================
- Hits        15603    15602       -1     
- Misses       1520     1521       +1     

☔ View full report in Codecov by Sentry.
📢 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.

@djc
Copy link
Copy Markdown
Member

djc commented Oct 10, 2024

Not sure what to do about CI as currently the features are incompatible with rkyv 0.7, but I could use fully qualified paths for rkyv_08::Archive etc and then it should be ok?

How do you propose to handle additivity in the case there both rkyv 0.7 and 0.8 features are enabled?

@Awpteamoose
Copy link
Copy Markdown
Contributor Author

Awpteamoose commented Oct 11, 2024

How do you propose to handle additivity in the case there both rkyv 0.7 and 0.8 features are enabled?

I've thought about it a bit and I think it's doable - I don't actually need a separate set of pointer size features, but to be properly additive - the rkyv 0.8 ArchivedT types that get generated will have to all be renamed to smth like Archived08T, which doesn't really matter since you'd usually access them as rkyv::Archived<T> anyway. I will also have to use fully-qualified paths for rkyv everywhere.

I'll do this later today if I have time.

@djc djc mentioned this pull request Apr 14, 2025
@djc
Copy link
Copy Markdown
Member

djc commented Feb 7, 2026

@djc djc closed this Feb 7, 2026
@vincent-sparks
Copy link
Copy Markdown

The recommended replacement for this crate (jiff) does not support rkyv at all.

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