@fluidframework/container-runtime-definitions 2.71.0 → 2.73.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 +8 -15
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @fluidframework/container-runtime-definitions
|
|
2
2
|
|
|
3
|
+
## 2.73.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.72.0
|
|
8
|
+
|
|
9
|
+
Dependency updates only.
|
|
10
|
+
|
|
3
11
|
## 2.71.0
|
|
4
12
|
|
|
5
13
|
Dependency updates only.
|
|
@@ -97,7 +105,6 @@ Dependency updates only.
|
|
|
97
105
|
parameter.
|
|
98
106
|
|
|
99
107
|
These changes were originally announced in version 0.25.0. See the following issues for more details:
|
|
100
|
-
|
|
101
108
|
- [#1537](https://github.com/microsoft/FluidFramework/issues/1537)
|
|
102
109
|
- [#2931](https://github.com/microsoft/FluidFramework/pull/2931)
|
|
103
110
|
|
|
@@ -126,7 +133,6 @@ Dependency updates only.
|
|
|
126
133
|
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.
|
|
127
134
|
|
|
128
135
|
#### Alternatives
|
|
129
|
-
|
|
130
136
|
- Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
|
|
131
137
|
- Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect use `IContainer.disconnect`.
|
|
132
138
|
- Alternatives to calling `IDeltaManager.inbound.resume`, `IDeltaManager.outbound.resume` for `IContainer` reconnect use `IContainer.connect`.
|
|
@@ -167,7 +173,6 @@ Dependency updates only.
|
|
|
167
173
|
|
|
168
174
|
Make IFluidDataStoreRuntime.deltaManager have an opaque type.
|
|
169
175
|
Marks the following types which were reachable from it as alpha:
|
|
170
|
-
|
|
171
176
|
- IConnectionDetails
|
|
172
177
|
- IDeltaSender
|
|
173
178
|
- IDeltaManagerEvents
|
|
@@ -191,7 +196,6 @@ Dependency updates only.
|
|
|
191
196
|
TypeScript types and implementation code.
|
|
192
197
|
|
|
193
198
|
This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
|
|
194
|
-
|
|
195
199
|
- `"moduleResolution": "Node16"` with `"module": "Node16"`
|
|
196
200
|
- `"moduleResolution": "Bundler"` with `"module": "ESNext"`
|
|
197
201
|
|
|
@@ -210,26 +214,21 @@ Dependency updates only.
|
|
|
210
214
|
- 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)
|
|
211
215
|
|
|
212
216
|
### Key changes
|
|
213
|
-
|
|
214
217
|
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.
|
|
215
218
|
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)
|
|
216
219
|
3. Similar DDS names will be opportunistically short (same considerations for detached DDS vs. attached DDS)
|
|
217
220
|
|
|
218
221
|
### Implementation details
|
|
219
|
-
|
|
220
222
|
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).
|
|
221
223
|
|
|
222
224
|
### Breaking changes
|
|
223
|
-
|
|
224
225
|
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).
|
|
225
226
|
|
|
226
227
|
### Backward compatibility considerations
|
|
227
|
-
|
|
228
228
|
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.
|
|
229
229
|
2. If application runs to these problems, or wants to reduce risks, consider disabling ID compressor via IContainerRuntimeOptions.enableRuntimeIdCompressor = "off".
|
|
230
230
|
|
|
231
231
|
### Minor changes
|
|
232
|
-
|
|
233
232
|
1. IContainerRuntime.createDetachedRootDataStore() is removed. Please use IContainerRuntime.createDetachedDataStore and IDataStore.trySetAlias() instead
|
|
234
233
|
2. IContainerRuntimeOptions.enableRuntimeIdCompressor has been changes from boolean to tri-state.
|
|
235
234
|
|
|
@@ -248,7 +247,6 @@ Dependency updates only.
|
|
|
248
247
|
- Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
249
248
|
|
|
250
249
|
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)
|
|
251
|
-
|
|
252
250
|
- @fluidframework/gitresources
|
|
253
251
|
- @fluidframework/server-kafka-orderer
|
|
254
252
|
- @fluidframework/server-lambdas
|
|
@@ -317,7 +315,6 @@ Dependency updates only.
|
|
|
317
315
|
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
318
316
|
|
|
319
317
|
This included the following changes from the protocol-definitions release:
|
|
320
|
-
|
|
321
318
|
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
322
319
|
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
323
320
|
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
@@ -332,7 +329,6 @@ Dependency updates only.
|
|
|
332
329
|
- DEPRECATED: resolveHandle and IFluidHandleContext deprecated on IContainerRuntime [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
333
330
|
|
|
334
331
|
The `resolveHandle(...)` and `get IFluidHandleContext()` methods have been deprecated on the following interfaces:
|
|
335
|
-
|
|
336
332
|
- `IContainerRuntime`
|
|
337
333
|
- `IContainerRuntimeBase`
|
|
338
334
|
|
|
@@ -343,7 +339,6 @@ Dependency updates only.
|
|
|
343
339
|
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
344
340
|
|
|
345
341
|
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
346
|
-
|
|
347
342
|
- @fluidframework/gitresources: 2.0.1
|
|
348
343
|
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
349
344
|
- @fluidframework/server-lambdas: 2.0.1
|
|
@@ -389,7 +384,6 @@ Dependency updates only.
|
|
|
389
384
|
|
|
390
385
|
The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
|
|
391
386
|
imported from the **@fluidframework/core-interfaces** package:
|
|
392
|
-
|
|
393
387
|
- interface IDisposable
|
|
394
388
|
- interface IErrorEvent
|
|
395
389
|
- interface IErrorEvent
|
|
@@ -454,7 +448,6 @@ Dependency updates only.
|
|
|
454
448
|
### Major Changes
|
|
455
449
|
|
|
456
450
|
- The following functions and classes were deprecated in previous releases and have been removed: [8b242fdc79](https://github.com/microsoft/FluidFramework/commits/8b242fdc796714cf1da9ad3f90d02efb122af0c2)
|
|
457
|
-
|
|
458
451
|
- `PureDataObject.getFluidObjectFromDirectory`
|
|
459
452
|
- `IProvideContainerRuntime` and its `IContainerRuntime` member.
|
|
460
453
|
- `ContainerRuntime`'s `IProvideContainerRuntime` has also been removed.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/container-runtime-definitions",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.73.0",
|
|
4
4
|
"description": "Fluid Runtime definitions",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -41,20 +41,20 @@
|
|
|
41
41
|
"main": "",
|
|
42
42
|
"types": "lib/public.d.ts",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@fluid-internal/client-utils": "~2.
|
|
45
|
-
"@fluidframework/container-definitions": "~2.
|
|
46
|
-
"@fluidframework/core-interfaces": "~2.
|
|
47
|
-
"@fluidframework/driver-definitions": "~2.
|
|
48
|
-
"@fluidframework/runtime-definitions": "~2.
|
|
44
|
+
"@fluid-internal/client-utils": "~2.73.0",
|
|
45
|
+
"@fluidframework/container-definitions": "~2.73.0",
|
|
46
|
+
"@fluidframework/core-interfaces": "~2.73.0",
|
|
47
|
+
"@fluidframework/driver-definitions": "~2.73.0",
|
|
48
|
+
"@fluidframework/runtime-definitions": "~2.73.0"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@arethetypeswrong/cli": "^0.17.1",
|
|
52
52
|
"@biomejs/biome": "~1.9.3",
|
|
53
|
-
"@fluid-tools/build-cli": "^0.
|
|
53
|
+
"@fluid-tools/build-cli": "^0.60.0",
|
|
54
54
|
"@fluidframework/build-common": "^2.0.3",
|
|
55
|
-
"@fluidframework/build-tools": "^0.
|
|
56
|
-
"@fluidframework/container-runtime-definitions-previous": "npm:@fluidframework/container-runtime-definitions@2.
|
|
57
|
-
"@fluidframework/eslint-config-fluid": "
|
|
55
|
+
"@fluidframework/build-tools": "^0.60.0",
|
|
56
|
+
"@fluidframework/container-runtime-definitions-previous": "npm:@fluidframework/container-runtime-definitions@2.71.0",
|
|
57
|
+
"@fluidframework/eslint-config-fluid": "~2.73.0",
|
|
58
58
|
"@microsoft/api-extractor": "7.52.11",
|
|
59
59
|
"concurrently": "^8.2.1",
|
|
60
60
|
"copyfiles": "^2.4.1",
|