build: Generate release notes for RC4 (#21051)

## Description

build: Generate release notes for RC4

---------

Co-authored-by: Jatin Garg <jatingarg@Jatins-MacBook-Pro-2.local>
This commit is contained in:
Jatin Garg 2024-05-11 04:07:24 +05:30 коммит произвёл GitHub
Родитель 35828c58a5
Коммит 45eb1abdf4
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
7 изменённых файлов: 111 добавлений и 8 удалений

Просмотреть файл

@ -7,10 +7,12 @@
Audience & connection sequencing improvements
Here are breaking changes in Audience behavior:
1. IAudience no longer implements EventEmmiter. If you used addListener() or removeListener(), please replace with on() & off() respectively.
2. IAudience interface implements getSelf() method and "selfChanged" event.
3. IContainerContext.audience is no longer optional
4. "connected" events are now raised (various API surfaces - IContainer, IContainerRuntime, IFluidDataStoreRuntime, etc.) a bit later in reconnection sequence for "read" connections - only after client receives its own "join" signal and caught up on ops, which makes it symmetrical with "write" connections.
- If this change in behavior breaks some scenario, please let us know immediately, but you can revert that behavior using the following feature gates:
- "Fluid.Container.DisableCatchUpBeforeDeclaringConnected"
- "Fluid.Container.DisableJoinSignalWait"
- If this change in behavior breaks some scenario, please let us know immediately, but you can revert that behavior using the following feature gates:
- "Fluid.Container.DisableCatchUpBeforeDeclaringConnected"
- "Fluid.Container.DisableJoinSignalWait"

Просмотреть файл

@ -2,6 +2,6 @@
"@fluidframework/cell": minor
---
SharedCell now uses ISharedObjectKind and does not export class
cell: SharedCell now uses ISharedObjectKind and does not export class
Most users of SharedCell just need to replace usages of the `SharedCell` type with `ISharedCell`.

Просмотреть файл

@ -2,7 +2,7 @@
"@fluidframework/matrix": minor
---
SharedMatrix class hidden
matrix: SharedMatrix class hidden
The `SharedMatrix` class has been hidden from the alpha API.
In its place:

Просмотреть файл

@ -2,7 +2,7 @@
"@fluidframework/container-runtime": major
---
Make op grouping On by default
container-runtime: Make op grouping On by default
Op grouping feature reduces number of ops on the wire by grouping all ops in a batch. This allows applications to substantially reduce chances of being throttled by service when sending a lot of ops.
This feature could be enabled only by applications that have consumed 2.0.0-internal.7.0.2 version and have application version based on it saturated in the marker (to 99.99% or higher). Enabling it too soon will result on old client crashing when processing grouped ops.

Просмотреть файл

@ -2,6 +2,6 @@
"@fluidframework/telemetry-utils": major
---
Internal telemetry types removed from public API surface
telemetry-utils: Internal telemetry types removed from public API surface
We have updated the tags for the following telemetry-related types in the FluidFramework: TelemetryEventCategory, TelemetryEventPropertyTypeExt, ITelemetryPropertiesExt, ITelemetryGenericEventExt, ITelemetryErrorEventExt, ITelemetryPerformanceEventExt, ITelemetryLoggerExt. For developers using any of these types, the primary action required is to transition to using the corresponding "base" type. For example, replace ITelemetryPerformanceEventExt with ITelemetryBaseEvent from @core-interfaces.

Просмотреть файл

@ -2,6 +2,6 @@
"@fluidframework/counter": minor
---
SharedCounter now uses ISharedObjectKind and does not export the class
counter: SharedCounter now uses ISharedObjectKind and does not export the class
Most users of `SharedCounter` should be unaffected as long as they stick to the factory patterns supported by ISharedObjectKind.

Просмотреть файл

@ -0,0 +1,101 @@
<!-- THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -->
# Fluid Framework v2.0.0-rc.4.0.0
## Breaking changes
### Minor API fixes for "@fluidframework/tree" package.
Changes constructor for `FieldSchema` from public to private. Users should call `makeFieldSchema` to create instance of `FieldSchema`.
### telemetry-utils: Internal telemetry types removed from public API surface
We have updated the tags for the following telemetry-related types in the FluidFramework: TelemetryEventCategory, TelemetryEventPropertyTypeExt, ITelemetryPropertiesExt, ITelemetryGenericEventExt, ITelemetryErrorEventExt, ITelemetryPerformanceEventExt, ITelemetryLoggerExt. For developers using any of these types, the primary action required is to transition to using the corresponding "base" type. For example, replace ITelemetryPerformanceEventExt with ITelemetryBaseEvent from @core-interfaces.
### Audience & connection sequencing improvements
Here are breaking changes in Audience behavior:
1. IAudience no longer implements EventEmmiter. If you used addListener() or removeListener(), please replace with on() & off() respectively.
2. IAudience interface implements getSelf() method and "selfChanged" event.
3. IContainerContext.audience is no longer optional
4. "connected" events are now raised (various API surfaces - IContainer, IContainerRuntime, IFluidDataStoreRuntime, etc.) a bit later in reconnection sequence for "read" connections - only after client receives its own "join" signal and caught up on ops, which makes it symmetrical with "write" connections.
- If this change in behavior breaks some scenario, please let us know immediately, but you can revert that behavior using the following feature gates:
- "Fluid.Container.DisableCatchUpBeforeDeclaringConnected"
- "Fluid.Container.DisableJoinSignalWait"
### matrix: SharedMatrix class hidden
The `SharedMatrix` class has been hidden from the alpha API. In its place:
- The constant `SharedMatrix` is exposed as the entrypoint for `SharedMatrix` creation. See documentation on `ISharedObjectKind`.
- The type `SharedMatrix` is aliased to `ISharedMatrix`, which contains matrix's public API. This API has no semantic changes from previous versions.
Additionally, `SharedMatrixFactory` has been deprecated. Rather than construct the factory directly, use `SharedMatrix.getFactory()` (e.g. for usage in `DataObject` registries).
This change is part of a larger effort to clean up the API surface of various DDSes we have to leak less implementation details. See e.g. #20030. Most code which uses `SharedMatrix` should continue to function without changes.
### cell: SharedCell now uses ISharedObjectKind and does not export class
Most users of SharedCell just need to replace usages of the `SharedCell` type with `ISharedCell`.
### counter: SharedCounter now uses ISharedObjectKind and does not export the class
Most users of `SharedCounter` should be unaffected as long as they stick to the factory patterns supported by ISharedObjectKind.
### SharedString now uses ISharedObjectKind and does not export the factory
Most users of `SharedString` should be unaffected as long as they stick to the factory patterns supported by ISharedObjectKind. If the actual class type is needed it can be found as `SharedStringClass`.
### Rename `AzureMember.userName` to `AzureMember.name` and `IMember.userId` to `IMember.id`
1. Renamed `AzureMember.userName` to `AzureMember.name` to establish uniform naming across odsp-client and azure-client.
2. Renamed `IMember.userId` to `IMember.id` to align with the properties received from AFR.
### copyContainer API replaced by the viewContainerVersion API
The copyContainer API has been removed in favor of the viewContainerVersion API. viewContainerVersion does not automatically produce a new container, but instead retrieves the existing container version for reading only. To produce a new container with the data, use the normal createContainer API surface and write the data prior to attaching it.
### Deprecated members of IFluidHandle are split off into new IFluidHandleInternal interface
Split IFluidHandle into two interfaces, `IFluidHandle` and `IFluidHandleInternal`. Code depending on the previously deprecated members of IFluidHandle can access them by using `toFluidHandleInternal` from `@fluidframework/runtime-utils/legacy`.
External implementation of the `IFluidHandle` interface are not supported: this change makes the typing better convey this using the `ErasedType` pattern. Any existing and previously working, and now broken, external implementations of `IFluidHandle` should still work at runtime, but will need some unsafe type casts to compile. Such handle implementation may break in the future and thus should be replaced with use of handles produced by the Fluid Framework client packages.
### container-runtime: Make op grouping On by default
Op grouping feature reduces number of ops on the wire by grouping all ops in a batch. This allows applications to substantially reduce chances of being throttled by service when sending a lot of ops. This feature could be enabled only by applications that have consumed 2.0.0-internal.7.0.2 version and have application version based on it saturated in the marker (to 99.99% or higher). Enabling it too soon will result on old client crashing when processing grouped ops.
The feature has been proven in production in Loop app, as it was enabled through feature gates at 100% in PROD. All internal applications (Loop, Whiteboard) that send telemetry to our common Kusto tenant are already at or above minimal required version of runtime.
If your application does not satisfy these deployment requirements, please disable op grouping via passing IContainerRuntimeOptions.enableGroupedBatching = false when calling ContainerRuntime.load().
### Type Erase IFluidDataStoreRuntime.deltaManager
Make IFluidDataStoreRuntime.deltaManager have an opaque type. Marks the following types which were reachable from it as alpha:
- IConnectionDetails
- IDeltaSender
- IDeltaManagerEvents
- IDeltaManager
- IDeltaQueueEvents
- IDeltaQueue
- ReadOnlyInfo
As a temporary workaround, users needing access to the full delta manager API can use the `@alpha` `toDeltaManagerInternal` API to retrieve its members, but should migrate away from requiring access to those APIs.
Implementing a custom `IFluidDataStoreRuntime` is not supported: this is now indicated by it being marked with `@sealed`.
### Make several driver types no longer public
Move the following types from `@public` to `@alpha`:
- ITokenClaims
- IDocumentMessage
- IClientConfiguration
- IAnyDriverError
- IDriverErrorBase
- DriverErrorTypes
`DriverErrorTypes` is no longer exported from the `fluid-framework` package.