FluidFramework
FluidFramework copied to clipboard
WIP - Expose API to pick SharedTree persisted format version
Description
Proof of concept of a way in which we could expose the SharedTree persisted format version so users could choose which one to use. Maybe this approach does a bit more work than necessary (exposing configuredSharedTree() as @alpha instead of @internal might be ok, although that exposes more options than just the persisted format version).
Reviewer Guidance
The review process is outlined on this wiki page.
One thing that feels particularly tricky to me is that the single format version gets mapped internally to multiple codec versions for different parts of SharedTree, and not all of them necessarily get exercised at the time we load the container (the one for loading the summary does, for example; but the one for ops might not... unless there are trailing ops; not entirely sure what the others are for). So ensuring a) that we fail when any version mismatch is encountered (under the assumption that we expose the format very conservatively to begin with, in a "only work with this version" way) and b) quick enough so that the container cannot be used at all in case of mismatch, seems potentially complicated and brittle.
Baseline CI build failed, cannot generate bundle analysis at this time
Baseline commit: 72b014857a1531d565282bd3a7887c75193b138e
Generated by :no_entry_sign: dangerJS against 872b463a95e726313970343d230c13f3a6d3c601
🔗 No broken links found! ✅
Your attention to detail is admirable.
linkcheck output
> [email protected] ci:linkcheck /home/runner/work/FluidFramework/FluidFramework/docs
> start-server-and-test ci:start 1313 linkcheck:full
1: starting server using command "npm run ci:start"
and when url "[ 'http://127.0.0.1:1313' ]" is responding with HTTP status code 200
running tests using command "npm run linkcheck:full"
> [email protected] ci:start
> http-server ./public --port 1313 --silent
> [email protected] linkcheck:full
> npm run linkcheck:fast -- --external
> [email protected] linkcheck:fast
> linkcheck http://localhost:1313 --skip-file skipped-urls.txt --external
Crawling...
Stats:
378023 links
2980 destination URLs
2 URLs ignored
0 warnings
0 errors
This PR has been automatically marked as stale because it has had no activity for 60 days. It will be closed if no further activity occurs within 8 days of this comment. Thank you for your contributions to Fluid Framework!