@fluidframework/merge-tree 2.70.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 CHANGED
@@ -1,5 +1,13 @@
1
1
  # @fluidframework/merge-tree
2
2
 
3
+ ## 2.72.0
4
+
5
+ Dependency updates only.
6
+
7
+ ## 2.71.0
8
+
9
+ Dependency updates only.
10
+
3
11
  ## 2.70.0
4
12
 
5
13
  Dependency updates only.
@@ -99,7 +107,6 @@ Dependency updates only.
99
107
  ```
100
108
 
101
109
  The following properties are removed from `ISegment` and its implementations:
102
-
103
110
  - clientId
104
111
  - index
105
112
  - localMovedSeq
@@ -116,7 +123,6 @@ Dependency updates only.
116
123
  - wasMovedOnInsert
117
124
 
118
125
  Additionally, the following types are also removed:
119
-
120
126
  - IMergeNodeCommon
121
127
  - IMoveInfo
122
128
  - IRemovalInfo
@@ -144,7 +150,6 @@ Dependency updates only.
144
150
  ```
145
151
 
146
152
  The following properties are deprecated on ISegment and its implementations:
147
-
148
153
  - clientId
149
154
  - index
150
155
  - localMovedSeq
@@ -161,7 +166,6 @@ Dependency updates only.
161
166
  - wasMovedOnInsert
162
167
 
163
168
  Additionally, the following types are also deprecated, and will become internal (i.e. users of the Fluid Framework will not have access to them):
164
-
165
169
  - IMergeNodeCommon
166
170
  - IMoveInfo
167
171
  - IRemovalInfo
@@ -180,7 +184,6 @@ Dependency updates only.
180
184
  As part of ongoing improvements, several internal types and related APIs have been removed. These types are unnecessary for any supported scenarios and could lead to errors if used. Since directly using these types would likely result in errors, these changes are not likely to impact any Fluid Framework consumers.
181
185
 
182
186
  Removed types:
183
-
184
187
  - IMergeTreeTextHelper
185
188
  - MergeNode
186
189
  - ObliterateInfo
@@ -192,12 +195,10 @@ Dependency updates only.
192
195
  In addition to removing the above types, they are no longer exposed through the following interfaces and their implementations: `ISegment`, `ReferencePosition`, and `ISerializableInterval`.
193
196
 
194
197
  Removed functions:
195
-
196
198
  - addProperties
197
199
  - ack
198
200
 
199
201
  Removed properties:
200
-
201
202
  - propertyManager
202
203
  - segmentGroups
203
204
 
@@ -211,7 +212,6 @@ Dependency updates only.
211
212
  An adjustment is a modification applied to a property value within a specified range. Adjustments can be used to increment or decrement property values dynamically. They are particularly useful in scenarios where property values need to be updated based on user interactions or other events. For example, in a rich text editor, adjustments can be used for modifying indentation levels or font sizes, where multiple users could apply differing numerical adjustments.
212
213
 
213
214
  ### Key Features and Use Cases:
214
-
215
215
  - **Adjustments with Constraints**: Adjustments can include optional minimum and maximum constraints to ensure the final value falls within specified bounds. This is particularly useful for maintaining consistent formatting in rich text editors.
216
216
  - **Consistent Property Changes**: The feature ensures that property changes are consistent, managing both local and remote changes effectively. This is essential for collaborative rich text editing where multiple users may be making adjustments simultaneously.
217
217
  - **Rich Text Formatting**: Adjustments can be used to modify text properties such as font size, indentation, or other formatting attributes dynamically based on user actions.
@@ -233,7 +233,6 @@ Dependency updates only.
233
233
  The `Client` class in the merge-tree package has been removed. Types that directly or indirectly expose the merge-tree `Client` class have also been removed.
234
234
 
235
235
  The removed types were not meant to be used directly, and direct usage was not supported:
236
-
237
236
  - AttributionPolicy
238
237
  - IClientEvents
239
238
  - IMergeTreeAttributionOptions
