@fluidframework/datastore 2.43.0 → 2.50.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 (43) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/api-report/datastore.legacy.alpha.api.md +0 -2
  3. package/dist/dataStoreLayerCompatState.d.ts +1 -1
  4. package/dist/dataStoreLayerCompatState.d.ts.map +1 -1
  5. package/dist/dataStoreLayerCompatState.js +4 -4
  6. package/dist/dataStoreLayerCompatState.js.map +1 -1
  7. package/dist/dataStoreRuntime.d.ts.map +1 -1
  8. package/dist/dataStoreRuntime.js.map +1 -1
  9. package/dist/fluidHandle.d.ts +0 -15
  10. package/dist/fluidHandle.d.ts.map +1 -1
  11. package/dist/fluidHandle.js +0 -44
  12. package/dist/fluidHandle.js.map +1 -1
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +5 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/packageVersion.d.ts +1 -1
  18. package/dist/packageVersion.js +1 -1
  19. package/dist/packageVersion.js.map +1 -1
  20. package/lib/dataStoreLayerCompatState.d.ts +1 -1
  21. package/lib/dataStoreLayerCompatState.d.ts.map +1 -1
  22. package/lib/dataStoreLayerCompatState.js +3 -3
  23. package/lib/dataStoreLayerCompatState.js.map +1 -1
  24. package/lib/dataStoreRuntime.d.ts.map +1 -1
  25. package/lib/dataStoreRuntime.js +1 -3
  26. package/lib/dataStoreRuntime.js.map +1 -1
  27. package/lib/fluidHandle.d.ts +0 -15
  28. package/lib/fluidHandle.d.ts.map +1 -1
  29. package/lib/fluidHandle.js +0 -44
  30. package/lib/fluidHandle.js.map +1 -1
  31. package/lib/index.d.ts +1 -0
  32. package/lib/index.d.ts.map +1 -1
  33. package/lib/index.js +1 -0
  34. package/lib/index.js.map +1 -1
  35. package/lib/packageVersion.d.ts +1 -1
  36. package/lib/packageVersion.js +1 -1
  37. package/lib/packageVersion.js.map +1 -1
  38. package/package.json +29 -16
  39. package/src/dataStoreLayerCompatState.ts +3 -3
  40. package/src/dataStoreRuntime.ts +0 -1
  41. package/src/fluidHandle.ts +0 -50
  42. package/src/index.ts +5 -0
  43. package/src/packageVersion.ts +1 -1
@@ -5,5 +5,5 @@
5
5
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
6
6
  */
7
7
  export declare const pkgName = "@fluidframework/datastore";
8
- export declare const pkgVersion = "2.43.0";
8
+ export declare const pkgVersion = "2.50.0";
9
9
  //# sourceMappingURL=packageVersion.d.ts.map
@@ -5,5 +5,5 @@
5
5
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
6
6
  */
7
7
  export const pkgName = "@fluidframework/datastore";
8
- export const pkgVersion = "2.43.0";
8
+ export const pkgVersion = "2.50.0";
9
9
  //# sourceMappingURL=packageVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,2BAA2B,CAAC;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/datastore\";\nexport const pkgVersion = \"2.43.0\";\n"]}
1
+ {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,2BAA2B,CAAC;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/datastore\";\nexport const pkgVersion = \"2.50.0\";\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/datastore",
3
- "version": "2.43.0",
3
+ "version": "2.50.0",
4
4
  "description": "Fluid data store implementation",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -69,29 +69,29 @@
69
69
  "temp-directory": "nyc/.nyc_output"
70
70
  },
71
71
  "dependencies": {
72
- "@fluid-internal/client-utils": "~2.43.0",
73
- "@fluidframework/container-definitions": "~2.43.0",
74
- "@fluidframework/core-interfaces": "~2.43.0",
75
- "@fluidframework/core-utils": "~2.43.0",
76
- "@fluidframework/datastore-definitions": "~2.43.0",
77
- "@fluidframework/driver-definitions": "~2.43.0",
78
- "@fluidframework/driver-utils": "~2.43.0",
79
- "@fluidframework/id-compressor": "~2.43.0",
80
- "@fluidframework/runtime-definitions": "~2.43.0",
81
- "@fluidframework/runtime-utils": "~2.43.0",
82
- "@fluidframework/telemetry-utils": "~2.43.0",
72
+ "@fluid-internal/client-utils": "~2.50.0",
73
+ "@fluidframework/container-definitions": "~2.50.0",
74
+ "@fluidframework/core-interfaces": "~2.50.0",
75
+ "@fluidframework/core-utils": "~2.50.0",
76
+ "@fluidframework/datastore-definitions": "~2.50.0",
77
+ "@fluidframework/driver-definitions": "~2.50.0",
78
+ "@fluidframework/driver-utils": "~2.50.0",
79
+ "@fluidframework/id-compressor": "~2.50.0",
80
+ "@fluidframework/runtime-definitions": "~2.50.0",
81
+ "@fluidframework/runtime-utils": "~2.50.0",
82
+ "@fluidframework/telemetry-utils": "~2.50.0",
83
83
  "uuid": "^9.0.0"
84
84
  },
