@fluidframework/datastore 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.
Files changed (37) hide show
  1. package/CHANGELOG.md +285 -253
  2. package/api-report/datastore.legacy.alpha.api.md +1 -2
  3. package/dist/channelDeltaConnection.d.ts.map +1 -1
  4. package/dist/channelDeltaConnection.js +6 -19
  5. package/dist/channelDeltaConnection.js.map +1 -1
  6. package/dist/dataStoreLayerCompatState.d.ts +35 -0
  7. package/dist/dataStoreLayerCompatState.d.ts.map +1 -0
  8. package/dist/dataStoreLayerCompatState.js +74 -0
  9. package/dist/dataStoreLayerCompatState.js.map +1 -0
  10. package/dist/dataStoreRuntime.d.ts +8 -6
  11. package/dist/dataStoreRuntime.d.ts.map +1 -1
  12. package/dist/dataStoreRuntime.js +13 -19
  13. package/dist/dataStoreRuntime.js.map +1 -1
  14. package/dist/packageVersion.d.ts +1 -1
  15. package/dist/packageVersion.js +1 -1
  16. package/dist/packageVersion.js.map +1 -1
  17. package/lib/channelDeltaConnection.d.ts.map +1 -1
  18. package/lib/channelDeltaConnection.js +6 -19
  19. package/lib/channelDeltaConnection.js.map +1 -1
  20. package/lib/dataStoreLayerCompatState.d.ts +35 -0
  21. package/lib/dataStoreLayerCompatState.d.ts.map +1 -0
  22. package/lib/dataStoreLayerCompatState.js +70 -0
  23. package/lib/dataStoreLayerCompatState.js.map +1 -0
  24. package/lib/dataStoreRuntime.d.ts +8 -6
  25. package/lib/dataStoreRuntime.d.ts.map +1 -1
  26. package/lib/dataStoreRuntime.js +15 -19
  27. package/lib/dataStoreRuntime.js.map +1 -1
  28. package/lib/packageVersion.d.ts +1 -1
  29. package/lib/packageVersion.js +1 -1
  30. package/lib/packageVersion.js.map +1 -1
  31. package/lib/tsdoc-metadata.json +1 -1
  32. package/package.json +19 -20
  33. package/src/channelDeltaConnection.ts +8 -19
  34. package/src/dataStoreLayerCompatState.ts +85 -0
  35. package/src/dataStoreRuntime.ts +23 -25
  36. package/src/packageVersion.ts +1 -1
  37. package/prettier.config.cjs +0 -8
package/CHANGELOG.md CHANGED
@@ -1,14 +1,46 @@
1
1
  # @fluidframework/datastore
2
2
 
