@fluidframework/container-runtime-definitions 2.71.0 → 2.72.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 +4 -15
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# @fluidframework/container-runtime-definitions
|
|
2
2
|
|
|
3
|
+
## 2.72.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
3
7
|
## 2.71.0
|
|
4
8
|
|
|
5
9
|
Dependency updates only.
|
|
@@ -97,7 +101,6 @@ Dependency updates only.
|
|
|
97
101
|
parameter.
|
|
98
102
|
|
|
99
103
|
These changes were originally announced in version 0.25.0. See the following issues for more details:
|
|
100
|
-
|
|
101
104
|
- [#1537](https://github.com/microsoft/FluidFramework/issues/1537)
|
|
102
105
|
- [#2931](https://github.com/microsoft/FluidFramework/pull/2931)
|
|
103
106
|
|
|
@@ -126,7 +129,6 @@ Dependency updates only.
|
|
|
126
129
|
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
130
|
|
|
128
131
|
#### Alternatives
|
|
129
|
-
|
|
130
132
|
- Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
|
|
131
133
|
- Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect use `IContainer.disconnect`.
|
|
132
134
|
- Alternatives to calling `IDeltaManager.inbound.resume`, `IDeltaManager.outbound.resume` for `IContainer` reconnect use `IContainer.connect`.
|
|
@@ -167,7 +169,6 @@ Dependency updates only.
|
|
|
167
169
|
|
|
168
170
|
Make IFluidDataStoreRuntime.deltaManager have an opaque type.
|
|
169
171
|
Marks the following types which were reachable from it as alpha:
|
|
170
|
-
|
|
171
172
|
- IConnectionDetails
|
|
172
173
|
- IDeltaSender
|
|
173
174
|
- IDeltaManagerEvents
|
|
@@ -191,7 +192,6 @@ Dependency updates only.
|
|
|
191
192
|
TypeScript types and implementation code.
|
|
192
193
|
|
|
193
194
|
This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
|
|
194
|
-
|
|
195
195
|
- `"moduleResolution": "Node16"` with `"module": "Node16"`
|
|
196
196
|
- `"moduleResolution": "Bundler"` with `"module": "ESNext"`
|
|
197
197
|
|
|
@@ -210,26 +210,21 @@ Dependency updates only.
|
|
|
210
210
|
- 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
211
|
|
|
212
212
|
### Key changes
|
|
213
|
-
|
|
214
213
|
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
214
|
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
215
|
3. Similar DDS names will be opportunistically short (same considerations for detached DDS vs. attached DDS)
|
|
217
216
|
|
|
218
217
|
### Implementation details
|
|
219
|
-
|
|
220
218
|
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
219
|
|
|
222
220
|
### Breaking changes
|
|
223
|
-
|
|
224
221
|
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
222
|
|
|
226
223
|
### Backward compatibility considerations
|
|
227
|
-
|
|
228
224
|
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
225
|
2. If application runs to these problems, or wants to reduce risks, consider disabling ID compressor via IContainerRuntimeOptions.enableRuntimeIdCompressor = "off".
|
|
230
226
|
|
|
231
227
|
### Minor changes
|
|
232
|
-
|
|
233
228
|
1. IContainerRuntime.createDetachedRootDataStore() is removed. Please use IContainerRuntime.createDetachedDataStore and IDataStore.trySetAlias() instead
|
|
234
229
|
2. IContainerRuntimeOptions.enableRuntimeIdCompressor has been changes from boolean to tri-state.
|
|
235
230
|
|
|
@@ -248,7 +243,6 @@ Dependency updates only.
|
|
|
248
243
|
- Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
249
244
|
|
|
250
245
|
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
246
|
- @fluidframework/gitresources
|
|
253
247
|
- @fluidframework/server-kafka-orderer
|
|
254
248
|
- @fluidframework/server-lambdas
|
|
@@ -317,7 +311,6 @@ Dependency updates only.
|
|
|
317
311
|
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
318
312
|
|
|
319
313
|
This included the following changes from the protocol-definitions release:
|
|
320
|
-
|
|
321
314
|
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
322
315
|
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
323
316
|
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
@@ -332,7 +325,6 @@ Dependency updates only.
|
|
|
332
325
|
- DEPRECATED: resolveHandle and IFluidHandleContext deprecated on IContainerRuntime [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
333
326
|
|
|
334
327
|
The `resolveHandle(...)` and `get IFluidHandleContext()` methods have been deprecated on the following interfaces:
|
|
335
|
-
|
|
336
328
|
- `IContainerRuntime`
|
|
337
329
|
- `IContainerRuntimeBase`
|
|
338
330
|
|
|
@@ -343,7 +335,6 @@ Dependency updates only.
|
|
|
343
335
|
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
344
336
|
|
|
345
337
|
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
346
|
-
|
|
347
338
|
- @fluidframework/gitresources: 2.0.1
|
|
348
339
|
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
349
340
|
- @fluidframework/server-lambdas: 2.0.1
|
|
@@ -389,7 +380,6 @@ Dependency updates only.
|
|
|
389
380
|
|
|
390
381
|
The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
|
|
391
382
|
imported from the **@fluidframework/core-interfaces** package:
|
|
392
|
-
|
|
393
383
|
- interface IDisposable
|
|
394
384
|
- interface IErrorEvent
|
|
395
385
|
- interface IErrorEvent
|
|
@@ -454,7 +444,6 @@ Dependency updates only.
|
|
|
454
444
|
### Major Changes
|
|
455
445
|
|
|
456
446
|
- The following functions and classes were deprecated in previous releases and have been removed: [8b242fdc79](https://github.com/microsoft/FluidFramework/commits/8b242fdc796714cf1da9ad3f90d02efb122af0c2)
|
|
457
|
-
|
|
458
447
|
- `PureDataObject.getFluidObjectFromDirectory`
|
|
459
448
|
- `IProvideContainerRuntime` and its `IContainerRuntime` member.
|
|
460
449
|
- `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.72.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.72.0",
|
|
45
|
+
"@fluidframework/container-definitions": "~2.72.0",
|
|
46
|
+
"@fluidframework/core-interfaces": "~2.72.0",
|
|
47
|
+
"@fluidframework/driver-definitions": "~2.72.0",
|
|
48
|
+
"@fluidframework/runtime-definitions": "~2.72.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.72.0",
|
|
58
58
|
"@microsoft/api-extractor": "7.52.11",
|
|
59
59
|
"concurrently": "^8.2.1",
|
|
60
60
|
"copyfiles": "^2.4.1",
|