@fluidframework/container-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/.eslintrc.cjs +1 -1
- package/CHANGELOG.md +13 -19
- package/package.json +7 -7
package/.eslintrc.cjs
CHANGED
|
@@ -21,7 +21,7 @@ module.exports = {
|
|
|
21
21
|
files: ["*.spec.ts", "src/test/**"],
|
|
22
22
|
rules: {
|
|
23
23
|
// Test files are run in node only so additional node libraries can be used.
|
|
24
|
-
"import/no-nodejs-modules": ["error", { allow: ["assert"] }],
|
|
24
|
+
"import-x/no-nodejs-modules": ["error", { allow: ["assert"] }],
|
|
25
25
|
},
|
|
26
26
|
},
|
|
27
27
|
],
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @fluidframework/container-definitions
|
|
2
2
|
|
|
3
|
+
## 2.73.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.72.0
|
|
8
|
+
|
|
9
|
+
### Minor Changes
|
|
10
|
+
|
|
11
|
+
- Added a new Fluid error type layerIncompatibilityError ([#25784](https://github.com/microsoft/FluidFramework/pull/25784)) [01d568b4bc](https://github.com/microsoft/FluidFramework/commit/01d568b4bcbff38a0ee4b614bad1dfb0c400a360)
|
|
12
|
+
|
|
13
|
+
A new Fluid error type `layerIncompatibilityError` is added to `FluidErrorTypesAlpha` as @legacy @alpha. This will be moved to `FluidErrorTypes` as @legacy @beta in a future legacy breaking release.
|
|
14
|
+
It will also be added to `ContainerErrorTypes` since it extends `FluidErrorTypes`.
|
|
15
|
+
|
|
3
16
|
## 2.71.0
|
|
4
17
|
|
|
5
18
|
Dependency updates only.
|
|
@@ -11,7 +24,6 @@ Dependency updates only.
|
|
|
11
24
|
- Deprecated properties have been removed from IRuntimeStorageService and IContainerStorageService ([#25708](https://github.com/microsoft/FluidFramework/pull/25708)) [82c936ed28](https://github.com/microsoft/FluidFramework/commit/82c936ed285c7e450d5e907a531ce71178f57819)
|
|
12
25
|
|
|
13
26
|
The following deprecated properties have been removed from `IRuntimeStorageService`:
|
|
14
|
-
|
|
15
27
|
- `createBlob`
|
|
16
28
|
- `dispose`
|
|
17
29
|
- `disposed`
|
|
@@ -23,7 +35,6 @@ Dependency updates only.
|
|
|
23
35
|
- `uploadSummaryWithContext`
|
|
24
36
|
|
|
25
37
|
The following deprecated properties have been removed from `IContainerStorageService`:
|
|
26
|
-
|
|
27
38
|
- `dispose`
|
|
28
39
|
- `disposed`
|
|
29
40
|
- `downloadSummary`
|
|
@@ -59,7 +70,6 @@ Dependency updates only.
|
|
|
59
70
|
Added an interface `IContainerStorageService` which will replace `IDocumentStorageService` in the `Runtime` layer. This is exposed by the `Loader` layer to the `Runtime` layer via `ContainerContext`. This will help remove `Runtime` layer's dependency on the `Driver` layer and replace it with the `Loader` layer that it already maintains. This new interface will only contain properties that are needed and used by the `Runtime` layer.
|
|
60
71
|
|
|
61
72
|
The following properties from `IContainerStorageService` are deprecated as they are not needed by the `DataStore` layer. These be removed in a future release:
|
|
62
|
-
|
|
63
73
|
- `policies` - The Runtime only needs `maximumCacheDurationMs` property from it which is added directly on `IContainerStorageService`.
|
|
64
74
|
- `downloadSummary`
|
|
65
75
|
- `disposed`
|
|
@@ -164,7 +174,6 @@ Dependency updates only.
|
|
|
164
174
|
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.
|
|
165
175
|
|
|
166
176
|
#### Alternatives
|
|
167
|
-
|
|
168
177
|
- Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
|
|
169
178
|
- Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect use `IContainer.disconnect`.
|
|
170
179
|
- Alternatives to calling `IDeltaManager.inbound.resume`, `IDeltaManager.outbound.resume` for `IContainer` reconnect use `IContainer.connect`.
|
|
@@ -204,12 +213,10 @@ Dependency updates only.
|
|
|
204
213
|
- Audience & connection sequencing improvements [96872186d0](https://github.com/microsoft/FluidFramework/commit/96872186d0d0f245c1fece7d19b3743e501679b6)
|
|
205
214
|
|
|
206
215
|
Here are breaking changes in Audience behavior:
|
|
207
|
-
|
|
208
216
|
1. IAudience no longer implements EventEmmiter. If you used addListener() or removeListener(), please replace with on() & off() respectively.
|
|
209
217
|
2. IAudience interface implements getSelf() method and "selfChanged" event.
|
|
210
218
|
3. IContainerContext.audience is no longer optional
|
|
211
219
|
4. "connected" events are now raised (various API surfaces - IContainer, IContainerRuntime, IFluidDataStoreRuntime, etc.) a bit later in reconnection sequence for "read" connections - only after client receives its own "join" signal and caught up on ops, which makes it symmetrical with "write" connections.
|
|
212
|
-
|
|
213
220
|
- If this change in behavior breaks some scenario, please let us know immediately, but you can revert that behavior using the following feature gates:
|
|
214
221
|
- "Fluid.Container.DisableCatchUpBeforeDeclaringConnected"
|
|
215
222
|
- "Fluid.Container.DisableJoinSignalWait"
|
|
@@ -220,7 +227,6 @@ Dependency updates only.
|
|
|
220
227
|
|
|
221
228
|
Make IFluidDataStoreRuntime.deltaManager have an opaque type.
|
|
222
229
|
Marks the following types which were reachable from it as alpha:
|
|
223
|
-
|
|
224
230
|
- IConnectionDetails
|
|
225
231
|
- IDeltaSender
|
|
226
232
|
- IDeltaManagerEvents
|
|
@@ -248,7 +254,6 @@ Dependency updates only.
|
|
|
248
254
|
TypeScript types and implementation code.
|
|
249
255
|
|
|
250
256
|
This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
|
|
251
|
-
|
|
252
257
|
- `"moduleResolution": "Node16"` with `"module": "Node16"`
|
|
253
258
|
- `"moduleResolution": "Bundler"` with `"module": "ESNext"`
|
|
254
259
|
|
|
@@ -277,7 +282,6 @@ Dependency updates only.
|
|
|
277
282
|
`IDeltaManager.inbound.resume()` get called.
|
|
278
283
|
|
|
279
284
|
### Alternatives
|
|
280
|
-
|
|
281
285
|
- Alternatives to `IDeltaManager.inbound.on("op", ...)` are `IDeltaManager.on("op", ...)`
|
|
282
286
|
- Alternatives to calling `IDeltaManager.inbound.pause`, `IDeltaManager.outbound.pause` for `IContainer` disconnect
|
|
283
287
|
use `IContainer.disconnect`.
|
|
@@ -330,7 +334,6 @@ Dependency updates only.
|
|
|
330
334
|
|
|
331
335
|
The following Fluid server dependencies have been updated to the latest version, 4.0.0.
|
|
332
336
|
[See the full changelog.](https://github.com/microsoft/FluidFramework/blob/main/server/routerlicious/RELEASE_NOTES/3.0.0.md)
|
|
333
|
-
|
|
334
337
|
- @fluidframework/gitresources
|
|
335
338
|
- @fluidframework/server-kafka-orderer
|
|
336
339
|
- @fluidframework/server-lambdas
|
|
@@ -359,7 +362,6 @@ Dependency updates only.
|
|
|
359
362
|
- Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
360
363
|
|
|
361
364
|
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)
|
|
362
|
-
|
|
363
365
|
- @fluidframework/gitresources
|
|
364
366
|
- @fluidframework/server-kafka-orderer
|
|
365
367
|
- @fluidframework/server-lambdas
|
|
@@ -414,7 +416,6 @@ Dependency updates only.
|
|
|
414
416
|
- container-runtime: Removed request pattern from ContainerRuntime, IRuntime, and IContainerRuntimeBase [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
|
|
415
417
|
|
|
416
418
|
The `request(...)` method and `IFluidRouter` property have been removed from the following places:
|
|
417
|
-
|
|
418
419
|
- `ContainerRuntime`
|
|
419
420
|
- `IRuntime`
|
|
420
421
|
- `IContainerRuntimeBase`
|
|
@@ -473,7 +474,6 @@ Dependency updates only.
|
|
|
473
474
|
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
474
475
|
|
|
475
476
|
This included the following changes from the protocol-definitions release:
|
|
476
|
-
|
|
477
477
|
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
478
478
|
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
479
479
|
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
@@ -490,7 +490,6 @@ Dependency updates only.
|
|
|
490
490
|
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
491
491
|
|
|
492
492
|
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
493
|
-
|
|
494
493
|
- @fluidframework/gitresources: 2.0.1
|
|
495
494
|
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
496
495
|
- @fluidframework/server-lambdas: 2.0.1
|
|
@@ -515,7 +514,6 @@ Dependency updates only.
|
|
|
515
514
|
- test-utils: provideEntryPoint is required [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
516
515
|
|
|
517
516
|
The optional `provideEntryPoint` method has become required on a number of constructors. A value will need to be provided to the following classes:
|
|
518
|
-
|
|
519
517
|
- `BaseContainerRuntimeFactory`
|
|
520
518
|
- `RuntimeFactory`
|
|
521
519
|
- `ContainerRuntime` (constructor and `loadRuntime`)
|
|
@@ -555,7 +553,6 @@ Dependency updates only.
|
|
|
555
553
|
|
|
556
554
|
The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
|
|
557
555
|
imported from the **@fluidframework/core-interfaces** package:
|
|
558
|
-
|
|
559
556
|
- interface IDisposable
|
|
560
557
|
- interface IErrorEvent
|
|
561
558
|
- interface IErrorEvent
|
|
@@ -612,7 +609,6 @@ Dependency updates only.
|
|
|
612
609
|
- Request APIs deprecated from many places [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
613
610
|
|
|
614
611
|
The `request` API (associated with the `IFluidRouter` interface) has been deprecated on a number of classes and interfaces. The following are impacted:
|
|
615
|
-
|
|
616
612
|
- `IRuntime` and `ContainerRuntime`
|
|
617
613
|
- `IFluidDataStoreRuntime` and `FluidDataStoreRuntime`
|
|
618
614
|
- `IFluidDataStoreChannel`
|
|
@@ -626,7 +622,6 @@ Dependency updates only.
|
|
|
626
622
|
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).
|
|
627
623
|
|
|
628
624
|
- IContainer's and IDataStore's IFluidRouter capabilities are deprecated. [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
629
|
-
|
|
630
625
|
- The `request` function taking an arbitrary URL and headers is deprecated
|
|
631
626
|
- However, an overload taking only `{ url: "/" }` is not, for back-compat purposes during the migration
|
|
632
627
|
from the request pattern to using entryPoint.
|
|
@@ -686,7 +681,6 @@ Dependency updates only.
|
|
|
686
681
|
Loader container caching will now be off by default and the ability to control it is deprecated. Loader caching is deprecated and will be removed in a future release, as well as all caching functionality of containers. Please try not to rely on caching and inform us if you cannot do so.
|
|
687
682
|
|
|
688
683
|
If you run into trouble with this behavior, please report it ASAP to the FluidFramework team and use the following options (available in this release only) to unblock you:
|
|
689
|
-
|
|
690
684
|
- set `ILoaderProps.options.cache` to `true` when constructing a `Loader` object (see the `ILoaderOptions` interface)
|
|
691
685
|
- set `[LoaderHeader.cache]` header to `true` when requesting a container
|
|
692
686
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/container-definitions",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.73.0",
|
|
4
4
|
"description": "Fluid container definitions",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -47,17 +47,17 @@
|
|
|
47
47
|
"main": "lib/index.js",
|
|
48
48
|
"types": "lib/public.d.ts",
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@fluidframework/core-interfaces": "~2.
|
|
51
|
-
"@fluidframework/driver-definitions": "~2.
|
|
50
|
+
"@fluidframework/core-interfaces": "~2.73.0",
|
|
51
|
+
"@fluidframework/driver-definitions": "~2.73.0"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@arethetypeswrong/cli": "^0.17.1",
|
|
55
55
|
"@biomejs/biome": "~1.9.3",
|
|
56
|
-
"@fluid-tools/build-cli": "^0.
|
|
56
|
+
"@fluid-tools/build-cli": "^0.60.0",
|
|
57
57
|
"@fluidframework/build-common": "^2.0.3",
|
|
58
|
-
"@fluidframework/build-tools": "^0.
|
|
59
|
-
"@fluidframework/container-definitions-previous": "npm:@fluidframework/container-definitions@2.
|
|
60
|
-
"@fluidframework/eslint-config-fluid": "
|
|
58
|
+
"@fluidframework/build-tools": "^0.60.0",
|
|
59
|
+
"@fluidframework/container-definitions-previous": "npm:@fluidframework/container-definitions@2.71.0",
|
|
60
|
+
"@fluidframework/eslint-config-fluid": "~2.73.0",
|
|
61
61
|
"@microsoft/api-extractor": "7.52.11",
|
|
62
62
|
"concurrently": "^8.2.1",
|
|
63
63
|
"copyfiles": "^2.4.1",
|