<commit_before># CanvasKit Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Fixed
 - Minor bug fixes in the TypeScript type declaration.
 - Creating a Premul Image from a TextureSource should upload the texture to WebGL correctly.

### Added
 - `Surface.makeImageFromTextureSource`, `Surface.updateTextureFromSource`, and<commit_msg>[canvaskit] Update CHANGELOG on WebGPU support<commit_after># CanvasKit Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added
 - WebGPU support. Introduced `CanvasKit.MakeGPUDeviceContext`, `CanvasKit.MakeGPUCanvasContext`,
   `CanvasKit.MakeGPUCanvasSurface`, and `CanvasKit.MakeGPUTextureSurface` which are compatible with
   WebGPU `GPUDevice` and `GPUTexture` objects.
 - Typescript definitions for WebGPU API functions that are compatible with `@webgpu/types`
   (https://www.npmjs.com/package/@webgpu/types).
 - `CanvasKit.MakeCanvasSurface` is now deprecated. Clients should specify a backend target
   explicitly using `CanvasKit.MakeSWCanvasSurface`, `CanvasKit.MakeOnScreenGLSurface`,
   `CanvasKit.MakeGPUCanvasSurface`, and `CanvasKit.MakeGPUTextureSurface`.
 - `CanvasKit.MakeGrContext` is now deprecated. Clients should use `CanvasKit.MakeWebGLContext` and
   `CanvasKit.MakeGPUDeviceContext` instead.

### Fixed
 - Minor bug fixes in the TypeScript type declaration.
 - Creating a Premul Image from a TextureSource should upload the texture to WebGL correctly.

### Added
 - `Surface.makeImageFromTextureSource`, `Surface.updateTextureFromSource`, and
{'fraction_non_alphanumeric': 0.09722222222222222, 'fraction_numerical': 0.006172839506172839, 'mean_word_length': 5.214057507987221, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 5, 'lorem ipsum': 0, 'www.': 1, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3720566', 'n_tokens_mistral': 575, 'n_tokens_neox': 562, 'n_words': 178}