1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-23 15:49:44 -05:00
A modern runtime for JavaScript and TypeScript. https://deno.com/
Find a file
Bartek Iwańczuk 3cbd1075c7
Incremental compilation for TypeScript (#6428)
This commit adds incremental compilation capabilities to internal TS compiler.

Instead of using "ts.createProgram()" API for compilation step (during deno 
startup), "ts.createIncrementalProgram()" API is used instead.

Thanks to TS' ".tsbuildinfo" file that already stores all necessary metadata
for compilation I was able to remove our own invention that is ".graph" file. 
".tsbuildinfo" file is stored alongside compiled source and is used to 
cache-bust outdated dependencies, facilitated by the "version" field. 
The value for "version" field is computed in Rust during loading of module 
graph and is basically a hash of the file contents.

Please keep in mind that incremental compilation is only used for initial 
compilation (or dynamic imports compilation) - bundling and runtime compiler 
APIs haven't been changed at all.

Due to problems with source map I changed compilation settings to inline 
source map (inlineSourceMap instead of sourceMap).
2020-06-24 16:59:12 +02:00
.cargo Statically link the C runtime library on Windows (#4469) 2020-03-23 20:31:29 +01:00
.github feat(std/wasi): add wasi_snapshot_preview1 (#6441) 2020-06-24 09:27:31 -04:00
cli Incremental compilation for TypeScript (#6428) 2020-06-24 16:59:12 +02:00
core feat(core): enable experimental-wasm-bigint (#6443) 2020-06-23 12:42:23 -04:00
deno_typescript v1.1.1 2020-06-19 14:48:14 -04:00
docs Update contributing.md for consistency (#6452) 2020-06-24 15:14:28 +02:00
std feat(std/wasi): add wasi_snapshot_preview1 (#6441) 2020-06-24 09:27:31 -04:00
test_plugin upgrade crates (#6378) 2020-06-19 13:44:28 -04:00
test_util upgrade crates (#6378) 2020-06-19 13:44:28 -04:00
third_party@9ad53352a9 Update to TypeScript 3.9 (#4510) 2020-05-13 08:03:04 -04:00
tools feat(std/hash): reimplement all hashes in WASM (#6292) 2020-06-16 17:12:50 -04:00
.editorconfig editorconfig: Don't insert final newline in .out files (#1686) 2019-02-07 11:31:49 -05:00
.eslintignore feat: dprint formatter (#3820) 2020-01-29 21:16:48 -05:00
.eslintrc.json Add no-async-promise-executor lint rule (#4809) 2020-04-20 11:29:37 +02:00
.gitattributes Upgrade node_modules, change tagline, clean up root directory (#3247) 2019-10-31 19:33:27 -07:00
.gitignore feat(std/wasi): add wasi_snapshot_preview1 (#6441) 2020-06-24 09:27:31 -04:00
.gitmodules Replace libdeno with rusty_v8 (#3556) 2020-01-05 09:19:29 -05:00
.prettierignore feat(std/hash): reimplement all hashes in WASM (#6292) 2020-06-16 17:12:50 -04:00
.prettierrc.json tools/format: format markdown files with prettier 2018-10-04 02:02:23 -07:00
.rustfmt.toml change copyrights from 2019 to 2020 (#3733) 2020-01-21 10:01:55 -05:00
Cargo.lock Remove Deno.dir and dirs dependency (#6385) 2020-06-20 23:49:27 -04:00
Cargo.toml chore(test): move testing utilities to test_util crate (#6360) 2020-06-18 11:54:55 -04:00
CODE_OF_CONDUCT.md fix(tools): prettier formatting (#6206) 2020-06-09 17:50:41 +02:00
LICENSE change copyrights from 2019 to 2020 (#3733) 2020-01-21 10:01:55 -05:00
README.md chore: remove typedoc (#5497) 2020-05-16 16:02:03 +02:00
Releases.md v1.1.1 2020-06-19 14:48:14 -04:00

Deno

A secure runtime for JavaScript and TypeScript.

Build Status

Deno aims to provide a productive and secure scripting environment for the modern programmer. It is built on top of V8, Rust, and TypeScript.

Please read the introduction for more specifics.

Website

Manual

Install

API Reference

Style Guide

Module Repository

Releases

Chat

More links