@fluidframework/datastore 2.92.0 → 2.100.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/datastore",
3
- "version": "2.92.0",
3
+ "version": "2.100.0",
4
4
  "description": "Fluid data store implementation",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -69,33 +69,33 @@
69
69
  "temp-directory": "nyc/.nyc_output"
70
70
  },
71
71
  "dependencies": {
72
- "@fluid-internal/client-utils": "~2.92.0",
73
- "@fluidframework/container-definitions": "~2.92.0",
74
- "@fluidframework/core-interfaces": "~2.92.0",
75
- "@fluidframework/core-utils": "~2.92.0",
76
- "@fluidframework/datastore-definitions": "~2.92.0",
77
- "@fluidframework/driver-definitions": "~2.92.0",
78
- "@fluidframework/driver-utils": "~2.92.0",
79
- "@fluidframework/id-compressor": "~2.92.0",
80
- "@fluidframework/runtime-definitions": "~2.92.0",
81
- "@fluidframework/runtime-utils": "~2.92.0",
82
- "@fluidframework/telemetry-utils": "~2.92.0",
72
+ "@fluid-internal/client-utils": "~2.100.0",
73
+ "@fluidframework/container-definitions": "~2.100.0",
74
+ "@fluidframework/core-interfaces": "~2.100.0",
75
+ "@fluidframework/core-utils": "~2.100.0",
76
+ "@fluidframework/datastore-definitions": "~2.100.0",
77
+ "@fluidframework/driver-definitions": "~2.100.0",
78
+ "@fluidframework/driver-utils": "~2.100.0",
79
+ "@fluidframework/id-compressor": "~2.100.0",
80
+ "@fluidframework/runtime-definitions": "~2.100.0",
81
+ "@fluidframework/runtime-utils": "~2.100.0",
82
+ "@fluidframework/telemetry-utils": "~2.100.0",
83
83
  "uuid": "^11.1.0"
84
84
  },
85
85
  "devDependencies": {
86
86
  "@arethetypeswrong/cli": "^0.18.2",
87
87
  "@biomejs/biome": "~2.4.5",
88
- "@fluid-internal/mocha-test-setup": "~2.92.0",
89
- "@fluid-tools/build-cli": "^0.64.0",
88
+ "@fluid-internal/mocha-test-setup": "~2.100.0",
89
+ "@fluid-tools/build-cli": "^0.65.0",
90
90
  "@fluidframework/build-common": "^2.0.3",
91
- "@fluidframework/build-tools": "^0.64.0",
92
- "@fluidframework/datastore-previous": "npm:@fluidframework/datastore@2.91.0",
91
+ "@fluidframework/build-tools": "^0.65.0",
92
+ "@fluidframework/datastore-previous": "npm:@fluidframework/datastore@2.92.0",
93
93
  "@fluidframework/eslint-config-fluid": "^9.0.0",
94
- "@fluidframework/test-runtime-utils": "~2.92.0",
95
- "@microsoft/api-extractor": "7.52.11",
94
+ "@fluidframework/test-runtime-utils": "~2.100.0",
95
+ "@microsoft/api-extractor": "7.58.1",
96
96
  "@types/lodash": "^4.14.118",
97
97
  "@types/mocha": "^10.0.10",
98
- "@types/node": "~20.19.30",
98
+ "@types/node": "~22.19.17",
99
99
  "@types/sinon": "^17.0.3",
100
100
  "c8": "^10.1.3",
101
101
  "concurrently": "^9.2.1",
@@ -110,7 +110,11 @@
110
110
  "typescript": "~5.4.5"
111
111
  },
112
112
  "typeValidation": {
113
- "broken": {},
113
+ "broken": {
114
+ "Class_FluidDataStoreRuntime": {
115
+ "forwardCompat": false
116
+ }
117
+ },
114
118
  "entrypoint": "legacy"
115
119
  },
116
120
  "scripts": {
@@ -158,7 +162,6 @@
158
162
  "test:mocha:verbose": "cross-env FLUID_TEST_VERBOSE=1 npm run test:mocha",
159
163
  "tsc": "fluid-tsc commonjs --project ./tsconfig.cjs.json && npm run place:cjs:package-stub",
160
164
  "tsc:watch": "npm run place:cjs:package-stub && fluid-tsc commonjs --project ./tsconfig.cjs.json --watch",
161
- "typetests:gen": "flub generate typetests --dir . -v",
162
- "typetests:prepare": "flub typetests --dir . --reset --previous --normalize"
165
+ "typetests:gen": "flub generate typetests --dir . -v"
163
166
  }
164
167
  }
@@ -29,7 +29,6 @@ import type {
29
29
  IFluidDataStoreRuntime,
30
30
  IFluidDataStoreRuntimeEvents,
31
31
  IDeltaManagerErased,
32
- IFluidDataStoreRuntimeAlpha,
33
32
  } from "@fluidframework/datastore-definitions/internal";
