@fluidframework/container-runtime 2.13.0 → 2.21.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 (489) hide show
  1. package/.eslintrc.cjs +71 -5
  2. package/CHANGELOG.md +84 -0
  3. package/api-report/container-runtime.legacy.alpha.api.md +38 -232
  4. package/dist/batchTracker.d.ts +1 -2
  5. package/dist/batchTracker.d.ts.map +1 -1
  6. package/dist/batchTracker.js +1 -1
  7. package/dist/batchTracker.js.map +1 -1
  8. package/dist/blobManager/blobManager.d.ts +5 -1
  9. package/dist/blobManager/blobManager.d.ts.map +1 -1
  10. package/dist/blobManager/blobManager.js +30 -13
  11. package/dist/blobManager/blobManager.js.map +1 -1
  12. package/dist/blobManager/blobManagerSnapSum.d.ts +1 -0
  13. package/dist/blobManager/blobManagerSnapSum.d.ts.map +1 -1
  14. package/dist/blobManager/blobManagerSnapSum.js +7 -5
  15. package/dist/blobManager/blobManagerSnapSum.js.map +1 -1
  16. package/dist/channelCollection.d.ts +23 -12
  17. package/dist/channelCollection.d.ts.map +1 -1
  18. package/dist/channelCollection.js +85 -53
  19. package/dist/channelCollection.js.map +1 -1
  20. package/dist/connectionTelemetry.d.ts +2 -2
  21. package/dist/connectionTelemetry.d.ts.map +1 -1
  22. package/dist/connectionTelemetry.js +10 -6
  23. package/dist/connectionTelemetry.js.map +1 -1
  24. package/dist/containerHandleContext.d.ts +1 -1
  25. package/dist/containerHandleContext.d.ts.map +1 -1
  26. package/dist/containerHandleContext.js.map +1 -1
  27. package/dist/containerRuntime.d.ts +87 -94
  28. package/dist/containerRuntime.d.ts.map +1 -1
  29. package/dist/containerRuntime.js +312 -226
  30. package/dist/containerRuntime.js.map +1 -1
  31. package/dist/dataStore.d.ts +7 -3
  32. package/dist/dataStore.d.ts.map +1 -1
  33. package/dist/dataStore.js +8 -4
  34. package/dist/dataStore.js.map +1 -1
  35. package/dist/dataStoreContext.d.ts +41 -25
  36. package/dist/dataStoreContext.d.ts.map +1 -1
  37. package/dist/dataStoreContext.js +47 -29
  38. package/dist/dataStoreContext.js.map +1 -1
  39. package/dist/dataStoreContexts.d.ts +6 -2
  40. package/dist/dataStoreContexts.d.ts.map +1 -1
  41. package/dist/dataStoreContexts.js +7 -2
  42. package/dist/dataStoreContexts.js.map +1 -1
  43. package/dist/dataStoreRegistry.d.ts +1 -1
  44. package/dist/dataStoreRegistry.d.ts.map +1 -1
  45. package/dist/dataStoreRegistry.js.map +1 -1
  46. package/dist/deltaManagerProxies.d.ts +1 -17
  47. package/dist/deltaManagerProxies.d.ts.map +1 -1
  48. package/dist/deltaManagerProxies.js.map +1 -1
  49. package/dist/deltaScheduler.d.ts +9 -6
  50. package/dist/deltaScheduler.d.ts.map +1 -1
  51. package/dist/deltaScheduler.js +95 -89
  52. package/dist/deltaScheduler.js.map +1 -1
  53. package/dist/gc/garbageCollection.d.ts +21 -7
  54. package/dist/gc/garbageCollection.d.ts.map +1 -1
  55. package/dist/gc/garbageCollection.js +48 -19
  56. package/dist/gc/garbageCollection.js.map +1 -1
  57. package/dist/gc/gcConfigs.d.ts +11 -0
  58. package/dist/gc/gcConfigs.d.ts.map +1 -1
  59. package/dist/gc/gcConfigs.js +5 -2
  60. package/dist/gc/gcConfigs.js.map +1 -1
  61. package/dist/gc/gcDefinitions.d.ts +218 -70
  62. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  63. package/dist/gc/gcDefinitions.js +40 -13
  64. package/dist/gc/gcDefinitions.js.map +1 -1
  65. package/dist/gc/gcHelpers.d.ts +6 -2
  66. package/dist/gc/gcHelpers.d.ts.map +1 -1
  67. package/dist/gc/gcHelpers.js +14 -7
  68. package/dist/gc/gcHelpers.js.map +1 -1
  69. package/dist/gc/gcReferenceGraphAlgorithm.js.map +1 -1
  70. package/dist/gc/gcSummaryDefinitions.d.ts +18 -6
  71. package/dist/gc/gcSummaryDefinitions.d.ts.map +1 -1
  72. package/dist/gc/gcSummaryDefinitions.js.map +1 -1
  73. package/dist/gc/gcSummaryStateTracker.d.ts.map +1 -1
  74. package/dist/gc/gcSummaryStateTracker.js +2 -1
  75. package/dist/gc/gcSummaryStateTracker.js.map +1 -1
  76. package/dist/gc/gcTelemetry.d.ts +33 -11
  77. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  78. package/dist/gc/gcTelemetry.js +35 -17
  79. package/dist/gc/gcTelemetry.js.map +1 -1
  80. package/dist/gc/gcUnreferencedStateTracker.d.ts +42 -13
  81. package/dist/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
  82. package/dist/gc/gcUnreferencedStateTracker.js +27 -9
  83. package/dist/gc/gcUnreferencedStateTracker.js.map +1 -1
  84. package/dist/gc/index.d.ts +1 -0
  85. package/dist/gc/index.d.ts.map +1 -1
  86. package/dist/gc/index.js +3 -1
  87. package/dist/gc/index.js.map +1 -1
  88. package/dist/inboundBatchAggregator.d.ts +34 -0
  89. package/dist/inboundBatchAggregator.d.ts.map +1 -0
  90. package/dist/inboundBatchAggregator.js +185 -0
  91. package/dist/inboundBatchAggregator.js.map +1 -0
  92. package/dist/index.d.ts +1 -1
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js.map +1 -1
  95. package/dist/layerCompatState.d.ts +19 -0
  96. package/dist/layerCompatState.d.ts.map +1 -0
  97. package/dist/layerCompatState.js +64 -0
  98. package/dist/layerCompatState.js.map +1 -0
  99. package/dist/legacy.d.ts +0 -4
  100. package/dist/messageTypes.d.ts +14 -5
  101. package/dist/messageTypes.d.ts.map +1 -1
  102. package/dist/messageTypes.js.map +1 -1
  103. package/dist/metadata.d.ts +12 -4
  104. package/dist/metadata.d.ts.map +1 -1
  105. package/dist/metadata.js +6 -2
  106. package/dist/metadata.js.map +1 -1
  107. package/dist/opLifecycle/batchManager.d.ts +9 -3
  108. package/dist/opLifecycle/batchManager.d.ts.map +1 -1
  109. package/dist/opLifecycle/batchManager.js +3 -1
  110. package/dist/opLifecycle/batchManager.js.map +1 -1
  111. package/dist/opLifecycle/duplicateBatchDetector.d.ts +9 -3
  112. package/dist/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
  113. package/dist/opLifecycle/duplicateBatchDetector.js +11 -5
  114. package/dist/opLifecycle/duplicateBatchDetector.js.map +1 -1
  115. package/dist/opLifecycle/opCompressor.d.ts +3 -2
  116. package/dist/opLifecycle/opCompressor.d.ts.map +1 -1
  117. package/dist/opLifecycle/opCompressor.js +13 -19
  118. package/dist/opLifecycle/opCompressor.js.map +1 -1
  119. package/dist/opLifecycle/opDecompressor.d.ts +6 -1
  120. package/dist/opLifecycle/opDecompressor.d.ts.map +1 -1
  121. package/dist/opLifecycle/opDecompressor.js +16 -8
  122. package/dist/opLifecycle/opDecompressor.js.map +1 -1
  123. package/dist/opLifecycle/opGroupingManager.d.ts +1 -2
  124. package/dist/opLifecycle/opGroupingManager.d.ts.map +1 -1
  125. package/dist/opLifecycle/opGroupingManager.js +9 -6
  126. package/dist/opLifecycle/opGroupingManager.js.map +1 -1
  127. package/dist/opLifecycle/opSplitter.d.ts +13 -10
  128. package/dist/opLifecycle/opSplitter.d.ts.map +1 -1
  129. package/dist/opLifecycle/opSplitter.js +16 -11
  130. package/dist/opLifecycle/opSplitter.js.map +1 -1
  131. package/dist/opLifecycle/outbox.d.ts +4 -4
  132. package/dist/opLifecycle/outbox.d.ts.map +1 -1
  133. package/dist/opLifecycle/outbox.js +17 -16
  134. package/dist/opLifecycle/outbox.js.map +1 -1
  135. package/dist/opLifecycle/remoteMessageProcessor.d.ts +9 -3
  136. package/dist/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  137. package/dist/opLifecycle/remoteMessageProcessor.js +3 -1
  138. package/dist/opLifecycle/remoteMessageProcessor.js.map +1 -1
  139. package/dist/package.json +2 -1
  140. package/dist/packageVersion.d.ts +1 -1
  141. package/dist/packageVersion.js +1 -1
  142. package/dist/packageVersion.js.map +1 -1
  143. package/dist/pendingStateManager.d.ts +22 -11
  144. package/dist/pendingStateManager.d.ts.map +1 -1
  145. package/dist/pendingStateManager.js +24 -15
  146. package/dist/pendingStateManager.js.map +1 -1
  147. package/dist/summary/documentSchema.d.ts +7 -0
  148. package/dist/summary/documentSchema.d.ts.map +1 -1
  149. package/dist/summary/documentSchema.js +8 -4
  150. package/dist/summary/documentSchema.js.map +1 -1
  151. package/dist/summary/index.d.ts +1 -1
  152. package/dist/summary/index.d.ts.map +1 -1
  153. package/dist/summary/index.js.map +1 -1
  154. package/dist/summary/orderedClientElection.d.ts +94 -31
  155. package/dist/summary/orderedClientElection.d.ts.map +1 -1
  156. package/dist/summary/orderedClientElection.js +28 -16
  157. package/dist/summary/orderedClientElection.js.map +1 -1
  158. package/dist/summary/runWhileConnectedCoordinator.d.ts +1 -0
  159. package/dist/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  160. package/dist/summary/runWhileConnectedCoordinator.js +7 -2
  161. package/dist/summary/runWhileConnectedCoordinator.js.map +1 -1
  162. package/dist/summary/runningSummarizer.d.ts +17 -6
  163. package/dist/summary/runningSummarizer.d.ts.map +1 -1
  164. package/dist/summary/runningSummarizer.js +48 -19
  165. package/dist/summary/runningSummarizer.js.map +1 -1
  166. package/dist/summary/summarizer.d.ts +10 -5
  167. package/dist/summary/summarizer.d.ts.map +1 -1
  168. package/dist/summary/summarizer.js +26 -11
  169. package/dist/summary/summarizer.js.map +1 -1
  170. package/dist/summary/summarizerClientElection.d.ts.map +1 -1
  171. package/dist/summary/summarizerClientElection.js +1 -0
  172. package/dist/summary/summarizerClientElection.js.map +1 -1
  173. package/dist/summary/summarizerHeuristics.d.ts +6 -2
  174. package/dist/summary/summarizerHeuristics.d.ts.map +1 -1
  175. package/dist/summary/summarizerHeuristics.js +13 -5
  176. package/dist/summary/summarizerHeuristics.js.map +1 -1
  177. package/dist/summary/summarizerNode/index.d.ts.map +1 -1
  178. package/dist/summary/summarizerNode/index.js.map +1 -1
  179. package/dist/summary/summarizerNode/summarizerNode.d.ts +24 -8
  180. package/dist/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  181. package/dist/summary/summarizerNode/summarizerNode.js +45 -36
  182. package/dist/summary/summarizerNode/summarizerNode.js.map +1 -1
  183. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
  184. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  185. package/dist/summary/summarizerNode/summarizerNodeUtils.js +3 -1
  186. package/dist/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  187. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts +13 -5
  188. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  189. package/dist/summary/summarizerNode/summarizerNodeWithGc.js +15 -7
  190. package/dist/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  191. package/dist/summary/summarizerTypes.d.ts +253 -135
  192. package/dist/summary/summarizerTypes.d.ts.map +1 -1
  193. package/dist/summary/summarizerTypes.js.map +1 -1
  194. package/dist/summary/summaryCollection.d.ts +3 -4
  195. package/dist/summary/summaryCollection.d.ts.map +1 -1
  196. package/dist/summary/summaryCollection.js +10 -8
  197. package/dist/summary/summaryCollection.js.map +1 -1
  198. package/dist/summary/summaryFormat.d.ts +28 -9
  199. package/dist/summary/summaryFormat.d.ts.map +1 -1
  200. package/dist/summary/summaryFormat.js +3 -2
  201. package/dist/summary/summaryFormat.js.map +1 -1
  202. package/dist/summary/summaryGenerator.d.ts +9 -3
  203. package/dist/summary/summaryGenerator.d.ts.map +1 -1
  204. package/dist/summary/summaryGenerator.js +22 -9
  205. package/dist/summary/summaryGenerator.js.map +1 -1
  206. package/dist/summary/summaryManager.d.ts +8 -4
  207. package/dist/summary/summaryManager.d.ts.map +1 -1
  208. package/dist/summary/summaryManager.js +20 -9
  209. package/dist/summary/summaryManager.js.map +1 -1
  210. package/dist/throttler.d.ts +26 -10
  211. package/dist/throttler.d.ts.map +1 -1
  212. package/dist/throttler.js +12 -4
  213. package/dist/throttler.js.map +1 -1
  214. package/lib/batchTracker.d.ts +1 -2
  215. package/lib/batchTracker.d.ts.map +1 -1
  216. package/lib/batchTracker.js +2 -2
  217. package/lib/batchTracker.js.map +1 -1
  218. package/lib/blobManager/blobManager.d.ts +5 -1
  219. package/lib/blobManager/blobManager.d.ts.map +1 -1
  220. package/lib/blobManager/blobManager.js +30 -13
  221. package/lib/blobManager/blobManager.js.map +1 -1
  222. package/lib/blobManager/blobManagerSnapSum.d.ts +1 -0
  223. package/lib/blobManager/blobManagerSnapSum.d.ts.map +1 -1
  224. package/lib/blobManager/blobManagerSnapSum.js +7 -5
  225. package/lib/blobManager/blobManagerSnapSum.js.map +1 -1
  226. package/lib/channelCollection.d.ts +23 -12
  227. package/lib/channelCollection.d.ts.map +1 -1
  228. package/lib/channelCollection.js +88 -54
  229. package/lib/channelCollection.js.map +1 -1
  230. package/lib/connectionTelemetry.d.ts +2 -2
  231. package/lib/connectionTelemetry.d.ts.map +1 -1
  232. package/lib/connectionTelemetry.js +11 -7
  233. package/lib/connectionTelemetry.js.map +1 -1
  234. package/lib/containerHandleContext.d.ts +1 -1
  235. package/lib/containerHandleContext.d.ts.map +1 -1
  236. package/lib/containerHandleContext.js.map +1 -1
  237. package/lib/containerRuntime.d.ts +87 -94
  238. package/lib/containerRuntime.d.ts.map +1 -1
  239. package/lib/containerRuntime.js +319 -228
  240. package/lib/containerRuntime.js.map +1 -1
  241. package/lib/dataStore.d.ts +7 -3
  242. package/lib/dataStore.d.ts.map +1 -1
  243. package/lib/dataStore.js +8 -4
  244. package/lib/dataStore.js.map +1 -1
  245. package/lib/dataStoreContext.d.ts +41 -25
  246. package/lib/dataStoreContext.d.ts.map +1 -1
  247. package/lib/dataStoreContext.js +47 -29
  248. package/lib/dataStoreContext.js.map +1 -1
  249. package/lib/dataStoreContexts.d.ts +6 -2
  250. package/lib/dataStoreContexts.d.ts.map +1 -1
  251. package/lib/dataStoreContexts.js +7 -2
  252. package/lib/dataStoreContexts.js.map +1 -1
  253. package/lib/dataStoreRegistry.d.ts +1 -1
  254. package/lib/dataStoreRegistry.d.ts.map +1 -1
  255. package/lib/dataStoreRegistry.js.map +1 -1
  256. package/lib/deltaManagerProxies.d.ts +1 -17
  257. package/lib/deltaManagerProxies.d.ts.map +1 -1
  258. package/lib/deltaManagerProxies.js.map +1 -1
  259. package/lib/deltaScheduler.d.ts +9 -6
  260. package/lib/deltaScheduler.d.ts.map +1 -1
  261. package/lib/deltaScheduler.js +96 -90
  262. package/lib/deltaScheduler.js.map +1 -1
  263. package/lib/gc/garbageCollection.d.ts +21 -7
  264. package/lib/gc/garbageCollection.d.ts.map +1 -1
  265. package/lib/gc/garbageCollection.js +51 -20
  266. package/lib/gc/garbageCollection.js.map +1 -1
  267. package/lib/gc/gcConfigs.d.ts +11 -0
  268. package/lib/gc/gcConfigs.d.ts.map +1 -1
  269. package/lib/gc/gcConfigs.js +4 -2
  270. package/lib/gc/gcConfigs.js.map +1 -1
  271. package/lib/gc/gcDefinitions.d.ts +218 -70
  272. package/lib/gc/gcDefinitions.d.ts.map +1 -1
  273. package/lib/gc/gcDefinitions.js +40 -13
  274. package/lib/gc/gcDefinitions.js.map +1 -1
  275. package/lib/gc/gcHelpers.d.ts +6 -2
  276. package/lib/gc/gcHelpers.d.ts.map +1 -1
  277. package/lib/gc/gcHelpers.js +14 -7
  278. package/lib/gc/gcHelpers.js.map +1 -1
  279. package/lib/gc/gcReferenceGraphAlgorithm.js.map +1 -1
  280. package/lib/gc/gcSummaryDefinitions.d.ts +18 -6
  281. package/lib/gc/gcSummaryDefinitions.d.ts.map +1 -1
  282. package/lib/gc/gcSummaryDefinitions.js.map +1 -1
  283. package/lib/gc/gcSummaryStateTracker.d.ts.map +1 -1
  284. package/lib/gc/gcSummaryStateTracker.js +2 -1
  285. package/lib/gc/gcSummaryStateTracker.js.map +1 -1
  286. package/lib/gc/gcTelemetry.d.ts +33 -11
  287. package/lib/gc/gcTelemetry.d.ts.map +1 -1
  288. package/lib/gc/gcTelemetry.js +38 -18
  289. package/lib/gc/gcTelemetry.js.map +1 -1
  290. package/lib/gc/gcUnreferencedStateTracker.d.ts +42 -13
  291. package/lib/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
  292. package/lib/gc/gcUnreferencedStateTracker.js +27 -9
  293. package/lib/gc/gcUnreferencedStateTracker.js.map +1 -1
  294. package/lib/gc/index.d.ts +1 -0
  295. package/lib/gc/index.d.ts.map +1 -1
  296. package/lib/gc/index.js +1 -0
  297. package/lib/gc/index.js.map +1 -1
  298. package/lib/inboundBatchAggregator.d.ts +34 -0
  299. package/lib/inboundBatchAggregator.d.ts.map +1 -0
  300. package/lib/inboundBatchAggregator.js +181 -0
  301. package/lib/inboundBatchAggregator.js.map +1 -0
  302. package/lib/index.d.ts +1 -1
  303. package/lib/index.d.ts.map +1 -1
  304. package/lib/index.js.map +1 -1
  305. package/lib/layerCompatState.d.ts +19 -0
  306. package/lib/layerCompatState.d.ts.map +1 -0
  307. package/lib/layerCompatState.js +60 -0
  308. package/lib/layerCompatState.js.map +1 -0
  309. package/lib/legacy.d.ts +0 -4
  310. package/lib/messageTypes.d.ts +14 -5
  311. package/lib/messageTypes.d.ts.map +1 -1
  312. package/lib/messageTypes.js.map +1 -1
  313. package/lib/metadata.d.ts +12 -4
  314. package/lib/metadata.d.ts.map +1 -1
  315. package/lib/metadata.js +6 -2
  316. package/lib/metadata.js.map +1 -1
  317. package/lib/opLifecycle/batchManager.d.ts +9 -3
  318. package/lib/opLifecycle/batchManager.d.ts.map +1 -1
  319. package/lib/opLifecycle/batchManager.js +3 -1
  320. package/lib/opLifecycle/batchManager.js.map +1 -1
  321. package/lib/opLifecycle/duplicateBatchDetector.d.ts +9 -3
  322. package/lib/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
  323. package/lib/opLifecycle/duplicateBatchDetector.js +11 -5
  324. package/lib/opLifecycle/duplicateBatchDetector.js.map +1 -1
  325. package/lib/opLifecycle/opCompressor.d.ts +3 -2
  326. package/lib/opLifecycle/opCompressor.d.ts.map +1 -1
  327. package/lib/opLifecycle/opCompressor.js +14 -20
  328. package/lib/opLifecycle/opCompressor.js.map +1 -1
  329. package/lib/opLifecycle/opDecompressor.d.ts +6 -1
  330. package/lib/opLifecycle/opDecompressor.d.ts.map +1 -1
  331. package/lib/opLifecycle/opDecompressor.js +17 -9
  332. package/lib/opLifecycle/opDecompressor.js.map +1 -1
  333. package/lib/opLifecycle/opGroupingManager.d.ts +1 -2
  334. package/lib/opLifecycle/opGroupingManager.d.ts.map +1 -1
  335. package/lib/opLifecycle/opGroupingManager.js +10 -7
  336. package/lib/opLifecycle/opGroupingManager.js.map +1 -1
  337. package/lib/opLifecycle/opSplitter.d.ts +13 -10
  338. package/lib/opLifecycle/opSplitter.d.ts.map +1 -1
  339. package/lib/opLifecycle/opSplitter.js +16 -11
  340. package/lib/opLifecycle/opSplitter.js.map +1 -1
  341. package/lib/opLifecycle/outbox.d.ts +4 -4
  342. package/lib/opLifecycle/outbox.d.ts.map +1 -1
  343. package/lib/opLifecycle/outbox.js +17 -16
  344. package/lib/opLifecycle/outbox.js.map +1 -1
  345. package/lib/opLifecycle/remoteMessageProcessor.d.ts +9 -3
  346. package/lib/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  347. package/lib/opLifecycle/remoteMessageProcessor.js +3 -1
  348. package/lib/opLifecycle/remoteMessageProcessor.js.map +1 -1
  349. package/lib/packageVersion.d.ts +1 -1
  350. package/lib/packageVersion.js +1 -1
  351. package/lib/packageVersion.js.map +1 -1
  352. package/lib/pendingStateManager.d.ts +22 -11
  353. package/lib/pendingStateManager.d.ts.map +1 -1
  354. package/lib/pendingStateManager.js +25 -16
  355. package/lib/pendingStateManager.js.map +1 -1
  356. package/lib/summary/documentSchema.d.ts +7 -0
  357. package/lib/summary/documentSchema.d.ts.map +1 -1
  358. package/lib/summary/documentSchema.js +8 -4
  359. package/lib/summary/documentSchema.js.map +1 -1
  360. package/lib/summary/index.d.ts +1 -1
  361. package/lib/summary/index.d.ts.map +1 -1
  362. package/lib/summary/index.js.map +1 -1
  363. package/lib/summary/orderedClientElection.d.ts +94 -31
  364. package/lib/summary/orderedClientElection.d.ts.map +1 -1
  365. package/lib/summary/orderedClientElection.js +28 -16
  366. package/lib/summary/orderedClientElection.js.map +1 -1
  367. package/lib/summary/runWhileConnectedCoordinator.d.ts +1 -0
  368. package/lib/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  369. package/lib/summary/runWhileConnectedCoordinator.js +7 -2
  370. package/lib/summary/runWhileConnectedCoordinator.js.map +1 -1
  371. package/lib/summary/runningSummarizer.d.ts +17 -6
  372. package/lib/summary/runningSummarizer.d.ts.map +1 -1
  373. package/lib/summary/runningSummarizer.js +48 -19
  374. package/lib/summary/runningSummarizer.js.map +1 -1
  375. package/lib/summary/summarizer.d.ts +10 -5
  376. package/lib/summary/summarizer.d.ts.map +1 -1
  377. package/lib/summary/summarizer.js +26 -11
  378. package/lib/summary/summarizer.js.map +1 -1
  379. package/lib/summary/summarizerClientElection.d.ts.map +1 -1
  380. package/lib/summary/summarizerClientElection.js +1 -0
  381. package/lib/summary/summarizerClientElection.js.map +1 -1
  382. package/lib/summary/summarizerHeuristics.d.ts +6 -2
  383. package/lib/summary/summarizerHeuristics.d.ts.map +1 -1
  384. package/lib/summary/summarizerHeuristics.js +13 -5
  385. package/lib/summary/summarizerHeuristics.js.map +1 -1
  386. package/lib/summary/summarizerNode/index.d.ts.map +1 -1
  387. package/lib/summary/summarizerNode/index.js.map +1 -1
  388. package/lib/summary/summarizerNode/summarizerNode.d.ts +24 -8
  389. package/lib/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  390. package/lib/summary/summarizerNode/summarizerNode.js +45 -36
  391. package/lib/summary/summarizerNode/summarizerNode.js.map +1 -1
  392. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
  393. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  394. package/lib/summary/summarizerNode/summarizerNodeUtils.js +3 -1
  395. package/lib/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  396. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts +13 -5
  397. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  398. package/lib/summary/summarizerNode/summarizerNodeWithGc.js +15 -7
  399. package/lib/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  400. package/lib/summary/summarizerTypes.d.ts +253 -135
  401. package/lib/summary/summarizerTypes.d.ts.map +1 -1
  402. package/lib/summary/summarizerTypes.js.map +1 -1
  403. package/lib/summary/summaryCollection.d.ts +3 -4
  404. package/lib/summary/summaryCollection.d.ts.map +1 -1
  405. package/lib/summary/summaryCollection.js +10 -8
  406. package/lib/summary/summaryCollection.js.map +1 -1
  407. package/lib/summary/summaryFormat.d.ts +28 -9
  408. package/lib/summary/summaryFormat.d.ts.map +1 -1
  409. package/lib/summary/summaryFormat.js +2 -2
  410. package/lib/summary/summaryFormat.js.map +1 -1
  411. package/lib/summary/summaryGenerator.d.ts +9 -3
  412. package/lib/summary/summaryGenerator.d.ts.map +1 -1
  413. package/lib/summary/summaryGenerator.js +22 -9
  414. package/lib/summary/summaryGenerator.js.map +1 -1
  415. package/lib/summary/summaryManager.d.ts +8 -4
  416. package/lib/summary/summaryManager.d.ts.map +1 -1
  417. package/lib/summary/summaryManager.js +20 -9
  418. package/lib/summary/summaryManager.js.map +1 -1
  419. package/lib/throttler.d.ts +26 -10
  420. package/lib/throttler.d.ts.map +1 -1
  421. package/lib/throttler.js +12 -4
  422. package/lib/throttler.js.map +1 -1
  423. package/package.json +22 -31
  424. package/src/batchTracker.ts +34 -36
  425. package/src/blobManager/blobManager.ts +54 -33
  426. package/src/blobManager/blobManagerSnapSum.ts +10 -10
  427. package/src/channelCollection.ts +108 -82
  428. package/src/connectionTelemetry.ts +43 -19
  429. package/src/containerHandleContext.ts +2 -2
  430. package/src/containerRuntime.ts +492 -364
  431. package/src/dataStore.ts +17 -9
  432. package/src/dataStoreContext.ts +94 -73
  433. package/src/dataStoreContexts.ts +17 -12
  434. package/src/dataStoreRegistry.ts +1 -1
  435. package/src/deltaManagerProxies.ts +5 -5
  436. package/src/deltaScheduler.ts +24 -18
  437. package/src/gc/garbageCollection.ts +89 -40
  438. package/src/gc/gcConfigs.ts +13 -5
  439. package/src/gc/gcDefinitions.ts +224 -70
  440. package/src/gc/gcHelpers.ts +22 -11
  441. package/src/gc/gcReferenceGraphAlgorithm.ts +1 -1
  442. package/src/gc/gcSummaryDefinitions.ts +18 -6
  443. package/src/gc/gcSummaryStateTracker.ts +7 -3
  444. package/src/gc/gcTelemetry.ts +73 -30
  445. package/src/gc/gcUnreferencedStateTracker.ts +40 -16
  446. package/src/gc/index.ts +1 -0
  447. package/src/{scheduleManager.ts → inboundBatchAggregator.ts} +55 -122
  448. package/src/index.ts +0 -3
  449. package/src/layerCompatState.ts +75 -0
  450. package/src/messageTypes.ts +16 -5
  451. package/src/metadata.ts +12 -4
  452. package/src/opLifecycle/README.md +43 -34
  453. package/src/opLifecycle/batchManager.ts +12 -6
  454. package/src/opLifecycle/duplicateBatchDetector.ts +12 -6
  455. package/src/opLifecycle/opCompressor.ts +22 -25
  456. package/src/opLifecycle/opDecompressor.ts +23 -11
  457. package/src/opLifecycle/opGroupingManager.ts +16 -11
  458. package/src/opLifecycle/opSplitter.ts +24 -18
  459. package/src/opLifecycle/outbox.ts +35 -33
  460. package/src/opLifecycle/remoteMessageProcessor.ts +13 -5
  461. package/src/packageVersion.ts +1 -1
  462. package/src/pendingStateManager.ts +49 -26
  463. package/src/summary/documentSchema.ts +41 -22
  464. package/src/summary/index.ts +0 -3
  465. package/src/summary/orderedClientElection.ts +114 -49
  466. package/src/summary/runWhileConnectedCoordinator.ts +12 -3
  467. package/src/summary/runningSummarizer.ts +79 -36
  468. package/src/summary/summarizer.ts +51 -25
  469. package/src/summary/summarizerClientElection.ts +4 -2
  470. package/src/summary/summarizerHeuristics.ts +23 -12
  471. package/src/summary/summarizerNode/index.ts +1 -0
  472. package/src/summary/summarizerNode/summarizerNode.ts +54 -43
  473. package/src/summary/summarizerNode/summarizerNodeUtils.ts +48 -16
  474. package/src/summary/summarizerNode/summarizerNodeWithGc.ts +25 -15
  475. package/src/summary/summarizerTypes.ts +253 -139
  476. package/src/summary/summaryCollection.ts +41 -31
  477. package/src/summary/summaryFormat.ts +34 -13
  478. package/src/summary/summaryGenerator.ts +39 -18
  479. package/src/summary/summaryManager.ts +36 -24
  480. package/src/throttler.ts +23 -11
  481. package/container-runtime.test-files.tar +0 -0
  482. package/dist/scheduleManager.d.ts +0 -28
  483. package/dist/scheduleManager.d.ts.map +0 -1
  484. package/dist/scheduleManager.js +0 -233
  485. package/dist/scheduleManager.js.map +0 -1
  486. package/lib/scheduleManager.d.ts +0 -28
  487. package/lib/scheduleManager.d.ts.map +0 -1
  488. package/lib/scheduleManager.js +0 -229
  489. package/lib/scheduleManager.js.map +0 -1
