From 73e23a0fceab09fdbc163ad11d0aefb8619185fc Mon Sep 17 00:00:00 2001 From: Jiawei Shao Date: Wed, 15 Nov 2023 15:33:40 +0800 Subject: [PATCH 1/5] Update gpuweb: Add "read-write" and "read-only" as new storage texture access --- dist/index.d.ts | 5 +- generated/index.d.ts | 197 +++++++------------------------------------ gpuweb | 2 +- 3 files changed, 35 insertions(+), 169 deletions(-) diff --git a/dist/index.d.ts b/dist/index.d.ts index 3ed49db..41f36c5 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -261,7 +261,10 @@ type GPUStencilOperation = | "increment-wrap" | "decrement-wrap"; type GPUStorageTextureAccess = - "write-only"; + + | "write-only" + | "read-only" + | "read-write"; type GPUStoreOp = | "store" diff --git a/generated/index.d.ts b/generated/index.d.ts index 58502c0..6856d09 100644 --- a/generated/index.d.ts +++ b/generated/index.d.ts @@ -22,15 +22,6 @@ type GPUExtent3D = | GPUExtent3DDict; type GPUFlagsConstant = number; -type GPUImageCopyExternalImageSource = - - | ImageBitmap - | ImageData - | HTMLImageElement - | HTMLVideoElement - | VideoFrame - | HTMLCanvasElement - | OffscreenCanvas; type GPUIndex32 = number; type GPUIntegerCoordinate = @@ -207,7 +198,10 @@ type GPUStencilOperation = | "increment-wrap" | "decrement-wrap"; type GPUStorageTextureAccess = - "write-only"; + + | "write-only" + | "read-only" + | "read-write"; type GPUStoreOp = | "store" @@ -767,134 +761,6 @@ interface GPUFragmentState targets: Array; } -interface GPUImageCopyBuffer - extends GPUImageDataLayout { - /** - * A buffer which either contains image data to be copied or will store the image data being - * copied, depending on the method it is being passed to. - */ - buffer: GPUBuffer; -} - -interface GPUImageCopyExternalImage { - /** - * The source of the image copy. The copy source data is captured at the moment that - * {@link GPUQueue#copyExternalImageToTexture} is issued. Source size is defined by source - * type, given by this table: - * - * - * - * - * - * - * - * - * - * - * - * - *
Source type - * Width - * Height - *
{@link ImageBitmap} - * {@link ImageBitmap#width|ImageBitmap.width} - * {@link ImageBitmap#height|ImageBitmap.height} - *
{@link HTMLVideoElement} - * video/intrinsic width|intrinsic width of the frame - * video/intrinsic height|intrinsic height of the frame - *
{@link VideoFrame} - * {@link VideoFrame#codedWidth|VideoFrame.codedWidth} - * {@link VideoFrame#codedHeight|VideoFrame.codedHeight} - *
{@link HTMLCanvasElement} - * {@link HTMLCanvasElement#width|HTMLCanvasElement.width} - * {@link HTMLCanvasElement#height|HTMLCanvasElement.height} - *
{@link OffscreenCanvas} - * {@link OffscreenCanvas#width|OffscreenCanvas.width} - * {@link OffscreenCanvas#height|OffscreenCanvas.height} - *
- */ - source: GPUImageCopyExternalImageSource; - /** - * Defines the origin of the copy - the minimum (top-left) corner of the source sub-region to copy from. - * Together with `copySize`, defines the full copy sub-region. - */ - origin?: GPUOrigin2D; - /** - * Describes whether the source image is vertically flipped, or not. - * If this option is set to `true`, the copy is flipped vertically: the bottom row of the source - * region is copied into the first row of the destination region, and so on. - * The {@link GPUImageCopyExternalImage#origin} option is still relative to the top-left corner - * of the source image, increasing downward. - */ - flipY?: boolean; -} - -interface GPUImageCopyTexture { - /** - * Texture to copy to/from. - */ - texture: GPUTexture; - /** - * Mip-map level of the {@link GPUImageCopyTexture#texture} to copy to/from. - */ - mipLevel?: GPUIntegerCoordinate; - /** - * Defines the origin of the copy - the minimum corner of the texture sub-region to copy to/from. - * Together with `copySize`, defines the full copy sub-region. - */ - origin?: GPUOrigin3D; - /** - * Defines which aspects of the {@link GPUImageCopyTexture#texture} to copy to/from. - */ - aspect?: GPUTextureAspect; -} - -interface GPUImageCopyTextureTagged - extends GPUImageCopyTexture { - /** - * Describes the color space and encoding used to encode data into the destination texture. - * This [[#color-space-conversions|may result]] in values outside of the range [0, 1] - * being written to the target texture, if its format can represent them. - * Otherwise, the results are clamped to the target texture format's range. - * Note: - * If {@link GPUImageCopyTextureTagged#colorSpace} matches the source image, - * conversion may not be necessary. See [[#color-space-conversion-elision]]. - */ - colorSpace?: PredefinedColorSpace; - /** - * Describes whether the data written into the texture should have its RGB channels - * premultiplied by the alpha channel, or not. - * If this option is set to `true` and the {@link GPUImageCopyExternalImage#source} is also - * premultiplied, the source RGB values must be preserved even if they exceed their - * corresponding alpha values. - * Note: - * If {@link GPUImageCopyTextureTagged#premultipliedAlpha} matches the source image, - * conversion may not be necessary. See [[#color-space-conversion-elision]]. - */ - premultipliedAlpha?: boolean; -} - -interface GPUImageDataLayout { - /** - * The offset, in bytes, from the beginning of the image data source (such as a - * {@link GPUImageCopyBuffer#buffer|GPUImageCopyBuffer.buffer}) to the start of the image data - * within that source. - */ - offset?: GPUSize64; - /** - * The stride, in bytes, between the beginning of each block row and the subsequent block row. - * Required if there are multiple block rows (i.e. the copy height or depth is more than one block). - */ - bytesPerRow?: GPUSize32; - /** - * Number of block rows per single image of the texture. - * {@link GPUImageDataLayout#rowsPerImage} × - * {@link GPUImageDataLayout#bytesPerRow} is the stride, in bytes, between the beginning of each image of data and the subsequent image. - * Required if there are multiple images (i.e. the copy depth is more than one). - */ - rowsPerImage?: GPUSize32; -} - interface GPUMultisampleState { /** * Number of samples per pixel. This {@link GPURenderPipeline} will be compatible only @@ -1104,6 +970,11 @@ interface GPURenderPassColorAttachment { * color attachment. */ view: GPUTextureView; + /** + * Indicates the depth slice index of {@link GPUTextureViewDimension#"3d"} {@link GPURenderPassColorAttachment#view} + * that will be output to for this color attachment. + */ + depthSlice?: GPUIntegerCoordinate; /** * A {@link GPUTextureView} describing the texture subresource that will receive the resolved * output for this color attachment if {@link GPURenderPassColorAttachment#view} is @@ -1341,6 +1212,7 @@ interface GPUSamplerDescriptor } interface GPUShaderModuleCompilationHint { + entryPoint: string; /** * A {@link GPUPipelineLayout} that the {@link GPUShaderModule} may be used with in a future * {@link GPUDevice#createComputePipeline()} or {@link GPUDevice#createRenderPipeline} call. @@ -1368,23 +1240,29 @@ interface GPUShaderModuleDescriptor */ sourceMap?: any; /** - * If defined maps an entry point name from the shader to a {@link GPUShaderModuleCompilationHint}. - * No validation is performed with any of these {@link GPUShaderModuleCompilationHint}. - * Implementations should use any information present in the {@link GPUShaderModuleCompilationHint} + * A list of {@link GPUShaderModuleCompilationHint}s. + * Any hint provided by an application **should** contain information about one entry point of + * a pipeline that will eventually be created from the entry point. + * Implementations **should** use any information present in the {@link GPUShaderModuleCompilationHint} * to perform as much compilation as is possible within {@link GPUDevice#createShaderModule}. - * Entry point names follow the rules defined in WGSL identifier comparison. - * Note: Supplying information in {@link GPUShaderModuleDescriptor#hints} does not have any - * observable effect, other than performance. Because a single shader module can hold + * Aside from type-checking, these hints are not validated in any way. + *
+ * Supplying information in {@link GPUShaderModuleDescriptor#compilationHints} does not have any + * observable effect, other than performance. It may be detrimental to performance to + * provide hints for pipelines that never end up being created. + * Because a single shader module can hold * multiple entry points, and multiple pipelines can be created from a single shader * module, it can be more performant for an implementation to do as much compilation as * possible once in {@link GPUDevice#createShaderModule} rather than multiple times in - * the multiple calls to {@link GPUDevice#createComputePipeline} / + * the multiple calls to {@link GPUDevice#createComputePipeline} or * {@link GPUDevice#createRenderPipeline}. + *
+ * Note: + * Hints are not validated in an observable way, but user agents **may** surface identifiable + * errors (like unknown entry point names or incompatible pipeline layouts) to developers, + * for example in the browser developer console. */ - hints?: Record< - string, - GPUShaderModuleCompilationHint - >; + compilationHints?: Array; } interface GPUStencilFaceState { @@ -1413,9 +1291,6 @@ interface GPUStencilFaceState { interface GPUStorageTextureBindingLayout { /** * The access mode for this binding, indicating readability and writability. - * Note: - * There is currently only one access mode, {@link GPUStorageTextureAccess#"write-only"}, - * but this will expand in the future. */ access?: GPUStorageTextureAccess; /** @@ -1476,8 +1351,7 @@ interface GPUTextureDescriptor * Specifies what view {@link GPUTextureViewDescriptor#format} values will be allowed when calling * {@link GPUTexture#createView} on this texture (in addition to the texture's actual * {@link GPUTextureDescriptor#format}). - *
- * Note: + *
* Adding a format to this list may have a significant performance impact, so it is best * to avoid adding formats unnecessarily. * The actual performance impact is highly dependent on the target system; developers must @@ -2051,17 +1925,6 @@ interface GPUCommandEncoder offset?: GPUSize64, size?: GPUSize64 ): undefined; - /** - * Writes a timestamp value into a querySet when all previous commands have completed executing. - * Note: Timestamp query values are written in nanoseconds, but how the value is determined is - * implementation-defined and may not increase monotonically. See [[#timestamp]] for details. - * @param querySet - The query set that will store the timestamp values. - * @param queryIndex - The index of the query in the query set. - */ - writeTimestamp( - querySet: GPUQuerySet, - queryIndex: GPUSize32 - ): undefined; /** * Resolves query results from a {@link GPUQuerySet} out into a range of a {@link GPUBuffer}. * querySet: @@ -2116,7 +1979,7 @@ interface GPUCompilationMessage { * Note: The {@link GPUCompilationMessage#message} should follow the best practices for language * and direction information. This includes making use of any future standards which may * emerge regarding the reporting of string language and direction metadata. - *

Editorial: + *

Editorial note: * At the time of this writing, no language/direction recommendation is available that provides * compatibility and consistency with legacy APIs, but when there is, adopt it formally. */ @@ -2436,7 +2299,7 @@ interface GPUError { * Note: The {@link GPUError#message} should follow the best practices for language and * direction information. This includes making use of any future standards which may emerge * regarding the reporting of string language and direction metadata. - *

Editorial: + *

Editorial note: * At the time of this writing, no language/direction recommendation is available that provides * compatibility and consistency with legacy APIs, but when there is, adopt it formally. */ diff --git a/gpuweb b/gpuweb index be0515f..56a0db1 160000 --- a/gpuweb +++ b/gpuweb @@ -1 +1 @@ -Subproject commit be0515f355e1ba9cf2f3c79f4c03d9eced802948 +Subproject commit 56a0db1669c7e4fe1d45e476e7800e4953f04bf9 From a2b75c17e6f9f1c3744115181bb3d3ad5e236ecb Mon Sep 17 00:00:00 2001 From: Jiawei Shao Date: Wed, 15 Nov 2023 15:38:53 +0800 Subject: [PATCH 2/5] 0.1.39 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 976b1e0..d9ada61 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@webgpu/types", - "version": "0.1.38", + "version": "0.1.39", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@webgpu/types", - "version": "0.1.38", + "version": "0.1.39", "license": "BSD-3-Clause", "devDependencies": { "bikeshed-to-ts": "github:toji/bikeshed-to-ts", diff --git a/package.json b/package.json index a25c9b1..f03de14 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "repository": "gpuweb/types", "homepage": "https://github.com/gpuweb/types", "bugs": "https://github.com/gpuweb/types/issues", - "version": "0.1.38", + "version": "0.1.39", "main": "", "types": "dist/index.d.ts", "license": "BSD-3-Clause", From e5bb19b8b2f0b4841fc208eacab0d9665261b8d0 Mon Sep 17 00:00:00 2001 From: Jiawei Shao Date: Thu, 16 Nov 2023 13:19:00 +0800 Subject: [PATCH 3/5] Include copies.bs in index.bs --- generated/index.d.ts | 137 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) diff --git a/generated/index.d.ts b/generated/index.d.ts index 6856d09..7c3abb9 100644 --- a/generated/index.d.ts +++ b/generated/index.d.ts @@ -22,6 +22,15 @@ type GPUExtent3D = | GPUExtent3DDict; type GPUFlagsConstant = number; +type GPUImageCopyExternalImageSource = + + | ImageBitmap + | ImageData + | HTMLImageElement + | HTMLVideoElement + | VideoFrame + | HTMLCanvasElement + | OffscreenCanvas; type GPUIndex32 = number; type GPUIntegerCoordinate = @@ -761,6 +770,134 @@ interface GPUFragmentState targets: Array; } +interface GPUImageCopyBuffer + extends GPUImageDataLayout { + /** + * A buffer which either contains image data to be copied or will store the image data being + * copied, depending on the method it is being passed to. + */ + buffer: GPUBuffer; +} + +interface GPUImageCopyExternalImage { + /** + * The source of the image copy. The copy source data is captured at the moment that + * {@link GPUQueue#copyExternalImageToTexture} is issued. Source size is defined by source + * type, given by this table: + * + * + * + * + * + * + * + * + * + * + * + * + *
Source type + * Width + * Height + *
{@link ImageBitmap} + * {@link ImageBitmap#width|ImageBitmap.width} + * {@link ImageBitmap#height|ImageBitmap.height} + *
{@link HTMLVideoElement} + * video/intrinsic width|intrinsic width of the frame + * video/intrinsic height|intrinsic height of the frame + *
{@link VideoFrame} + * {@link VideoFrame#codedWidth|VideoFrame.codedWidth} + * {@link VideoFrame#codedHeight|VideoFrame.codedHeight} + *
{@link HTMLCanvasElement} + * {@link HTMLCanvasElement#width|HTMLCanvasElement.width} + * {@link HTMLCanvasElement#height|HTMLCanvasElement.height} + *
{@link OffscreenCanvas} + * {@link OffscreenCanvas#width|OffscreenCanvas.width} + * {@link OffscreenCanvas#height|OffscreenCanvas.height} + *
+ */ + source: GPUImageCopyExternalImageSource; + /** + * Defines the origin of the copy - the minimum (top-left) corner of the source sub-region to copy from. + * Together with `copySize`, defines the full copy sub-region. + */ + origin?: GPUOrigin2D; + /** + * Describes whether the source image is vertically flipped, or not. + * If this option is set to `true`, the copy is flipped vertically: the bottom row of the source + * region is copied into the first row of the destination region, and so on. + * The {@link GPUImageCopyExternalImage#origin} option is still relative to the top-left corner + * of the source image, increasing downward. + */ + flipY?: boolean; +} + +interface GPUImageCopyTexture { + /** + * Texture to copy to/from. + */ + texture: GPUTexture; + /** + * Mip-map level of the {@link GPUImageCopyTexture#texture} to copy to/from. + */ + mipLevel?: GPUIntegerCoordinate; + /** + * Defines the origin of the copy - the minimum corner of the texture sub-region to copy to/from. + * Together with `copySize`, defines the full copy sub-region. + */ + origin?: GPUOrigin3D; + /** + * Defines which aspects of the {@link GPUImageCopyTexture#texture} to copy to/from. + */ + aspect?: GPUTextureAspect; +} + +interface GPUImageCopyTextureTagged + extends GPUImageCopyTexture { + /** + * Describes the color space and encoding used to encode data into the destination texture. + * This [[#color-space-conversions|may result]] in values outside of the range [0, 1] + * being written to the target texture, if its format can represent them. + * Otherwise, the results are clamped to the target texture format's range. + * Note: + * If {@link GPUImageCopyTextureTagged#colorSpace} matches the source image, + * conversion may not be necessary. See [[#color-space-conversion-elision]]. + */ + colorSpace?: PredefinedColorSpace; + /** + * Describes whether the data written into the texture should have its RGB channels + * premultiplied by the alpha channel, or not. + * If this option is set to `true` and the {@link GPUImageCopyExternalImage#source} is also + * premultiplied, the source RGB values must be preserved even if they exceed their + * corresponding alpha values. + * Note: + * If {@link GPUImageCopyTextureTagged#premultipliedAlpha} matches the source image, + * conversion may not be necessary. See [[#color-space-conversion-elision]]. + */ + premultipliedAlpha?: boolean; +} + +interface GPUImageDataLayout { + /** + * The offset, in bytes, from the beginning of the image data source (such as a + * {@link GPUImageCopyBuffer#buffer|GPUImageCopyBuffer.buffer}) to the start of the image data + * within that source. + */ + offset?: GPUSize64; + /** + * The stride, in bytes, between the beginning of each block row and the subsequent block row. + * Required if there are multiple block rows (i.e. the copy height or depth is more than one block). + */ + bytesPerRow?: GPUSize32; + /** + * Number of block rows per single image of the texture. + * {@link GPUImageDataLayout#rowsPerImage} × + * {@link GPUImageDataLayout#bytesPerRow} is the stride, in bytes, between the beginning of each image of data and the subsequent image. + * Required if there are multiple images (i.e. the copy depth is more than one). + */ + rowsPerImage?: GPUSize32; +} + interface GPUMultisampleState { /** * Number of samples per pixel. This {@link GPURenderPipeline} will be compatible only From 159df73cd6926230490acbf12cd09832d21887b8 Mon Sep 17 00:00:00 2001 From: Jiawei Shao Date: Thu, 16 Nov 2023 13:29:09 +0800 Subject: [PATCH 4/5] Add the diff in generated/index.d.ts to dist/index.d.ts --- dist/index.d.ts | 57 +++++++++++++++++++++++-------------------------- 1 file changed, 27 insertions(+), 30 deletions(-) diff --git a/dist/index.d.ts b/dist/index.d.ts index 41f36c5..0e6f86e 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -1119,6 +1119,11 @@ interface GPURenderPassColorAttachment { * color attachment. */ view: GPUTextureView; + /** + * Indicates the depth slice index of {@link GPUTextureViewDimension#"3d"} {@link GPURenderPassColorAttachment#view} + * that will be output to for this color attachment. + */ + depthSlice?: GPUIntegerCoordinate; /** * A {@link GPUTextureView} describing the texture subresource that will receive the resolved * output for this color attachment if {@link GPURenderPassColorAttachment#view} is @@ -1385,6 +1390,7 @@ interface GPUSamplerDescriptor } interface GPUShaderModuleCompilationHint { + entryPoint: string; /** * A {@link GPUPipelineLayout} that the {@link GPUShaderModule} may be used with in a future * {@link GPUDevice#createComputePipeline()} or {@link GPUDevice#createRenderPipeline} call. @@ -1410,25 +1416,31 @@ interface GPUShaderModuleDescriptor * WGSL names (identifiers) in source maps follow the rules defined in WGSL identifier * comparison. */ - sourceMap?: object; + sourceMap?: any; /** - * If defined maps an entry point name from the shader to a {@link GPUShaderModuleCompilationHint}. - * No validation is performed with any of these {@link GPUShaderModuleCompilationHint}. - * Implementations should use any information present in the {@link GPUShaderModuleCompilationHint} + * A list of {@link GPUShaderModuleCompilationHint}s. + * Any hint provided by an application **should** contain information about one entry point of + * a pipeline that will eventually be created from the entry point. + * Implementations **should** use any information present in the {@link GPUShaderModuleCompilationHint} * to perform as much compilation as is possible within {@link GPUDevice#createShaderModule}. - * Entry point names follow the rules defined in WGSL identifier comparison. - * Note: Supplying information in {@link GPUShaderModuleDescriptor#hints} does not have any - * observable effect, other than performance. Because a single shader module can hold + * Aside from type-checking, these hints are not validated in any way. + *

+ * Supplying information in {@link GPUShaderModuleDescriptor#compilationHints} does not have any + * observable effect, other than performance. It may be detrimental to performance to + * provide hints for pipelines that never end up being created. + * Because a single shader module can hold * multiple entry points, and multiple pipelines can be created from a single shader * module, it can be more performant for an implementation to do as much compilation as * possible once in {@link GPUDevice#createShaderModule} rather than multiple times in - * the multiple calls to {@link GPUDevice#createComputePipeline} / + * the multiple calls to {@link GPUDevice#createComputePipeline} or * {@link GPUDevice#createRenderPipeline}. + *
+ * Note: + * Hints are not validated in an observable way, but user agents **may** surface identifiable + * errors (like unknown entry point names or incompatible pipeline layouts) to developers, + * for example in the browser developer console. */ - hints?: Record< - string, - GPUShaderModuleCompilationHint - >; + compilationHints?: Array; } interface GPUStencilFaceState { @@ -1457,9 +1469,6 @@ interface GPUStencilFaceState { interface GPUStorageTextureBindingLayout { /** * The access mode for this binding, indicating readability and writability. - * Note: - * There is currently only one access mode, {@link GPUStorageTextureAccess#"write-only"}, - * but this will expand in the future. */ access?: GPUStorageTextureAccess; /** @@ -1520,8 +1529,7 @@ interface GPUTextureDescriptor * Specifies what view {@link GPUTextureViewDescriptor#format} values will be allowed when calling * {@link GPUTexture#createView} on this texture (in addition to the texture's actual * {@link GPUTextureDescriptor#format}). - *
- * Note: + *
* Adding a format to this list may have a significant performance impact, so it is best * to avoid adding formats unnecessarily. * The actual performance impact is highly dependent on the target system; developers must @@ -2147,17 +2155,6 @@ interface GPUCommandEncoder offset?: GPUSize64, size?: GPUSize64 ): undefined; - /** - * Writes a timestamp value into a querySet when all previous commands have completed executing. - * Note: Timestamp query values are written in nanoseconds, but how the value is determined is - * implementation-defined and may not increase monotonically. See [[#timestamp]] for details. - * @param querySet - The query set that will store the timestamp values. - * @param queryIndex - The index of the query in the query set. - */ - writeTimestamp( - querySet: GPUQuerySet, - queryIndex: GPUSize32 - ): undefined; /** * Resolves query results from a {@link GPUQuerySet} out into a range of a {@link GPUBuffer}. * querySet: @@ -2214,7 +2211,7 @@ interface GPUCompilationMessage { * Note: The {@link GPUCompilationMessage#message} should follow the best practices for language * and direction information. This includes making use of any future standards which may * emerge regarding the reporting of string language and direction metadata. - *

Editorial: + *

Editorial note: * At the time of this writing, no language/direction recommendation is available that provides * compatibility and consistency with legacy APIs, but when there is, adopt it formally. */ @@ -2544,7 +2541,7 @@ interface GPUError { * Note: The {@link GPUError#message} should follow the best practices for language and * direction information. This includes making use of any future standards which may emerge * regarding the reporting of string language and direction metadata. - *

Editorial: + *

Editorial note: * At the time of this writing, no language/direction recommendation is available that provides * compatibility and consistency with legacy APIs, but when there is, adopt it formally. */ From bbd5e832d1cc8e258d4348587b1aed1b739697c2 Mon Sep 17 00:00:00 2001 From: Jiawei Shao Date: Thu, 16 Nov 2023 13:55:17 +0800 Subject: [PATCH 5/5] Revert "0.1.39" This reverts commit a2b75c17e6f9f1c3744115181bb3d3ad5e236ecb. --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index d9ada61..976b1e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@webgpu/types", - "version": "0.1.39", + "version": "0.1.38", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@webgpu/types", - "version": "0.1.39", + "version": "0.1.38", "license": "BSD-3-Clause", "devDependencies": { "bikeshed-to-ts": "github:toji/bikeshed-to-ts", diff --git a/package.json b/package.json index f03de14..a25c9b1 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "repository": "gpuweb/types", "homepage": "https://github.com/gpuweb/types", "bugs": "https://github.com/gpuweb/types/issues", - "version": "0.1.39", + "version": "0.1.38", "main": "", "types": "dist/index.d.ts", "license": "BSD-3-Clause",