FluidFramework
FluidFramework copied to clipboard
Nested datastores - part 2 + disallow aliasing
Description
ADO:7302
Unifying the creation APIs of the runtime and the channel collection. From a functional perspective, this is moving the logic to actually create/fetch datastores from the runtime to the channel collection. The runtime behavior would remain unchanged, as it delegates responsibility to the channel collection it owns.
This change also adds the concept of a level for datastores and disallows aliasing operations as currently they can lead to undefined (or incompatible) behavior.
Upcoming changes in subsequent PRs
- enable aliasing at levels below the runtime
IFluidParentContextandIFluidDataStoreContextshould eventually converge to the same signature- (...)
⯅ @fluid-example/bundle-size-tests: +796 Bytes
| Metric Name | Baseline Size | Compare Size | Size Diff |
|---|---|---|---|
| aqueduct.js | 514.76 KB | 515.15 KB | ⯅ +397 Bytes |
| connectionState.js | 680 Bytes | 680 Bytes | ■ No change |
| containerRuntime.js | 249.2 KB | 249.59 KB | ⯅ +399 Bytes |
| loader.js | 128.17 KB | 128.17 KB | ■ No change |
| map.js | 41.35 KB | 41.35 KB | ■ No change |
| matrix.js | 143.61 KB | 143.61 KB | ■ No change |
| odspDriver.js | 97.49 KB | 97.49 KB | ■ No change |
| odspPrefetchSnapshot.js | 41.91 KB | 41.91 KB | ■ No change |
| sharedString.js | 161.38 KB | 161.38 KB | ■ No change |
| sharedTree.js | 330 KB | 330 KB | ■ No change |
| Total Size | 1.81 MB | 1.81 MB | ⯅ +796 Bytes |
Baseline commit: 7e4c09a449c1c0e4897a9da09c1ab92b572a52f8
Generated by :no_entry_sign: dangerJS against 55c25f0aff07751efa1a203f27e9942363c02629
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!