package/.eslintrc.cjs CHANGED
@@ -4,24 +4,90 @@
4
4
  */
5
5
 
6
6
  module.exports = {
7
- extends: [
8
- require.resolve("@fluidframework/eslint-config-fluid/minimal-deprecated"),
9
- "prettier",
10
- ],
7
+ extends: [require.resolve("@fluidframework/eslint-config-fluid"), "prettier"],
11
8
  parserOptions: {
12
9
  project: ["./tsconfig.json", "./src/test/tsconfig.json"],
13
10
  },
14
11
  rules: {
15
12
  "@typescript-eslint/strict-boolean-expressions": "off",
13
+
14
+ // TODO: fix violations and remove overrides
16
15
  "@fluid-internal/fluid/no-unchecked-record-access": "warn",
16
+ "require-atomic-updates": "warn",
17
+ "unicorn/no-array-reduce": "warn",
18
+
19
+ // False positives on non-array `push` methods.
20
+ // TODO:AB#28686: remove this override once this rule has been disabled in the root config.
21
+ "unicorn/no-array-push-push": "off",
22
+
23
+ // #region TODO:AB#3027: remove overrides and upgrade config to `recommended`
24
+
25
+ "@typescript-eslint/explicit-function-return-type": [
26
+ "error",
27
+ {
28
+ allowExpressions: true,
29
+ allowTypedFunctionExpressions: true,
30
+ allowHigherOrderFunctions: true,
31
+ allowDirectConstAssertionInArrowFunctions: true,
32
+ allowConciseArrowFunctionExpressionsStartingWithVoid: false,
33
+ },
34
+ ],
35
+ "@typescript-eslint/explicit-module-boundary-types": "error",
36
+ "@typescript-eslint/no-explicit-any": [
37
+ "error",
38
+ {
39
+ /**
40
+ * For certain cases, like rest parameters, any is required to allow arbitrary argument types.
41
+ * @see https://typescript-eslint.io/rules/no-explicit-any/#ignorerestargs
42
+ */
43
+ ignoreRestArgs: true,
44
+ },
45
+ ],
46
+ "@typescript-eslint/no-unsafe-argument": "error",
47
+ "@typescript-eslint/no-unsafe-assignment": "error",
48
+ "@typescript-eslint/no-unsafe-call": "error",
49
+ "@typescript-eslint/no-unsafe-member-access": "error",
50
+ "@typescript-eslint/no-unsafe-return": "error",
51
+
52
+ "jsdoc/multiline-blocks": ["error", { noSingleLineBlocks: true }],
53
+ "jsdoc/require-description": ["error", { checkConstructors: false }],
54
+
55
+ "unicorn/catch-error-name": "error",
56
+ "unicorn/consistent-destructuring": "error",
57
+ "unicorn/consistent-function-scoping": "error",
58
+ "unicorn/error-message": "error",
59
+ "unicorn/explicit-length-check": "error",
60
+ "unicorn/new-for-builtins": "error",
61
+ "unicorn/no-array-callback-reference": "error",
62
+ "unicorn/no-array-for-each": "error",
63
+ "unicorn/no-lonely-if": "error",
64
+ "unicorn/no-negated-condition": "error",
65
+ "unicorn/no-new-array": "error",
66
+ "unicorn/no-null": "error",
67
+ "unicorn/no-zero-fractions": "error",
68
+ "unicorn/prefer-includes": "error",
69
+ "unicorn/prefer-node-protocol": "error",
70
+ "unicorn/prefer-number-properties": "error",
71
+ "unicorn/prefer-optional-catch-binding": "error",
72
+ "unicorn/prefer-spread": "error",
73
+ "unicorn/prefer-string-slice": "error",
74
+ "unicorn/switch-case-braces": "error",
75
+ "unicorn/throw-new-error": "error",
76
+
77
+ // #endregion
17
78
  },
18
79
  overrides: [
19
80
  {
20
81
  // Rules only for test files
21
82
  files: ["*.spec.ts", "src/test/**"],
22
83
  rules: {
84
+ // TODO: remove these overrides and fix violations
85
+ "@typescript-eslint/explicit-function-return-type": "warn",
86
+ "unicorn/consistent-function-scoping": "warn",
87
+ "unicorn/error-message": "warn",
88
+
23
89
  // Test files are run in node only so additional node libraries can be used.
24
- "import/no-nodejs-modules": ["error", { allow: ["assert", "crypto"] }],
90
+ "import/no-nodejs-modules": ["error", { allow: ["node:assert", "node:crypto"] }],
25
91
  },
26
92
  },
27
93
  ],
package/CHANGELOG.md CHANGED
@@ -1,5 +1,89 @@
1
1
  # @fluidframework/container-runtime
2
2
 
3
+ ## 2.21.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Many unnecessary exports have been deprecated in the container-runtime package ([#23607](https://github.com/microsoft/FluidFramework/pull/23607)) [3da5b427ef](https://github.com/microsoft/FluidFramework/commit/3da5b427ef406799abade04196e43bb6d66d898d)
8
+
9
+ The following types in the `@fluidframework/container-runtime` package are now deprecated. These types are unnecessary for external users of this package.
10
+
11
+ - currentDocumentVersionSchema
12
+ - DeletedResponseHeaderKey
13
+ - DocumentSchemaValueType
14
+ - DocumentsSchemaController
15
+ - GCFeatureMatrix
16
+ - GCNodeType
17
+ - GCVersion
18
+ - IBlobManagerLoadInfo
19
+ - ICancellableSummarizerController
20
+ - ICancellationToken
21
+ - IConnectableRuntime
22
+ - IContainerRuntimeMetadata
23
+ - ICreateContainerMetadata
24
+ - IDocumentSchema
25
+ - IDocumentSchemaChangeMessage
26
+ - IDocumentSchemaCurrent
27
+ - IDocumentSchemaFeatures
28
+ - IGCMetadata
29
+ - IGCStats
30
+ - IMarkPhaseStats
31
+ - IRefreshSummaryAckOptions
32
+ - ISerializedElection
33
+ - ISubmitSummaryOptions
34
+ - ISummarizerInternalsProvider
35
+ - ISummarizerRuntime
36
+ - ISummaryCancellationToken
37
+ - ISummaryMetadataMessage
38
+ - ISweepPhaseStats
39
+ - Summarizer
40
+
41
+ ## 2.20.0
42
+
43
+ ### Minor Changes
44
+
45
+ - The ContainerRuntime class has been removed ([#23341](https://github.com/microsoft/FluidFramework/pull/23341)) [61ba06aa98](https://github.com/microsoft/FluidFramework/commit/61ba06aa9881c30ffeeedcaaede9c5a1a0c81abd)
46
+
47
+ The `ContainerRuntime` class was [deprecated in version 2.12.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-the-containerruntime-class-is-now-deprecated-23331) and has been removed.
48
+ Use `IContainerRuntime` to replace type usages and use the free function `loadContainerRuntime` to replace usages of the static method `ContainerRuntime.loadRuntime`.
49
+
50
+ See the [deprecation
51
+ announcement](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-the-containerruntime-class-is-now-deprecated-23331)
52
+ for more details about how to update existing code.
53
+
54
+ - The IContainerRuntimeOptions.flushMode property has been removed ([#23337](https://github.com/microsoft/FluidFramework/pull/23337)) [fe8279c774](https://github.com/microsoft/FluidFramework/commit/fe8279c774fcc3c4805b49ce4f64d0e03a64c39b)
55
+
56
+ The `IContainerRuntimeOptions.flushMode` property was [deprecated in version 2.12.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-icontainerruntimeoptionsflushmode-is-now-deprecated-23288) and has been removed.
57
+
58
+ Only the default value, `FlushMode.TurnBased`, is supported when calling `ContainerRuntime.loadRuntime` directly,
59
+ so there's no need for consumers to pass this option in.
60
+
61
+ - The createDataStoreWithProps APIs on ContainerRuntime and IContainerRuntimeBase have been removed ([#22996](https://github.com/microsoft/FluidFramework/pull/22996)) [bd243fb292](https://github.com/microsoft/FluidFramework/commit/bd243fb2927915d87c42486e21ee0c990962a9a7)
62
+
63
+ `ContainerRuntime.createDataStoreWithProps` and `IContainerRuntimeBase.createDataStoreWithProps`
64
+ were [deprecated in version 0.25.0](https://github.com/microsoft/FluidFramework/blob/main/BREAKING.md#icontainerruntimebase_createdatastorewithprops-is-removed) and have been removed.
65
+
66
+ Replace uses of these APIs with `PureDataObjectFactory.createInstanceWithDataStore` and pass in props via the `initialState`
67
+ parameter.
68
+
69
+ These changes were originally announced in version 0.25.0. See the following issues for more details:
70
+
71
+ - [#1537](https://github.com/microsoft/FluidFramework/issues/1537)
72
+ - [#2931](https://github.com/microsoft/FluidFramework/pull/2931)
73
+
74
+ - Enabling Op Compression without Op Grouping is no longer supported ([#23608](https://github.com/microsoft/FluidFramework/pull/23608)) [92b695aa4b](https://github.com/microsoft/FluidFramework/commit/92b695aa4b36eee41a4d235a71c6408d2c70b54b)
75
+
76
+ `IContainerRuntimeOptions.enableGroupedBatching` was deprecated in 2.12 (see [release notes](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.12.0#user-content-icontainerruntimeoptionsenablegroupedbatching-is-now-deprecated-23260)).
77
+ While this option is not yet removed (and still defaults to `true`), disabling it (by setting to `false`) is not supported
78
+ if compression is enabled (by passing a finite value for `IContainerRuntimeOptions.compressionOptions.minimumBatchSizeInBytes`).
79
+
80
+ - Summarizer-related types have been moved to container-runtime-definitions ([#23483](https://github.com/microsoft/FluidFramework/pull/23483)) [6666d496e6](https://github.com/microsoft/FluidFramework/commit/6666d496e63031026cdedee98c24bb59fa79edcf)
81
+
82
+ `SummarizerStopReason`, `ISummarizeEventProps`, and `ISummarizerEvents` have all been moved from the
83
+ `"@fluidframework/container-runtime"` package to `@fluidframework/container-runtime-definitions`.
84
+
85
+ Users should now import them from `@fluidframework/container-runtime-definitions`.
86
+
3
87
  ## 2.13.0
4
88
 
5
89
  Dependency updates only.
@@ -33,168 +33,21 @@ export enum ContainerMessageType {
33
33
  }
34
34
 
35
35
  // @alpha @deprecated
36
- export class ContainerRuntime extends TypedEventEmitter<IContainerRuntimeEvents> implements IContainerRuntime, IRuntime, ISummarizerRuntime, ISummarizerInternalsProvider, IProvideFluidHandleContext {
37
- protected constructor(context: IContainerContext, registry: IFluidDataStoreRegistry, metadata: IContainerRuntimeMetadata | undefined, electedSummarizerData: ISerializedElection | undefined, chunks: [string, string[]][], dataStoreAliasMap: [string, string][], runtimeOptions: Readonly<Required<Omit<IContainerRuntimeOptions, "flushMode" | "enableGroupedBatching">> & IContainerRuntimeOptions>, containerScope: FluidObject, baseLogger: ITelemetryBaseLogger, existing: boolean, blobManagerSnapshot: IBlobManagerLoadInfo, _storage: IDocumentStorageService, createIdCompressor: () => Promise<IIdCompressor & IIdCompressorCore>, documentsSchemaController: DocumentsSchemaController, featureGatesForTelemetry: Record<string, boolean | number | undefined>, provideEntryPoint: (containerRuntime: IContainerRuntime) => Promise<FluidObject>, requestHandler?: ((request: IRequest, runtime: IContainerRuntime) => Promise<IResponse>) | undefined, summaryConfiguration?: ISummaryConfiguration, recentBatchInfo?: [number, string][]);
38
- // (undocumented)
39
- protected addContainerStateToSummary(summaryTree: ISummaryTreeWithStats, fullTree: boolean, trackState: boolean, telemetryContext?: ITelemetryContext): void;
40
- addedGCOutboundRoute(fromPath: string, toPath: string, messageTimestampMs?: number): void;
41
- // (undocumented)
42
- get attachState(): AttachState;
43
- // (undocumented)
44
- readonly baseLogger: ITelemetryBaseLogger;
45
- // (undocumented)
46
- readonly clientDetails: IClientDetails;
47
- // (undocumented)
48
- get clientId(): string | undefined;
49
- // (undocumented)
50
- readonly closeFn: (error?: ICriticalContainerError) => void;
51
- collectGarbage(options: {
52
- logger?: ITelemetryLoggerExt;
53
- runSweep?: boolean;
54
- fullGC?: boolean;
55
- }, telemetryContext?: ITelemetryContext): Promise<IGCStats | undefined>;
56
- // (undocumented)
57
- get connected(): boolean;
58
- // (undocumented)
59
- get containerRuntime(): this;
60
- // (undocumented)
61
- createDataStore(pkg: Readonly<string | string[]>, loadingGroupId?: string): Promise<IDataStore>;
62
- // @deprecated (undocumented)
63
- _createDataStoreWithProps(pkg: Readonly<string | string[]>, props?: any): Promise<IDataStore>;
64
- // (undocumented)
65
- createDetachedDataStore(pkg: Readonly<string[]>, loadingGroupId?: string): IFluidDataStoreContextDetached;
66
- createSummary(blobRedirectTable?: Map<string, string>, telemetryContext?: ITelemetryContext): ISummaryTree;
67
- // (undocumented)
68
- deleteChildSummarizerNode(id: string): void;
69
- deleteSweepReadyNodes(sweepReadyRoutes: readonly string[]): readonly string[];
70
- get deltaManager(): IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
71
- // (undocumented)
72
- dispose(error?: Error): void;
73
- // (undocumented)
74
- get disposed(): boolean;
75
- // (undocumented)
76
- readonly disposeFn: (error?: ICriticalContainerError) => void;
77
- // (undocumented)
78
- enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
79
- ensureNoDataModelChanges<T>(callback: () => T): T;
80
- // (undocumented)
81
- get flushMode(): FlushMode;
82
- // @deprecated
83
- get gcThrowOnTombstoneUsage(): boolean;
84
- // @deprecated
85
- get gcTombstoneEnforcementAllowed(): boolean;
86
- generateDocumentUniqueId(): string | (number & {
87
- readonly SessionUnique: "cea55054-6b82-4cbf-ad19-1fa645ea3b3e";
88
- } & {
89
- readonly OpNormalized: "9209432d-a959-4df7-b2ad-767ead4dbcae";
90
- });
91
- // (undocumented)
92
- readonly getAbsoluteUrl: (relativeUrl: string) => Promise<string | undefined>;
93
- getAliasedDataStoreEntryPoint(alias: string): Promise<IFluidHandle<FluidObject> | undefined>;
94
- // (undocumented)
95
- getAudience(): IAudience;
96
- // (undocumented)
97
- getCreateChildSummarizerNodeFn(id: string, createParam: CreateChildSummarizerNodeParam): (summarizeInternal: SummarizeInternalFn, getGCDataFn: (fullGC?: boolean) => Promise<IGarbageCollectionData>) => ISummarizerNodeWithGC;
98
- getCurrentReferenceTimestampMs(): number | undefined;
99
- getEntryPoint(): Promise<FluidObject>;
100
- getGCData(fullGC?: boolean): Promise<IGarbageCollectionData>;
101
- getGCNodePackagePath(nodePath: string): Promise<readonly string[] | undefined>;
102
- getNodeType(nodePath: string): GCNodeType;
103
- // (undocumented)
104
- getPendingLocalState(props?: IGetPendingLocalStateProps): unknown;
105
- // (undocumented)
106
- getQuorum(): IQuorumClients;
107
- getSnapshotForLoadingGroupId(loadingGroupIds: string[], pathParts: string[]): Promise<{
108
- snapshotTree: ISnapshotTree;
109
- sequenceNumber: number;
110
- }>;
111
- get idCompressor(): (IIdCompressor & IIdCompressorCore) | undefined;
112
- // (undocumented)
113
- get idCompressorMode(): IdCompressorMode;
114
- // (undocumented)
115
- get IFluidDataStoreRegistry(): IFluidDataStoreRegistry;
116
- // (undocumented)
117
- get IFluidHandleContext(): IFluidHandleContext;
118
- get isDirty(): boolean;
119
- protected _loadIdCompressor: Promise<void> | undefined;
120
- static loadRuntime(params: {
121
- context: IContainerContext;
122
- registryEntries: NamedFluidDataStoreRegistryEntries;
123
- existing: boolean;
124
- runtimeOptions?: IContainerRuntimeOptions;
125
- containerScope?: FluidObject;
126
- containerRuntimeCtor?: typeof ContainerRuntime;
127
- requestHandler?: (request: IRequest, runtime: IContainerRuntime) => Promise<IResponse>;
128
- provideEntryPoint: (containerRuntime: IContainerRuntime) => Promise<FluidObject>;
129
- }): Promise<ContainerRuntime>;
130
- // (undocumented)
131
- makeLocallyVisible(): void;
132
- // (undocumented)
133
- notifyOpReplay(message: ISequencedDocumentMessage): Promise<void>;
134
- // (undocumented)
135
- onSchemaChange(schema: IDocumentSchemaCurrent): void;
136
- // (undocumented)
137
- readonly options: Record<string | number, any>;
138
- orderSequentially<T>(callback: () => T): T;
139
- process({ ...messageCopy }: ISequencedDocumentMessage, local: boolean): void;
140
- // (undocumented)
141
- processSignal(message: ISignalMessage, local: boolean): void;
142
- refreshLatestSummaryAck(options: IRefreshSummaryAckOptions): Promise<void>;
143
- resolveHandle(request: IRequest): Promise<IResponse>;
144
- // (undocumented)
145
- get scope(): FluidObject;
146
- get sessionSchema(): {
147
- explicitSchemaControl?: true | undefined;
148
- compressionLz4?: true | undefined;
149
- idCompressorMode?: IdCompressorMode;
150
- opGroupingEnabled?: true | undefined;
151
- disallowedVersions?: string[] | undefined;
152
- };
153
- // (undocumented)
154
- setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void;
155
- // (undocumented)
156
- setChannelDirty(address: string): void;
157
- // (undocumented)
158
- setConnectionState(connected: boolean, clientId?: string): void;
159
- // (undocumented)
160
- get storage(): IDocumentStorageService;
161
- // (undocumented)
162
- submitMessage(type: ContainerMessageType.FluidDataStoreOp | ContainerMessageType.Alias | ContainerMessageType.Attach, contents: any, localOpMetadata?: unknown): void;
163
- submitSignal(type: string, content: unknown, targetClientId?: string): void;
164
- submitSummary(options: ISubmitSummaryOptions): Promise<SubmitSummaryResult>;
165
- summarize(options: {
166
- fullTree?: boolean;
167
- trackState?: boolean;
168
- summaryLogger?: ITelemetryLoggerExt;
169
- runGC?: boolean;
170
- fullGC?: boolean;
171
- runSweep?: boolean;
172
- }): Promise<ISummaryTreeWithStats>;
173
- // (undocumented)
174
- summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
175
- get summarizerClientId(): string | undefined;
176
- updateTombstonedRoutes(tombstonedRoutes: readonly string[]): void;
177
- updateUsedRoutes(usedRoutes: readonly string[]): void;
178
- // (undocumented)
179
- uploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandleInternal<ArrayBufferLike>>;
180
- }
181
-
182
- // @alpha
183
36
  export const currentDocumentVersionSchema = 1;
184
37
 
185
38
  // @alpha (undocumented)
186
39
  export const DefaultSummaryConfiguration: ISummaryConfiguration;
187
40
 
188
- // @alpha
41
+ // @alpha @deprecated
189
42
  export const DeletedResponseHeaderKey = "wasDeleted";
190
43
 
191
44
  // @alpha (undocumented)
192
45
  export const disabledCompressionConfig: ICompressionRuntimeOptions;
193
46
 
194
- // @alpha
47
+ // @alpha @deprecated
195
48
  export type DocumentSchemaValueType = string | string[] | true | number | undefined;
196
49
 
197
- // @alpha @sealed
50
+ // @alpha @sealed @deprecated
198
51
  export class DocumentsSchemaController {
199
52
  constructor(existing: boolean, snapshotSequenceNumber: number, documentMetadataSchema: IDocumentSchema | undefined, features: IDocumentSchemaFeatures, onSchemaChange: (schema: IDocumentSchemaCurrent) => void);
200
53
  maybeSendSchemaMessage(): IDocumentSchemaChangeMessage | undefined;
@@ -220,7 +73,7 @@ export type EnqueueSummarizeResult = (ISummarizeResults & {
220
73
  readonly overridden?: undefined;
221
74
  };
222
75
 
223
- // @alpha (undocumented)
76
+ // @alpha @deprecated (undocumented)
224
77
  export type GCFeatureMatrix = {
225
78
  gcGeneration?: number;
226
79
  tombstoneGeneration?: undefined;
@@ -228,7 +81,7 @@ export type GCFeatureMatrix = {
228
81
  tombstoneGeneration: number;
229
82
  };
230
83
 
231
- // @alpha
84
+ // @alpha @deprecated
232
85
  export const GCNodeType: {
233
86
  readonly DataStore: "DataStore";
234
87
  readonly SubDataStore: "SubDataStore";
@@ -236,10 +89,10 @@ export const GCNodeType: {
236
89
  readonly Other: "Other";
237
90
  };
238
91
 
239
- // @alpha (undocumented)
92
+ // @alpha @deprecated (undocumented)
240
93
  export type GCNodeType = (typeof GCNodeType)[keyof typeof GCNodeType];
241
94
 
242
- // @alpha (undocumented)
95
+ // @alpha @deprecated (undocumented)
243
96
  export type GCVersion = number;
244
97
 
245
98
  // @alpha
@@ -268,7 +121,7 @@ export interface IBaseSummarizeResult {
268
121
  readonly stage: "base";
269
122
  }
270
123
 
271
- // @alpha
124
+ // @alpha @deprecated
272
125
  export interface IBlobManagerLoadInfo {
273
126
  // (undocumented)
274
127
  ids?: string[];
@@ -284,13 +137,13 @@ export interface IBroadcastSummaryResult {
284
137
  readonly summarizeOp: ISummaryOpMessage;
285
138
  }
286
139
 
287
- // @alpha
140
+ // @alpha @deprecated
288
141
  export interface ICancellableSummarizerController extends ISummaryCancellationToken {
289
142
  // (undocumented)
290
- stop(reason: SummarizerStopReason_2): void;
143
+ stop(reason: SummarizerStopReason): void;
291
144
  }
292
145
 
293
- // @alpha
146
+ // @alpha @deprecated
294
147
  export interface ICancellationToken<T> {
295
148
  readonly cancelled: boolean;
296
149
  readonly waitCancelled: Promise<T>;
@@ -310,7 +163,7 @@ export interface ICompressionRuntimeOptions {
310
163
  readonly minimumBatchSizeInBytes: number;
311
164
  }
312
165
 
313
- // @alpha (undocumented)
166
+ // @alpha @deprecated (undocumented)
314
167
  export interface IConnectableRuntime {
315
168
  // (undocumented)
316
169
  readonly clientId: string | undefined;
@@ -322,7 +175,7 @@ export interface IConnectableRuntime {
322
175
  once(event: "connected" | "disconnected" | "dispose", listener: () => void): this;
323
176
  }
324
177
 
325
- // @alpha (undocumented)
178
+ // @alpha @deprecated (undocumented)
326
179
  export interface IContainerRuntimeMetadata extends ICreateContainerMetadata, IGCMetadata {
327
180
  readonly disableIsolatedChannels?: true;
328
181
  // (undocumented)
@@ -344,8 +197,6 @@ export interface IContainerRuntimeOptions {
344
197
  readonly enableGroupedBatching?: boolean;
345
198
  readonly enableRuntimeIdCompressor?: IdCompressorMode;
346
199
  readonly explicitSchemaControl?: boolean;
347
- // @deprecated
348
- readonly flushMode?: FlushMode;
349
200
  // (undocumented)
350
201
  readonly gcOptions?: IGCRuntimeOptions;
351
202
  readonly loadSequenceNumberVerification?: "close" | "log" | "bypass";
@@ -354,7 +205,7 @@ export interface IContainerRuntimeOptions {
354
205
  readonly summaryOptions?: ISummaryRuntimeOptions;
355
206
  }
356
207
 
357
- // @alpha (undocumented)
208
+ // @alpha @deprecated (undocumented)
358
209
  export interface ICreateContainerMetadata {
359
210
  createContainerRuntimeVersion?: string;
360
211
  createContainerTimestamp?: number;
@@ -363,7 +214,7 @@ export interface ICreateContainerMetadata {
363
214
  // @alpha
364
215
  export type IdCompressorMode = "on" | "delayed" | undefined;
365
216
 
366
- // @alpha
217
+ // @alpha @deprecated
367
218
  export interface IDocumentSchema {
368
219
  // (undocumented)
369
220
  refSeq: number;
@@ -373,10 +224,10 @@ export interface IDocumentSchema {
373
224
  version: number;
374
225
  }
375
226
 
376
- // @alpha
227
+ // @alpha @deprecated
377
228
  export type IDocumentSchemaChangeMessage = IDocumentSchema;
378
229
 
379
- // @alpha
230
+ // @alpha @deprecated
380
231
  export type IDocumentSchemaCurrent = {
381
232
  version: 1;
382
233
  refSeq: number;
@@ -385,7 +236,7 @@ export type IDocumentSchemaCurrent = {
385
236
  };
386
237
  };
387
238
 
388
- // @alpha
239
+ // @alpha @deprecated
389
240
  export interface IDocumentSchemaFeatures {
390
241
  // (undocumented)
391
242
  compressionLz4: boolean;
@@ -431,7 +282,7 @@ export interface IFluidDataStoreAttributes2 extends OmitAttributesVersions<IFlui
431
282
  readonly summaryFormatVersion: 2;
432
283
  }
433
284
 
434
- // @alpha
285
+ // @alpha @deprecated
435
286
  export interface IGCMetadata {
436
287
  readonly gcFeature?: GCVersion;
437
288
  readonly gcFeatureMatrix?: GCFeatureMatrix;
@@ -450,7 +301,7 @@ export interface IGCRuntimeOptions {
450
301
  sweepGracePeriodMs?: number;
451
302
  }
452
303
 
453
- // @alpha
304
+ // @alpha @deprecated
454
305
  export interface IGCStats extends IMarkPhaseStats, ISweepPhaseStats {
455
306
  }
456
307
 
@@ -473,7 +324,7 @@ export interface IGenerateSummaryTreeResult extends Omit<IBaseSummarizeResult, "
473
324
  readonly summaryTree: ISummaryTree;
474
325
  }
475
326
 
476
- // @alpha
327
+ // @alpha @deprecated
477
328
  export interface IMarkPhaseStats {
478
329
  attachmentBlobCount: number;
479
330
  dataStoreCount: number;
@@ -503,7 +354,7 @@ export interface IOnDemandSummarizeOptions extends ISummarizeOptions {
503
354
  readonly retryOnFailure?: boolean;
504
355
  }
505
356
 
506
- // @alpha
357
+ // @alpha @deprecated
507
358
  export interface IRefreshSummaryAckOptions {
508
359
  readonly ackHandle: string;
509
360
  readonly proposalHandle: string | undefined;
@@ -517,7 +368,7 @@ export interface IRetriableFailureError extends Error {
517
368
  readonly retryAfterSeconds?: number;
518
369
  }
519
370
 
520
- // @alpha
371
+ // @alpha @deprecated
521
372
  export interface ISerializedElection {
522
373
  readonly electedClientId: string | undefined;
523
374
  readonly electedParentId: string | undefined;
@@ -532,7 +383,7 @@ export interface ISubmitSummaryOpResult extends Omit<IUploadSummaryResult, "stag
532
383
  readonly submitOpDuration: number;
533
384
  }
534
385
 
535
- // @alpha (undocumented)
386
+ // @alpha @deprecated (undocumented)
536
387
  export interface ISubmitSummaryOptions extends ISummarizeOptions {
537
388
  readonly cancellationToken: ISummaryCancellationToken;
538
389
  readonly finalAttempt?: boolean;
@@ -540,33 +391,21 @@ export interface ISubmitSummaryOptions extends ISummarizeOptions {
540
391
  readonly summaryLogger: ITelemetryLoggerExt;
541
392
  }
542
393
 
543
- // @alpha @deprecated (undocumented)
544
- export interface ISummarizeEventProps {
545
- // (undocumented)
546
- currentAttempt: number;
547
- // (undocumented)
548
- error?: any;
549
- // (undocumented)
550
- maxAttempts: number;
551
- // (undocumented)
552
- result: "success" | "failure" | "canceled";
553
- }
554
-
555
394
  // @alpha
556
395
  export interface ISummarizeOptions {
557
396
  readonly fullTree?: boolean;
558
397
  }
559
398
 
560
399
  // @alpha (undocumented)
561
- export interface ISummarizer extends IEventProvider<ISummarizerEvents_2> {
400
+ export interface ISummarizer extends IEventProvider<ISummarizerEvents> {
562
401
  // (undocumented)
563
402
  close(): void;
564
403
  enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
565
404
  readonly ISummarizer?: ISummarizer;
566
405
  // (undocumented)
567
- run(onBehalfOf: string): Promise<SummarizerStopReason_2>;
406
+ run(onBehalfOf: string): Promise<SummarizerStopReason>;
568
407
  // (undocumented)
569
- stop(reason: SummarizerStopReason_2): void;
408
+ stop(reason: SummarizerStopReason): void;
570
409
  summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
571
410
  }
572
411
 
@@ -578,18 +417,12 @@ export interface ISummarizeResults {
578
417
  }
579
418
 
580
419
  // @alpha @deprecated (undocumented)
581
- export interface ISummarizerEvents extends IEvent {
582
- // (undocumented)
583
- (event: "summarize", listener: (props: ISummarizeEventProps) => void): any;
584
- }
585
-
586
- // @alpha (undocumented)
587
420
  export interface ISummarizerInternalsProvider {
588
421
  refreshLatestSummaryAck(options: IRefreshSummaryAckOptions): Promise<void>;
589
422
  submitSummary(options: ISubmitSummaryOptions): Promise<SubmitSummaryResult>;
590
423
  }
591
424
 
592
- // @alpha (undocumented)
425
+ // @alpha @deprecated (undocumented)
593
426
  export interface ISummarizerRuntime extends IConnectableRuntime {
594
427
  // (undocumented)
595
428
  readonly baseLogger: ITelemetryBaseLogger;
@@ -633,8 +466,8 @@ export interface ISummaryBaseConfiguration {
633
466
  maxOpsSinceLastSummary: number;
634
467
  }
635
468
 
636
- // @alpha
637
- export type ISummaryCancellationToken = ICancellationToken<SummarizerStopReason_2>;
469
+ // @alpha @deprecated
470
+ export type ISummaryCancellationToken = ICancellationToken<SummarizerStopReason>;
638
471
 
639
472
  // @alpha (undocumented)
640
473
  export interface ISummaryCollectionOpEvents extends IEvent {
@@ -671,7 +504,7 @@ export interface ISummaryConfigurationHeuristics extends ISummaryBaseConfigurati
671
504
  state: "enabled";
672
505
  }
673
506
 
674
- // @alpha
507
+ // @alpha @deprecated
675
508
  export type ISummaryMetadataMessage = Pick<ISequencedDocumentMessage, "clientId" | "clientSequenceNumber" | "minimumSequenceNumber" | "referenceSequenceNumber" | "sequenceNumber" | "timestamp" | "type">;
676
509
 
677
510
  // @alpha
@@ -697,7 +530,7 @@ export interface ISummaryRuntimeOptions {
697
530
  summaryConfigOverrides?: ISummaryConfiguration;
698
531
  }
699
532
 
700
- // @alpha
533
+ // @alpha @deprecated
701
534
  export interface ISweepPhaseStats {
702
535
  deletedAttachmentBlobCount: number;
703
536
  deletedDataStoreCount: number;
@@ -751,8 +584,8 @@ export interface SubmitSummaryFailureData {
751
584
  // @alpha
752
585
  export type SubmitSummaryResult = IBaseSummarizeResult | IGenerateSummaryTreeResult | IUploadSummaryResult | ISubmitSummaryOpResult;
753
586
 
754
- // @alpha
755
- export class Summarizer extends TypedEventEmitter<ISummarizerEvents_2> implements ISummarizer {
587
+ // @alpha @deprecated
588
+ export class Summarizer extends TypedEventEmitter<ISummarizerEvents> implements ISummarizer {
756
589
  constructor(
757
590
  runtime: ISummarizerRuntime, configurationGetter: () => ISummaryConfiguration,
758
591
  internalsProvider: ISummarizerInternalsProvider, handleContext: IFluidHandleContext, summaryCollection: SummaryCollection, runCoordinatorCreateFn: (runtime: IConnectableRuntime) => Promise<ICancellableSummarizerController>);
@@ -766,9 +599,9 @@ export class Summarizer extends TypedEventEmitter<ISummarizerEvents_2> implement
766
599
  // (undocumented)
767
600
  recordSummaryAttempt?(summaryRefSeqNum?: number): void;
768
601
  // (undocumented)
769
- run(onBehalfOf: string): Promise<SummarizerStopReason_2>;
770
- stop(reason: SummarizerStopReason_2): void;
771
- static stopReasonCanRunLastSummary(stopReason: SummarizerStopReason_2): boolean;
602
+ run(onBehalfOf: string): Promise<SummarizerStopReason>;
603
+ stop(reason: SummarizerStopReason): void;
604
+ static stopReasonCanRunLastSummary(stopReason: SummarizerStopReason): boolean;
772
605
  // (undocumented)
773
606
  summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
774
607
  // (undocumented)
@@ -786,36 +619,9 @@ export type SummarizeResultPart<TSuccess, TFailure = undefined> = {
786
619
  error: IRetriableFailureError;
787
620
  };
788
621
 
789
- // @alpha @deprecated (undocumented)
790
- export type SummarizerStopReason =
791
- /** Summarizer client failed to summarize in all attempts. */
792
- "failToSummarize"
793
- /** Parent client reported that it is no longer connected. */
794
- | "parentNotConnected"
795
- /**
796
- * Parent client reported that it is no longer elected the summarizer.
797
- * This is the normal flow; a disconnect will always trigger the parent
798
- * client to no longer be elected as responsible for summaries. Then it
799
- * tries to stop its spawned summarizer client.
800
- */
801
- | "notElectedParent"
802
- /**
803
- * We are not already running the summarizer and we are not the current elected client id.
804
- */
805
- | "notElectedClient"
806
- /** Summarizer client was disconnected */
807
- | "summarizerClientDisconnected"
808
- /** running summarizer threw an exception */
809
- | "summarizerException"
810
- /**
811
- * The previous summary state on the summarizer is not the most recently acked summary. this also happens when the
812
- * first submitSummary attempt fails for any reason and there's a 2nd summary attempt without an ack
813
- */
814
- | "latestSummaryStateStale";
815
-
816
622
  // @alpha
817
623
  export class SummaryCollection extends TypedEventEmitter<ISummaryCollectionOpEvents> {
818
- constructor(deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>, logger: ITelemetryLoggerExt);
624
+ constructor(deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>, logger: ITelemetryBaseLogger);
819
625
  // (undocumented)
820
626
  addOpListener(listener: () => void): void;
821
627
  createWatcher(clientId: string): IClientSummaryWatcher;