@@ -241,7 +240,6 @@ Dependency updates only.
241
240
  - SharedStringClass
242
241
 
243
242
  Some classes that referenced the `Client` class have been transitioned to interfaces. Direct instantiation of these classes was not supported or necessary for any supported scenario, so the change to an interface should not impact usage. This applies to the following types:
244
-
245
243
  - SequenceInterval
246
244
  - SequenceEvent
247
245
  - SequenceDeltaEvent
@@ -289,7 +287,6 @@ Dependency updates only.
289
287
  To reduce exposure of the `Client` class in the merge-tree package, several types have been deprecated. These types directly or indirectly expose the merge-tree `Client` class.
290
288
 
291
289
  Most of these types are not meant to be used directly, and direct use is not supported:
292
-
293
290
  - AttributionPolicy
294
291
  - IClientEvents
295
292
  - IMergeTreeAttributionOptions
@@ -297,7 +294,6 @@ Dependency updates only.
297
294
  - SharedStringClass
298
295
 
299
296
  Some of the deprecations are class constructors. In those cases, we plan to replace the class with an interface which has an equivalent API. Direct instantiation of these classes is not currently supported or necessary for any supported scenario, so the change to an interface should not impact usage. This applies to the following types:
300
-
301
297
  - SequenceInterval
302
298
  - SequenceEvent
303
299
  - SequenceDeltaEvent
@@ -315,7 +311,6 @@ Dependency updates only.
315
311
 
316
312
  The `PropertyManager` class, along with the `propertyManager` properties and `addProperties` functions on segments and intervals, are not intended for external use.
317
313
  These elements will be removed in a future release for the following reasons:
318
-
319
314
  - There are no scenarios where they need to be used directly.
320
315
  - Using them directly will cause eventual consistency problems.
321
316
  - Upcoming features will require modifications to these mechanisms.
@@ -324,7 +319,6 @@ Dependency updates only.
324
319
 
325
320
  The `SegmentGroupCollection` class, along with the `segmentGroups` property and `ack` function on segments, are not intended for external use.
326
321
  These elements will be removed in a future release for the following reasons:
327
-
328
322
  - There are no scenarios where they need to be used directly.
329
323
  - Using them directly will cause eventual consistency problems.
330
324
  - Upcoming features will require modifications to these mechanisms.
@@ -367,7 +361,6 @@ Dependency updates only.
367
361
  TypeScript types and implementation code.
368
362
 
369
363
  This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
370
-
371
364
  - `"moduleResolution": "Node16"` with `"module": "Node16"`
372
365
  - `"moduleResolution": "Bundler"` with `"module": "ESNext"`
373
366
 
@@ -390,7 +383,6 @@ Dependency updates only.
390
383
  - Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
391
384
 
392
385
  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)
393
-
394
386
  - @fluidframework/gitresources
395
387
  - @fluidframework/server-kafka-orderer
396
388
  - @fluidframework/server-lambdas
@@ -448,7 +440,6 @@ Dependency updates only.
448
440
 
449
441
  The following APIs have been removed or marked internal in merge-tree and sequence. This functionality was never
450
442
  intended for public export.
451
-
452
443
  - `BaseSegment.ack`
453
444
  - `Client`
454
445
  - `CollaborationWindow`