34
33
  import {
35
34
  type IClientDetails,
@@ -64,7 +63,6 @@ import {
64
63
  encodeHandlesInContainerRuntime,
65
64
  type IFluidDataStorePolicies,
66
65
  type MinimumVersionForCollab,
67
- asLegacyAlpha,
68
66
  currentSummarizeStepPrefix,
69
67
  currentSummarizeStepPropertyName,
70
68
  } from "@fluidframework/runtime-definitions/internal";
@@ -86,16 +84,19 @@ import {
86
84
  encodeCompactIdToString,
87
85
  } from "@fluidframework/runtime-utils/internal";
88
86
  import {
89
- type ITelemetryLoggerExt,
90
87
  DataProcessingError,
91
88
  LoggingError,
92
89
  type MonitoringContext,
93
90
  UsageError,
94
91
  createChildMonitoringContext,
92
+ extractTelemetryLoggerExt,
95
93
  generateStack,
96
94
  raiseConnectedEvent,
97
95
  tagCodeArtifacts,
96
+ toITelemetryLoggerExt,
98
97
  } from "@fluidframework/telemetry-utils/internal";
98
+ // eslint-disable-next-line import-x/no-internal-modules -- Needed to avoid specialized /internal ITelemetryLoggerExt
99
+ import type { ITelemetryLoggerExt } from "@fluidframework/telemetry-utils/legacy";
99
100
  import { v4 as uuid } from "uuid";
100
101
 
101
102
  import { type IChannelContext, summarizeChannel } from "./channelContext.js";
@@ -354,7 +355,7 @@ export class FluidDataStoreRuntime
354
355
  private readonly audience: IAudience;
355
356
  private readonly mc: MonitoringContext;
356
357
  public get logger(): ITelemetryLoggerExt {
357
- return this.mc.logger;
358
+ return toITelemetryLoggerExt(this.mc.logger);
358
359
  }
359
360
 
360
361
  /**
@@ -383,9 +384,13 @@ export class FluidDataStoreRuntime
383
384
  private readonly submitMessagesWithoutEncodingHandles: boolean;
384
385
 
385
386
  /**
386
- * See `IFluidDataStoreRuntimeInternalConfig.minVersionForCollab`.
387
+ * See IFluidDataStoreRuntimeInternalConfig.minVersionForCollab
388
+ *
389
+ * Note: this class doesn't declare that it implements IFluidDataStoreRuntimeInternalConfig,
390
+ * and we keep this property as private, but consumers may optimistically cast
391
+ * to the internal interface to access this property.
387
392
  */
388
- public readonly minVersionForCollab?: MinimumVersionForCollab | undefined;
393
+ public readonly minVersionForCollab: MinimumVersionForCollab;
389
394
 
390
395
  /**
391
396
  * Create an instance of a DataStore runtime.
@@ -418,7 +423,10 @@ export class FluidDataStoreRuntime
418
423
  namespace: "FluidDataStoreRuntime",
419
424
  properties: {
420
425
  all: { dataStoreId: uuid(), dataStoreVersion: pkgVersion },
421
- error: { inStagingMode: () => this.inStagingMode, isDirty: () => this.isDirty },
426
+ error: {
427
+ inStagingMode: () => this.inStagingMode,
428
+ isDirty: () => this.isDirty,
429
+ },
422
430
  },
423
431
  });
424
432
 
@@ -538,16 +546,16 @@ export class FluidDataStoreRuntime
538
546
  }
539
547
 
540
548
  /**
541
- * Implementation of IFluidDataStoreRuntimeAlpha.inStagingMode
549
+ * {@inheritDoc @fluidframework/datastore-definitions#IFluidDataStoreRuntime.inStagingMode}
542
550
  */
543
- private get inStagingMode(): IFluidDataStoreRuntimeAlpha["inStagingMode"] {
544
- return asLegacyAlpha(this.dataStoreContext.containerRuntime)?.inStagingMode;
551
+ public get inStagingMode(): boolean {
552
+ return this.dataStoreContext.containerRuntime.inStagingMode;
545
553
  }
546
554
 
547
555
  /**
548
- * Implementation of IFluidDataStoreRuntimeAlpha.isDirty
556
+ * {@inheritDoc @fluidframework/datastore-definitions#IFluidDataStoreRuntime.isDirty}
549
557
  */
550
- private get isDirty(): IFluidDataStoreRuntimeAlpha["isDirty"] {
558
+ public get isDirty(): boolean {
551
559
  return this.pendingOpCount.value > 0;
552
560
  }
553
561
 
@@ -721,7 +729,7 @@ export class FluidDataStoreRuntime
721
729
  this,
722
730
  this.dataStoreContext,
723
731
  this.dataStoreContext.storage,
724
- this.logger,
732
+ extractTelemetryLoggerExt(this.logger),
725
733
  (content, localOpMetadata) => this.submitChannelOp(channel.id, content, localOpMetadata),
726
734
  (address: string) => this.setChannelDirty(address),
727
735
  );
@@ -739,7 +747,7 @@ export class FluidDataStoreRuntime
739
747
  this,
740
748
  this.dataStoreContext,
741
749
  this.dataStoreContext.storage,
742
- this.logger,
750
+ extractTelemetryLoggerExt(this.logger),
743
751
  (content, localOpMetadata) => this.submitChannelOp(id, content, localOpMetadata),
744
752
  (address: string) => this.setChannelDirty(address),
745
753
  tree,
@@ -830,7 +838,7 @@ export class FluidDataStoreRuntime
830
838
  object.setConnectionState(connected, clientId);
831
839
  }
832
840
 
833
- raiseConnectedEvent(this.logger, this, connected, clientId);
841
+ raiseConnectedEvent(extractTelemetryLoggerExt(this.logger), this, connected, clientId);
834
842
  }
835
843
 
836
844
  private _readonly: boolean;
@@ -6,4 +6,4 @@
6
6
  */
7
7
 
8
8
  export const pkgName = "@fluidframework/datastore";
9
- export const pkgVersion = "2.92.0";
9
+ export const pkgVersion = "2.100.0";