@fluid-experimental/attributor 2.23.0 → 2.31.0
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/CHANGELOG.md +102 -94
- package/dist/runtimeAttributorDataStoreChannel.d.ts +3 -3
- package/dist/runtimeAttributorDataStoreChannel.d.ts.map +1 -1
- package/dist/runtimeAttributorDataStoreChannel.js +2 -2
- package/dist/runtimeAttributorDataStoreChannel.js.map +1 -1
- package/lib/runtimeAttributorDataStoreChannel.d.ts +3 -3
- package/lib/runtimeAttributorDataStoreChannel.d.ts.map +1 -1
- package/lib/runtimeAttributorDataStoreChannel.js +2 -2
- package/lib/runtimeAttributorDataStoreChannel.js.map +1 -1
- package/lib/tsdoc-metadata.json +1 -1
- package/package.json +20 -23
- package/src/runtimeAttributorDataStoreChannel.ts +3 -6
- package/prettier.config.cjs +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @fluid-experimental/attributor
|
|
2
2
|
|
|
3
|
+
## 2.31.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.30.0
|
|
8
|
+
|
|
9
|
+
Dependency updates only.
|
|
10
|
+
|
|
3
11
|
## 2.23.0
|
|
4
12
|
|
|
5
13
|
Dependency updates only.
|
|
@@ -16,14 +24,14 @@ Dependency updates only.
|
|
|
16
24
|
|
|
17
25
|
### Minor Changes
|
|
18
26
|
|
|
19
|
-
-
|
|
27
|
+
- The ContainerRuntime class has been removed ([#23341](https://github.com/microsoft/FluidFramework/pull/23341)) [61ba06aa98](https://github.com/microsoft/FluidFramework/commit/61ba06aa9881c30ffeeedcaaede9c5a1a0c81abd)
|
|
20
28
|
|
|
21
|
-
|
|
22
|
-
|
|
29
|
+
The `ContainerRuntime` class was [deprecated in version 2.12.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-the-containerruntime-class-is-now-deprecated-23331) and has been removed.
|
|
30
|
+
Use `IContainerRuntime` to replace type usages and use the free function `loadContainerRuntime` to replace usages of the static method `ContainerRuntime.loadRuntime`.
|
|
23
31
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
32
|
+
See the [deprecation
|
|
33
|
+
announcement](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-the-containerruntime-class-is-now-deprecated-23331)
|
|
34
|
+
for more details about how to update existing code.
|
|
27
35
|
|
|
28
36
|
## 2.13.0
|
|
29
37
|
|
|
@@ -65,9 +73,9 @@ Dependency updates only.
|
|
|
65
73
|
|
|
66
74
|
### Minor Changes
|
|
67
75
|
|
|
68
|
-
-
|
|
76
|
+
- Update to TypeScript 5.4 ([#21214](https://github.com/microsoft/FluidFramework/pull/21214)) [0e6256c722](https://github.com/microsoft/FluidFramework/commit/0e6256c722d8bf024f4325bf02547daeeb18bfa6)
|
|
69
77
|
|
|
70
|
-
|
|
78
|
+
Update package implementations to use TypeScript 5.4.5.
|
|
71
79
|
|
|
72
80
|
## 2.0.0-rc.4.0.0
|
|
73
81
|
|
|
@@ -77,24 +85,24 @@ Dependency updates only.
|
|
|
77
85
|
|
|
78
86
|
### Major Changes
|
|
79
87
|
|
|
80
|
-
-
|
|
88
|
+
- Packages now use package.json "exports" and require modern module resolution [97d68aa06b](https://github.com/microsoft/FluidFramework/commit/97d68aa06bd5c022ecb026655814aea222a062ae)
|
|
81
89
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
90
|
+
Fluid Framework packages have been updated to use the [package.json "exports"
|
|
91
|
+
field](https://nodejs.org/docs/latest-v18.x/api/packages.html#exports) to define explicit entry points for both
|
|
92
|
+
TypeScript types and implementation code.
|
|
85
93
|
|
|
86
|
-
|
|
94
|
+
This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
|
|
87
95
|
|
|
88
|
-
|
|
89
|
-
|
|
96
|
+
- `"moduleResolution": "Node16"` with `"module": "Node16"`
|
|
97
|
+
- `"moduleResolution": "Bundler"` with `"module": "ESNext"`
|
|
90
98
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
99
|
+
We recommend using Node16/Node16 unless absolutely necessary. That will produce transpiled JavaScript that is suitable
|
|
100
|
+
for use with modern versions of Node.js _and_ Bundlers.
|
|
101
|
+
[See the TypeScript documentation](https://www.typescriptlang.org/tsconfig#moduleResolution) for more information
|
|
102
|
+
regarding the module and moduleResolution options.
|
|
95
103
|
|
|
96
|
-
|
|
97
|
-
|
|
104
|
+
**Node10 moduleResolution is not supported; it does not support Fluid Framework's API structuring pattern that is used
|
|
105
|
+
to distinguish stable APIs from those that are in development.**
|
|
98
106
|
|
|
99
107
|
## 2.0.0-rc.2.0.0
|
|
100
108
|
|
|
@@ -104,44 +112,44 @@ Dependency updates only.
|
|
|
104
112
|
|
|
105
113
|
### Minor Changes
|
|
106
114
|
|
|
107
|
-
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
115
|
+
- Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
116
|
+
|
|
117
|
+
The following Fluid server dependencies have been updated to the latest version, 3.0.0. [See the full changelog.](https://github.com/microsoft/FluidFramework/releases/tag/server_v3.0.0)
|
|
118
|
+
|
|
119
|
+
- @fluidframework/gitresources
|
|
120
|
+
- @fluidframework/server-kafka-orderer
|
|
121
|
+
- @fluidframework/server-lambdas
|
|
122
|
+
- @fluidframework/server-lambdas-driver
|
|
123
|
+
- @fluidframework/server-local-server
|
|
124
|
+
- @fluidframework/server-memory-orderer
|
|
125
|
+
- @fluidframework/protocol-base
|
|
126
|
+
- @fluidframework/server-routerlicious
|
|
127
|
+
- @fluidframework/server-routerlicious-base
|
|
128
|
+
- @fluidframework/server-services
|
|
129
|
+
- @fluidframework/server-services-client
|
|
130
|
+
- @fluidframework/server-services-core
|
|
131
|
+
- @fluidframework/server-services-ordering-kafkanode
|
|
132
|
+
- @fluidframework/server-services-ordering-rdkafka
|
|
133
|
+
- @fluidframework/server-services-ordering-zookeeper
|
|
134
|
+
- @fluidframework/server-services-shared
|
|
135
|
+
- @fluidframework/server-services-telemetry
|
|
136
|
+
- @fluidframework/server-services-utils
|
|
137
|
+
- @fluidframework/server-test-utils
|
|
138
|
+
- tinylicious
|
|
139
|
+
|
|
140
|
+
- Updated @fluidframework/protocol-definitions ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
141
|
+
|
|
142
|
+
The @fluidframework/protocol-definitions dependency has been upgraded to v3.1.0. [See the full
|
|
143
|
+
changelog.](https://github.com/microsoft/FluidFramework/blob/main/common/lib/protocol-definitions/CHANGELOG.md#310)
|
|
136
144
|
|
|
137
145
|
## 2.0.0-internal.8.0.0
|
|
138
146
|
|
|
139
147
|
### Major Changes
|
|
140
148
|
|
|
141
|
-
-
|
|
149
|
+
- container-runtime: Removed `ContainerRuntime.load(...)` [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
|
|
142
150
|
|
|
143
|
-
|
|
144
|
-
|
|
151
|
+
The static method `ContainerRuntime.load(...)` has been removed. Please migrate all usage of this method to
|
|
152
|
+
`ContainerRuntime.loadRuntime(...)`.
|
|
145
153
|
|
|
146
154
|
## 2.0.0-internal.7.4.0
|
|
147
155
|
|
|
@@ -163,45 +171,45 @@ Dependency updates only.
|
|
|
163
171
|
|
|
164
172
|
### Major Changes
|
|
165
173
|
|
|
166
|
-
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
-
|
|
203
|
-
|
|
204
|
-
|
|
174
|
+
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
175
|
+
|
|
176
|
+
This included the following changes from the protocol-definitions release:
|
|
177
|
+
|
|
178
|
+
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
179
|
+
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
180
|
+
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
181
|
+
been added, which will be the typing for signals sent from the client to the server. Both extend a new
|
|
182
|
+
ISignalMessageBase interface that contains common members.
|
|
183
|
+
- The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
|
|
184
|
+
|
|
185
|
+
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
186
|
+
|
|
187
|
+
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
188
|
+
|
|
189
|
+
- @fluidframework/gitresources: 2.0.1
|
|
190
|
+
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
191
|
+
- @fluidframework/server-lambdas: 2.0.1
|
|
192
|
+
- @fluidframework/server-lambdas-driver: 2.0.1
|
|
193
|
+
- @fluidframework/server-local-server: 2.0.1
|
|
194
|
+
- @fluidframework/server-memory-orderer: 2.0.1
|
|
195
|
+
- @fluidframework/protocol-base: 2.0.1
|
|
196
|
+
- @fluidframework/server-routerlicious: 2.0.1
|
|
197
|
+
- @fluidframework/server-routerlicious-base: 2.0.1
|
|
198
|
+
- @fluidframework/server-services: 2.0.1
|
|
199
|
+
- @fluidframework/server-services-client: 2.0.1
|
|
200
|
+
- @fluidframework/server-services-core: 2.0.1
|
|
201
|
+
- @fluidframework/server-services-ordering-kafkanode: 2.0.1
|
|
202
|
+
- @fluidframework/server-services-ordering-rdkafka: 2.0.1
|
|
203
|
+
- @fluidframework/server-services-ordering-zookeeper: 2.0.1
|
|
204
|
+
- @fluidframework/server-services-shared: 2.0.1
|
|
205
|
+
- @fluidframework/server-services-telemetry: 2.0.1
|
|
206
|
+
- @fluidframework/server-services-utils: 2.0.1
|
|
207
|
+
- @fluidframework/server-test-utils: 2.0.1
|
|
208
|
+
- tinylicious: 2.0.1
|
|
209
|
+
|
|
210
|
+
- Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
211
|
+
|
|
212
|
+
The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
|
|
205
213
|
|
|
206
214
|
## 2.0.0-internal.6.4.0
|
|
207
215
|
|
|
@@ -223,9 +231,9 @@ Dependency updates only.
|
|
|
223
231
|
|
|
224
232
|
### Major Changes
|
|
225
233
|
|
|
226
|
-
-
|
|
234
|
+
- Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
227
235
|
|
|
228
|
-
|
|
236
|
+
Upgraded typescript transpilation target to ES2020. This is done in order to decrease the bundle sizes of Fluid Framework packages. This has provided size improvements across the board for ex. Loader, Driver, Runtime etc. Reduced bundle sizes helps to load lesser code in apps and hence also helps to improve the perf.If any app wants to target any older versions of browsers with which this target version is not compatible, then they can use packages like babel to transpile to a older target.
|
|
229
237
|
|
|
230
238
|
## 2.0.0-internal.5.4.0
|
|
231
239
|
|
|
@@ -8,7 +8,7 @@ import { FluidObject, IRequest, IResponse } from "@fluidframework/core-interface
|
|
|
8
8
|
import type { IFluidHandleInternal } from "@fluidframework/core-interfaces/internal";
|
|
9
9
|
import { IFluidDataStoreRuntimeEvents } from "@fluidframework/datastore-definitions/internal";
|
|
10
10
|
import { IDocumentMessage, type ISnapshotTree, ISequencedDocumentMessage, IQuorumClients } from "@fluidframework/driver-definitions/internal";
|
|
11
|
-
import { IGarbageCollectionData, IFluidDataStoreChannel, IFluidDataStoreContext, IInboundSignalMessage, VisibilityState, type ISummaryTreeWithStats, type ITelemetryContext } from "@fluidframework/runtime-definitions/internal";
|
|
11
|
+
import { IGarbageCollectionData, IFluidDataStoreChannel, IFluidDataStoreContext, IInboundSignalMessage, VisibilityState, type ISummaryTreeWithStats, type ITelemetryContext, type IRuntimeMessageCollection } from "@fluidframework/runtime-definitions/internal";
|
|
12
12
|
import { ITelemetryLoggerExt } from "@fluidframework/telemetry-utils/internal";
|
|
13
13
|
/**
|
|
14
14
|
* Data store channel for the runtime attributor. This channel is responsible for storing and managing the
|
|
@@ -41,9 +41,9 @@ export declare class RuntimeAttributorDataStoreChannel extends TypedEventEmitter
|
|
|
41
41
|
*/
|
|
42
42
|
getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData;
|
|
43
43
|
/**
|
|
44
|
-
* {@inheritdoc IFluidDataStoreChannel.
|
|
44
|
+
* {@inheritdoc IFluidDataStoreChannel.processMessages}
|
|
45
45
|
*/
|
|
46
|
-
|
|
46
|
+
processMessages(messageCollection: IRuntimeMessageCollection): void;
|
|
47
47
|
/**
|
|
48
48
|
* {@inheritdoc IFluidDataStoreChannel.processSignal}
|
|
49
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeAttributorDataStoreChannel.d.ts","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EACN,gBAAgB,EAChB,KAAK,aAAa,EAClB,yBAAyB,EACzB,cAAc,EACd,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACN,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACN,mBAAmB,EAInB,MAAM,0CAA0C,CAAC;AAIlD;;GAEG;AACH,qBAAa,iCACZ,SAAQ,iBAAiB,CAAC,4BAA4B,CACtD,YAAW,sBAAsB;aAGhB,gBAAgB,EAAE,sBAAsB;gBAAxC,gBAAgB,EAAE,sBAAsB,EACxD,QAAQ,EAAE,OAAO;IA4BlB,IAAW,sBAAsB,IAAI,sBAAsB,CAE1D;IAED,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAEM,OAAO,IAAI,IAAI;IAItB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAC/C,SAAS,UAAQ;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,eAAe,CAAC;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAwB;IACzD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,IAAW,MAAM,IAAI,mBAAmB,CAEvC;IAEY,UAAU,CACtB,YAAY,EAAE,aAAa,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,EACxE,MAAM,EAAE,cAAc,EACtB,6BAA6B,EAAE,aAAa,GAAG,SAAS,EACxD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC;IAShB;;OAEG;IACI,yBAAyB,IAAI,IAAI;IASxC;;OAEG;IACI,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,GAAG,qBAAqB;IAIpF;;OAEG;IACI,eAAe,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,GAAG,sBAAsB;IAIpF;;OAEG;IACI,
|
|
1
|
+
{"version":3,"file":"runtimeAttributorDataStoreChannel.d.ts","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,9 +81,9 @@ class RuntimeAttributorDataStoreChannel extends client_utils_1.TypedEventEmitter
|
|
|
81
81
|
return { gcNodes: {} };
|
|
82
82
|
}
|
|
83
83
|
/**
|
|
84
|
-
* {@inheritdoc IFluidDataStoreChannel.
|
|
84
|
+
* {@inheritdoc IFluidDataStoreChannel.processMessages}
|
|
85
85
|
*/
|
|
86
|
-
|
|
86
|
+
processMessages(messageCollection) {
|
|
87
87
|
throw new Error("Attributor should not receive messages yet");
|
|
88
88
|
}
|
|
89
89
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeAttributorDataStoreChannel.js","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TypedEventEmitter } from \"@fluid-internal/client-utils\";\nimport { AttachState, IDeltaManager } from \"@fluidframework/container-definitions/internal\";\nimport { FluidObject, IRequest, IResponse } from \"@fluidframework/core-interfaces\";\nimport type { IFluidHandleInternal } from \"@fluidframework/core-interfaces/internal\";\nimport { assert, Deferred, unreachableCase } from \"@fluidframework/core-utils/internal\";\nimport { FluidObjectHandle } from \"@fluidframework/datastore/internal\";\nimport { IFluidDataStoreRuntimeEvents } from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tIDocumentMessage,\n\ttype ISnapshotTree,\n\tISequencedDocumentMessage,\n\tIQuorumClients,\n} from \"@fluidframework/driver-definitions/internal\";\nimport {\n\tIGarbageCollectionData,\n\tIFluidDataStoreChannel,\n\tIFluidDataStoreContext,\n\tIInboundSignalMessage,\n\tVisibilityState,\n\ttype ISummaryTreeWithStats,\n\ttype ITelemetryContext,\n} from \"@fluidframework/runtime-definitions/internal\";\nimport {\n\tITelemetryLoggerExt,\n\tMonitoringContext,\n\traiseConnectedEvent,\n\tcreateChildMonitoringContext,\n} from \"@fluidframework/telemetry-utils/internal\";\n\nimport { RuntimeAttributor } from \"./runtimeAttributor.js\";\n\n/**\n * Data store channel for the runtime attributor. This channel is responsible for storing and managing the\n */\nexport class RuntimeAttributorDataStoreChannel\n\textends TypedEventEmitter<IFluidDataStoreRuntimeEvents>\n\timplements IFluidDataStoreChannel\n{\n\tpublic constructor(\n\t\tpublic readonly dataStoreContext: IFluidDataStoreContext,\n\t\texisting: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.runtimeAttributor = new RuntimeAttributor();\n\t\tthis.mc = createChildMonitoringContext({\n\t\t\tlogger: dataStoreContext.baseLogger,\n\t\t\tnamespace: \"Attributor\",\n\t\t});\n\t\tthis.attachState = dataStoreContext.attachState;\n\t\tif (existing) {\n\t\t\tthis.visibilityState =\n\t\t\t\tdataStoreContext.attachState === AttachState.Detached\n\t\t\t\t\t? VisibilityState.LocallyVisible\n\t\t\t\t\t: VisibilityState.GloballyVisible;\n\t\t} else {\n\t\t\tthis.visibilityState = VisibilityState.NotVisible;\n\t\t}\n\t\t// If it's existing we know it has been attached.\n\t\tif (existing) {\n\t\t\tthis.deferredAttached.resolve();\n\t\t}\n\t\tthis.entryPoint = new FluidObjectHandle<FluidObject>(\n\t\t\tthis.runtimeAttributor,\n\t\t\t\"\",\n\t\t\tdataStoreContext.IFluidHandleContext,\n\t\t);\n\t}\n\n\tpublic get IFluidDataStoreChannel(): IFluidDataStoreChannel {\n\t\treturn this;\n\t}\n\n\tprivate _disposed = false;\n\tpublic get disposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\tpublic dispose(): void {\n\t\tthis._disposed = true;\n\t}\n\n\tprivate readonly runtimeAttributor: RuntimeAttributor;\n\tpublic isEnabled = true;\n\tpublic attachState: AttachState;\n\tpublic visibilityState: VisibilityState;\n\tprivate readonly deferredAttached = new Deferred<void>();\n\tprivate readonly mc: MonitoringContext;\n\tpublic get logger(): ITelemetryLoggerExt {\n\t\treturn this.mc.logger;\n\t}\n\n\tpublic async initialize(\n\t\tdeltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>,\n\t\tquorum: IQuorumClients,\n\t\tbaseSnapshotForAttributorTree: ISnapshotTree | undefined,\n\t\treadBlob: (id: string) => Promise<ArrayBufferLike>,\n\t): Promise<void> {\n\t\tawait this.runtimeAttributor.initialize(\n\t\t\tdeltaManager,\n\t\t\tquorum,\n\t\t\tbaseSnapshotForAttributorTree,\n\t\t\treadBlob,\n\t\t);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.makeVisibleAndAttachGraph}\n\t */\n\tpublic makeVisibleAndAttachGraph(): void {\n\t\tif (this.visibilityState !== VisibilityState.NotVisible) {\n\t\t\treturn;\n\t\t}\n\t\tthis.visibilityState = VisibilityState.LocallyVisible;\n\n\t\tthis.dataStoreContext.makeLocallyVisible();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachSummary}\n\t */\n\tpublic getAttachSummary(telemetryContext?: ITelemetryContext): ISummaryTreeWithStats {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachGCData}\n\t */\n\tpublic getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData {\n\t\treturn { gcNodes: {} };\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.process}\n\t */\n\tpublic process(\n\t\tmessage: ISequencedDocumentMessage,\n\t\tlocal: boolean,\n\t\tlocalOpMetadata: unknown,\n\t): void {\n\t\tthrow new Error(\"Attributor should not receive messages yet\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processSignal}\n\t */\n\tpublic processSignal(message: IInboundSignalMessage, local: boolean): void {\n\t\tthrow new Error(\"Attributor should not receive signals\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.summarize}\n\t */\n\tpublic async summarize(\n\t\tfullTree?: boolean,\n\t\ttrackState?: boolean,\n\t\ttelemetryContext?: ITelemetryContext,\n\t): Promise<ISummaryTreeWithStats> {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getGCData}\n\t */\n\tpublic async getGCData(fullGC?: boolean): Promise<IGarbageCollectionData> {\n\t\t// Nothing to be GCed from the attributor.\n\t\tconst garbageCollectionData: IGarbageCollectionData = { gcNodes: {} };\n\t\treturn garbageCollectionData;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.updateUsedRoutes}\n\t */\n\tpublic updateUsedRoutes(usedRoutes: string[]): void {\n\t\treturn;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setConnectionState}\n\t */\n\tpublic setConnectionState(connected: boolean, clientId?: string): void {\n\t\traiseConnectedEvent(this.logger, this, connected, clientId);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.reSubmit}\n\t */\n\tpublic reSubmit(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not resubmit anything from the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not resubmit anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.applyStashedOp}\n\t */\n\tpublic async applyStashedOp(content: unknown): Promise<unknown> {\n\t\t// Should not apply stashed ops to the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not apply stashed ops to the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.rollback}\n\t */\n\tpublic rollback?(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not rollback anything from the attributor as it does not send ops yet.\n\t\tthrow new Error(\"Should not rollback anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.entryPoint}\n\t */\n\tpublic readonly entryPoint: IFluidHandleInternal<FluidObject>;\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.request}\n\t */\n\tpublic async request(request: IRequest): Promise<IResponse> {\n\t\t// Should not request anything from the attributor as the attributor does not have any channels further.\n\t\tthrow new Error(\"Should not request anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setAttachState}\n\t */\n\tpublic setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void {\n\t\tswitch (attachState) {\n\t\t\tcase AttachState.Attaching: {\n\t\t\t\tthis.attachState = AttachState.Attaching;\n\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.LocallyVisible,\n\t\t\t\t\t0xa1e /* Data store should be locally visible before it can become globally visible. */,\n\t\t\t\t);\n\n\t\t\t\t// Mark the data store globally visible and make its child channels visible as well.\n\t\t\t\tthis.visibilityState = VisibilityState.GloballyVisible;\n\n\t\t\t\t// This promise resolution will be moved to attached event once we fix the scheduler.\n\t\t\t\tthis.deferredAttached.resolve();\n\t\t\t\tthis.emit(\"attaching\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase AttachState.Attached: {\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.GloballyVisible,\n\t\t\t\t\t0xa1f /* Data store should be globally visible when its attached. */,\n\t\t\t\t);\n\t\t\t\tthis.attachState = AttachState.Attached;\n\t\t\t\tthis.emit(\"attached\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tunreachableCase(attachState, \"unreached\");\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"runtimeAttributorDataStoreChannel.js","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TypedEventEmitter } from \"@fluid-internal/client-utils\";\nimport { AttachState, IDeltaManager } from \"@fluidframework/container-definitions/internal\";\nimport { FluidObject, IRequest, IResponse } from \"@fluidframework/core-interfaces\";\nimport type { IFluidHandleInternal } from \"@fluidframework/core-interfaces/internal\";\nimport { assert, Deferred, unreachableCase } from \"@fluidframework/core-utils/internal\";\nimport { FluidObjectHandle } from \"@fluidframework/datastore/internal\";\nimport { IFluidDataStoreRuntimeEvents } from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tIDocumentMessage,\n\ttype ISnapshotTree,\n\tISequencedDocumentMessage,\n\tIQuorumClients,\n} from \"@fluidframework/driver-definitions/internal\";\nimport {\n\tIGarbageCollectionData,\n\tIFluidDataStoreChannel,\n\tIFluidDataStoreContext,\n\tIInboundSignalMessage,\n\tVisibilityState,\n\ttype ISummaryTreeWithStats,\n\ttype ITelemetryContext,\n\ttype IRuntimeMessageCollection,\n} from \"@fluidframework/runtime-definitions/internal\";\nimport {\n\tITelemetryLoggerExt,\n\tMonitoringContext,\n\traiseConnectedEvent,\n\tcreateChildMonitoringContext,\n} from \"@fluidframework/telemetry-utils/internal\";\n\nimport { RuntimeAttributor } from \"./runtimeAttributor.js\";\n\n/**\n * Data store channel for the runtime attributor. This channel is responsible for storing and managing the\n */\nexport class RuntimeAttributorDataStoreChannel\n\textends TypedEventEmitter<IFluidDataStoreRuntimeEvents>\n\timplements IFluidDataStoreChannel\n{\n\tpublic constructor(\n\t\tpublic readonly dataStoreContext: IFluidDataStoreContext,\n\t\texisting: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.runtimeAttributor = new RuntimeAttributor();\n\t\tthis.mc = createChildMonitoringContext({\n\t\t\tlogger: dataStoreContext.baseLogger,\n\t\t\tnamespace: \"Attributor\",\n\t\t});\n\t\tthis.attachState = dataStoreContext.attachState;\n\t\tif (existing) {\n\t\t\tthis.visibilityState =\n\t\t\t\tdataStoreContext.attachState === AttachState.Detached\n\t\t\t\t\t? VisibilityState.LocallyVisible\n\t\t\t\t\t: VisibilityState.GloballyVisible;\n\t\t} else {\n\t\t\tthis.visibilityState = VisibilityState.NotVisible;\n\t\t}\n\t\t// If it's existing we know it has been attached.\n\t\tif (existing) {\n\t\t\tthis.deferredAttached.resolve();\n\t\t}\n\t\tthis.entryPoint = new FluidObjectHandle<FluidObject>(\n\t\t\tthis.runtimeAttributor,\n\t\t\t\"\",\n\t\t\tdataStoreContext.IFluidHandleContext,\n\t\t);\n\t}\n\n\tpublic get IFluidDataStoreChannel(): IFluidDataStoreChannel {\n\t\treturn this;\n\t}\n\n\tprivate _disposed = false;\n\tpublic get disposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\tpublic dispose(): void {\n\t\tthis._disposed = true;\n\t}\n\n\tprivate readonly runtimeAttributor: RuntimeAttributor;\n\tpublic isEnabled = true;\n\tpublic attachState: AttachState;\n\tpublic visibilityState: VisibilityState;\n\tprivate readonly deferredAttached = new Deferred<void>();\n\tprivate readonly mc: MonitoringContext;\n\tpublic get logger(): ITelemetryLoggerExt {\n\t\treturn this.mc.logger;\n\t}\n\n\tpublic async initialize(\n\t\tdeltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>,\n\t\tquorum: IQuorumClients,\n\t\tbaseSnapshotForAttributorTree: ISnapshotTree | undefined,\n\t\treadBlob: (id: string) => Promise<ArrayBufferLike>,\n\t): Promise<void> {\n\t\tawait this.runtimeAttributor.initialize(\n\t\t\tdeltaManager,\n\t\t\tquorum,\n\t\t\tbaseSnapshotForAttributorTree,\n\t\t\treadBlob,\n\t\t);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.makeVisibleAndAttachGraph}\n\t */\n\tpublic makeVisibleAndAttachGraph(): void {\n\t\tif (this.visibilityState !== VisibilityState.NotVisible) {\n\t\t\treturn;\n\t\t}\n\t\tthis.visibilityState = VisibilityState.LocallyVisible;\n\n\t\tthis.dataStoreContext.makeLocallyVisible();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachSummary}\n\t */\n\tpublic getAttachSummary(telemetryContext?: ITelemetryContext): ISummaryTreeWithStats {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachGCData}\n\t */\n\tpublic getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData {\n\t\treturn { gcNodes: {} };\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processMessages}\n\t */\n\tpublic processMessages(messageCollection: IRuntimeMessageCollection): void {\n\t\tthrow new Error(\"Attributor should not receive messages yet\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processSignal}\n\t */\n\tpublic processSignal(message: IInboundSignalMessage, local: boolean): void {\n\t\tthrow new Error(\"Attributor should not receive signals\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.summarize}\n\t */\n\tpublic async summarize(\n\t\tfullTree?: boolean,\n\t\ttrackState?: boolean,\n\t\ttelemetryContext?: ITelemetryContext,\n\t): Promise<ISummaryTreeWithStats> {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getGCData}\n\t */\n\tpublic async getGCData(fullGC?: boolean): Promise<IGarbageCollectionData> {\n\t\t// Nothing to be GCed from the attributor.\n\t\tconst garbageCollectionData: IGarbageCollectionData = { gcNodes: {} };\n\t\treturn garbageCollectionData;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.updateUsedRoutes}\n\t */\n\tpublic updateUsedRoutes(usedRoutes: string[]): void {\n\t\treturn;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setConnectionState}\n\t */\n\tpublic setConnectionState(connected: boolean, clientId?: string): void {\n\t\traiseConnectedEvent(this.logger, this, connected, clientId);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.reSubmit}\n\t */\n\tpublic reSubmit(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not resubmit anything from the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not resubmit anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.applyStashedOp}\n\t */\n\tpublic async applyStashedOp(content: unknown): Promise<unknown> {\n\t\t// Should not apply stashed ops to the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not apply stashed ops to the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.rollback}\n\t */\n\tpublic rollback?(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not rollback anything from the attributor as it does not send ops yet.\n\t\tthrow new Error(\"Should not rollback anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.entryPoint}\n\t */\n\tpublic readonly entryPoint: IFluidHandleInternal<FluidObject>;\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.request}\n\t */\n\tpublic async request(request: IRequest): Promise<IResponse> {\n\t\t// Should not request anything from the attributor as the attributor does not have any channels further.\n\t\tthrow new Error(\"Should not request anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setAttachState}\n\t */\n\tpublic setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void {\n\t\tswitch (attachState) {\n\t\t\tcase AttachState.Attaching: {\n\t\t\t\tthis.attachState = AttachState.Attaching;\n\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.LocallyVisible,\n\t\t\t\t\t0xa1e /* Data store should be locally visible before it can become globally visible. */,\n\t\t\t\t);\n\n\t\t\t\t// Mark the data store globally visible and make its child channels visible as well.\n\t\t\t\tthis.visibilityState = VisibilityState.GloballyVisible;\n\n\t\t\t\t// This promise resolution will be moved to attached event once we fix the scheduler.\n\t\t\t\tthis.deferredAttached.resolve();\n\t\t\t\tthis.emit(\"attaching\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase AttachState.Attached: {\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.GloballyVisible,\n\t\t\t\t\t0xa1f /* Data store should be globally visible when its attached. */,\n\t\t\t\t);\n\t\t\t\tthis.attachState = AttachState.Attached;\n\t\t\t\tthis.emit(\"attached\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tunreachableCase(attachState, \"unreached\");\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -8,7 +8,7 @@ import { FluidObject, IRequest, IResponse } from "@fluidframework/core-interface
|
|
|
8
8
|
import type { IFluidHandleInternal } from "@fluidframework/core-interfaces/internal";
|
|
9
9
|
import { IFluidDataStoreRuntimeEvents } from "@fluidframework/datastore-definitions/internal";
|
|
10
10
|
import { IDocumentMessage, type ISnapshotTree, ISequencedDocumentMessage, IQuorumClients } from "@fluidframework/driver-definitions/internal";
|
|
11
|
-
import { IGarbageCollectionData, IFluidDataStoreChannel, IFluidDataStoreContext, IInboundSignalMessage, VisibilityState, type ISummaryTreeWithStats, type ITelemetryContext } from "@fluidframework/runtime-definitions/internal";
|
|
11
|
+
import { IGarbageCollectionData, IFluidDataStoreChannel, IFluidDataStoreContext, IInboundSignalMessage, VisibilityState, type ISummaryTreeWithStats, type ITelemetryContext, type IRuntimeMessageCollection } from "@fluidframework/runtime-definitions/internal";
|
|
12
12
|
import { ITelemetryLoggerExt } from "@fluidframework/telemetry-utils/internal";
|
|
13
13
|
/**
|
|
14
14
|
* Data store channel for the runtime attributor. This channel is responsible for storing and managing the
|
|
@@ -41,9 +41,9 @@ export declare class RuntimeAttributorDataStoreChannel extends TypedEventEmitter
|
|
|
41
41
|
*/
|
|
42
42
|
getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData;
|
|
43
43
|
/**
|
|
44
|
-
* {@inheritdoc IFluidDataStoreChannel.
|
|
44
|
+
* {@inheritdoc IFluidDataStoreChannel.processMessages}
|
|
45
45
|
*/
|
|
46
|
-
|
|
46
|
+
processMessages(messageCollection: IRuntimeMessageCollection): void;
|
|
47
47
|
/**
|
|
48
48
|
* {@inheritdoc IFluidDataStoreChannel.processSignal}
|
|
49
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeAttributorDataStoreChannel.d.ts","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EACN,gBAAgB,EAChB,KAAK,aAAa,EAClB,yBAAyB,EACzB,cAAc,EACd,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACN,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACN,mBAAmB,EAInB,MAAM,0CAA0C,CAAC;AAIlD;;GAEG;AACH,qBAAa,iCACZ,SAAQ,iBAAiB,CAAC,4BAA4B,CACtD,YAAW,sBAAsB;aAGhB,gBAAgB,EAAE,sBAAsB;gBAAxC,gBAAgB,EAAE,sBAAsB,EACxD,QAAQ,EAAE,OAAO;IA4BlB,IAAW,sBAAsB,IAAI,sBAAsB,CAE1D;IAED,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAEM,OAAO,IAAI,IAAI;IAItB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAC/C,SAAS,UAAQ;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,eAAe,CAAC;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAwB;IACzD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,IAAW,MAAM,IAAI,mBAAmB,CAEvC;IAEY,UAAU,CACtB,YAAY,EAAE,aAAa,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,EACxE,MAAM,EAAE,cAAc,EACtB,6BAA6B,EAAE,aAAa,GAAG,SAAS,EACxD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC;IAShB;;OAEG;IACI,yBAAyB,IAAI,IAAI;IASxC;;OAEG;IACI,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,GAAG,qBAAqB;IAIpF;;OAEG;IACI,eAAe,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,GAAG,sBAAsB;IAIpF;;OAEG;IACI,
|
|
1
|
+
{"version":3,"file":"runtimeAttributorDataStoreChannel.d.ts","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,9 +78,9 @@ export class RuntimeAttributorDataStoreChannel extends TypedEventEmitter {
|
|
|
78
78
|
return { gcNodes: {} };
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
|
-
* {@inheritdoc IFluidDataStoreChannel.
|
|
81
|
+
* {@inheritdoc IFluidDataStoreChannel.processMessages}
|
|
82
82
|
*/
|
|
83
|
-
|
|
83
|
+
processMessages(messageCollection) {
|
|
84
84
|
throw new Error("Attributor should not receive messages yet");
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeAttributorDataStoreChannel.js","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TypedEventEmitter } from \"@fluid-internal/client-utils\";\nimport { AttachState, IDeltaManager } from \"@fluidframework/container-definitions/internal\";\nimport { FluidObject, IRequest, IResponse } from \"@fluidframework/core-interfaces\";\nimport type { IFluidHandleInternal } from \"@fluidframework/core-interfaces/internal\";\nimport { assert, Deferred, unreachableCase } from \"@fluidframework/core-utils/internal\";\nimport { FluidObjectHandle } from \"@fluidframework/datastore/internal\";\nimport { IFluidDataStoreRuntimeEvents } from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tIDocumentMessage,\n\ttype ISnapshotTree,\n\tISequencedDocumentMessage,\n\tIQuorumClients,\n} from \"@fluidframework/driver-definitions/internal\";\nimport {\n\tIGarbageCollectionData,\n\tIFluidDataStoreChannel,\n\tIFluidDataStoreContext,\n\tIInboundSignalMessage,\n\tVisibilityState,\n\ttype ISummaryTreeWithStats,\n\ttype ITelemetryContext,\n} from \"@fluidframework/runtime-definitions/internal\";\nimport {\n\tITelemetryLoggerExt,\n\tMonitoringContext,\n\traiseConnectedEvent,\n\tcreateChildMonitoringContext,\n} from \"@fluidframework/telemetry-utils/internal\";\n\nimport { RuntimeAttributor } from \"./runtimeAttributor.js\";\n\n/**\n * Data store channel for the runtime attributor. This channel is responsible for storing and managing the\n */\nexport class RuntimeAttributorDataStoreChannel\n\textends TypedEventEmitter<IFluidDataStoreRuntimeEvents>\n\timplements IFluidDataStoreChannel\n{\n\tpublic constructor(\n\t\tpublic readonly dataStoreContext: IFluidDataStoreContext,\n\t\texisting: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.runtimeAttributor = new RuntimeAttributor();\n\t\tthis.mc = createChildMonitoringContext({\n\t\t\tlogger: dataStoreContext.baseLogger,\n\t\t\tnamespace: \"Attributor\",\n\t\t});\n\t\tthis.attachState = dataStoreContext.attachState;\n\t\tif (existing) {\n\t\t\tthis.visibilityState =\n\t\t\t\tdataStoreContext.attachState === AttachState.Detached\n\t\t\t\t\t? VisibilityState.LocallyVisible\n\t\t\t\t\t: VisibilityState.GloballyVisible;\n\t\t} else {\n\t\t\tthis.visibilityState = VisibilityState.NotVisible;\n\t\t}\n\t\t// If it's existing we know it has been attached.\n\t\tif (existing) {\n\t\t\tthis.deferredAttached.resolve();\n\t\t}\n\t\tthis.entryPoint = new FluidObjectHandle<FluidObject>(\n\t\t\tthis.runtimeAttributor,\n\t\t\t\"\",\n\t\t\tdataStoreContext.IFluidHandleContext,\n\t\t);\n\t}\n\n\tpublic get IFluidDataStoreChannel(): IFluidDataStoreChannel {\n\t\treturn this;\n\t}\n\n\tprivate _disposed = false;\n\tpublic get disposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\tpublic dispose(): void {\n\t\tthis._disposed = true;\n\t}\n\n\tprivate readonly runtimeAttributor: RuntimeAttributor;\n\tpublic isEnabled = true;\n\tpublic attachState: AttachState;\n\tpublic visibilityState: VisibilityState;\n\tprivate readonly deferredAttached = new Deferred<void>();\n\tprivate readonly mc: MonitoringContext;\n\tpublic get logger(): ITelemetryLoggerExt {\n\t\treturn this.mc.logger;\n\t}\n\n\tpublic async initialize(\n\t\tdeltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>,\n\t\tquorum: IQuorumClients,\n\t\tbaseSnapshotForAttributorTree: ISnapshotTree | undefined,\n\t\treadBlob: (id: string) => Promise<ArrayBufferLike>,\n\t): Promise<void> {\n\t\tawait this.runtimeAttributor.initialize(\n\t\t\tdeltaManager,\n\t\t\tquorum,\n\t\t\tbaseSnapshotForAttributorTree,\n\t\t\treadBlob,\n\t\t);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.makeVisibleAndAttachGraph}\n\t */\n\tpublic makeVisibleAndAttachGraph(): void {\n\t\tif (this.visibilityState !== VisibilityState.NotVisible) {\n\t\t\treturn;\n\t\t}\n\t\tthis.visibilityState = VisibilityState.LocallyVisible;\n\n\t\tthis.dataStoreContext.makeLocallyVisible();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachSummary}\n\t */\n\tpublic getAttachSummary(telemetryContext?: ITelemetryContext): ISummaryTreeWithStats {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachGCData}\n\t */\n\tpublic getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData {\n\t\treturn { gcNodes: {} };\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.process}\n\t */\n\tpublic process(\n\t\tmessage: ISequencedDocumentMessage,\n\t\tlocal: boolean,\n\t\tlocalOpMetadata: unknown,\n\t): void {\n\t\tthrow new Error(\"Attributor should not receive messages yet\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processSignal}\n\t */\n\tpublic processSignal(message: IInboundSignalMessage, local: boolean): void {\n\t\tthrow new Error(\"Attributor should not receive signals\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.summarize}\n\t */\n\tpublic async summarize(\n\t\tfullTree?: boolean,\n\t\ttrackState?: boolean,\n\t\ttelemetryContext?: ITelemetryContext,\n\t): Promise<ISummaryTreeWithStats> {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getGCData}\n\t */\n\tpublic async getGCData(fullGC?: boolean): Promise<IGarbageCollectionData> {\n\t\t// Nothing to be GCed from the attributor.\n\t\tconst garbageCollectionData: IGarbageCollectionData = { gcNodes: {} };\n\t\treturn garbageCollectionData;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.updateUsedRoutes}\n\t */\n\tpublic updateUsedRoutes(usedRoutes: string[]): void {\n\t\treturn;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setConnectionState}\n\t */\n\tpublic setConnectionState(connected: boolean, clientId?: string): void {\n\t\traiseConnectedEvent(this.logger, this, connected, clientId);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.reSubmit}\n\t */\n\tpublic reSubmit(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not resubmit anything from the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not resubmit anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.applyStashedOp}\n\t */\n\tpublic async applyStashedOp(content: unknown): Promise<unknown> {\n\t\t// Should not apply stashed ops to the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not apply stashed ops to the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.rollback}\n\t */\n\tpublic rollback?(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not rollback anything from the attributor as it does not send ops yet.\n\t\tthrow new Error(\"Should not rollback anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.entryPoint}\n\t */\n\tpublic readonly entryPoint: IFluidHandleInternal<FluidObject>;\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.request}\n\t */\n\tpublic async request(request: IRequest): Promise<IResponse> {\n\t\t// Should not request anything from the attributor as the attributor does not have any channels further.\n\t\tthrow new Error(\"Should not request anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setAttachState}\n\t */\n\tpublic setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void {\n\t\tswitch (attachState) {\n\t\t\tcase AttachState.Attaching: {\n\t\t\t\tthis.attachState = AttachState.Attaching;\n\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.LocallyVisible,\n\t\t\t\t\t0xa1e /* Data store should be locally visible before it can become globally visible. */,\n\t\t\t\t);\n\n\t\t\t\t// Mark the data store globally visible and make its child channels visible as well.\n\t\t\t\tthis.visibilityState = VisibilityState.GloballyVisible;\n\n\t\t\t\t// This promise resolution will be moved to attached event once we fix the scheduler.\n\t\t\t\tthis.deferredAttached.resolve();\n\t\t\t\tthis.emit(\"attaching\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase AttachState.Attached: {\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.GloballyVisible,\n\t\t\t\t\t0xa1f /* Data store should be globally visible when its attached. */,\n\t\t\t\t);\n\t\t\t\tthis.attachState = AttachState.Attached;\n\t\t\t\tthis.emit(\"attached\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tunreachableCase(attachState, \"unreached\");\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"runtimeAttributorDataStoreChannel.js","sourceRoot":"","sources":["../src/runtimeAttributorDataStoreChannel.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TypedEventEmitter } from \"@fluid-internal/client-utils\";\nimport { AttachState, IDeltaManager } from \"@fluidframework/container-definitions/internal\";\nimport { FluidObject, IRequest, IResponse } from \"@fluidframework/core-interfaces\";\nimport type { IFluidHandleInternal } from \"@fluidframework/core-interfaces/internal\";\nimport { assert, Deferred, unreachableCase } from \"@fluidframework/core-utils/internal\";\nimport { FluidObjectHandle } from \"@fluidframework/datastore/internal\";\nimport { IFluidDataStoreRuntimeEvents } from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tIDocumentMessage,\n\ttype ISnapshotTree,\n\tISequencedDocumentMessage,\n\tIQuorumClients,\n} from \"@fluidframework/driver-definitions/internal\";\nimport {\n\tIGarbageCollectionData,\n\tIFluidDataStoreChannel,\n\tIFluidDataStoreContext,\n\tIInboundSignalMessage,\n\tVisibilityState,\n\ttype ISummaryTreeWithStats,\n\ttype ITelemetryContext,\n\ttype IRuntimeMessageCollection,\n} from \"@fluidframework/runtime-definitions/internal\";\nimport {\n\tITelemetryLoggerExt,\n\tMonitoringContext,\n\traiseConnectedEvent,\n\tcreateChildMonitoringContext,\n} from \"@fluidframework/telemetry-utils/internal\";\n\nimport { RuntimeAttributor } from \"./runtimeAttributor.js\";\n\n/**\n * Data store channel for the runtime attributor. This channel is responsible for storing and managing the\n */\nexport class RuntimeAttributorDataStoreChannel\n\textends TypedEventEmitter<IFluidDataStoreRuntimeEvents>\n\timplements IFluidDataStoreChannel\n{\n\tpublic constructor(\n\t\tpublic readonly dataStoreContext: IFluidDataStoreContext,\n\t\texisting: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.runtimeAttributor = new RuntimeAttributor();\n\t\tthis.mc = createChildMonitoringContext({\n\t\t\tlogger: dataStoreContext.baseLogger,\n\t\t\tnamespace: \"Attributor\",\n\t\t});\n\t\tthis.attachState = dataStoreContext.attachState;\n\t\tif (existing) {\n\t\t\tthis.visibilityState =\n\t\t\t\tdataStoreContext.attachState === AttachState.Detached\n\t\t\t\t\t? VisibilityState.LocallyVisible\n\t\t\t\t\t: VisibilityState.GloballyVisible;\n\t\t} else {\n\t\t\tthis.visibilityState = VisibilityState.NotVisible;\n\t\t}\n\t\t// If it's existing we know it has been attached.\n\t\tif (existing) {\n\t\t\tthis.deferredAttached.resolve();\n\t\t}\n\t\tthis.entryPoint = new FluidObjectHandle<FluidObject>(\n\t\t\tthis.runtimeAttributor,\n\t\t\t\"\",\n\t\t\tdataStoreContext.IFluidHandleContext,\n\t\t);\n\t}\n\n\tpublic get IFluidDataStoreChannel(): IFluidDataStoreChannel {\n\t\treturn this;\n\t}\n\n\tprivate _disposed = false;\n\tpublic get disposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\tpublic dispose(): void {\n\t\tthis._disposed = true;\n\t}\n\n\tprivate readonly runtimeAttributor: RuntimeAttributor;\n\tpublic isEnabled = true;\n\tpublic attachState: AttachState;\n\tpublic visibilityState: VisibilityState;\n\tprivate readonly deferredAttached = new Deferred<void>();\n\tprivate readonly mc: MonitoringContext;\n\tpublic get logger(): ITelemetryLoggerExt {\n\t\treturn this.mc.logger;\n\t}\n\n\tpublic async initialize(\n\t\tdeltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>,\n\t\tquorum: IQuorumClients,\n\t\tbaseSnapshotForAttributorTree: ISnapshotTree | undefined,\n\t\treadBlob: (id: string) => Promise<ArrayBufferLike>,\n\t): Promise<void> {\n\t\tawait this.runtimeAttributor.initialize(\n\t\t\tdeltaManager,\n\t\t\tquorum,\n\t\t\tbaseSnapshotForAttributorTree,\n\t\t\treadBlob,\n\t\t);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.makeVisibleAndAttachGraph}\n\t */\n\tpublic makeVisibleAndAttachGraph(): void {\n\t\tif (this.visibilityState !== VisibilityState.NotVisible) {\n\t\t\treturn;\n\t\t}\n\t\tthis.visibilityState = VisibilityState.LocallyVisible;\n\n\t\tthis.dataStoreContext.makeLocallyVisible();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachSummary}\n\t */\n\tpublic getAttachSummary(telemetryContext?: ITelemetryContext): ISummaryTreeWithStats {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getAttachGCData}\n\t */\n\tpublic getAttachGCData(telemetryContext?: ITelemetryContext): IGarbageCollectionData {\n\t\treturn { gcNodes: {} };\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processMessages}\n\t */\n\tpublic processMessages(messageCollection: IRuntimeMessageCollection): void {\n\t\tthrow new Error(\"Attributor should not receive messages yet\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.processSignal}\n\t */\n\tpublic processSignal(message: IInboundSignalMessage, local: boolean): void {\n\t\tthrow new Error(\"Attributor should not receive signals\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.summarize}\n\t */\n\tpublic async summarize(\n\t\tfullTree?: boolean,\n\t\ttrackState?: boolean,\n\t\ttelemetryContext?: ITelemetryContext,\n\t): Promise<ISummaryTreeWithStats> {\n\t\treturn this.runtimeAttributor.summarizeOpAttributor();\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.getGCData}\n\t */\n\tpublic async getGCData(fullGC?: boolean): Promise<IGarbageCollectionData> {\n\t\t// Nothing to be GCed from the attributor.\n\t\tconst garbageCollectionData: IGarbageCollectionData = { gcNodes: {} };\n\t\treturn garbageCollectionData;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.updateUsedRoutes}\n\t */\n\tpublic updateUsedRoutes(usedRoutes: string[]): void {\n\t\treturn;\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setConnectionState}\n\t */\n\tpublic setConnectionState(connected: boolean, clientId?: string): void {\n\t\traiseConnectedEvent(this.logger, this, connected, clientId);\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.reSubmit}\n\t */\n\tpublic reSubmit(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not resubmit anything from the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not resubmit anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.applyStashedOp}\n\t */\n\tpublic async applyStashedOp(content: unknown): Promise<unknown> {\n\t\t// Should not apply stashed ops to the attributor as the attributor does not send ops yet.\n\t\tthrow new Error(\"Should not apply stashed ops to the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.rollback}\n\t */\n\tpublic rollback?(type: string, content: unknown, localOpMetadata: unknown): void {\n\t\t// Should not rollback anything from the attributor as it does not send ops yet.\n\t\tthrow new Error(\"Should not rollback anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.entryPoint}\n\t */\n\tpublic readonly entryPoint: IFluidHandleInternal<FluidObject>;\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.request}\n\t */\n\tpublic async request(request: IRequest): Promise<IResponse> {\n\t\t// Should not request anything from the attributor as the attributor does not have any channels further.\n\t\tthrow new Error(\"Should not request anything from the attributor\");\n\t}\n\n\t/**\n\t * {@inheritdoc IFluidDataStoreChannel.setAttachState}\n\t */\n\tpublic setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void {\n\t\tswitch (attachState) {\n\t\t\tcase AttachState.Attaching: {\n\t\t\t\tthis.attachState = AttachState.Attaching;\n\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.LocallyVisible,\n\t\t\t\t\t0xa1e /* Data store should be locally visible before it can become globally visible. */,\n\t\t\t\t);\n\n\t\t\t\t// Mark the data store globally visible and make its child channels visible as well.\n\t\t\t\tthis.visibilityState = VisibilityState.GloballyVisible;\n\n\t\t\t\t// This promise resolution will be moved to attached event once we fix the scheduler.\n\t\t\t\tthis.deferredAttached.resolve();\n\t\t\t\tthis.emit(\"attaching\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase AttachState.Attached: {\n\t\t\t\tassert(\n\t\t\t\t\tthis.visibilityState === VisibilityState.GloballyVisible,\n\t\t\t\t\t0xa1f /* Data store should be globally visible when its attached. */,\n\t\t\t\t);\n\t\t\t\tthis.attachState = AttachState.Attached;\n\t\t\t\tthis.emit(\"attached\");\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tunreachableCase(attachState, \"unreached\");\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
package/lib/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluid-experimental/attributor",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.31.0",
|
|
4
4
|
"description": "Operation attributor",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -49,33 +49,33 @@
|
|
|
49
49
|
"temp-directory": "nyc/.nyc_output"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@fluid-internal/client-utils": "~2.
|
|
53
|
-
"@fluidframework/container-definitions": "~2.
|
|
54
|
-
"@fluidframework/container-runtime": "~2.
|
|
55
|
-
"@fluidframework/container-runtime-definitions": "~2.
|
|
56
|
-
"@fluidframework/core-interfaces": "~2.
|
|
57
|
-
"@fluidframework/core-utils": "~2.
|
|
58
|
-
"@fluidframework/datastore": "~2.
|
|
59
|
-
"@fluidframework/datastore-definitions": "~2.
|
|
60
|
-
"@fluidframework/driver-definitions": "~2.
|
|
61
|
-
"@fluidframework/runtime-definitions": "~2.
|
|
62
|
-
"@fluidframework/runtime-utils": "~2.
|
|
63
|
-
"@fluidframework/telemetry-utils": "~2.
|
|
52
|
+
"@fluid-internal/client-utils": "~2.31.0",
|
|
53
|
+
"@fluidframework/container-definitions": "~2.31.0",
|
|
54
|
+
"@fluidframework/container-runtime": "~2.31.0",
|
|
55
|
+
"@fluidframework/container-runtime-definitions": "~2.31.0",
|
|
56
|
+
"@fluidframework/core-interfaces": "~2.31.0",
|
|
57
|
+
"@fluidframework/core-utils": "~2.31.0",
|
|
58
|
+
"@fluidframework/datastore": "~2.31.0",
|
|
59
|
+
"@fluidframework/datastore-definitions": "~2.31.0",
|
|
60
|
+
"@fluidframework/driver-definitions": "~2.31.0",
|
|
61
|
+
"@fluidframework/runtime-definitions": "~2.31.0",
|
|
62
|
+
"@fluidframework/runtime-utils": "~2.31.0",
|
|
63
|
+
"@fluidframework/telemetry-utils": "~2.31.0",
|
|
64
64
|
"lz4js": "^0.2.0"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
67
|
"@arethetypeswrong/cli": "^0.17.1",
|
|
68
68
|
"@biomejs/biome": "~1.9.3",
|
|
69
|
-
"@fluid-internal/mocha-test-setup": "~2.
|
|
70
|
-
"@fluid-private/stochastic-test-utils": "~2.
|
|
69
|
+
"@fluid-internal/mocha-test-setup": "~2.31.0",
|
|
70
|
+
"@fluid-private/stochastic-test-utils": "~2.31.0",
|
|
71
71
|
"@fluid-tools/build-cli": "^0.54.0",
|
|
72
72
|
"@fluidframework/build-common": "^2.0.3",
|
|
73
73
|
"@fluidframework/build-tools": "^0.54.0",
|
|
74
74
|
"@fluidframework/eslint-config-fluid": "^5.7.3",
|
|
75
|
-
"@fluidframework/merge-tree": "~2.
|
|
76
|
-
"@fluidframework/sequence": "~2.
|
|
77
|
-
"@fluidframework/test-runtime-utils": "~2.
|
|
78
|
-
"@microsoft/api-extractor": "7.
|
|
75
|
+
"@fluidframework/merge-tree": "~2.31.0",
|
|
76
|
+
"@fluidframework/sequence": "~2.31.0",
|
|
77
|
+
"@fluidframework/test-runtime-utils": "~2.31.0",
|
|
78
|
+
"@microsoft/api-extractor": "7.50.1",
|
|
79
79
|
"@types/mocha": "^10.0.10",
|
|
80
80
|
"@types/node": "^18.19.0",
|
|
81
81
|
"c8": "^8.0.1",
|
|
@@ -83,10 +83,9 @@
|
|
|
83
83
|
"copyfiles": "^2.4.1",
|
|
84
84
|
"cross-env": "^7.0.3",
|
|
85
85
|
"eslint": "~8.55.0",
|
|
86
|
-
"mocha": "^10.2
|
|
86
|
+
"mocha": "^10.8.2",
|
|
87
87
|
"mocha-multi-reporters": "^1.5.1",
|
|
88
88
|
"moment": "^2.21.0",
|
|
89
|
-
"prettier": "~3.0.3",
|
|
90
89
|
"rimraf": "^4.4.0",
|
|
91
90
|
"typescript": "~5.4.5"
|
|
92
91
|
},
|
|
@@ -111,14 +110,12 @@
|
|
|
111
110
|
"check:exports:cjs:index": "api-extractor run --config api-extractor/api-extractor-lint-index.cjs.json",
|
|
112
111
|
"check:exports:esm:index": "api-extractor run --config api-extractor/api-extractor-lint-index.esm.json",
|
|
113
112
|
"check:format": "npm run check:biome",
|
|
114
|
-
"check:prettier": "prettier --check . --cache --ignore-path ../../../.prettierignore",
|
|
115
113
|
"ci:build:docs": "api-extractor run",
|
|
116
114
|
"clean": "rimraf --glob dist lib \"**/*.tsbuildinfo\" \"**/*.build.log\" _api-extractor-temp nyc",
|
|
117
115
|
"eslint": "eslint --format stylish src",
|
|
118
116
|
"eslint:fix": "eslint --format stylish src --fix --fix-type problem,suggestion,layout",
|
|
119
117
|
"format": "npm run format:biome",
|
|
120
118
|
"format:biome": "biome check . --write",
|
|
121
|
-
"format:prettier": "prettier --write . --cache --ignore-path ../../../.prettierignore",
|
|
122
119
|
"lint": "fluid-build . --task lint",
|
|
123
120
|
"lint:fix": "fluid-build . --task eslint:fix --task format",
|
|
124
121
|
"test": "npm run test:mocha",
|
|
@@ -24,6 +24,7 @@ import {
|
|
|
24
24
|
VisibilityState,
|
|
25
25
|
type ISummaryTreeWithStats,
|
|
26
26
|
type ITelemetryContext,
|
|
27
|
+
type IRuntimeMessageCollection,
|
|
27
28
|
} from "@fluidframework/runtime-definitions/internal";
|
|
28
29
|
import {
|
|
29
30
|
ITelemetryLoggerExt,
|
|
@@ -135,13 +136,9 @@ export class RuntimeAttributorDataStoreChannel
|
|
|
135
136
|
}
|
|
136
137
|
|
|
137
138
|
/**
|
|
138
|
-
* {@inheritdoc IFluidDataStoreChannel.
|
|
139
|
+
* {@inheritdoc IFluidDataStoreChannel.processMessages}
|
|
139
140
|
*/
|
|
140
|
-
public
|
|
141
|
-
message: ISequencedDocumentMessage,
|
|
142
|
-
local: boolean,
|
|
143
|
-
localOpMetadata: unknown,
|
|
144
|
-
): void {
|
|
141
|
+
public processMessages(messageCollection: IRuntimeMessageCollection): void {
|
|
145
142
|
throw new Error("Attributor should not receive messages yet");
|
|
146
143
|
}
|
|
147
144
|
|