@@ -488,12 +479,10 @@ Dependency updates only.
488
479
  - sequence: Remove support for combining ops [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
489
480
 
490
481
  In sequence, removed the following APIs:
491
-
492
482
  - the `combiningOp` argument from `SharedSegmentSequence.annotateRange` and `SharedString.annotateMarker`
493
483
  - the function `SharedString.annotateMarkerNotifyConsensus`
494
484
 
495
485
  In merge-tree, removed the following APIs:
496
-
497
486
  - `ICombiningOp`
498
487
  - the `combiningOp` field from `IMergeTreeAnnotateMsg`
499
488
  - the `op` argument from `BaseSegment.addProperties`, `PropertiesManager.addProperties`, and `ReferencePosition.addProperties`
@@ -504,7 +493,6 @@ Dependency updates only.
504
493
  - sequence: Removed several APIs [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
505
494
 
506
495
  The following APIs have been removed:
507
-
508
496
  - `Client.getStackContext`
509
497
  - `SharedSegmentSequence.getStackContext`
510
498
  - `IntervalType.Nest`
@@ -521,7 +509,6 @@ Dependency updates only.
521
509
  - merge-tree: Remove several APIs [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
522
510
 
523
511
  Removed the following APIs:
524
-
525
512
  - `Stack`
526
513
  - `clone`
527
514
  - `combine`
@@ -563,7 +550,6 @@ Dependency updates only.
563
550
 
564
551
  The following classes and functions have been deprecated. They were not intended for public export and will be removed
565
552
  in a future release.
566
-
567
553
  - Stack
568
554
  - clone
569
555
  - combine
@@ -576,7 +562,6 @@ Dependency updates only.
576
562
 
577
563
  The following classes and functions have been deprecated. The functionality has poor test coverage and is largely
578
564
  unused. They will be removed in a future release.
579
-
580
565
  - IntervalType.Nest
581
566
  - internedSpaces
582
567
  - RangeStackMap
@@ -595,7 +580,6 @@ Dependency updates only.
595
580
  - Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
596
581
 
597
582
  This included the following changes from the protocol-definitions release:
598
-
599
583
  - Updating signal interfaces for some planned improvements. The intention is split the interface between signals
600
584
  submitted by clients to the server and the resulting signals sent from the server to clients.
601
585
  - A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
@@ -606,7 +590,6 @@ Dependency updates only.
606
590
  - Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
607
591
 
608
592
  Dependencies on the following Fluid server package have been updated to version 2.0.1:
609
-
610
593
  - @fluidframework/gitresources: 2.0.1
611
594
  - @fluidframework/server-kafka-orderer: 2.0.1
612
595
  - @fluidframework/server-lambdas: 2.0.1
@@ -657,7 +640,6 @@ Dependency updates only.
657
640
 
658
641
  The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
659
642
  imported from the **@fluidframework/core-interfaces** package:
660
-
661
643
  - interface IDisposable
662
644
  - interface IErrorEvent
663
645
  - interface IErrorEvent
package/dist/client.js CHANGED
@@ -181,7 +181,7 @@ class Client extends client_utils_1.TypedEventEmitter {
181
181
  * (default is to be after the last included character, but number index is exclusive).
182
182
  */
183
183
  obliterateRangeLocal(start, end) {
184
- // eslint-disable-next-line import/no-deprecated
184
+ // eslint-disable-next-line import-x/no-deprecated
185
185
  let obliterateOp;
186
186
  if (this._mergeTree.options?.mergeTreeEnableSidedObliterate) {
187
187
  obliterateOp = (0, opBuilder_js_1.createObliterateRangeOpSided)(start, end);
@@ -414,7 +414,7 @@ class Client extends client_utils_1.TypedEventEmitter {
414
414
  * @throws LoggingError if the range is invalid
415
415
  */
416
416
  getValidSidedRange(
417
- // eslint-disable-next-line import/no-deprecated
417
+ // eslint-disable-next-line import-x/no-deprecated
418
418
  op, perspective) {
419
419
  const invalidPositions = [];
420
420
  let start;
@@ -1037,7 +1037,7 @@ class Client extends client_utils_1.TypedEventEmitter {
1037
1037
  const loader = new snapshotLoader_js_1.SnapshotLoader(runtime, this, this._mergeTree, this.logger, serializer);
1038
1038
  return loader.initialize(storage);
1039
1039
  }
1040
- // eslint-disable-next-line import/no-deprecated
1040
+ // eslint-disable-next-line import-x/no-deprecated
1041
1041
  localTransaction(groupOp) {
1042
1042
  for (const op of groupOp.ops) {
1043
1043
  const opArgs = {