@fluidframework/merge-tree 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 CHANGED
@@ -1,5 +1,9 @@
1
1
  # @fluidframework/merge-tree
2
2
 
3
+ ## 2.72.0
4
+
5
+ Dependency updates only.
6
+
3
7
  ## 2.71.0
4
8
 
5
9
  Dependency updates only.
@@ -103,7 +107,6 @@ Dependency updates only.
103
107
  ```
104
108
 
105
109
  The following properties are removed from `ISegment` and its implementations:
106
-
107
110
  - clientId
108
111
  - index
109
112
  - localMovedSeq
@@ -120,7 +123,6 @@ Dependency updates only.
120
123
  - wasMovedOnInsert
121
124
 
122
125
  Additionally, the following types are also removed:
123
-
124
126
  - IMergeNodeCommon
125
127
  - IMoveInfo
126
128
  - IRemovalInfo
@@ -148,7 +150,6 @@ Dependency updates only.
148
150
  ```
149
151
 
150
152
  The following properties are deprecated on ISegment and its implementations:
151
-
152
153
  - clientId
153
154
  - index
154
155
  - localMovedSeq
@@ -165,7 +166,6 @@ Dependency updates only.
165
166
  - wasMovedOnInsert
166
167
 
167
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):
168
-
169
169
  - IMergeNodeCommon
170
170
  - IMoveInfo
171
171
  - IRemovalInfo
@@ -184,7 +184,6 @@ Dependency updates only.
184
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.
185
185
 
186
186
  Removed types:
187
-
188
187
  - IMergeTreeTextHelper
189
188
  - MergeNode
190
189
  - ObliterateInfo
@@ -196,12 +195,10 @@ Dependency updates only.
196
195
  In addition to removing the above types, they are no longer exposed through the following interfaces and their implementations: `ISegment`, `ReferencePosition`, and `ISerializableInterval`.
197
196
 
198
197
  Removed functions:
199
-
200
198
  - addProperties
201
199
  - ack
202
200
 
203
201
  Removed properties:
204
-
205
202
  - propertyManager
206
203
  - segmentGroups
207
204
 
@@ -215,7 +212,6 @@ Dependency updates only.
215
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.
216
213
 
217
214
  ### Key Features and Use Cases:
218
-
219
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.
220
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.
221
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.
@@ -237,7 +233,6 @@ Dependency updates only.
237
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.
238
234
 
239
235
  The removed types were not meant to be used directly, and direct usage was not supported:
240
-
241
236
  - AttributionPolicy
242
237
  - IClientEvents
243
238
  - IMergeTreeAttributionOptions
@@ -245,7 +240,6 @@ Dependency updates only.
245
240
  - SharedStringClass
246
241
 
247
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:
248
-
249
243
  - SequenceInterval
250
244
  - SequenceEvent
251
245
  - SequenceDeltaEvent
@@ -293,7 +287,6 @@ Dependency updates only.
293
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.
294
288
 
295
289
  Most of these types are not meant to be used directly, and direct use is not supported:
296
-
297
290
  - AttributionPolicy
298
291
  - IClientEvents
299
292
  - IMergeTreeAttributionOptions
@@ -301,7 +294,6 @@ Dependency updates only.
301
294
  - SharedStringClass
302
295
 
303
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:
304
-
305
297
  - SequenceInterval
306
298
  - SequenceEvent
307
299
  - SequenceDeltaEvent
@@ -319,7 +311,6 @@ Dependency updates only.
319
311
 
320
312
  The `PropertyManager` class, along with the `propertyManager` properties and `addProperties` functions on segments and intervals, are not intended for external use.
321
313
  These elements will be removed in a future release for the following reasons:
322
-
323
314
  - There are no scenarios where they need to be used directly.
324
315
  - Using them directly will cause eventual consistency problems.
325
316
  - Upcoming features will require modifications to these mechanisms.
@@ -328,7 +319,6 @@ Dependency updates only.
328
319
 
329
320
  The `SegmentGroupCollection` class, along with the `segmentGroups` property and `ack` function on segments, are not intended for external use.
330
321
  These elements will be removed in a future release for the following reasons:
331
-
332
322
  - There are no scenarios where they need to be used directly.
333
323
  - Using them directly will cause eventual consistency problems.
334
324
  - Upcoming features will require modifications to these mechanisms.
@@ -371,7 +361,6 @@ Dependency updates only.
371
361
  TypeScript types and implementation code.
372
362
 
373
363
  This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
374
-
375
364
  - `"moduleResolution": "Node16"` with `"module": "Node16"`
376
365
  - `"moduleResolution": "Bundler"` with `"module": "ESNext"`
377
366
 
@@ -394,7 +383,6 @@ Dependency updates only.
394
383
  - Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
395
384
 
396
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)
397
-
398
386
  - @fluidframework/gitresources
399
387
  - @fluidframework/server-kafka-orderer
400
388
  - @fluidframework/server-lambdas
@@ -452,7 +440,6 @@ Dependency updates only.
452
440
 
453
441
  The following APIs have been removed or marked internal in merge-tree and sequence. This functionality was never
454
442
  intended for public export.
455
-
456
443
  - `BaseSegment.ack`
457
444
  - `Client`
458
445
  - `CollaborationWindow`
@@ -492,12 +479,10 @@ Dependency updates only.
492
479
  - sequence: Remove support for combining ops [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
493
480
 
494
481
  In sequence, removed the following APIs:
495
-
496
482
  - the `combiningOp` argument from `SharedSegmentSequence.annotateRange` and `SharedString.annotateMarker`
497
483
  - the function `SharedString.annotateMarkerNotifyConsensus`
498
484
 
499
485
  In merge-tree, removed the following APIs:
500
-
501
486
  - `ICombiningOp`
502
487
  - the `combiningOp` field from `IMergeTreeAnnotateMsg`
503
488
  - the `op` argument from `BaseSegment.addProperties`, `PropertiesManager.addProperties`, and `ReferencePosition.addProperties`
@@ -508,7 +493,6 @@ Dependency updates only.
508
493
  - sequence: Removed several APIs [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
509
494
 
510
495
  The following APIs have been removed:
511
-
512
496
  - `Client.getStackContext`
513
497
  - `SharedSegmentSequence.getStackContext`
514
498
  - `IntervalType.Nest`
@@ -525,7 +509,6 @@ Dependency updates only.
525
509
  - merge-tree: Remove several APIs [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
526
510
 
527
511
  Removed the following APIs:
528
-
529
512
  - `Stack`
530
513
  - `clone`
531
514
  - `combine`
@@ -567,7 +550,6 @@ Dependency updates only.
567
550
 
568
551
  The following classes and functions have been deprecated. They were not intended for public export and will be removed
569
552
  in a future release.
570
-
571
553
  - Stack
572
554
  - clone
573
555
  - combine
@@ -580,7 +562,6 @@ Dependency updates only.
580
562
 
581
563
  The following classes and functions have been deprecated. The functionality has poor test coverage and is largely
582
564
  unused. They will be removed in a future release.
583
-
584
565
  - IntervalType.Nest
585
566
  - internedSpaces
586
567
  - RangeStackMap
@@ -599,7 +580,6 @@ Dependency updates only.
599
580
  - Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
600
581
 
601
582
  This included the following changes from the protocol-definitions release:
602
-
603
583
  - Updating signal interfaces for some planned improvements. The intention is split the interface between signals
604
584
  submitted by clients to the server and the resulting signals sent from the server to clients.
605
585
  - A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
@@ -610,7 +590,6 @@ Dependency updates only.
610
590
  - Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
611
591
 
612
592
  Dependencies on the following Fluid server package have been updated to version 2.0.1:
613
-
614
593
  - @fluidframework/gitresources: 2.0.1
615
594
  - @fluidframework/server-kafka-orderer: 2.0.1
616
595
  - @fluidframework/server-lambdas: 2.0.1
@@ -661,7 +640,6 @@ Dependency updates only.
661
640
 
662
641
  The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
663
642
  imported from the **@fluidframework/core-interfaces** package:
664
-
665
643
  - interface IDisposable
666
644
  - interface IErrorEvent
667
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 = {