3
+ ## 2.31.0
4
+
5
+ ### Minor Changes
6
+
7
+ - New ILayerCompatDetails property on FluidDataStoreRuntime, MockFluidDataStoreContext and MockFluidDataStoreRuntime ([#24166](https://github.com/microsoft/FluidFramework/pull/24166)) [fac75c8258](https://github.com/microsoft/FluidFramework/commit/fac75c8258c979a6b15a70b9cf84df09f62b3e93)
8
+
9
+ A new optional property, `ILayerCompatDetails`, has been added to `FluidDataStoreRuntime`. This property is used by
10
+ `FluidDataStoreContext` in the Runtime layer to validate that the Runtime and DataStore layers are compatible.
11
+
12
+ `ILayerCompatDetails` has also been added to `MockFluidDataStoreRuntime` and `MockFluidDataStoreContext` which are used for
13
+ testing.
14
+
15
+ Important: this property is intended for use by Fluid Framework code only. No code outside the Fluid Framework should use or depend on this property in any way.
16
+
17
+ ## 2.30.0
18
+
19
+ ### Minor Changes
20
+
21
+ - The process and processDocumentSchemaOp functions have been removed ([#24018](https://github.com/microsoft/FluidFramework/pull/24018)) [bc35d543d5](https://github.com/microsoft/FluidFramework/commit/bc35d543d58c7e4bf28944b09d645cc26bf28a29)
22
+
23
+ `process` has been replaced by `processMessages` from the following:
24
+
25
+ - `FluidDataStoreRuntime`
26
+ - `IDeltaHandler`
27
+ - `IFluidDataStoreChannel`
28
+ - `MockFluidDataStoreRuntime`
29
+ - `MockDeltaConnection`
30
+
31
+ `processDocumentSchemaOp` has been replaced by `processDocumentSchemaMessages` from `DocumentsSchemaController`.
32
+
33
+ See the [deprecation release note](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.5.0#user-content-the-process-function-on-ifluiddatastorechannel-ideltahandler-mockfluiddatastoreruntime-and-mockdeltaconnection-is-now-deprecated-22840) for more details.
34
+
3
35
  ## 2.23.0
4
36
 
5
37
  ### Minor Changes
6
38
 
7
- - The FluidDataStoreRuntime.process function is now deprecated ([#23866](https://github.com/microsoft/FluidFramework/pull/23866)) [3f44d43e985](https://github.com/microsoft/FluidFramework/commit/3f44d43e985fea02ea349d024d3ae5d85f7eddd6)
39
+ - The FluidDataStoreRuntime.process function is now deprecated ([#23866](https://github.com/microsoft/FluidFramework/pull/23866)) [3f44d43e985](https://github.com/microsoft/FluidFramework/commit/3f44d43e985fea02ea349d024d3ae5d85f7eddd6)
8
40
 
9
- A new function `processMessages` has been added in place of `process`. The new function will be called to process multiple messages instead of a single one on the data store runtime. This is part of a feature called "op bunching" where contiguous ops of a given type and to a given data store / DDS are bunched and sent together for processing.
41
+ A new function `processMessages` has been added in place of `process`. The new function will be called to process multiple messages instead of a single one on the data store runtime. This is part of a feature called "op bunching" where contiguous ops of a given type and to a given data store / DDS are bunched and sent together for processing.
10
42
 
11
- Note that `process` may still be called in scenarios where this data store runtime (Datastore layer) is running with an older version of data store context (Runtime layer) in the same client. This is to support Fluid layer compatibility.
43
+ Note that `process` may still be called in scenarios where this data store runtime (Datastore layer) is running with an older version of data store context (Runtime layer) in the same client. This is to support Fluid layer compatibility.
12
44
 
13
45
  ## 2.22.0
14
46
 
@@ -22,18 +54,18 @@ Dependency updates only.
22
54
 
23
55
  ### Minor Changes
24
56
 
25
- - The createDataStoreWithProps APIs on ContainerRuntime and IContainerRuntimeBase have been removed ([#22996](https://github.com/microsoft/FluidFramework/pull/22996)) [bd243fb292](https://github.com/microsoft/FluidFramework/commit/bd243fb2927915d87c42486e21ee0c990962a9a7)
57
+ - The createDataStoreWithProps APIs on ContainerRuntime and IContainerRuntimeBase have been removed ([#22996](https://github.com/microsoft/FluidFramework/pull/22996)) [bd243fb292](https://github.com/microsoft/FluidFramework/commit/bd243fb2927915d87c42486e21ee0c990962a9a7)
26
58
 
27
- `ContainerRuntime.createDataStoreWithProps` and `IContainerRuntimeBase.createDataStoreWithProps`
28
- were [deprecated in version 0.25.0](https://github.com/microsoft/FluidFramework/blob/main/BREAKING.md#icontainerruntimebase_createdatastorewithprops-is-removed) and have been removed.
59
+ `ContainerRuntime.createDataStoreWithProps` and `IContainerRuntimeBase.createDataStoreWithProps`
60
+ were [deprecated in version 0.25.0](https://github.com/microsoft/FluidFramework/blob/main/BREAKING.md#icontainerruntimebase_createdatastorewithprops-is-removed) and have been removed.
29
61
 
30
- Replace uses of these APIs with `PureDataObjectFactory.createInstanceWithDataStore` and pass in props via the `initialState`
31
- parameter.
62
+ Replace uses of these APIs with `PureDataObjectFactory.createInstanceWithDataStore` and pass in props via the `initialState`
63
+ parameter.
32
64
 
33
- These changes were originally announced in version 0.25.0. See the following issues for more details:
65
+ These changes were originally announced in version 0.25.0. See the following issues for more details:
34
66
 
35
- - [#1537](https://github.com/microsoft/FluidFramework/issues/1537)
36
- - [#2931](https://github.com/microsoft/FluidFramework/pull/2931)
67
+ - [#1537](https://github.com/microsoft/FluidFramework/issues/1537)
68
+ - [#2931](https://github.com/microsoft/FluidFramework/pull/2931)
37
69
 
38
70
  ## 2.13.0
39
71
 
@@ -51,19 +83,19 @@ Dependency updates only.
51
83
 
52
84
  ### Minor Changes
53
85
 
54
- - The inbound and outbound properties have been removed from IDeltaManager ([#22282](https://github.com/microsoft/FluidFramework/pull/22282)) [45a57693f2](https://github.com/microsoft/FluidFramework/commit/45a57693f291e0dc5e91af7f29a9b9c8f82dfad5)
86
+ - The inbound and outbound properties have been removed from IDeltaManager ([#22282](https://github.com/microsoft/FluidFramework/pull/22282)) [45a57693f2](https://github.com/microsoft/FluidFramework/commit/45a57693f291e0dc5e91af7f29a9b9c8f82dfad5)
55
87
 
56
- The inbound and outbound properties were [deprecated in version 2.0.0-rc.2.0.0](https://github.com/microsoft/FluidFramework/blob/main/RELEASE_NOTES/2.0.0-rc.2.0.0.md#container-definitions-deprecate-ideltamanagerinbound-and-ideltamanageroutbound) and have been removed from `IDeltaManager`.
88
+ The inbound and outbound properties were [deprecated in version 2.0.0-rc.2.0.0](https://github.com/microsoft/FluidFramework/blob/main/RELEASE_NOTES/2.0.0-rc.2.0.0.md#container-definitions-deprecate-ideltamanagerinbound-and-ideltamanageroutbound) and have been removed from `IDeltaManager`.
57
89
 
58
- `IDeltaManager.inbound` contained functionality that could break core runtime features such as summarization and processing batches if used improperly. Data loss or corruption could occur when `IDeltaManger.inbound.pause()` or `IDeltaManager.inbound.resume()` were called.
90
+ `IDeltaManager.inbound` contained functionality that could break core runtime features such as summarization and processing batches if used improperly. Data loss or corruption could occur when `IDeltaManger.inbound.pause()` or `IDeltaManager.inbound.resume()` were called.
59
91
 
60
- Similarly, `IDeltaManager.outbound` contained functionality that could break core runtime features such as generation of batches and chunking. Data loss or corruption could occur when `IDeltaManger.inbound.pause()` or `IDeltaManager.inbound.resume()` were called.
92
+ Similarly, `IDeltaManager.outbound` contained functionality that could break core runtime features such as generation of batches and chunking. Data loss or corruption could occur when `IDeltaManger.inbound.pause()` or `IDeltaManager.inbound.resume()` were called.
61
93
 
62
- #### Alternatives
94
+ #### Alternatives
63
95
 
64
- - Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
65
- - Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect use `IContainer.disconnect`.
66
- - Alternatives to calling `IDeltaManager.inbound.resume`, `IDeltaManager.outbound.resume` for `IContainer` reconnect use `IContainer.connect`.
96
+ - Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
97
+ - Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect use `IContainer.disconnect`.
98
+ - Alternatives to calling `IDeltaManager.inbound.resume`, `IDeltaManager.outbound.resume` for `IContainer` reconnect use `IContainer.connect`.
67
99
 
68
100
  ## 2.5.0
69
101
 
@@ -89,153 +121,153 @@ Dependency updates only.
89
121
 
90
122
  ### Minor Changes
91
123
 
92
- - Update to TypeScript 5.4 ([#21214](https://github.com/microsoft/FluidFramework/pull/21214)) [0e6256c722](https://github.com/microsoft/FluidFramework/commit/0e6256c722d8bf024f4325bf02547daeeb18bfa6)
124
+ - Update to TypeScript 5.4 ([#21214](https://github.com/microsoft/FluidFramework/pull/21214)) [0e6256c722](https://github.com/microsoft/FluidFramework/commit/0e6256c722d8bf024f4325bf02547daeeb18bfa6)
93
125
 
94
- Update package implementations to use TypeScript 5.4.5.
126
+ Update package implementations to use TypeScript 5.4.5.
95
127
 
96
128
  ## 2.0.0-rc.4.0.0
97
129
 
98
130
  ### Minor Changes
99
131
 
100
- - Type Erase IFluidDataStoreRuntime.deltaManager [96872186d0](https://github.com/microsoft/FluidFramework/commit/96872186d0d0f245c1fece7d19b3743e501679b6)
132
+ - Type Erase IFluidDataStoreRuntime.deltaManager [96872186d0](https://github.com/microsoft/FluidFramework/commit/96872186d0d0f245c1fece7d19b3743e501679b6)
101
133
 
102
- Make IFluidDataStoreRuntime.deltaManager have an opaque type.
103
- Marks the following types which were reachable from it as alpha:
134
+ Make IFluidDataStoreRuntime.deltaManager have an opaque type.
135
+ Marks the following types which were reachable from it as alpha:
104
136
 
105
- - IConnectionDetails
106
- - IDeltaSender
107
- - IDeltaManagerEvents
108
- - IDeltaManager
109
- - IDeltaQueueEvents
110
- - IDeltaQueue
111
- - ReadOnlyInfo
137
+ - IConnectionDetails
138
+ - IDeltaSender
139
+ - IDeltaManagerEvents
140
+ - IDeltaManager
141
+ - IDeltaQueueEvents
142
+ - IDeltaQueue
143
+ - ReadOnlyInfo
112
144
 
113
- As a temporary workaround, users needing access to the full delta manager API can use the `@alpha` `toDeltaManagerInternal` API to retrieve its members, but should migrate away from requiring access to those APIs.
145
+ As a temporary workaround, users needing access to the full delta manager API can use the `@alpha` `toDeltaManagerInternal` API to retrieve its members, but should migrate away from requiring access to those APIs.
114
146
 
115
- Implementing a custom `IFluidDataStoreRuntime` is not supported: this is now indicated by it being marked with `@sealed`.
147
+ Implementing a custom `IFluidDataStoreRuntime` is not supported: this is now indicated by it being marked with `@sealed`.
116
148
 
117
149
  ## 2.0.0-rc.3.0.0
118
150
 
119
151
  ### Major Changes
120
152
 
121
- - Packages now use package.json "exports" and require modern module resolution [97d68aa06b](https://github.com/microsoft/FluidFramework/commit/97d68aa06bd5c022ecb026655814aea222a062ae)
153
+ - Packages now use package.json "exports" and require modern module resolution [97d68aa06b](https://github.com/microsoft/FluidFramework/commit/97d68aa06bd5c022ecb026655814aea222a062ae)
122
154
 
123
- Fluid Framework packages have been updated to use the [package.json "exports"
124
- field](https://nodejs.org/docs/latest-v18.x/api/packages.html#exports) to define explicit entry points for both
125
- TypeScript types and implementation code.
155
+ Fluid Framework packages have been updated to use the [package.json "exports"
156
+ field](https://nodejs.org/docs/latest-v18.x/api/packages.html#exports) to define explicit entry points for both
157
+ TypeScript types and implementation code.
126
158
 
127
- This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
159
+ This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
128
160
 
129
- - `"moduleResolution": "Node16"` with `"module": "Node16"`
130
- - `"moduleResolution": "Bundler"` with `"module": "ESNext"`
161
+ - `"moduleResolution": "Node16"` with `"module": "Node16"`
162
+ - `"moduleResolution": "Bundler"` with `"module": "ESNext"`
131
163
 
132
- We recommend using Node16/Node16 unless absolutely necessary. That will produce transpiled JavaScript that is suitable
133
- for use with modern versions of Node.js _and_ Bundlers.
134
- [See the TypeScript documentation](https://www.typescriptlang.org/tsconfig#moduleResolution) for more information
135
- regarding the module and moduleResolution options.
164
+ We recommend using Node16/Node16 unless absolutely necessary. That will produce transpiled JavaScript that is suitable
165
+ for use with modern versions of Node.js _and_ Bundlers.
166
+ [See the TypeScript documentation](https://www.typescriptlang.org/tsconfig#moduleResolution) for more information
167
+ regarding the module and moduleResolution options.
136
168
 
137
- **Node10 moduleResolution is not supported; it does not support Fluid Framework's API structuring pattern that is used
138
- to distinguish stable APIs from those that are in development.**
169
+ **Node10 moduleResolution is not supported; it does not support Fluid Framework's API structuring pattern that is used
170
+ to distinguish stable APIs from those that are in development.**
139
171
 
140
172
  ## 2.0.0-rc.2.0.0
141
173
 
142
174
  ### Minor Changes
143
175
 
144
- - container-runtime: New feature: ID compression for DataStores & DDSs ([#19859](https://github.com/microsoft/FluidFramework/issues/19859)) [51f0d3db73](https://github.com/microsoft/FluidFramework/commits/51f0d3db737800e1c30ea5e3952d38ff30ffc7da)
176
+ - container-runtime: New feature: ID compression for DataStores & DDSs ([#19859](https://github.com/microsoft/FluidFramework/issues/19859)) [51f0d3db73](https://github.com/microsoft/FluidFramework/commits/51f0d3db737800e1c30ea5e3952d38ff30ffc7da)
145
177
 
146
- ### Key changes
178
+ ### Key changes
147
179
 
148
- 1. A new API IContainerRuntimeBase.generateDocumentUniqueId() is exposed. This API will opportunistically generate IDs in short format (non-negative numbers). If it can't achieve that, it will return UUID strings. UUIDs generated will have low entropy in groups and will compress well. It can be leveraged anywhere in container where container unique IDs are required. I.e. any place that uses uuid() and stores data in container is likely candidate to start leveraging this API.
149
- 2. Data store internal IDs (IDs that are auto generated by FF system) will opportunistically be generated in shorter form. Data stores created in detached container will always have short IDs, data stores created in attached container will opportunistically be short (by using newly added IContainerRuntimeBase.generateDocumentUniqueId() capability)
150
- 3. Similar DDS names will be opportunistically short (same considerations for detached DDS vs. attached DDS)
180
+ 1. A new API IContainerRuntimeBase.generateDocumentUniqueId() is exposed. This API will opportunistically generate IDs in short format (non-negative numbers). If it can't achieve that, it will return UUID strings. UUIDs generated will have low entropy in groups and will compress well. It can be leveraged anywhere in container where container unique IDs are required. I.e. any place that uses uuid() and stores data in container is likely candidate to start leveraging this API.
181
+ 2. Data store internal IDs (IDs that are auto generated by FF system) will opportunistically be generated in shorter form. Data stores created in detached container will always have short IDs, data stores created in attached container will opportunistically be short (by using newly added IContainerRuntimeBase.generateDocumentUniqueId() capability)
182
+ 3. Similar DDS names will be opportunistically short (same considerations for detached DDS vs. attached DDS)
151
183
 
152
- ### Implementation details
184
+ ### Implementation details
153
185
 
154
- 1. Container level ID Compressor can now be enabled with delay. With such setting, only new IContainerRuntimeBase.generateDocumentUniqueId() is exposed (ID Compressor is not exposed in such case, as leveraging any of its other capabilities requires future container sessions to load ID Compressor on container load, for correctness reasons). Once Container establishes connection and any changes are made in container, newly added API will start generating more compact IDs (in most cases).
186
+ 1. Container level ID Compressor can now be enabled with delay. With such setting, only new IContainerRuntimeBase.generateDocumentUniqueId() is exposed (ID Compressor is not exposed in such case, as leveraging any of its other capabilities requires future container sessions to load ID Compressor on container load, for correctness reasons). Once Container establishes connection and any changes are made in container, newly added API will start generating more compact IDs (in most cases).
155
187
 
156
- ### Breaking changes
188
+ ### Breaking changes
157
189
 
158
- 1. DDS names can no longer start with "\_" symbol - this is reserved for FF needs. I've validated that's not an issue for AzureClient (it only creates root object by name, everything else is referred by handle). Our main internal partners almost never use named DDSs (I can find only 4 instances in Loop).
190
+ 1. DDS names can no longer start with "\_" symbol - this is reserved for FF needs. I've validated that's not an issue for AzureClient (it only creates root object by name, everything else is referred by handle). Our main internal partners almost never use named DDSs (I can find only 4 instances in Loop).
159
191
 
160
- ### Backward compatibility considerations
192
+ ### Backward compatibility considerations
161
193
 
162
- 1. Data store internal IDs could collide with earlier used names data stores. Earlier versions of FF framework (before DataStore aliasing feature was added) allowed customers to supply IDs for data stores. And thus, files created with earlier versions of framework could have data store IDs that will be similar to names FF will use for newly created data stores ("A", ... "Z", "a"..."z", "AA", etc.). While such collision is possible, it's very unlikely (almost impossible) if user-provided names were at least 4-5 characters long.
163
- 2. If application runs to these problems, or wants to reduce risks, consider disabling ID compressor via IContainerRuntimeOptions.enableRuntimeIdCompressor = "off".
194
+ 1. Data store internal IDs could collide with earlier used names data stores. Earlier versions of FF framework (before DataStore aliasing feature was added) allowed customers to supply IDs for data stores. And thus, files created with earlier versions of framework could have data store IDs that will be similar to names FF will use for newly created data stores ("A", ... "Z", "a"..."z", "AA", etc.). While such collision is possible, it's very unlikely (almost impossible) if user-provided names were at least 4-5 characters long.
195
+ 2. If application runs to these problems, or wants to reduce risks, consider disabling ID compressor via IContainerRuntimeOptions.enableRuntimeIdCompressor = "off".
164
196
 
165
- ### Minor changes
197
+ ### Minor changes
166
198
 
167
- 1. IContainerRuntime.createDetachedRootDataStore() is removed. Please use IContainerRuntime.createDetachedDataStore and IDataStore.trySetAlias() instead
168
- 2. IContainerRuntimeOptions.enableRuntimeIdCompressor has been changes from boolean to tri-state.
199
+ 1. IContainerRuntime.createDetachedRootDataStore() is removed. Please use IContainerRuntime.createDetachedDataStore and IDataStore.trySetAlias() instead
200
+ 2. IContainerRuntimeOptions.enableRuntimeIdCompressor has been changes from boolean to tri-state.
169
201
 
170
- - Deprecated error-related enums have been removed ([#19067](https://github.com/microsoft/FluidFramework/issues/19067)) [59793302e5](https://github.com/microsoft/FluidFramework/commits/59793302e56784cfb6ace0e6469345f3565b3312)
202
+ - Deprecated error-related enums have been removed ([#19067](https://github.com/microsoft/FluidFramework/issues/19067)) [59793302e5](https://github.com/microsoft/FluidFramework/commits/59793302e56784cfb6ace0e6469345f3565b3312)
171
203
 
172
- Error-related enums `ContainerErrorType`, `DriverErrorType`, `OdspErrorType` and `RouterliciousErrorType` were previously
173
- deprecated and are now removed. There are replacement object-based enumerations of `ContainerErrorTypes`,
174
- `DriverErrorTypes`, `OdspErrorTypes` and `RouterliciousErrorTypes`. Refer to the release notes of [Fluid Framework version
175
- 2.0.0-internal.7.0.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.0.0-internal.7.0.0) for details
176
- on the replacements.
204
+ Error-related enums `ContainerErrorType`, `DriverErrorType`, `OdspErrorType` and `RouterliciousErrorType` were previously
205
+ deprecated and are now removed. There are replacement object-based enumerations of `ContainerErrorTypes`,
206
+ `DriverErrorTypes`, `OdspErrorTypes` and `RouterliciousErrorTypes`. Refer to the release notes of [Fluid Framework version
207
+ 2.0.0-internal.7.0.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.0.0-internal.7.0.0) for details
208
+ on the replacements.
177
209
 
178
- - container-definitions: ILoaderOptions no longer accepts arbitrary key/value pairs ([#19306](https://github.com/microsoft/FluidFramework/issues/19306)) [741926e225](https://github.com/microsoft/FluidFramework/commits/741926e2253a161504ecc6a6451d8f15d7ac4ed6)
210
+ - container-definitions: ILoaderOptions no longer accepts arbitrary key/value pairs ([#19306](https://github.com/microsoft/FluidFramework/issues/19306)) [741926e225](https://github.com/microsoft/FluidFramework/commits/741926e2253a161504ecc6a6451d8f15d7ac4ed6)
179
211
 
180
- ILoaderOptions has been narrowed to the specific set of supported loader options, and may no longer be used to pass arbitrary key/value pairs through to the runtime.
212
+ ILoaderOptions has been narrowed to the specific set of supported loader options, and may no longer be used to pass arbitrary key/value pairs through to the runtime.
181
213
 
182
214
  ## 2.0.0-rc.1.0.0
183
215
 
184
216
  ### Minor Changes
185
217
 
186
- - Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
187
-
188
- 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)
189
-
190
- - @fluidframework/gitresources
191
- - @fluidframework/server-kafka-orderer
192
- - @fluidframework/server-lambdas
193
- - @fluidframework/server-lambdas-driver
194
- - @fluidframework/server-local-server
195
- - @fluidframework/server-memory-orderer
196
- - @fluidframework/protocol-base
197
- - @fluidframework/server-routerlicious
198
- - @fluidframework/server-routerlicious-base
199
- - @fluidframework/server-services
200
- - @fluidframework/server-services-client
201
- - @fluidframework/server-services-core
202
- - @fluidframework/server-services-ordering-kafkanode
203
- - @fluidframework/server-services-ordering-rdkafka
204
- - @fluidframework/server-services-ordering-zookeeper
205
- - @fluidframework/server-services-shared
206
- - @fluidframework/server-services-telemetry
207
- - @fluidframework/server-services-utils
208
- - @fluidframework/server-test-utils
209
- - tinylicious
210
-
211
- - Updated @fluidframework/protocol-definitions ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
212
-
213
- The @fluidframework/protocol-definitions dependency has been upgraded to v3.1.0. [See the full
214
- changelog.](https://github.com/microsoft/FluidFramework/blob/main/common/lib/protocol-definitions/CHANGELOG.md#310)
218
+ - Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
219
+
220
+ 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)
221
+
222
+ - @fluidframework/gitresources
223
+ - @fluidframework/server-kafka-orderer
224
+ - @fluidframework/server-lambdas
225
+ - @fluidframework/server-lambdas-driver
226
+ - @fluidframework/server-local-server
227
+ - @fluidframework/server-memory-orderer
228
+ - @fluidframework/protocol-base
229
+ - @fluidframework/server-routerlicious
230
+ - @fluidframework/server-routerlicious-base
231
+ - @fluidframework/server-services
232
+ - @fluidframework/server-services-client
233
+ - @fluidframework/server-services-core
234
+ - @fluidframework/server-services-ordering-kafkanode
235
+ - @fluidframework/server-services-ordering-rdkafka
236
+ - @fluidframework/server-services-ordering-zookeeper
237
+ - @fluidframework/server-services-shared
238
+ - @fluidframework/server-services-telemetry
239
+ - @fluidframework/server-services-utils
240
+ - @fluidframework/server-test-utils
241
+ - tinylicious
242
+
243
+ - Updated @fluidframework/protocol-definitions ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
244
+
245
+ The @fluidframework/protocol-definitions dependency has been upgraded to v3.1.0. [See the full
246
+ changelog.](https://github.com/microsoft/FluidFramework/blob/main/common/lib/protocol-definitions/CHANGELOG.md#310)
215
247
 
216
248
  ## 2.0.0-internal.8.0.0
217
249
 
218
250
  ### Major Changes
219
251
 
220
- - datastore: Removed `FluidDataStoreRuntime.load(...)` [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
252
+ - datastore: Removed `FluidDataStoreRuntime.load(...)` [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
221
253
 
222
- The static method `FluidDataStoreRuntime.load(...)` has been removed. Please migrate all usage of this method to
223
- `FluidDataStoreRuntime` constructor.
254
+ The static method `FluidDataStoreRuntime.load(...)` has been removed. Please migrate all usage of this method to
255
+ `FluidDataStoreRuntime` constructor.
224
256
 
225
- - container-definitions: Fix ISnapshotTreeWithBlobContents and mark internal [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
257
+ - container-definitions: Fix ISnapshotTreeWithBlobContents and mark internal [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
226
258
 
227
- `ISnapshotTreeWithBlobContents` is an internal type that should not be used externally. Additionally, the type didn't
228
- match the usage, specifically in runtime-utils where an `any` cast was used to work around undefined blobContents. The
229
- type has been updated to reflect that blobContents can be undefined.
259
+ `ISnapshotTreeWithBlobContents` is an internal type that should not be used externally. Additionally, the type didn't
260
+ match the usage, specifically in runtime-utils where an `any` cast was used to work around undefined blobContents. The
261
+ type has been updated to reflect that blobContents can be undefined.
230
262
 
231
- - runtime-definitions: Removed IFluidRouter from IFluidDataStoreChannel and FluidDataStoreRuntime [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
263
+ - runtime-definitions: Removed IFluidRouter from IFluidDataStoreChannel and FluidDataStoreRuntime [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
232
264
 
233
- The `IFluidRouter` property has been removed from `IFluidDataStoreChannel` and `FluidDataStoreRuntime`. Please migrate
234
- all usage to the `IFluidDataStoreChannel.entryPoint` API.
265
+ The `IFluidRouter` property has been removed from `IFluidDataStoreChannel` and `FluidDataStoreRuntime`. Please migrate
266
+ all usage to the `IFluidDataStoreChannel.entryPoint` API.
235
267
 
236
- See
237
- [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md)
238
- for more details.
268
+ See
269
+ [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md)
270
+ for more details.
239
271
 
240
272
  ## 2.0.0-internal.7.4.0
241
273
 
@@ -257,74 +289,74 @@ Dependency updates only.
257
289
 
258
290
  ### Major Changes
259
291
 
260
- - Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
292
+ - Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
261
293
 
262
- This included the following changes from the protocol-definitions release:
294
+ This included the following changes from the protocol-definitions release:
263
295
 
264
- - Updating signal interfaces for some planned improvements. The intention is split the interface between signals
265
- submitted by clients to the server and the resulting signals sent from the server to clients.
266
- - A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
267
- been added, which will be the typing for signals sent from the client to the server. Both extend a new
268
- ISignalMessageBase interface that contains common members.
269
- - The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
296
+ - Updating signal interfaces for some planned improvements. The intention is split the interface between signals
297
+ submitted by clients to the server and the resulting signals sent from the server to clients.
298
+ - A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
299
+ been added, which will be the typing for signals sent from the client to the server. Both extend a new
300
+ ISignalMessageBase interface that contains common members.
301
+ - The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
270
302
 
271
- - runtime-definitions: `bindToContext` API removed [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
303
+ - runtime-definitions: `bindToContext` API removed [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
272
304
 
273
- `bindToContext` has been removed from `FluidDataStoreRuntime`, `IFluidDataStoreContext` and
274
- `MockFluidDataStoreContext`. This has been deprecated for several releases and cannot be used anymore.
305
+ `bindToContext` has been removed from `FluidDataStoreRuntime`, `IFluidDataStoreContext` and
306
+ `MockFluidDataStoreContext`. This has been deprecated for several releases and cannot be used anymore.
275
307
 
276
- - Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
308
+ - Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
277
309
 
278
- Dependencies on the following Fluid server package have been updated to version 2.0.1:
310
+ Dependencies on the following Fluid server package have been updated to version 2.0.1:
279
311
 
280
- - @fluidframework/gitresources: 2.0.1
281
- - @fluidframework/server-kafka-orderer: 2.0.1
282
- - @fluidframework/server-lambdas: 2.0.1
283
- - @fluidframework/server-lambdas-driver: 2.0.1
284
- - @fluidframework/server-local-server: 2.0.1
285
- - @fluidframework/server-memory-orderer: 2.0.1
286
- - @fluidframework/protocol-base: 2.0.1
287
- - @fluidframework/server-routerlicious: 2.0.1
288
- - @fluidframework/server-routerlicious-base: 2.0.1
289
- - @fluidframework/server-services: 2.0.1
290
- - @fluidframework/server-services-client: 2.0.1
291
- - @fluidframework/server-services-core: 2.0.1
292
- - @fluidframework/server-services-ordering-kafkanode: 2.0.1
293
- - @fluidframework/server-services-ordering-rdkafka: 2.0.1
294
- - @fluidframework/server-services-ordering-zookeeper: 2.0.1
295
- - @fluidframework/server-services-shared: 2.0.1
296
- - @fluidframework/server-services-telemetry: 2.0.1
297
- - @fluidframework/server-services-utils: 2.0.1
298
- - @fluidframework/server-test-utils: 2.0.1
299
- - tinylicious: 2.0.1
312
+ - @fluidframework/gitresources: 2.0.1
313
+ - @fluidframework/server-kafka-orderer: 2.0.1
314
+ - @fluidframework/server-lambdas: 2.0.1
315
+ - @fluidframework/server-lambdas-driver: 2.0.1
316
+ - @fluidframework/server-local-server: 2.0.1
317
+ - @fluidframework/server-memory-orderer: 2.0.1
318
+ - @fluidframework/protocol-base: 2.0.1
319
+ - @fluidframework/server-routerlicious: 2.0.1
320
+ - @fluidframework/server-routerlicious-base: 2.0.1
321
+ - @fluidframework/server-services: 2.0.1
322
+ - @fluidframework/server-services-client: 2.0.1
323
+ - @fluidframework/server-services-core: 2.0.1
324
+ - @fluidframework/server-services-ordering-kafkanode: 2.0.1
325
+ - @fluidframework/server-services-ordering-rdkafka: 2.0.1
326
+ - @fluidframework/server-services-ordering-zookeeper: 2.0.1
327
+ - @fluidframework/server-services-shared: 2.0.1
328
+ - @fluidframework/server-services-telemetry: 2.0.1
329
+ - @fluidframework/server-services-utils: 2.0.1
330
+ - @fluidframework/server-test-utils: 2.0.1
331
+ - tinylicious: 2.0.1
300
332
 
301
- - test-utils: provideEntryPoint is required [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
333
+ - test-utils: provideEntryPoint is required [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
302
334
 
303
- The optional `provideEntryPoint` method has become required on a number of constructors. A value will need to be provided to the following classes:
335
+ The optional `provideEntryPoint` method has become required on a number of constructors. A value will need to be provided to the following classes:
304
336
 
305
- - `BaseContainerRuntimeFactory`
306
- - `RuntimeFactory`
307
- - `ContainerRuntime` (constructor and `loadRuntime`)
308
- - `FluidDataStoreRuntime`
337
+ - `BaseContainerRuntimeFactory`
338
+ - `RuntimeFactory`
339
+ - `ContainerRuntime` (constructor and `loadRuntime`)
340
+ - `FluidDataStoreRuntime`
309
341
 
310
- See [testContainerRuntimeFactoryWithDefaultDataStore.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/test/test-utils/src/testContainerRuntimeFactoryWithDefaultDataStore.ts) for an example implemtation of `provideEntryPoint` for ContainerRuntime.
311
- See [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L83) for an example implementation of `provideEntryPoint` for DataStoreRuntime.
342
+ See [testContainerRuntimeFactoryWithDefaultDataStore.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/test/test-utils/src/testContainerRuntimeFactoryWithDefaultDataStore.ts) for an example implemtation of `provideEntryPoint` for ContainerRuntime.
343
+ See [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L83) for an example implementation of `provideEntryPoint` for DataStoreRuntime.
312
344
 
313
- Subsequently, various `entryPoint` and `getEntryPoint()` endpoints have become required. Please see [containerRuntime.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/runtime/container-runtime/src/containerRuntime.ts) for example implementations of these APIs.
345
+ Subsequently, various `entryPoint` and `getEntryPoint()` endpoints have become required. Please see [containerRuntime.ts](https://github.com/microsoft/FluidFramework/tree/main/packages/runtime/container-runtime/src/containerRuntime.ts) for example implementations of these APIs.
314
346
 
315
- For more details, see [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md)
347
+ For more details, see [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md)
316
348
 
317
- - Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
349
+ - Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
318
350
 
319
- The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
351
+ The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
320
352
 
321
353
  ## 2.0.0-internal.6.4.0
322
354
 
323
355
  ### Minor Changes
324
356
 
325
- - Some stack traces are improved ([#17380](https://github.com/microsoft/FluidFramework/issues/17380)) [34f2808ee9](https://github.com/microsoft/FluidFramework/commits/34f2808ee9764aef21b990f8b48860d9e3ce27a5)
357
+ - Some stack traces are improved ([#17380](https://github.com/microsoft/FluidFramework/issues/17380)) [34f2808ee9](https://github.com/microsoft/FluidFramework/commits/34f2808ee9764aef21b990f8b48860d9e3ce27a5)
326
358
 
327
- Some stack traces have been improved and might now include frames for async functions that weren't previously included.
359
+ Some stack traces have been improved and might now include frames for async functions that weren't previously included.
328
360
 
329
361
  ## 2.0.0-internal.6.3.0
330
362
 
@@ -334,32 +366,32 @@ Dependency updates only.
334
366
 
335
367
  ### Minor Changes
336
368
 
337
- - Remove use of @fluidframework/common-definitions ([#16638](https://github.com/microsoft/FluidFramework/issues/16638)) [a8c81509c9](https://github.com/microsoft/FluidFramework/commits/a8c81509c9bf09cfb2092ebcf7265205f9eb6dbf)
338
-
339
- The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
340
- imported from the **@fluidframework/core-interfaces** package:
341
-
342
- - interface IDisposable
343
- - interface IErrorEvent
344
- - interface IErrorEvent
345
- - interface IEvent
346
- - interface IEventProvider
347
- - interface ILoggingError
348
- - interface ITaggedTelemetryPropertyType
349
- - interface ITelemetryBaseEvent
350
- - interface ITelemetryBaseLogger
351
- - interface ITelemetryErrorEvent
352
- - interface ITelemetryGenericEvent
353
- - interface ITelemetryLogger
354
- - interface ITelemetryPerformanceEvent
355
- - interface ITelemetryProperties
356
- - type ExtendEventProvider
357
- - type IEventThisPlaceHolder
358
- - type IEventTransformer
359
- - type ReplaceIEventThisPlaceHolder
360
- - type ReplaceIEventThisPlaceHolder
361
- - type TelemetryEventCategory
362
- - type TelemetryEventPropertyType
369
+ - Remove use of @fluidframework/common-definitions ([#16638](https://github.com/microsoft/FluidFramework/issues/16638)) [a8c81509c9](https://github.com/microsoft/FluidFramework/commits/a8c81509c9bf09cfb2092ebcf7265205f9eb6dbf)
370
+
371
+ The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
372
+ imported from the **@fluidframework/core-interfaces** package:
373
+
374
+ - interface IDisposable
375
+ - interface IErrorEvent
376
+ - interface IErrorEvent
377
+ - interface IEvent
378
+ - interface IEventProvider
379
+ - interface ILoggingError
380
+ - interface ITaggedTelemetryPropertyType
381
+ - interface ITelemetryBaseEvent
382
+ - interface ITelemetryBaseLogger
383
+ - interface ITelemetryErrorEvent
384
+ - interface ITelemetryGenericEvent
385
+ - interface ITelemetryLogger
386
+ - interface ITelemetryPerformanceEvent
387
+ - interface ITelemetryProperties
388
+ - type ExtendEventProvider
389
+ - type IEventThisPlaceHolder
390
+ - type IEventTransformer
391
+ - type ReplaceIEventThisPlaceHolder
392
+ - type ReplaceIEventThisPlaceHolder
393
+ - type TelemetryEventCategory
394
+ - type TelemetryEventPropertyType
363
395
 
364
396
  ## 2.0.0-internal.6.1.0
365
397
 
@@ -369,47 +401,47 @@ Dependency updates only.
369
401
 
370
402
  ### Major Changes
371
403
 
372
- - Request APIs deprecated from many places [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
404
+ - Request APIs deprecated from many places [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
373
405
 
374
- The `request` API (associated with the `IFluidRouter` interface) has been deprecated on a number of classes and interfaces. The following are impacted:
406
+ The `request` API (associated with the `IFluidRouter` interface) has been deprecated on a number of classes and interfaces. The following are impacted:
375
407
 
376
- - `IRuntime` and `ContainerRuntime`
377
- - `IFluidDataStoreRuntime` and `FluidDataStoreRuntime`
378
- - `IFluidDataStoreChannel`
379
- - `MockFluidDataStoreRuntime`
380
- - `TestFluidObject`
408
+ - `IRuntime` and `ContainerRuntime`
409
+ - `IFluidDataStoreRuntime` and `FluidDataStoreRuntime`
410
+ - `IFluidDataStoreChannel`
411
+ - `MockFluidDataStoreRuntime`
412
+ - `TestFluidObject`
381
413
 
382
- Please migrate usage to the corresponding `entryPoint` or `getEntryPoint()` of the object. The value for these "entryPoint" related APIs is determined from factories (for `IRuntime` and `IFluidDataStoreRuntime`) via the `initializeEntryPoint` method. If no method is passed to the factory, the corresponding `entryPoint` and `getEntryPoint()` will be undefined.
414
+ Please migrate usage to the corresponding `entryPoint` or `getEntryPoint()` of the object. The value for these "entryPoint" related APIs is determined from factories (for `IRuntime` and `IFluidDataStoreRuntime`) via the `initializeEntryPoint` method. If no method is passed to the factory, the corresponding `entryPoint` and `getEntryPoint()` will be undefined.
383
415
 
384
- For an example implementation of `initializeEntryPoint`, see [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/blob/next/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L84).
416
+ For an example implementation of `initializeEntryPoint`, see [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/blob/next/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L84).
385
417
 
386
- More information of the migration off the request pattern, and current status of its removal, is documented in [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md).
418
+ More information of the migration off the request pattern, and current status of its removal, is documented in [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md).
387
419
 
388
- - `initializeEntryPoint` will become required [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
420
+ - `initializeEntryPoint` will become required [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
389
421
 
390
- The optional `initializeEntryPoint` method has been added to a number of constructors. **This method argument will become required in an upcoming release** and a value will need to be provided to the following classes:
422
+ The optional `initializeEntryPoint` method has been added to a number of constructors. **This method argument will become required in an upcoming release** and a value will need to be provided to the following classes:
391
423
 
392
- - `BaseContainerRuntimeFactory`
393
- - `ContainerRuntimeFactoryWithDefaultDataStore`
394
- - `RuntimeFactory`
395
- - `ContainerRuntime` (constructor and `loadRuntime`)
396
- - `FluidDataStoreRuntime`
424
+ - `BaseContainerRuntimeFactory`
425
+ - `ContainerRuntimeFactoryWithDefaultDataStore`
426
+ - `RuntimeFactory`
427
+ - `ContainerRuntime` (constructor and `loadRuntime`)
428
+ - `FluidDataStoreRuntime`
397
429
 
398
- For an example implementation of `initializeEntryPoint`, see [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/blob/main/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L84).
430
+ For an example implementation of `initializeEntryPoint`, see [pureDataObjectFactory.ts](https://github.com/microsoft/FluidFramework/blob/main/packages/framework/aqueduct/src/data-object-factories/pureDataObjectFactory.ts#L84).
399
431
 
400
- This work will replace the request pattern. See [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md) for more info on this effort.
432
+ This work will replace the request pattern. See [Removing-IFluidRouter.md](https://github.com/microsoft/FluidFramework/blob/main/packages/common/core-interfaces/Removing-IFluidRouter.md) for more info on this effort.
401
433
 
402
- - FluidDataStoreRuntime.getChannel throws for channels that do not exist [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
434
+ - FluidDataStoreRuntime.getChannel throws for channels that do not exist [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
403
435
 
404
- Previously, calling `FluidDataStoreRuntime.getChannel(id)` for a channel that does not exist would wait for the channel to be created (possibly waiting indefinitely if never created). However, there is no safe means to dynamically create a channel in this manner without risking data corruption. The call will instead now throw for non-existent channels.
436
+ Previously, calling `FluidDataStoreRuntime.getChannel(id)` for a channel that does not exist would wait for the channel to be created (possibly waiting indefinitely if never created). However, there is no safe means to dynamically create a channel in this manner without risking data corruption. The call will instead now throw for non-existent channels.
405
437
 
406
- - Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
438
+ - Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
407
439
 
408
- 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.
440
+ 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.
409
441
 
410
- - IDeltaManager members disposed and dispose() removed [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
442
+ - IDeltaManager members disposed and dispose() removed [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
411
443
 
412
- IDeltaManager members disposed and dispose() were deprecated in 2.0.0-internal.5.3.0 and have now been removed.
444
+ IDeltaManager members disposed and dispose() were deprecated in 2.0.0-internal.5.3.0 and have now been removed.
413
445
 
414
446
  ## 2.0.0-internal.5.4.0
415
447
 
@@ -431,22 +463,22 @@ Dependency updates only.
431
463
 
432
464
  ### Major Changes
433
465
 
434
- - The `@fluidframework/garbage-collector` package was deprecated in version 2.0.0-internal.4.1.0. [8b242fdc79](https://github.com/microsoft/FluidFramework/commits/8b242fdc796714cf1da9ad3f90d02efb122af0c2)
435
- It has now been removed with the following functions, interfaces, and types in it.
436
-
437
- - `cloneGCData`
438
- - `concatGarbageCollectionData`
439
- - `concatGarbageCollectionStates`
440
- - `GCDataBuilder`
441
- - `getGCDataFromSnapshot`
442
- - `IGCResult`
443
- - `removeRouteFromAllNodes`
444
- - `runGarbageCollection`
445
- - `trimLeadingAndTrailingSlashes`
446
- - `trimLeadingSlashes`
447
- - `trimTrailingSlashes`
448
- - `unpackChildNodesGCDetails`
449
- - `unpackChildNodesUsedRoutes`
466
+ - The `@fluidframework/garbage-collector` package was deprecated in version 2.0.0-internal.4.1.0. [8b242fdc79](https://github.com/microsoft/FluidFramework/commits/8b242fdc796714cf1da9ad3f90d02efb122af0c2)
467
+ It has now been removed with the following functions, interfaces, and types in it.
468
+
469
+ - `cloneGCData`
470
+ - `concatGarbageCollectionData`
471
+ - `concatGarbageCollectionStates`
472
+ - `GCDataBuilder`
473
+ - `getGCDataFromSnapshot`
474
+ - `IGCResult`
475
+ - `removeRouteFromAllNodes`
476
+ - `runGarbageCollection`
477
+ - `trimLeadingAndTrailingSlashes`
478
+ - `trimLeadingSlashes`
479
+ - `trimTrailingSlashes`
480
+ - `unpackChildNodesGCDetails`
481
+ - `unpackChildNodesUsedRoutes`
450
482
 
451
483
  ## 2.0.0-internal.4.4.0
452
484
 
@@ -456,31 +488,31 @@ Dependency updates only.
456
488
 
457
489
  ### Minor Changes
458
490
 
459
- - GC interfaces removed from runtime-definitions ([#14750](https://github.com/microsoft/FluidFramework/pull-requests/14750)) [60274eacab](https://github.com/microsoft/FluidFramework/commits/60274eacabf14d42f52f6ad1c2f64356e64ba1a2)
460
-
461
- The following interfaces available in `@fluidframework/runtime-definitions` are internal implementation details and have been deprecated for public use. They will be removed in an upcoming release.
462
-
463
- - `IGarbageCollectionNodeData`
464
- - `IGarbageCollectionState`
465
- - `IGarbageCollectionSnapshotData`
466
- - `IGarbageCollectionSummaryDetailsLegacy`
467
-
468
- - @fluidframework/garbage-collector deprecated ([#14750](https://github.com/microsoft/FluidFramework/pull-requests/14750)) [60274eacab](https://github.com/microsoft/FluidFramework/commits/60274eacabf14d42f52f6ad1c2f64356e64ba1a2)
469
-
470
- The `@fluidframework/garbage-collector` package is deprecated with the following functions, interfaces, and types in it.
471
- These are internal implementation details and have been deprecated for public use. They will be removed in an upcoming
472
- release.
473
-
474
- - `cloneGCData`
475
- - `concatGarbageCollectionData`
476
- - `concatGarbageCollectionStates`
477
- - `GCDataBuilder`
478
- - `getGCDataFromSnapshot`
479
- - `IGCResult`
480
- - `removeRouteFromAllNodes`
481
- - `runGarbageCollection`
482
- - `trimLeadingAndTrailingSlashes`
483
- - `trimLeadingSlashes`
484
- - `trimTrailingSlashes`
485
- - `unpackChildNodesGCDetails`
486
- - `unpackChildNodesUsedRoutes`
491
+ - GC interfaces removed from runtime-definitions ([#14750](https://github.com/microsoft/FluidFramework/pull-requests/14750)) [60274eacab](https://github.com/microsoft/FluidFramework/commits/60274eacabf14d42f52f6ad1c2f64356e64ba1a2)
492
+
493
+ The following interfaces available in `@fluidframework/runtime-definitions` are internal implementation details and have been deprecated for public use. They will be removed in an upcoming release.
494
+
495
+ - `IGarbageCollectionNodeData`
496
+ - `IGarbageCollectionState`
497
+ - `IGarbageCollectionSnapshotData`
498
+ - `IGarbageCollectionSummaryDetailsLegacy`
499
+
500
+ - @fluidframework/garbage-collector deprecated ([#14750](https://github.com/microsoft/FluidFramework/pull-requests/14750)) [60274eacab](https://github.com/microsoft/FluidFramework/commits/60274eacabf14d42f52f6ad1c2f64356e64ba1a2)
501
+
502
+ The `@fluidframework/garbage-collector` package is deprecated with the following functions, interfaces, and types in it.
503
+ These are internal implementation details and have been deprecated for public use. They will be removed in an upcoming
504
+ release.
505
+
506
+ - `cloneGCData`
507
+ - `concatGarbageCollectionData`
508
+ - `concatGarbageCollectionStates`
509
+ - `GCDataBuilder`
510
+ - `getGCDataFromSnapshot`
511
+ - `IGCResult`
512
+ - `removeRouteFromAllNodes`
513
+ - `runGarbageCollection`
514
+ - `trimLeadingAndTrailingSlashes`
515
+ - `trimLeadingSlashes`
516
+ - `trimTrailingSlashes`
517
+ - `unpackChildNodesGCDetails`
518
+ - `unpackChildNodesUsedRoutes`