Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@webgpu/types
Advanced tools
This package defines Typescript types (`.d.ts`) for the upcoming [WebGPU standard](https://github.com/gpuweb/gpuweb/wiki/Implementation-Status).
This package defines Typescript types (.d.ts
) for the upcoming WebGPU standard.
Use this package to augment the ambient "dom"
type definitions with the new definitions for WebGPU.
This repo also generates typedoc docs here: https://gpuweb.github.io/types
See the TypeScript handbook.
npm install --save-dev @webgpu/types
yarn add --dev @webgpu/types
pnpm add -D @webgpu/types
If you are on TypeScript < 5.1, you will also need to install @types/dom-webcodecs
as a sibling dependency. The version you need depends on the TypeScript version;
see the tests for examples.
Since this package is outside DefinitelyTyped, the dependency won't be picked up automatically. There are several ways to add a additional TypeScript type definition dependencies to your TypeScript project:
tsc
and tsc
-based bundlersIn tsconfig.json
:
{
// ...
"compilerOptions": {
// ...
"types": ["@webgpu/types"]
}
}
Or you can use typeRoots
:
{
// ...
"compilerOptions": {
// ...
"typeRoots": ["./node_modules/@webgpu/types", "./node_modules/@types"]
}
}
This may work better if your toolchain doesn't read tsconfig.json
.
/// <reference types="@webgpu/types" />
If you use Webpack and the options above aren't sufficient (this has not been verified),
you may need the following in webpack.config.js
:
"types": ["@webgpu/types"]
Please contribute a PR to add instructions for other setups or improve existing instructions. :)
git submodule update --init
gpuweb
changes: pushd gpuweb && git checkout main && git pull && popd
npm ci
copies.bs
contents in place of its include in index.bs
(generator doesn't support includes).generated/index.d.ts
: npm run generate
generated/index.d.ts
and dist/index.d.ts
.
The generated file is tracked by Git so you can see what has changed.
Update the latter according to changes from the former.
Note the generated/
and dist/
files are not the same.
See below for intentional differences.npm run format
Most or all of these should be fixed in the generator over time.
Array
changed to Iterable
for WebIDL sequence
s in argument positions (but not in return positions).any
changed to object
for WebIDL object
.| SharedArrayBuffer
added for [AllowShared] BufferSource
.The following differences are TODO: should be changed in the final result.
The following differences will remain.
onuncapturederror
strongly typed.getContext
definitions.GPUExtent3DStrict
and GPUOrigin2DStrict
.(only for people who have npm publish access)
git checkout main && git pull git@github.com:gpuweb/types.git main && git submodule update --init && npm version patch && git push git@github.com:gpuweb/types.git main --tags && npm publish
git checkout main
git pull https://github.com/gpuweb/types.git main
origin
, just make sure you are referring to the right repo)git submodule update --init
npm version patch
git push https://github.com/gpuweb/types.git main --tags
npm publish --otp=<code>
<code>
with the one-time password from your authenticator, since two-factors authentication is required to publish.npm adduser
first and it will guide you through adding the npm account.FAQs
This package defines Typescript types (`.d.ts`) for the upcoming [WebGPU standard](https://github.com/gpuweb/gpuweb/wiki/Implementation-Status).
We found that @webgpu/types demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.