85
85
  "devDependencies": {
86
86
  "@arethetypeswrong/cli": "^0.17.1",
87
87
  "@biomejs/biome": "~1.9.3",
88
- "@fluid-internal/mocha-test-setup": "~2.43.0",
88
+ "@fluid-internal/mocha-test-setup": "~2.50.0",
89
89
  "@fluid-tools/build-cli": "^0.56.0",
90
90
  "@fluidframework/build-common": "^2.0.3",
91
91
  "@fluidframework/build-tools": "^0.56.0",
92
- "@fluidframework/datastore-previous": "npm:@fluidframework/datastore@2.42.0",
92
+ "@fluidframework/datastore-previous": "npm:@fluidframework/datastore@2.43.0",
93
93
  "@fluidframework/eslint-config-fluid": "^5.7.4",
94
- "@fluidframework/test-runtime-utils": "~2.43.0",
94
+ "@fluidframework/test-runtime-utils": "~2.50.0",
95
95
  "@microsoft/api-extractor": "7.52.8",
96
96
  "@types/lodash": "^4.14.118",
97
97
  "@types/mocha": "^10.0.10",
@@ -110,7 +110,20 @@
110
110
  "typescript": "~5.4.5"
111
111
  },
112
112
  "typeValidation": {
113
- "broken": {},
113
+ "broken": {
114
+ "Class_FluidDataStoreRuntime": {
115
+ "backCompat": false
116
+ },
117
+ "Class_FluidObjectHandle": {
118
+ "backCompat": false
119
+ },
120
+ "ClassStatics_FluidDataStoreRuntime": {
121
+ "backCompat": false
122
+ },
123
+ "ClassStatics_FluidObjectHandle": {
124
+ "backCompat": false
125
+ }
126
+ },
114
127
  "entrypoint": "legacy"
115
128
  },
