1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-25 15:29:32 -05:00
denoland-deno/cli/tsc
2022-11-28 17:28:54 -05:00
..
dts feat(unstable): rework Deno.Command (#16812) 2022-11-28 12:33:51 +01:00
00_typescript.js fix: Make npm packages works with import maps (#16754) 2022-11-22 20:09:30 +01:00
99_main_compiler.js chore: more debug logging and avoid allocating strings in ts logging when not debug (#16689) 2022-11-23 13:34:44 -05:00
compiler.d.ts refactor: move dts files, diagnostics.rs, and tsc.rs to tsc folder (#16820) 2022-11-25 18:29:48 -05:00
diagnostics.rs feat(unstable): rework Deno.Command (#16812) 2022-11-28 12:33:51 +01:00
mod.rs refactor: create util folder, move nap_sym to napi/sym, move http_cache to cache folder (#16857) 2022-11-28 17:28:54 -05:00
README.md refactor: move dts files, diagnostics.rs, and tsc.rs to tsc folder (#16820) 2022-11-25 18:29:48 -05:00

tsc

This directory contains the typescript compiler and a small compiler host for the runtime snapshot.

How to upgrade TypeScript.

The files in this directory are mostly from the TypeScript repository. We currently (unfortunately) have a rather manual process for upgrading TypeScript. It works like this currently:

  1. Checkout denoland/TypeScript repo in a separate directory.
  2. Add Microsoft/TypeScript as a remote and fetch its latest tags
  3. Checkout a new branch based on this tag.
  4. Cherry pick the custom commit we made in a previous release to the new one.
  5. This commit has a "deno.ts" file in it. Read the instructions in it.
  6. Copy typescript.js into Deno repo.
  7. Copy d.ts files into dts directory.

So that might look something like this:

git clone https://github.com/denoland/TypeScript.git
cd typescript
git remote add upstream https://github.com/Microsoft/TypeScript
git fetch upstream
git checkout v3.9.7
git checkout -b branch_v3.9.7
git cherry pick <previous-release-branch-commit-we-did>
npm install
gulp local
rsync lib/typescript.js ~/src/deno/cli/tsc/00_typescript.js
rsync --exclude=protocol.d.ts --exclude=tsserverlibrary.d.ts --exclude=typescriptServices.d.ts lib/*.d.ts ~/src/deno/cli/tsc/dts/