1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-29 16:30:56 -05:00
denoland-deno/tools/README.md
Leo Kettmeir 35196eab27
BREAKING(unstable): remove WebGPU (#18094)
This PR _**temporarily**_ removes WebGPU (which has behind the
`--unstable` flag in Deno), due to performance complications due to its
presence.

It will be brought back in the future; as a point of reference, Chrome
will ship WebGPU to stable on 26/04/2023.

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-17 00:29:32 +01:00

74 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Tools
Documentation for various tooling in support of Deno development.
## format.js
This script will format the code (currently using dprint, rustfmt). It is a
prerequisite to run this before code check in.
To run formatting:
```sh
deno run --allow-read --allow-write --allow-run --unstable ./tools/format.js
```
## lint.js
This script will lint the code base (currently using dlint, clippy). It is a
prerequisite to run this before code check in.
To run linting:
```sh
deno run --allow-read --allow-write --allow-run --unstable ./tools/lint.js
```
Tip: You can also use cargo to run the current or pending build of the deno
executable
```sh
cargo run -- run --allow-read --allow-write --allow-run --unstable ./tools/<script>
```
## flamebench.js
`flamebench.js` facilitates profiling and generating flamegraphs from
benchmarks.
General usage:
```
./tools/flamebench.js
flamebench <bench_name> [bench_filter]
Available benches:
op_baseline
ser
de
```
To profile the `op_baseline` bench, run `./tools/flamebench.js op_baseline`,
this will run all 3 benches in `op_baseline.
Often when profiling/optimizing, you'll want to focus on a specific sub-bench,
`flamebench` supports a bench/test filter arg like the regular cargo commands.
So you can simply run `./tools/flamebench.js op_baseline bench_op_async` or
`./tools/flamebench.js op_baseline bench_op_nop` to profile specific benches.
Tip: the `[bench_filter]` argument doesn't have to be an exact bench name, you
can use a shorthand or a partial match to profile a group of benches, e.g:
`./tools/flamebench.js de v8`
## copyright_checker.js
`copyright_checker.js` is used to check copyright headers in the codebase.
To run the _copyright checker_:
```sh
deno run --allow-read --allow-run --unstable ./tools/copyright_checker.js
```
Then it will check all code files in the repository and report any files that
are not properly licensed.