116
129
  "scripts": {
@@ -43,7 +43,7 @@ export const dataStoreCompatDetailsForRuntime: ILayerCompatDetails = {
43
43
  * The requirements that the Runtime layer must meet to be compatible with this DataStore.
44
44
  * @internal
45
45
  */
46
- export const runtimeSupportRequirements: ILayerCompatSupportRequirements = {
46
+ export const runtimeSupportRequirementsForDataStore: ILayerCompatSupportRequirements = {
47
47
  /**
48
48
  * Minimum generation that Runtime must be at to be compatible with DataStore. Note that 0 is used here so
49
49
  * that Runtime layers before the introduction of the layer compatibility enforcement are compatible.
@@ -64,7 +64,7 @@ export function validateRuntimeCompatibility(
64
64
  disposeFn: () => void,
65
65
  ): void {
66
66
  const layerCheckResult = checkLayerCompatibility(
67
- runtimeSupportRequirements,
67
+ runtimeSupportRequirementsForDataStore,
68
68
  maybeRuntimeCompatDetails,
69
69
  );
70
70
  if (!layerCheckResult.isCompatible) {
@@ -74,7 +74,7 @@ export function validateRuntimeCompatibility(
74
74
  runtimeVersion: maybeRuntimeCompatDetails?.pkgVersion,
75
75
  dataStoreGeneration: dataStoreCoreCompatDetails.generation,
76
76
  runtimeGeneration: maybeRuntimeCompatDetails?.generation,
77
- minSupportedGeneration: runtimeSupportRequirements.minSupportedGeneration,
77
+ minSupportedGeneration: runtimeSupportRequirementsForDataStore.minSupportedGeneration,
78
78
  isGenerationCompatible: layerCheckResult.isGenerationCompatible,
79
79
  unsupportedFeatures: layerCheckResult.unsupportedFeatures,
80
80
  }),
@@ -98,7 +98,6 @@ import { v4 as uuid } from "uuid";
98
98
  import { IChannelContext, summarizeChannel } from "./channelContext.js";
99
99
  import {
100
100
  dataStoreCompatDetailsForRuntime,
101
- // dataStoreCompatDetailsForRuntime,
102
101
  validateRuntimeCompatibility,
103
102
  } from "./dataStoreLayerCompatState.js";
104
103
  import { FluidObjectHandle } from "./fluidHandle.js";
@@ -4,7 +4,6 @@
4
4
  */
5
5
 
6
6
  import { FluidObject } from "@fluidframework/core-interfaces";
7
- import type { IFluidHandleInternal } from "@fluidframework/core-interfaces/internal";
8
7
  import { IFluidHandleContext } from "@fluidframework/core-interfaces/internal";
9
8
  import {
10
9
  generateHandleContextPath,
@@ -19,8 +18,6 @@ import {
19
18
  export class FluidObjectHandle<
20
19
  T extends FluidObject = FluidObject,
21
20
  > extends FluidHandleBase<T> {
22
- private readonly pendingHandlesToMakeVisible: Set<IFluidHandleInternal> = new Set();
23
-
24
21
  /**
25
22
  * {@inheritDoc @fluidframework/core-interfaces#IFluidHandle.absolutePath}
26
23
  */
@@ -33,30 +30,6 @@ export class FluidObjectHandle<
33
30
  return this.routeContext.isAttached;
34
31
  }
35
32
 
36
- /**
37
- * Tells whether the object of this handle is visible in the container locally or globally.
38
- */
39
- private get visible(): boolean {
40
- /**
41
- * If the object of this handle is attached, it is visible in the container. Ideally, checking local visibility
42
- * should be enough for a handle. However, there are scenarios where the object becomes locally visible but the
43
- * handle does not know this - This will happen is attachGraph is never called on the handle. Couple of examples
44
- * where this can happen:
45
- *
46
- * 1. Handles to DDS other than the default handle won't know if the DDS becomes visible after the handle was
47
- * created.
48
- *
49
- * 2. Handles to root data stores will never know that it was visible because the handle will not be stores in
50
- * another DDS and so, attachGraph will never be called on it.
51
- */
52
- return this.isAttached || this.locallyVisible;
53
- }
54
-
55
- /**
56
- * Tracks whether this handle is locally visible in the container.
57
- */
58
- private locallyVisible: boolean = false;
59
-
60
33
  /**
61
34
  * Creates a new `FluidObjectHandle`.
62
35
  *
@@ -89,29 +62,6 @@ export class FluidObjectHandle<
89
62
  * {@inheritDoc @fluidframework/core-interfaces#IFluidHandle.attachGraph }
90
63
  */
91
64
  public attachGraph(): void {
92
- if (this.visible) {
93
- return;
94
- }
95
-
96
- this.locallyVisible = true;
97
- for (const handle of this.pendingHandlesToMakeVisible) {
98
- handle.attachGraph();
99
- }
100
- this.pendingHandlesToMakeVisible.clear();
101
65
  this.routeContext.attachGraph();
102
66
  }
103
-
104
- // eslint-disable-next-line jsdoc/require-description
105
- /**
106
- * @deprecated No replacement provided. Arbitrary handles may not serve as a bind source.
107
- * @privateRemarks This implementation will be moved to SharedObjectHandle once this is removed.
108
- */
109
- public bind(handle: IFluidHandleInternal): void {
110
- // If this handle is visible, attach the graph of the incoming handle as well.
111
- if (this.visible) {
112
- handle.attachGraph();
113
- return;
114
- }
115
- this.pendingHandlesToMakeVisible.add(handle);
116
- }
117
67
  }
package/src/index.ts CHANGED
@@ -11,3 +11,8 @@ export {
11
11
  mixinRequestHandler,
12
12
  mixinSummaryHandler,
13
13
  } from "./dataStoreRuntime.js";
14
+ export {
15
+ dataStoreCoreCompatDetails,
16
+ dataStoreCompatDetailsForRuntime,
17
+ runtimeSupportRequirementsForDataStore,
18
+ } from "./dataStoreLayerCompatState.js";
@@ -6,4 +6,4 @@
6
6
  */
7
7
 
8
8
  export const pkgName = "@fluidframework/datastore";
9
- export const pkgVersion = "2.43.0";
9
+ export const pkgVersion = "2.50.0";