1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-30 11:16:38 -05:00
Commit graph

536 commits

Author SHA1 Message Date
Kurt Mackey
4d4dcafb96 fixes body formData tests disabled in #2268 (#2274) 2019-05-03 00:52:50 -04:00
Ryan Dahl
00ac871607
Optimize read and write ops (#2259) 2019-05-03 00:06:43 -04:00
Ryan Dahl
e4354ce739
Re-enable networking unit tests (#2268)
The following tests were commented out in order to get this to go green :
- bodyMultipartFormData
- bodyURLEncodedFormData
- fetchRequestInitStringBody
- netConcurrentAccept
- netListenAsyncIterator
2019-05-02 17:08:02 -04:00
Kurt Mackey
c05cbc8eac Add Request global constructor (#2253) 2019-05-01 23:56:42 -04:00
andy finch
2f4fefd0f6 Async iterator for listener (#2263) 2019-05-01 16:58:09 -04:00
Kevin (Kun) "Kassimo" Qian
7237e9d34a fs: add Deno.utime/Deno.utimeSync (#2241) 2019-05-01 05:08:11 -04:00
迷渡
bbeb30fc5e Make atob follow the spec (#2242) 2019-04-30 11:25:37 -07:00
Ryan Dahl
a217e55fec
Fix another flaky assert (#2246) 2019-04-30 10:43:00 -07:00
迷渡
4dcdd88155 removes ? from URL when deleting all params (#2217) 2019-04-29 16:45:20 -07:00
Kitson Kelly
1a0f53a807 Add support for custom tsconfig.json (#2089)
Use `--config`
2019-04-29 07:58:31 -07:00
Ryan Dahl
73be183864
Disable flaky assert in killSuccess (#2230) 2019-04-28 14:16:37 -07:00
Ryan Dahl
1af02b405e
Revert "recover: #1517 Kill all pending accepts when TCP listener is closed (#2224)" (#2239)
Crashes while running wrk against
js/deps/https/deno.land/std/http/http_bench.ts

This reverts commit 972ac03858.
2019-04-28 14:15:15 -07:00
迷渡
a4551c853e fix test description for atob (#2232) 2019-04-28 09:14:57 -07:00
Yusuke Sakurai
972ac03858 recover: #1517 Kill all pending accepts when TCP listener is closed (#2224) 2019-04-27 11:33:24 -07:00
迷渡
6c9e0530f5 URLSearchParams init with itself (#2218) 2019-04-27 10:16:28 -07:00
迷渡
8578ed4e7f URLSearchParams deleting appended multiple (#2201) 2019-04-25 09:29:50 -04:00
Ryan Dahl
f694823507
Fix symlinkSyncNotImplemented (#2198) 2019-04-24 20:34:33 -04:00
Yingbo (Max) Wang
da64fba046 symlink: Ignore type parameter on non-Windows platforms (#2185)
Fixes #2169
2019-04-23 09:47:29 -04:00
Tomislav Fabeta
d940801754 Simplify logic in URLSearchParams, Buffer, Console (#2174) 2019-04-22 10:37:49 -04:00
Kevin (Kun) "Kassimo" Qian
1d4b92ac85 Add Deno.kill(pid, signo) and process.kill(signo) (Unix only) (#2177) 2019-04-21 21:26:56 -04:00
Ryan Dahl
9dfebbc949
Fix eslint warnings (#2151)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: LE GOFF Vincent <g_n_s@hotmail.fr>
2019-04-21 16:40:10 -04:00
Tomislav Fabeta
6cded14bdf Issue/2170 (#2175)
* Consistency using requiredArguments method

Replaced tuple length check in Headers class with requiredArguments
method.

* Consistency using requiredArguments method

Replaced tuple length check in UrlSearchParams class with
requiredArguments method.

* fmt
2019-04-21 15:40:15 -04:00
Ryan Dahl
f77b112797
Remove dead code js/compiler_test.ts (#2160) 2019-04-21 15:39:27 -04:00
Ryan Dahl
8ba6e4fa13
Fix flaky tests (#2164) 2019-04-21 14:06:57 -04:00
Bartek Iwańczuk
cd19da62d9 Refactor CLI entry point (#2157)
Changes "deno --types" to "deno types"
and "deno --prefetch" to "deno prefetch"
2019-04-21 11:34:18 -04:00
Jonathon Orsi
648d2f3ba8 fix typo in permissions explanation (#2162) 2019-04-20 15:12:00 -04:00
Kevin (Kun) "Kassimo" Qian
c8db224efe Make Deno/Deno.core not deletable/writable (#2153) 2019-04-19 20:39:54 -04:00
迷渡
d0cd7a39a2 avoid prototype builtin hasOwnProperty (#2144) 2019-04-18 21:56:33 -04:00
Ryan Dahl
1a69df4a05
Fix flaky tests (#2139) 2019-04-17 13:02:32 -04:00
Ryan Dahl
1bfb443369
Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
Ryan Dahl
a51e782155
Upgrade deno_std (#2111) 2019-04-13 16:10:19 -04:00
Yoshiya Hinosawa
e0edcc9c1b fix: re-expose DomFile (#2100) 2019-04-12 14:54:13 -04:00
Yoshiya Hinosawa
5a3f3a7445 upgrade deno_std & add workaround prettier issue (#2087) 2019-04-09 13:32:48 -04:00
Ryan Dahl
2debbdacb9
Merge Worker and Isolate types (#2078)
Reduces generics.
2019-04-08 17:10:00 -04:00
Vincent LE GOFF
734cf781c6 Allow high precision performance.now() (#1977) 2019-04-08 16:22:40 -04:00
迷渡
cdb72afd8d fix console instanceof Console (#2073) 2019-04-08 09:25:01 -04:00
Kevin (Kun) "Kassimo" Qian
1746a3ac69 Add link/linkSync fs call for hardlinks (#2074) 2019-04-08 09:11:32 -04:00
Jonathon Orsi
3452a10840 use flatbuffer create functions to add fields (#2046) 2019-04-07 20:51:43 -04:00
andy finch
7a3df0a184 Add worker benchmarks (#2059) 2019-04-05 22:57:59 +03:00
迷渡
4520e5812e fix code bug in jsdocs (#2048) 2019-04-04 05:34:00 -04:00
andy finch
0e7311e171 Non-fatal compile_sync failures (#2039)
And model worker resources as Stream
2019-04-04 05:33:32 -04:00
迷渡
8c85766198 fix JSDoc (#2043) 2019-04-03 08:53:54 -04:00
迷渡
bb617d2478 fix toString for some web objects (#2040) 2019-04-03 08:41:05 -04:00
迷渡
5f97c041d9 fix console.log when error has been caught (#2041) 2019-04-03 08:38:50 -04:00
迷渡
6463a75b44 web-compatibility console (#2042) 2019-04-03 08:37:01 -04:00
JaePil Jung
efbe44eb33 Fix missing return type (#2038) 2019-04-02 10:42:17 -04:00
andy finch
b0a23beb8f Add web worker JS API (#1993)
* Refactored the way worker polling is scheduled and errors are handled.
* Share the worker future as a Shared
2019-04-01 15:09:59 -04:00
迷渡
659acadf77 Improve new TextDecoder().toString() (#2032) 2019-04-01 13:05:19 -04:00
Kitson Kelly
ada5ffa610 Upgrade to TypeScript 3.4.1 (#2027) 2019-04-01 12:47:25 -04:00
Ryan Dahl
c9614d86c1
Move //libdeno to //core/libdeno (#2015)
Fixes some sed errors introduced in c43cfe.

Unfortunately moving libdeno required splitting build.rs into two parts,
one for cli and one for core.

I've also removed the arm64 build - it's complicating things at this
re-org and we're not even testing it. I need to swing back to it and get
tools/test.py running for it.
2019-03-30 14:45:36 -04:00
迷渡
ad3cbc50fb check EventTarget params (#2018) 2019-03-30 13:40:03 -04:00
迷渡
51c6f33f64 Avoid search prototype chain (#2019) 2019-03-30 08:18:19 -04:00
Bartek Iwańczuk
bdc455dd25 Add Process.stderrOutput() (#1828) 2019-03-28 16:09:46 -04:00
迷渡
1fec34b463 Check CustomEvent constructor params (#2011) 2019-03-28 08:08:32 -04:00
Bartek Iwańczuk
597ee38ef2 Rewrite readFile and writeFile (#2000)
Using open/read/write
2019-03-27 23:29:36 -04:00
迷渡
8c770c5a90 remove isTrusted's setter (#2006) 2019-03-27 08:38:49 -04:00
Kevin (Kun) "Kassimo" Qian
5c4189a3b8 Do not close file on invalid seek mode (#2004) 2019-03-26 22:47:17 -04:00
Kitson Kelly
c43cfedeba namespace reorg: libdeno and DenoCore to Deno.core (#1998) 2019-03-26 08:22:07 -04:00
迷渡
ed2977d3c0 Check Event constructor params (#1997) 2019-03-26 07:42:26 -04:00
Bartek Iwańczuk
5ae78eb1de Update ts_library_builder (#1920) 2019-03-25 00:23:24 -04:00
迷渡
efe9c18b45 remove console constructor (#1985) 2019-03-22 11:35:49 -04:00
Ryan Dahl
9444bd71a0
Website and manual improvements (#1967) 2019-03-20 12:39:47 -04:00
Ryan Dahl
842627d6b9 pretty-print long strings 2019-03-20 12:38:59 -04:00
Ryan Dahl
8f334ae568 Improve pretty printing of objects
If an object has more than 5 elements, it is printed in abbeviated form
displaying only the keys. This is useful in the REPL when inspecting
large objects like the Deno namespace:

  > Deno
  { args, noColor, pid, env, exit, isTTY, execPath, chdir, cwd, File,
  open, stdin, stdout, stderr, read, write, seek, close, copy,
  toAsyncIterator, SeekMode, Buffer, readAll, mkdirSync, mkdir,
  makeTempDirSync, makeTempDir, chmodSync, chmod, removeSync, remove,
  renameSync, rename, readFileSync, readFile, readDirSync, readDir,
  copyFileSync, copyFile, readlinkSync, readlink, statSync, lstatSync,
  stat, lstat, symlinkSync, symlink, writeFileSync, writeFile, ErrorKind,
  DenoError, libdeno, permissions, revokePermission, truncateSync,
  truncate, connect, dial, listen, metrics, resources, run, Process,
  inspect, build, platform, version, Console, stringifyArgs,
  DomIterableMixin }
2019-03-20 12:38:59 -04:00
Ryan Dahl
fa3c35301a
Rename //src/ to //cli/ (#1962)
To better distinguish the deno_core crate from the executable deno,
which will now be called "the cli" internally.
2019-03-19 12:18:05 -04:00
Ryan Dahl
44773c9b0f Integrate //core into existing code base
This disables a few tests which are broken still:
- tests/error_004_missing_module.test
- tests/error_005_missing_dynamic_import.test
- tests/error_006_import_ext_failure.test
- repl_test test_set_timeout
- repl_test test_async_op
- repl_test test_set_timeout_interlaced
- all of permission_prompt_test
2019-03-18 17:17:08 -04:00
Ryan Dahl
bb642e8c7c
Fix TextDecoder for SharedArrayBuffer backed TypedArray (#1940) 2019-03-15 16:29:54 -04:00
Ryan Dahl
58cc69f672 Make timers act like normal ops
This is in preperation for core integration.
2019-03-12 19:25:57 -04:00
Ryan Dahl
ae4405d747
Make some renames in js/build.ts (#1912)
* Replace Deno.OSType enum with Deno.OperatingSystem type alias

* Add arm64 to supported CPU architectures

* add type alias for cpu arch Deno.Arch
2019-03-11 20:34:48 -04:00
Ryan Dahl
8828bb8c0e Rename Deno.build.gnArgs to Deno.build.args 2019-03-11 19:05:51 -04:00
Vincent LE GOFF
830ce93785 Add OSType enum (#1909) 2019-03-11 14:23:11 -04:00
Kitson Kelly
034e2cc028 Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
Kitson Kelly
24d6bf6aeb Remove 'deno' builtin module (#1895) 2019-03-07 21:56:56 -05:00
Ryan Dahl
cd1992aeaa
Upgrade deno_std to 395392 (#1902) 2019-03-07 20:19:39 -05:00
Kitson Kelly
0473d832c1 Cleanup node_modules, update packages (#1894)
And fix new lint issues.
2019-03-07 08:53:56 -05:00
Ryan Dahl
c42a9d7370
Upgrade deno_std (#1892)
A major API change was that asserts are imported from testing/asserts.ts
now rather than testing/mod.ts and assertEqual as renamed to
assertEquals to conform to what is most common in JavaScript.
2019-03-06 20:48:46 -05:00
Kevin (Kun) "Kassimo" Qian
de1a10e5f7 Reorganize version and platform into Deno.build and Deno.version (#1879) 2019-03-06 16:54:58 -05:00
Andy Hayden
91364cabae Replace deno.land/x/std with deno.land/std (#1890) 2019-03-06 10:23:47 -05:00
Simon Menke
77d7ad61f3 Allow inspection and revocation of permissions (#1875) 2019-03-04 11:04:19 -05:00
Bert Belder
2e9d43391f
libdeno: remove prints_newline parameter from libdeno.print() 2019-03-03 19:19:01 -08:00
Yoshiya Hinosawa
a7bb8ccce8 Add Deno.version.gnArgs (#1845)
To display specific build args passed to GN.
2019-03-01 19:33:28 -05:00
Ryan Dahl
b8a537d020
deno_core (#1827)
A new low-level crate with focus on speed. 
This doesn't yet hook into the existing code base.
2019-02-26 17:36:05 -05:00
Bartek Iwańczuk
5dfbbbb07a Add import.meta.main (#1835) 2019-02-26 13:29:45 -05:00
Kevin (Kun) "Kassimo" Qian
c66d043ac6 Fix console.table display of Map and move tests to unit test (#1839) 2019-02-25 19:11:54 -05:00
Ryan Dahl
ce5d5c5133
Upgrade deno_std (#1833) 2019-02-25 19:03:49 -05:00
Ryan Dahl
99d3483291 Fix copyright header (#1832) 2019-02-25 15:28:22 -08:00
Bartek Iwańczuk
9d025facaa manual: add Deno.run example (#1811) 2019-02-21 15:52:35 -05:00
Yoshiya Hinosawa
c4e3728575 remove global_eval.ts (#1813) 2019-02-19 21:42:19 -05:00
Ryan Dahl
42408febe8 Add window.location 2019-02-18 23:04:59 -05:00
Yoshiya Hinosawa
55edc06218 Add back typescript version number and add Deno.version object. (#1788) 2019-02-18 18:43:02 -05:00
Kevin (Kun) "Kassimo" Qian
077af20ceb Add seek and implement Seeker on File (#1797)
This patch contains a special hack that circumvents the current tokio
seek problem.

tokio `seek` is implemented to take ownership of the original File and
emit a new one in its future, which conflicts with the design of
ResourceTable.

To avoid the problem, the current hack makes the FsFile resource
an Option which we could `take` the value ownership out of it. We then
convert the tokio File into a Rust std File, perform the seek, and then
put it back into the resource.

This might be able to drop this hack after
https://github.com/tokio-rs/tokio/pull/785 lands.
2019-02-18 18:26:41 -05:00
Kitson Kelly
54094c7510 Rationalise compiler ops (#1740) 2019-02-18 10:42:15 -05:00
Yoshiya Hinosawa
9e942f30b9 refactor: replace any in console (#1804) 2019-02-18 10:31:35 -05:00
Yoshiya Hinosawa
9fb9048c73 remove dead code (#1796) 2019-02-16 20:07:44 -05:00
Dmitry Sharshakov
4dc4329e27 Add execPath function (#1743) 2019-02-15 11:22:02 -05:00
Kevin (Kun) "Kassimo" Qian
fe0ceae543 Fix behavior for extensionless files with .mime file (#1779) 2019-02-15 11:05:29 -05:00
Yoshiya Hinosawa
2241049c34 feat: env option in run api (#1773) 2019-02-15 10:37:04 -05:00
Kitson Kelly
c468be64ed Cleanup Deno namespace (#1765) 2019-02-13 08:50:15 -05:00
Ryan Dahl
0b0d962eb9
Revert "Rewrite tools/format.py in deno (#1528)" (#1752)
tools/format.ts is making CI flaky and it's difficult to run right now.
Reverting to tools/format.py

This reverts commit f19622e768.
2019-02-12 15:20:32 -05:00
Kitson Kelly
a21a5ad2fa Add Deno global namespace (#1748)
Resolves #1705

This PR adds the Deno APIs as a global namespace named `Deno`. For backwards
compatibility, the ability to `import * from "deno"` is preserved. I have tried
to convert every test and internal code the references the module to use the
namespace instead, but because I didn't break compatibility I am not sure.

On the REPL, `deno` no longer exists, replaced only with `Deno` to align with
the regular runtime.

The runtime type library includes both the namespace and module. This means it
duplicates the whole type information. When we remove the functionality from the
runtime, it will be a one line change to the library generator to remove the
module definition from the type library.

I marked a `TODO` in a couple places where to remove the `"deno"` module, but
there are additional places I know I didn't mark.
2019-02-12 10:08:56 -05:00
Kevin (Kun) "Kassimo" Qian
1e5e091cb0 Fix REPL formatting (#1744) 2019-02-11 18:06:22 -05:00
Kevin (Kun) "Kassimo" Qian
489c69f8e1 REPL multiline support with recoverable errors (#1731) 2019-02-11 14:01:28 -05:00
Yoshiya Hinosawa
d26655371b fix: improve formatting (#1732) 2019-02-11 12:57:26 -05:00
Kitson Kelly
90c7af27d7 Rationalise startup for compiler/main (#1737) 2019-02-10 20:07:02 -05:00
Bartek Iwańczuk
1e837f3281 Respect NO_COLOR in TypeScript output (#1736) 2019-02-10 18:19:31 -05:00
Bartek Iwańczuk
fe8c5d358b Set globals on compiler startup (#1735) 2019-02-10 18:18:36 -05:00
Kevin (Kun) "Kassimo" Qian
1d36eb47eb Support scoped variables, unblock REPL async op, and REPL error colors (#1721) 2019-02-09 16:55:40 -05:00
Ryan Dahl
526497bc29
Adds deno.noColor (#1716) 2019-02-08 22:13:04 -05:00
Dmitry Sharshakov
9ab03389f0 Add --allow-read (#1689)
Co-authored-by: Greg Altman <g.s.altman@gmail.com>
2019-02-08 15:59:38 -05:00
JaePil Jung
ffe8f73d34 Add missing run permission in test function (#1697) 2019-02-06 09:21:26 -05:00
JaePil Jung
ed6aec9bf0 Fixed test code (#1688) 2019-02-05 11:20:17 -05:00
Kitson Kelly
48fedee34e Add WebAssembly to runtime library (#1677)
This also modifies the `ts_library_builder` to support inlining assets.

Includes integration tests from @sh7dm
2019-02-05 08:12:58 -05:00
Dmitry Sharshakov
181b03273c Add isTTY function (#1622) 2019-02-02 22:05:30 -05:00
Kitson Kelly
efa1eeb8b3 Compiler cleanups and minor improvements (#1656) 2019-02-02 18:27:53 -05:00
Ryan Dahl
f84da880bb Upgrade deno_std for std/prettier/main.ts 2019-02-02 17:48:43 -05:00
Kevin (Kun) "Kassimo" Qian
0b082c4361 Clarify writeFile options and avoid unexpected perm modification (#1643) 2019-02-02 14:26:18 -05:00
Dmitry Sharshakov
16ed1f2545 Add performance.now (#1633) 2019-02-02 01:27:42 -05:00
Ryan Dahl
eff7a1484e
Upgrade deno_std to bef7ba (#1609) 2019-01-31 18:11:37 -05:00
Masashi Hirano
02b9046a0e Fix example code of writeFile (#1626)
According to spec, `TextEncoder()` takes no parameters. However `TextEncoder("utf-8")` is written in example codes.

Spec of TextEncoder: https://www.w3.org/TR/encoding/#interface-textencoder
MDN: https://developer.mozilla.org/ja/docs/Web/API/TextEncoder/TextEncoder#Parameters
2019-01-30 10:44:40 -05:00
Sergey Golovin
240ca25617 Add repl functions "help" and "exit" (#1563) 2019-01-29 14:41:12 -05:00
bdistin
457e65bc2f docs/typo: readerIterator -> toAsyncIterator as exported (#1620) 2019-01-29 13:24:40 -05:00
Kitson Kelly
ee9c627cc5 Split out compiler snapshot (#1566)
Speeds up startup time, reduces runtime heap size.
2019-01-28 20:41:28 -05:00
Jan Lo
f7c0f49443 Combine deno.removeAll into deno.remove (#1596) 2019-01-28 17:54:52 -05:00
Sergey Golovin
f05fd7a1f3 Add console.table (#1608) 2019-01-28 16:41:29 -05:00
bokuweb
aaaa35548e timers: use int instead of double for timeout type (#1469) 2019-01-26 22:10:38 +01:00
binaryta
4a0a47dcde Add console.clear() (#1562) 2019-01-24 13:24:39 -05:00
迷渡
6904628aaa console output with format (#1565) 2019-01-24 12:07:08 -05:00
jingweicai
2547f0296f fix: set env,key for string and value for string (#1567) 2019-01-23 20:29:18 -05:00
thefliik
41cf82870b Minor optimization to repl.ts (#1561) 2019-01-23 20:23:25 -05:00
Adam Conrad
e470f31d32 Web API: CustomEvent (#1505) 2019-01-23 06:20:53 -06:00
Yoshiya Hinosawa
77114fbda4 chore: update license lines (#1557) 2019-01-21 13:03:30 -06:00
Ryan Dahl
7eb74ba0d6 Revert "Use the same parse processing at contractor of URL with setters (#1549)"
Right now every instance of URL which has a basePath passed will share
the same instance of parts, so a change to one of them will change them
all.

https://github.com/denoland/deno/pull/1549#issuecomment-455896081

This reverts commit 9e1f5ccb8b.
2019-01-21 08:28:13 -06:00
Daijiro Wachi
9e1f5ccb8b Use the same parse processing at contractor of URL with setters (#1549) 2019-01-20 09:24:29 -06:00
Ryan Dahl
315e4abd7e
mkdir should not be recursive by default (#1530)
It should return an error if a file with the given path exists and
recursive isn't specified.

Because mode is not used on windows and rarely used in unix, it is made
to the last parameter.

In collaboration with Stefan Dombrowski <sdo451@gmail.com>
2019-01-17 23:39:06 -05:00
Kevin (Kun) "Kassimo" Qian
d06c95637a Unflake test netConcurrentAccept (#1544) 2019-01-17 18:10:34 -05:00
Ryan Dahl
d787713908 Revert "fix: fix fetch tests (#1535)"
This reverts commit dd08165528.

These tests are still flaky:
https://travis-ci.com/denoland/deno/jobs/171240240
https://travis-ci.com/denoland/deno/jobs/170775382
2019-01-17 17:33:50 -05:00
Yoshiya Hinosawa
f19622e768 Rewrite tools/format.py in deno (#1528)
Note: findFiles and findFilesWalk are borrowed from the previous
attempt of @pseudo-su (#1434)
2019-01-17 15:09:44 -05:00
Kitson Kelly
00b655add1 Add globalThis definition to runtime (#1534) 2019-01-16 17:57:15 -05:00
Yoshiya Hinosawa
dd08165528 fix: fix fetch tests (#1535) 2019-01-16 01:18:01 -05:00
Kevin (Kun) "Kassimo" Qian
431e455642 Kill all pending accepts when TCP listener is closed (#1517) 2019-01-15 20:36:51 -05:00
Kitson Kelly
7d08db2191 Fix JSON Modules (#1514) 2019-01-14 00:18:42 -05:00
Kitson Kelly
de9c67a702 Cleanup compiler and re-enable tests (#1512) 2019-01-13 23:44:11 -05:00
Ryan Dahl
3c1a0ad19e
Properly parse network addresses. (#1515) 2019-01-13 22:14:59 -05:00
Joshua Flancer
fda604ff05 Added rid to Conn interface (#1513) 2019-01-13 19:54:30 -05:00
Yoshiya Hinosawa
3b59323e42 chore: re-enable test of website (#1508) 2019-01-13 10:42:08 -05:00
JaePil Jung
02792d58d4 Remove unnecessary async keyword in test file (#1507) 2019-01-13 09:39:23 -05:00
JaePil Jung
6c9695a528 Remove unused imports (#1503) 2019-01-12 09:16:18 -05:00
Ryan Dahl
cca3a9562b
Re-enable --recompile (#1492) 2019-01-09 20:52:13 -05:00
Ryan Dahl
26bc251c58 Upgrade deno_std submodule. 2019-01-10 02:45:18 +01:00
Ryan Dahl
0ceb554343
Native ES modules (#1460)
* Native ES modules

This is a major refactor of internal compiler.

Before: JS and TS both were sent through the typescript compiler where
their imports were parsed and handled. Both compiled to AMD JS and
finally sent to V8

Now: JS is sent directly into V8. TS is sent through the typescript
compiler, but tsc generates ES modules now instead of AMD. This
generated JS is then dumped into V8.

This should much faster for pure JS code. It may improve TS compilation
speed.

In the future this allows us to separate TS out of the runtime heap and
into its own dedicated snapshot. This will result in a smaller runtime
heap, and thus should be faster.

Some tests were unfortunately disabled to ease landing this patch:
1. compiler_tests.ts which I intend to bring back in later commits.
2. Some text_encoding_test.ts tests which made the file invalid utf8.
   See PR for a discussion.
Also worth noting that this is necessary to support WASM
2019-01-09 12:59:46 -05:00