Skip to content

Commit

Permalink
Update CHANGELOG to summarize v3 changes (#782)
Browse files Browse the repository at this point in the history
  • Loading branch information
xuesichao authored Apr 12, 2022
1 parent bba06d4 commit 16b40f5
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 17 deletions.
44 changes: 27 additions & 17 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,52 +9,60 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [3.0.0] - 2022-03-17

Amazon Chime SDK React Components Library v3 is here !! 🎉🎉🎉

Amazon Chime SDK React Components Library v3 includes major improvements for component style customization, `MeetingProvider/MeetingManager` configuration, device management, WebRTC metrics and logger.

- **Component style customization**: Improve components for easier customization of style. Check out our [styling guide](https://aws.github.io/amazon-chime-sdk-component-library-react/?path=/story/styling-guide--page) for more information.
- **`MeetingProvider/MeetingManager` configuration**: Improve `MeetingProvider`, `MeetingManager` and `MeetingManager.join()` API to allow configuring a meeting session right before joining a meeting instead of when `MeetingProvider` mounts.
- **Device management**: Improve `types` for device selection components to better support basic and transformed devices. Remove `useSelectAudioInputDevice`, `useSelectVideoInputDevice`, and `useSelectAudioOutputDevice` hooks to standardize device selection through `MeetingManager` and throw error when selection fails.
- **WebRTC metrics**: Publish the standardized WebRTC metrics for all supported browsers. Deprecate `useBandwidthMetrics` hook in favor of `useMediaStreamMetrics` hook.
- **Logger**: Add `LoggerProvider` and `useLogger` components to enable universal logging in component library.

Below is a list of all changes in Amazon Chime SDK React Components Library v3. Please refer to the [Migration from 2.0 to 3.0](https://aws.github.io/amazon-chime-sdk-component-library-react/?path=/docs/migration-to-v3--page) for more information.

### Added

- Add `LoggerProvider` and `useLogger` components to enable universal logging in component library.
- Extend and enabled style customizing capabilities on the SDK components.
- Add `MeetingSessionConfiguration` as a required parameter to `MeetingManager.join()` method. With this change the builders have direct access to `MeetingSessionConfiguration`, this will allow more flexibility to customize the `MeetingSession`.
- Add `MeetingManagerJoinOptions` as a new interface for the `options` parameter of the `MeetingManager.join` method.
- Add `deviceLabels`, `eventController`, `logLevel`, `postLoggerConfig`, `logger`, `enableWebAudio`, and `activeSpeakerPolicy` to `MeetingManagerJoinOptions` interface.
- Add a new interface `MeetingManagerJoinOptions` containing `deviceLabels`, `eventController`, `enableWebAudio`, and `activeSpeakerPolicy` properties. This interface is used for optional parameter `options` of `MeetingManager.join()` API.
- Extend and enable style customizing capabilities on the SDK components.

### Removed

- Remove logging of the video transform device to avoid circular structure error.
- Remove preset device selection options ("None" and "440 Hz" for audio input device. "None", "Blue", and "SMTP Color Bars" for video input device). Remove `appendSampleDevices` from Props of `CameraSelection`, `MicSelection`, `AudioInputControl`, `AudioInputVFcontrol`, and `VideoInputControl`. Remove `DeviceConfig` type. Remove `additionalDevices` from Props of `useAudioInputs` and `useVideoInputs` hook.
- Removed `useSelectAudioInputDevice`, `useSelectAudioOutputDevice` and `useSelectVideoInputDevice` hook.
- Remove `useSelectAudioInputDevice`, `useSelectAudioOutputDevice` and `useSelectVideoInputDevice` hook.
- Remove use of the deprecated `enableUnifiedPlanForChromiumBasedBrowsers` configuration variable.
- Remove all deprecated `MeetingSessionStatusCode`.
- Remove legacy metrics `videoDownstreamGoogFrameHeight`, `videoDownstreamGoogFrameWidth`, `videoUpstreamGoogFrameHeight` and `videoUpstreamGoogFrameWidth` from the `videoStreamMetrics` returned by the `useMediaStreamMetrics` hook to adopt to Amazon Chime SDK for JavaScript V3 changes ([aws/amazon-chime-sdk-js#2086](https://github.com/aws/amazon-chime-sdk-js/pull/2086)).
- Deprecate `useBandwidthMetrics` hook as we already have `useMediaStreamMetrics`.
- Remove `MeetingSessionConfiguration` properties from `MeetingProvider` props.
- Remove `deviceLabels`, `eventController`, `logLevel`, `postLogConfig`, `logger`, `enableWebAudio`, and `activeSpeakerPolicy` from `MeetingProvider` props.
- Deprecate `useBandwidthMetrics` hook as we already have `useMediaStreamMetrics`.

### Changed

- Revert "Add Observer to select input device error" ([PR #493](https://github.com/aws/amazon-chime-sdk-component-library-react/pull/493)). `useAudioInputs` and `useVideoInputs` hook no longer return `selectDeviceError`. `selectAudioInputDevice`, `selectVideoInputDevice`, and `selectAudioOutputDevice` method of `MeetingManager` now throw error when failed. The device selection methods returned by `useSelectAudioInputDevice`, `useSelectVideoInputDevice`, and `useSelectAudioOutputDevice` hook are built on top of these `MeetingManager` methods, thus now they throw error when failed as well.
- Change the `selectedDeviceId: string | null` to `selectedDevice: Device | TransformDevice`.
- Update the `selectedDeviceId: string | null` to `selectedDevice: Device | TransformDevice`.
- Update `MeetingManager` to use new `EventController` API.
- Update `amazon-chime-sdk-js` dependency to v3.
- Update the `compilerOptions.target` in `tsconfig.json` from `es5` to `ES2015 (ES6)`.
- Update the `ChannelList` UI component to take in optional `lastChannelMessage` and `lastChannelMessageTimestamp` parameters. If any of them is set, it will display more detailed channel item view with last message content or timestamp.
- Update `MeetingManager.join()` API to have a require parameter `meetingSessionConfiguration: MeetingSessionConfiguration` and an optional parameter `options?: MeetingManagerJoinOptions`. With `meetingSessionConfiguration` parameter builders have direct access to `MeetingSessionConfiguration` which allows more flexibility to customize the `MeetingSession`. With `options` parameter, builders can easily config the `enableWebAudio`, `logger`, `activeSpeakerPolicy`, `deviceLabels` and `eventController` before joining the meeting.
- Rename `selectAudioInputDevice` to `startAudioInputDevice`, `selectVideoInputDevice` to `startVideoInputDevice`, and `selectAudioOutputDevice` to `startAudioOutputDevice`.
- Rename `DevicePermissionStatus.UNSET` to `DevicePermissionStatus.UNTRIGGERED` and `DevicePermissionStatus` to `DeviceLabelTriggerStatus`.
- Rename `useDevicePermissionStatus` to `useDeviceLabelTriggerStatus`.
- Rename `devicePermissionsObservers` to `deviceLabelTriggerStatusObservers` and corresponding `subscribe`, `unsubscribe`, and `publish` functions.
- Rename `deviceLabelTriggerChangeObservers` to `deviceLabelTriggerObservers` and corresponding `subscribe`, `unsubscribe`, and `publish` functions.
- Update `MeetingManager` to use new `EventController` API.
- Update `amazon-chime-sdk-js` dependency to v3..
- Update the `compilerOptions.target` in `tsconfig.json` from `es5` to `ES2015 (ES6)`.
- Rename the `global` property of `DefaultTheme` Interface to `globalStyle` to avoid conflict with reserved keyword `global`.
- Change `Versioning.ts` to read from Git instead of manually hard-coded. This is the same behavior in `amazon-chime-sdk-js`.
- Update the ChannelList UI component to take in optional `lastChannelMessage` and `lastChannelMessageTimestamp` parameters. If any of them is set, it will display more detailed channel item view with last message content or timestamp.
- Rename the `global` property of `DefaultTheme` interface to `globalStyle` to avoid conflict with reserved keyword `global`.
- Revert "Add Observer to select input device error" ([PR #493](https://github.com/aws/amazon-chime-sdk-component-library-react/pull/493)). `useAudioInputs` and `useVideoInputs` hook no longer return `selectDeviceError`. `selectAudioInputDevice`, `selectVideoInputDevice`, and `selectAudioOutputDevice` method of `MeetingManager` now throw error when failed. The device selection methods returned by `useSelectAudioInputDevice`, `useSelectVideoInputDevice`, and `useSelectAudioOutputDevice` hook are built on top of these `MeetingManager` methods, thus now they throw error when failed as well.

### Fixed

## [3.0.0-beta.0] - 2022-03-15

### Fixed

### Added

- Add styling guide documentation for customizing SDK and UI component CSS.
- Extend and enabled style customizing capabilities on the SDK components.
- Extend and enable style customizing capabilities on the SDK components.
- Add `MeetingSessionConfiguration` as a required parameter to `MeetingManager.join()` method. With this change the builders have direct access to `MeetingSessionConfiguration`, this will allow more flexibility to customize the `MeetingSession`.
- Add `MeetingManagerJoinOptions` as a new interface for the `options` parameter of the `MeetingManager.join` method.
- Add `deviceLabels`, `eventController`, `logLevel`, `postLoggerConfig`, `logger`, `enableWebAudio`, and `activeSpeakerPolicy` to `MeetingManagerJoinOptions` interface.
Expand All @@ -77,6 +85,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Remove `MeetingSessionConfiguration` properties from `MeetingProvider` props.
- Remove `deviceLabels`, `eventController`, `logLevel`, `postLogConfig`, `logger`, `enableWebAudio`, and `activeSpeakerPolicy` from `MeetingProvider` props.

### Fixed

## [2.15.0] - 2022-02-03

### Fixed
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ The [Amazon Chime SDK Project Board](https://github.com/orgs/aws/projects/12) ca

[Migration from V1 to V2](https://aws.github.io/amazon-chime-sdk-component-library-react/?path=/docs/migration-to-v2--page)

[Migration from V2 to V3](https://aws.github.io/amazon-chime-sdk-component-library-react/?path=/docs/migration-to-v3--page)

## Examples

[Amazon Chime Meeting Demo](https://github.com/aws-samples/amazon-chime-sdk/tree/main/apps/meeting)
Expand Down

0 comments on commit 16b40f5

Please sign in to comment.