@fluidframework/container-runtime 2.70.0-361092 → 2.70.0-361788
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/container-runtime.test-files.tar +0 -0
- package/dist/blobManager/blobManager.d.ts.map +1 -1
- package/dist/blobManager/blobManager.js +0 -1
- package/dist/blobManager/blobManager.js.map +1 -1
- package/dist/containerRuntime.d.ts +15 -5
- package/dist/containerRuntime.d.ts.map +1 -1
- package/dist/containerRuntime.js +42 -9
- package/dist/containerRuntime.js.map +1 -1
- package/dist/dataStoreContext.d.ts.map +1 -1
- package/dist/dataStoreContext.js +1 -1
- package/dist/dataStoreContext.js.map +1 -1
- package/dist/messageTypes.d.ts +1 -1
- package/dist/messageTypes.js +1 -1
- package/dist/messageTypes.js.map +1 -1
- package/dist/opLifecycle/duplicateBatchDetector.d.ts +2 -2
- package/dist/opLifecycle/duplicateBatchDetector.js +2 -2
- package/dist/opLifecycle/duplicateBatchDetector.js.map +1 -1
- package/dist/opLifecycle/opGroupingManager.d.ts +2 -2
- package/dist/opLifecycle/opGroupingManager.d.ts.map +1 -1
- package/dist/opLifecycle/opGroupingManager.js +5 -3
- package/dist/opLifecycle/opGroupingManager.js.map +1 -1
- package/dist/opLifecycle/opSerialization.d.ts +2 -2
- package/dist/opLifecycle/opSerialization.js +2 -2
- package/dist/opLifecycle/opSerialization.js.map +1 -1
- package/dist/opLifecycle/opSplitter.d.ts +1 -1
- package/dist/opLifecycle/opSplitter.js +1 -1
- package/dist/opLifecycle/opSplitter.js.map +1 -1
- package/dist/opLifecycle/outbox.d.ts +2 -2
- package/dist/opLifecycle/outbox.d.ts.map +1 -1
- package/dist/opLifecycle/outbox.js +9 -2
- package/dist/opLifecycle/outbox.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/pendingStateManager.d.ts +1 -1
- package/dist/pendingStateManager.js +1 -1
- package/dist/pendingStateManager.js.map +1 -1
- package/dist/runtimeLayerCompatState.d.ts +4 -3
- package/dist/runtimeLayerCompatState.d.ts.map +1 -1
- package/dist/runtimeLayerCompatState.js +4 -35
- package/dist/runtimeLayerCompatState.js.map +1 -1
- package/dist/storageServiceWithAttachBlobs.d.ts +0 -36
- package/dist/storageServiceWithAttachBlobs.d.ts.map +1 -1
- package/dist/storageServiceWithAttachBlobs.js +0 -55
- package/dist/storageServiceWithAttachBlobs.js.map +1 -1
- package/dist/summary/documentSchema.d.ts +1 -1
- package/dist/summary/documentSchema.js +1 -1
- package/dist/summary/documentSchema.js.map +1 -1
- package/dist/summary/summaryFormat.d.ts +6 -6
- package/dist/summary/summaryFormat.js.map +1 -1
- package/lib/blobManager/blobManager.d.ts.map +1 -1
- package/lib/blobManager/blobManager.js +0 -1
- package/lib/blobManager/blobManager.js.map +1 -1
- package/lib/containerRuntime.d.ts +15 -5
- package/lib/containerRuntime.d.ts.map +1 -1
- package/lib/containerRuntime.js +42 -9
- package/lib/containerRuntime.js.map +1 -1
- package/lib/dataStoreContext.d.ts.map +1 -1
- package/lib/dataStoreContext.js +1 -1
- package/lib/dataStoreContext.js.map +1 -1
- package/lib/messageTypes.d.ts +1 -1
- package/lib/messageTypes.js +1 -1
- package/lib/messageTypes.js.map +1 -1
- package/lib/opLifecycle/duplicateBatchDetector.d.ts +2 -2
- package/lib/opLifecycle/duplicateBatchDetector.js +2 -2
- package/lib/opLifecycle/duplicateBatchDetector.js.map +1 -1
- package/lib/opLifecycle/opGroupingManager.d.ts +2 -2
- package/lib/opLifecycle/opGroupingManager.d.ts.map +1 -1
- package/lib/opLifecycle/opGroupingManager.js +5 -3
- package/lib/opLifecycle/opGroupingManager.js.map +1 -1
- package/lib/opLifecycle/opSerialization.d.ts +2 -2
- package/lib/opLifecycle/opSerialization.js +2 -2
- package/lib/opLifecycle/opSerialization.js.map +1 -1
- package/lib/opLifecycle/opSplitter.d.ts +1 -1
- package/lib/opLifecycle/opSplitter.js +1 -1
- package/lib/opLifecycle/opSplitter.js.map +1 -1
- package/lib/opLifecycle/outbox.d.ts +2 -2
- package/lib/opLifecycle/outbox.d.ts.map +1 -1
- package/lib/opLifecycle/outbox.js +9 -2
- package/lib/opLifecycle/outbox.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/pendingStateManager.d.ts +1 -1
- package/lib/pendingStateManager.js +1 -1
- package/lib/pendingStateManager.js.map +1 -1
- package/lib/runtimeLayerCompatState.d.ts +4 -3
- package/lib/runtimeLayerCompatState.d.ts.map +1 -1
- package/lib/runtimeLayerCompatState.js +5 -36
- package/lib/runtimeLayerCompatState.js.map +1 -1
- package/lib/storageServiceWithAttachBlobs.d.ts +0 -36
- package/lib/storageServiceWithAttachBlobs.d.ts.map +1 -1
- package/lib/storageServiceWithAttachBlobs.js +0 -55
- package/lib/storageServiceWithAttachBlobs.js.map +1 -1
- package/lib/summary/documentSchema.d.ts +1 -1
- package/lib/summary/documentSchema.js +1 -1
- package/lib/summary/documentSchema.js.map +1 -1
- package/lib/summary/summaryFormat.d.ts +6 -6
- package/lib/summary/summaryFormat.js.map +1 -1
- package/package.json +20 -17
- package/src/blobManager/blobManager.ts +0 -1
- package/src/containerRuntime.ts +52 -13
- package/src/dataStoreContext.ts +1 -0
- package/src/messageTypes.ts +1 -1
- package/src/opLifecycle/duplicateBatchDetector.ts +2 -2
- package/src/opLifecycle/opGroupingManager.ts +7 -4
- package/src/opLifecycle/opSerialization.ts +2 -2
- package/src/opLifecycle/opSplitter.ts +1 -1
- package/src/opLifecycle/outbox.ts +12 -2
- package/src/packageVersion.ts +1 -1
- package/src/pendingStateManager.ts +1 -1
- package/src/runtimeLayerCompatState.ts +23 -39
- package/src/storageServiceWithAttachBlobs.ts +0 -92
- package/src/summary/documentSchema.ts +1 -1
- package/src/summary/summaryFormat.ts +6 -6
|
@@ -72,7 +72,7 @@ export class OpGroupingManager {
|
|
|
72
72
|
* This is needed as a placeholder if a batch becomes empty on resubmit, but we are tracking batch IDs.
|
|
73
73
|
* @param resubmittingBatchId - batch ID of the resubmitting batch
|
|
74
74
|
* @param referenceSequenceNumber - reference sequence number
|
|
75
|
-
* @returns
|
|
75
|
+
* @returns The outbound batch as well as the interior placeholder message
|
|
76
76
|
*/
|
|
77
77
|
public createEmptyGroupedBatch(
|
|
78
78
|
resubmittingBatchId: string,
|
|
@@ -112,7 +112,7 @@ export class OpGroupingManager {
|
|
|
112
112
|
*
|
|
113
113
|
* If the batch already has only 1 message, it is returned as-is.
|
|
114
114
|
*
|
|
115
|
-
* @remarks
|
|
115
|
+
* @remarks Remember that a BatchMessage has its content JSON serialized, so the incoming batch message contents
|
|
116
116
|
* must be parsed first, and then the type and contents mentioned above are hidden in that JSON serialization.
|
|
117
117
|
*/
|
|
118
118
|
public groupBatch(batch: OutboundBatch): OutboundSingletonBatch {
|
|
@@ -132,7 +132,7 @@ export class OpGroupingManager {
|
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
134
|
// We expect this will be on the first message, if present at all.
|
|
135
|
-
let groupedBatchId;
|
|
135
|
+
let groupedBatchId: unknown;
|
|
136
136
|
for (const message of batch.messages) {
|
|
137
137
|
if (message.metadata !== undefined) {
|
|
138
138
|
const { batch: _batch, batchId, ...rest } = message.metadata;
|
|
@@ -146,7 +146,10 @@ export class OpGroupingManager {
|
|
|
146
146
|
const serializedContent = JSON.stringify({
|
|
147
147
|
type: OpGroupingManager.groupedBatchOp,
|
|
148
148
|
contents: batch.messages.map<IGroupedMessage>((message) => ({
|
|
149
|
-
contents:
|
|
149
|
+
contents:
|
|
150
|
+
message.contents === undefined
|
|
151
|
+
? undefined
|
|
152
|
+
: (JSON.parse(message.contents) as unknown),
|
|
150
153
|
metadata: message.metadata,
|
|
151
154
|
compression: message.compression,
|
|
152
155
|
})),
|
|
@@ -18,7 +18,7 @@ import type { EmptyGroupedBatch } from "./opGroupingManager.js";
|
|
|
18
18
|
* Takes an incoming runtime message (outer type "op"), JSON.parses the message's contents in place,
|
|
19
19
|
* if needed (old Loader does this for us).
|
|
20
20
|
* Only to be used for runtime messages. The contents here would be the virtualized payload for a batch of ops.
|
|
21
|
-
* @remarks
|
|
21
|
+
* @remarks Serialization during submit happens via {@link serializeOp}
|
|
22
22
|
* @param mutableMessage - op message received
|
|
23
23
|
*/
|
|
24
24
|
export function ensureContentsDeserialized(mutableMessage: ISequencedDocumentMessage): void {
|
|
@@ -31,7 +31,7 @@ export function ensureContentsDeserialized(mutableMessage: ISequencedDocumentMes
|
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
33
|
* Before submitting an op to the Outbox, its contents must be serialized using this function.
|
|
34
|
-
* @remarks
|
|
34
|
+
* @remarks The deserialization on process happens via the function {@link ensureContentsDeserialized}.
|
|
35
35
|
*
|
|
36
36
|
* @param toSerialize - op message to serialize. Also supports an array of ops.
|
|
37
37
|
*/
|
|
@@ -118,7 +118,7 @@ export class OpSplitter {
|
|
|
118
118
|
* To illustrate the current functionality, if the input is `[largeOp]`, `largeOp` will be split into `[chunk1, chunk2, chunk3, chunk4]`.
|
|
119
119
|
* `chunk1`, `chunk2` and `chunk3` will be sent individually and `[chunk4]` will be returned.
|
|
120
120
|
*
|
|
121
|
-
* @remarks
|
|
121
|
+
* @remarks A side effect here is that 1 or more chunks are queued immediately for sending in next JS turn.
|
|
122
122
|
*
|
|
123
123
|
* @privateRemarks
|
|
124
124
|
* This maintains support for splitting a compressed batch with multiple messages (empty placeholders after the first),
|
|
@@ -252,7 +252,7 @@ export class Outbox {
|
|
|
252
252
|
* message as the first message. If flushing partial batch is not enabled, we will throw (except for reentrant ops).
|
|
253
253
|
* This would indicate we expected this case to be precluded by logic elsewhere.
|
|
254
254
|
*
|
|
255
|
-
* @remarks
|
|
255
|
+
* @remarks To detect batch interruption, we compare both the reference sequence number
|
|
256
256
|
* (i.e. last message processed by DeltaManager) and the client sequence number of the
|
|
257
257
|
* last message processed by the ContainerRuntime. In the absence of op reentrancy, this
|
|
258
258
|
* pair will remain stable during a single JS turn during which the batch is being built up.
|
|
@@ -365,6 +365,16 @@ export class Outbox {
|
|
|
365
365
|
* @param resubmitInfo - Key information when flushing a resubmitted batch. Undefined means this is not resubmit.
|
|
366
366
|
*/
|
|
367
367
|
public flush(resubmitInfo?: BatchResubmitInfo): void {
|
|
368
|
+
// We have nothing to flush if all batchManagers are empty, and we we're not needing to resubmit an empty batch placeholder
|
|
369
|
+
if (
|
|
370
|
+
this.idAllocationBatch.empty &&
|
|
371
|
+
this.blobAttachBatch.empty &&
|
|
372
|
+
this.mainBatch.empty &&
|
|
373
|
+
resubmitInfo?.batchId === undefined
|
|
374
|
+
) {
|
|
375
|
+
return;
|
|
376
|
+
}
|
|
377
|
+
|
|
368
378
|
assert(
|
|
369
379
|
!this.isContextReentrant(),
|
|
370
380
|
0xb7b /* Flushing must not happen while incoming changes are being processed */,
|
|
@@ -539,7 +549,7 @@ export class Outbox {
|
|
|
539
549
|
/**
|
|
540
550
|
* As necessary and enabled, groups / compresses / chunks the given batch.
|
|
541
551
|
*
|
|
542
|
-
* @remarks
|
|
552
|
+
* @remarks If chunking happens, a side effect here is that 1 or more chunks are queued immediately for sending in next JS turn.
|
|
543
553
|
*
|
|
544
554
|
* @param localBatch - Local Batch to be virtualized - i.e. transformed into an Outbound Batch
|
|
545
555
|
* @param groupingEnabled - If true, Grouped batching is enabled.
|
package/src/packageVersion.ts
CHANGED
|
@@ -608,7 +608,7 @@ export class PendingStateManager implements IDisposable {
|
|
|
608
608
|
* @param sequenceNumber - The sequenceNumber from the server corresponding to the next pending message.
|
|
609
609
|
* @param message - [optional] The entire incoming message, for comparing contents with the pending message for extra validation.
|
|
610
610
|
* @throws DataProcessingError if the pending message content doesn't match the incoming message content.
|
|
611
|
-
* @returns
|
|
611
|
+
* @returns The localOpMetadata of the next pending message, to be sent to whoever submitted the original message.
|
|
612
612
|
*/
|
|
613
613
|
private processNextPendingMessage(
|
|
614
614
|
sequenceNumber: number,
|
|
@@ -3,17 +3,19 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
type ILayerCompatSupportRequirements,
|
|
6
|
+
import type {
|
|
7
|
+
ILayerCompatDetails,
|
|
8
|
+
ILayerCompatSupportRequirements,
|
|
10
9
|
} from "@fluid-internal/client-utils";
|
|
11
10
|
import type { ICriticalContainerError } from "@fluidframework/container-definitions";
|
|
12
11
|
import {
|
|
13
12
|
encodeHandlesInContainerRuntime,
|
|
14
13
|
notifiesReadOnlyState,
|
|
15
14
|
} from "@fluidframework/runtime-definitions/internal";
|
|
16
|
-
import {
|
|
15
|
+
import {
|
|
16
|
+
validateLayerCompatibility,
|
|
17
|
+
type ITelemetryLoggerExt,
|
|
18
|
+
} from "@fluidframework/telemetry-utils/internal";
|
|
17
19
|
|
|
18
20
|
import { pkgVersion } from "./packageVersion.js";
|
|
19
21
|
|
|
@@ -95,26 +97,17 @@ export const dataStoreSupportRequirementsForRuntime: ILayerCompatSupportRequirem
|
|
|
95
97
|
export function validateLoaderCompatibility(
|
|
96
98
|
maybeLoaderCompatDetailsForRuntime: ILayerCompatDetails | undefined,
|
|
97
99
|
disposeFn: (error?: ICriticalContainerError) => void,
|
|
100
|
+
logger: ITelemetryLoggerExt,
|
|
98
101
|
): void {
|
|
99
|
-
|
|
102
|
+
validateLayerCompatibility(
|
|
103
|
+
"runtime",
|
|
104
|
+
"loader",
|
|
105
|
+
runtimeCompatDetailsForLoader,
|
|
100
106
|
loaderSupportRequirementsForRuntime,
|
|
101
107
|
maybeLoaderCompatDetailsForRuntime,
|
|
108
|
+
disposeFn,
|
|
109
|
+
logger,
|
|
102
110
|
);
|
|
103
|
-
if (!layerCheckResult.isCompatible) {
|
|
104
|
-
const error = new UsageError("Runtime is not compatible with Loader", {
|
|
105
|
-
errorDetails: JSON.stringify({
|
|
106
|
-
runtimeVersion: runtimeCoreCompatDetails.pkgVersion,
|
|
107
|
-
loaderVersion: maybeLoaderCompatDetailsForRuntime?.pkgVersion,
|
|
108
|
-
runtimeGeneration: runtimeCoreCompatDetails.generation,
|
|
109
|
-
loaderGeneration: maybeLoaderCompatDetailsForRuntime?.generation,
|
|
110
|
-
minSupportedGeneration: loaderSupportRequirementsForRuntime.minSupportedGeneration,
|
|
111
|
-
isGenerationCompatible: layerCheckResult.isGenerationCompatible,
|
|
112
|
-
unsupportedFeatures: layerCheckResult.unsupportedFeatures,
|
|
113
|
-
}),
|
|
114
|
-
});
|
|
115
|
-
disposeFn(error);
|
|
116
|
-
throw error;
|
|
117
|
-
}
|
|
118
111
|
}
|
|
119
112
|
|
|
120
113
|
/**
|
|
@@ -122,26 +115,17 @@ export function validateLoaderCompatibility(
|
|
|
122
115
|
* @internal
|
|
123
116
|
*/
|
|
124
117
|
export function validateDatastoreCompatibility(
|
|
125
|
-
|
|
118
|
+
maybeDataStoreCompatDetailsForRuntime: ILayerCompatDetails | undefined,
|
|
126
119
|
disposeFn: () => void,
|
|
120
|
+
logger: ITelemetryLoggerExt,
|
|
127
121
|
): void {
|
|
128
|
-
|
|
122
|
+
validateLayerCompatibility(
|
|
123
|
+
"runtime",
|
|
124
|
+
"dataStore",
|
|
125
|
+
runtimeCompatDetailsForDataStore,
|
|
129
126
|
dataStoreSupportRequirementsForRuntime,
|
|
130
|
-
|
|
127
|
+
maybeDataStoreCompatDetailsForRuntime,
|
|
128
|
+
disposeFn,
|
|
129
|
+
logger,
|
|
131
130
|
);
|
|
132
|
-
if (!layerCheckResult.isCompatible) {
|
|
133
|
-
const error = new UsageError("Runtime is not compatible with DataStore", {
|
|
134
|
-
errorDetails: JSON.stringify({
|
|
135
|
-
runtimeVersion: runtimeCoreCompatDetails.pkgVersion,
|
|
136
|
-
dataStoreVersion: maybeDataStoreCompatDetails?.pkgVersion,
|
|
137
|
-
runtimeGeneration: runtimeCoreCompatDetails.generation,
|
|
138
|
-
dataStoreGeneration: maybeDataStoreCompatDetails?.generation,
|
|
139
|
-
minSupportedGeneration: dataStoreSupportRequirementsForRuntime.minSupportedGeneration,
|
|
140
|
-
isGenerationCompatible: layerCheckResult.isGenerationCompatible,
|
|
141
|
-
unsupportedFeatures: layerCheckResult.unsupportedFeatures,
|
|
142
|
-
}),
|
|
143
|
-
});
|
|
144
|
-
disposeFn();
|
|
145
|
-
throw error;
|
|
146
|
-
}
|
|
147
131
|
}
|
|
@@ -3,20 +3,7 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import type {
|
|
7
|
-
FetchSource,
|
|
8
|
-
ICreateBlobResponse,
|
|
9
|
-
IDocumentStorageServicePolicies,
|
|
10
|
-
ISnapshot,
|
|
11
|
-
ISnapshotFetchOptions,
|
|
12
|
-
ISnapshotTree,
|
|
13
|
-
ISummaryContext,
|
|
14
|
-
ISummaryHandle,
|
|
15
|
-
ISummaryTree,
|
|
16
|
-
IVersion,
|
|
17
|
-
} from "@fluidframework/driver-definitions/internal";
|
|
18
6
|
import type { IRuntimeStorageService } from "@fluidframework/runtime-definitions/internal";
|
|
19
|
-
import { UsageError } from "@fluidframework/telemetry-utils/internal";
|
|
20
7
|
|
|
21
8
|
/**
|
|
22
9
|
* IRuntimeStorageService proxy which intercepts requests if they can be satisfied by the blobs received in the
|
|
@@ -28,14 +15,6 @@ export class StorageServiceWithAttachBlobs implements IRuntimeStorageService {
|
|
|
28
15
|
private readonly attachBlobs: Map<string, ArrayBufferLike>,
|
|
29
16
|
) {}
|
|
30
17
|
|
|
31
|
-
/**
|
|
32
|
-
* {@link IRuntimeStorageService.policies}.
|
|
33
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
34
|
-
*/
|
|
35
|
-
public get policies(): IDocumentStorageServicePolicies | undefined {
|
|
36
|
-
return this.internalStorageService.policies;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
18
|
public async readBlob(id: string): Promise<ArrayBufferLike> {
|
|
40
19
|
const blob = this.attachBlobs.get(id);
|
|
41
20
|
if (blob !== undefined) {
|
|
@@ -46,75 +25,4 @@ export class StorageServiceWithAttachBlobs implements IRuntimeStorageService {
|
|
|
46
25
|
// IRuntimeStorageService to cache appropriately, no need to double-cache.
|
|
47
26
|
return this.internalStorageService.readBlob(id);
|
|
48
27
|
}
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* {@link IRuntimeStorageService.getSnapshotTree}.
|
|
52
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
53
|
-
*/
|
|
54
|
-
public async getSnapshotTree(
|
|
55
|
-
version?: IVersion,
|
|
56
|
-
scenarioName?: string,
|
|
57
|
-
// eslint-disable-next-line @rushstack/no-new-null
|
|
58
|
-
): Promise<ISnapshotTree | null> {
|
|
59
|
-
return this.internalStorageService.getSnapshotTree(version, scenarioName);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* {@link IRuntimeStorageService.getSnapshot}.
|
|
64
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
65
|
-
*/
|
|
66
|
-
public async getSnapshot(snapshotFetchOptions?: ISnapshotFetchOptions): Promise<ISnapshot> {
|
|
67
|
-
if (this.internalStorageService.getSnapshot !== undefined) {
|
|
68
|
-
return this.internalStorageService.getSnapshot(snapshotFetchOptions);
|
|
69
|
-
}
|
|
70
|
-
throw new UsageError(
|
|
71
|
-
"getSnapshot api should exist on internal storage in documentStorageServiceProxy class",
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* {@link IRuntimeStorageService.getVersions}.
|
|
77
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
78
|
-
*/
|
|
79
|
-
public async getVersions(
|
|
80
|
-
// eslint-disable-next-line @rushstack/no-new-null
|
|
81
|
-
versionId: string | null,
|
|
82
|
-
count: number,
|
|
83
|
-
scenarioName?: string,
|
|
84
|
-
fetchSource?: FetchSource,
|
|
85
|
-
): Promise<IVersion[]> {
|
|
86
|
-
return this.internalStorageService.getVersions(
|
|
87
|
-
versionId,
|
|
88
|
-
count,
|
|
89
|
-
scenarioName,
|
|
90
|
-
fetchSource,
|
|
91
|
-
);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* {@link IRuntimeStorageService.uploadSummaryWithContext}.
|
|
96
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
97
|
-
*/
|
|
98
|
-
public async uploadSummaryWithContext(
|
|
99
|
-
summary: ISummaryTree,
|
|
100
|
-
context: ISummaryContext,
|
|
101
|
-
): Promise<string> {
|
|
102
|
-
return this.internalStorageService.uploadSummaryWithContext(summary, context);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* {@link IRuntimeStorageService.createBlob}.
|
|
107
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
108
|
-
*/
|
|
109
|
-
public async createBlob(file: ArrayBufferLike): Promise<ICreateBlobResponse> {
|
|
110
|
-
return this.internalStorageService.createBlob(file);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* {@link IRuntimeStorageService.downloadSummary}.
|
|
115
|
-
* @deprecated - This will be removed in a future release. The DataStore layer does not need this.
|
|
116
|
-
*/
|
|
117
|
-
public async downloadSummary(handle: ISummaryHandle): Promise<ISummaryTree> {
|
|
118
|
-
return this.internalStorageService.downloadSummary(handle);
|
|
119
|
-
}
|
|
120
28
|
}
|
|
@@ -740,7 +740,7 @@ export class DocumentsSchemaController {
|
|
|
740
740
|
* @param contents - contents of the messages
|
|
741
741
|
* @param local - whether op is local
|
|
742
742
|
* @param sequenceNumber - sequence number of the op
|
|
743
|
-
* @returns
|
|
743
|
+
* @returns true if schema was accepted, otherwise false (rejected due to failed CAS)
|
|
744
744
|
*/
|
|
745
745
|
public processDocumentSchemaMessages(
|
|
746
746
|
contents: IDocumentSchemaChangeMessageIncoming[],
|
|
@@ -23,7 +23,7 @@ import type { IGCMetadata } from "../gc/index.js";
|
|
|
23
23
|
import type { IDocumentSchema } from "./documentSchema.js";
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
|
-
* @deprecated
|
|
26
|
+
* @deprecated This interface will no longer be exported in the future(AB#8004).
|
|
27
27
|
* @legacy @beta
|
|
28
28
|
*/
|
|
29
29
|
export type OmitAttributesVersions<T> = Omit<
|
|
@@ -32,7 +32,7 @@ export type OmitAttributesVersions<T> = Omit<
|
|
|
32
32
|
>;
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
|
-
* @deprecated
|
|
35
|
+
* @deprecated This interface will no longer be exported in the future(AB#8004).
|
|
36
36
|
* @legacy @beta
|
|
37
37
|
*/
|
|
38
38
|
export interface IFluidDataStoreAttributes0 {
|
|
@@ -48,7 +48,7 @@ export interface IFluidDataStoreAttributes0 {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
-
* @deprecated
|
|
51
|
+
* @deprecated This interface will no longer be exported in the future(AB#8004).
|
|
52
52
|
* @legacy @beta
|
|
53
53
|
*/
|
|
54
54
|
export interface IFluidDataStoreAttributes1
|
|
@@ -58,7 +58,7 @@ export interface IFluidDataStoreAttributes1
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
|
-
* @deprecated
|
|
61
|
+
* @deprecated This interface will no longer be exported in the future(AB#8004).
|
|
62
62
|
* @legacy @beta
|
|
63
63
|
*/
|
|
64
64
|
export interface IFluidDataStoreAttributes2
|
|
@@ -81,7 +81,7 @@ export interface IFluidDataStoreAttributes2
|
|
|
81
81
|
* store like the package, snapshotFormatVersion to take different decisions based on a particular
|
|
82
82
|
* snapshotFormatVersion.
|
|
83
83
|
*
|
|
84
|
-
* @deprecated
|
|
84
|
+
* @deprecated This interface will no longer be exported in the future(AB#8004).
|
|
85
85
|
*
|
|
86
86
|
* @legacy @beta
|
|
87
87
|
*
|
|
@@ -126,7 +126,7 @@ export function hasIsolatedChannels(attributes: ReadFluidDataStoreAttributes): b
|
|
|
126
126
|
export interface IContainerRuntimeMetadata extends ICreateContainerMetadata, IGCMetadata {
|
|
127
127
|
readonly summaryFormatVersion: 1;
|
|
128
128
|
/**
|
|
129
|
-
* @deprecated
|
|
129
|
+
* @deprecated used by old (prior to 2.0 RC3) runtimes
|
|
130
130
|
*/
|
|
131
131
|
readonly message?: ISummaryMetadataMessage;
|
|
132
132
|
/**
|