deno/tools
Nathan Whitaker ebbc897b69
fix(ext/node): Reimplement StringDecoder to match node's behavior (#22933)
Fixes #22158.

Basically reimplements the whole `StringDecoder` with a much more direct
translation (read like one-to-one) of node's current logic. The old
implementation was closer to node's super old impl and it was too hard
to keep the code structure while matching the behavior of their new
logic.

This adds support for UTF-16LE, ascii, and latin1. 

This also enables the node_compat test, which now passes without
modification.
2024-03-15 17:24:13 -07:00
..
napi chore: Reuse linux symbols list on openbsd and freebsd (#22706) 2024-03-06 08:33:15 +05:30
node_compat fix(ext/node): Reimplement StringDecoder to match node's behavior (#22933) 2024-03-15 17:24:13 -07:00
release chore: move test_util to tests/util/server (#22444) 2024-02-19 06:34:24 -07:00
build_bench.ts chore: use granular unstable flags in tools/ (#22138) 2024-01-26 22:35:43 +00:00
build_benchmark_jsons.js chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
copyright_checker.js chore: rough first pass on spec tests (#22877) 2024-03-13 16:21:13 +00:00
core_import_map.json refactor: move ImageData to web extension (#22295) 2024-02-07 01:11:15 +01:00
cut_a_release.md chore: make the start_release workflow go faster (#15416) 2022-08-08 19:31:45 -04:00
deno.lock.json chore: move test_util/wpt to tests/wpt/suite (#22412) 2024-02-16 03:32:28 +00:00
faster-rebuilds.md chore(build): document faster rebuilds with cargo plonk (#21823) 2024-01-06 16:27:04 +05:30
format.js chore: use granular unstable flags in tools/ (#22138) 2024-01-26 22:35:43 +00:00
install_prebuilt.js chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
lint.js fix(node): resolve types via package.json for directory import (#22878) 2024-03-13 22:37:56 -04:00
README.md chore: use granular unstable flags in tools/ (#22138) 2024-01-26 22:35:43 +00:00
update_typescript.md fix: update to TypeScript 4.7.4 (#15022) 2022-07-04 15:13:50 +10:00
upload_wptfyi.js chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
util.js chore: move test_util/std to tests/util/std (#22402) 2024-02-13 09:22:49 -07:00
verify_pr_title.js chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
wgpu_sync.js chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00

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:

deno run --allow-read --allow-write --allow-run ./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:

deno run --allow-read --allow-write --allow-run ./tools/lint.js

Tip: You can also use cargo to run the current or pending build of the deno executable

cargo run -- run --allow-read --allow-write --allow-run ./tools/<script>

wgpu_sync.js

wgpu_sync.js streamlines updating deno_webgpu from gfx-rs/wgpu.

It essentially vendors the deno_webgpu tree with a few minor patches applied on top, somewhat similar to git subtree.

  1. Update COMMIT or V_WGPU in ./tools/wgpu_sync.js
  2. Run ./tools/wgpu_sync.js
  3. Double check changes, possibly patch
  4. Commit & send a PR with the updates

copyright_checker.js is used to check copyright headers in the codebase.

To run the copyright checker:

deno run --allow-read --allow-run  ./tools/copyright_checker.js

Then it will check all code files in the repository and report any files that are not properly licensed.