1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-29 02:29:06 -05:00
Commit graph

1296 commits

Author SHA1 Message Date
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
Ryan Dahl
3afdae165d
Add --allow-all flag (#1482) 2019-01-09 11:59:54 -05:00
Ryan Dahl
6f79ad721a
Minimal Worker support (#1476)
This adds the ability to spawn additional Isolates from Rust and send
and receive messages from them. This is preliminary work to support
running the typescript compiler in a separate isolate and thus support
native ES modules. Ref #975.
2019-01-08 14:44:06 -05:00
Ryan Dahl
9ff6bca863
Isolate::execute_mod wrap filename in CString (#1479)
When we called js_filename.as_ptr() without using CString it wasn't
necessarally null terminated, which was creating spurious failures.
2019-01-08 14:42:53 -05:00
Kevin (Kun) "Kassimo" Qian
2558d6e184 Use multimap with Persistent module handle to avoid IdentityHash collision (#1466) 2019-01-07 21:18:32 -05:00
Ryan Dahl
404e6f8634 v0.2.6 2019-01-07 17:33:06 -05:00
Ryan Dahl
bc2c808da1
Upgrade crates (#1471) 2019-01-07 10:36:08 -05:00
Yoshiya Hinosawa
cae71ed841 Implement console.groupCollapsed (#1452)
This implementation of groupCollapsed is intentionally different
from the spec defined by whatwg. See the conversation in #1355
and #1363.
2019-01-06 16:34:52 -05:00
Ryan Dahl
1b7938e3aa
Add libdeno.builtinModules (#1463)
This is needed to support builtin modules like

    import { open } from "deno"
2019-01-06 16:32:21 -05:00
Ryan Dahl
f37d67e809
Revert "Split Runner from Compiler" (#1462)
This reverts commit 3d03f5b0cb.
2019-01-06 14:17:13 -05:00
Ryan Dahl
57301909cd
Add deno.pid (#1464) 2019-01-06 14:16:42 -05:00
Mark Tiedemann
028d8e4d90 Add Scoop installation command to README.md (#1467) 2019-01-05 16:11:57 -05:00
Mark Tiedemann
c3b612ac21 Add Scoop installation command to Docs.md (#1468) 2019-01-05 16:11:04 -05:00
Adam Conrad
f44322128b Add Event web API (#1059) 2019-01-05 10:02:44 -05:00
木杉
ad01085406 docs: update testing module url (#1459) 2019-01-04 05:11:58 -05:00
Ryan Dahl
ea6c9f2f36
Revert "use byte array instead of string for code fetch (#1307)" (#1455)
This reverts commit e976b3e041.

There is nothing technically wrong with this commit, but it's adding
complexity to a big refactor (native ES modules #975). Since it's not
necessary and simply a philosophical preference, I will revert for now
and try to bring it back later.
2019-01-03 22:11:01 -05:00
Satya Rohith
6be1164d89 Remove assertion for empty modules (#1450) 2019-01-03 22:09:07 -05:00
Ryan Dahl
4f62a56f90
Move testing module to deno_std (#1451)
Upgrades deno_std submodule.
2019-01-03 14:55:22 -05:00
Ryan Dahl
a8d326b431
resolve_module: handle "." and ".." referrers (#1454) 2019-01-03 12:51:56 -05:00
Ryan Dahl
e809673cec AppVeyor: Disable DENO_BUILD_PATH cache.
Seems to be necessary to get the previous commits to compile correctly.
2019-01-03 09:45:40 -05:00
Ryan Dahl
7024d9f253 Add rust binding and test for deno_execute_mod() 2019-01-03 09:45:40 -05:00
Ryan Dahl
bba0ed3185 Add ESM support to libdeno
Introduces deno_execute_mod() for executing ES modules.
2019-01-03 09:45:40 -05:00
Ryan Dahl
cbb18a596a Properly internalize V8 strings. 2019-01-03 09:45:40 -05:00
Ryan Dahl
d2b85d4904 Use camel-case for libdeno::deno_recv_cb
For better greppability and conformance with other symbols in libdeno.rs
2019-01-03 09:45:40 -05:00
Ryan Dahl
a7271b7fe5 ci: use RUST_BACKTRACE=full 2019-01-03 09:45:40 -05:00
Ryan Dahl
66a603cb73 travis: remove -j2 flags 2019-01-03 09:45:40 -05:00
Kevin (Kun) "Kassimo" Qian
8d452d74fa Support more fetch init body types (#1449) 2019-01-03 06:41:20 -05:00
Ryan Dahl
5b9c488921 Fix test js_error_apply_source_map_2
If the project is checked out into a directory not called "deno" this
test fails.
2019-01-03 05:41:51 -05:00
Kevin (Kun) "Kassimo" Qian
76de81358e Add -glldb to clang flags for libdeno (#1446) 2019-01-02 21:05:47 -05:00
bokuweb
0834478154 fix: use unknown instead of any in testing 2019-01-02 20:22:44 -05:00
Ryan Dahl
2c477dd7cb Happy new year! 2019-01-02 02:37:08 +01:00
Ryan Dahl
320577c131 v0.2.5 2019-01-01 14:30:23 -05:00
Ryan Dahl
68e009d1d8 Upgrade deno_std 2018-12-31 19:38:52 +00:00
Ryan Dahl
2c0cf1bdf7 Add CI badges to website 2018-12-31 19:38:27 +00:00
迷渡
ef840f9e06 print string with NULL '\0' (#1428) 2018-12-30 20:58:23 +01:00
迷渡
48e29c3c86 make Headers follow spec (#1427) 2018-12-29 12:30:11 +00:00
Kevin (Kun) "Kassimo" Qian
73fb98ce70 Lazily create .mime files only with mismatch/no extension (#1417) 2018-12-27 20:40:06 +00:00
Yoshihisa Mochihara
3d9f46a6cf Rename file.ts to dom_file.ts (#1423) 2018-12-27 09:45:58 +00:00
迷渡
5e518b7417 check runtime FormData and Headers params (#1415) 2018-12-27 02:12:55 +00:00
Yoshiya Hinosawa
9bfe9a005b fix(test): fix test of unbuffered_stderr 2018-12-27 02:09:49 +00:00
Ryan Dahl
531619305b travis: set -e 2018-12-24 11:31:17 -05:00
Ryan Dahl
6c2d36cd51 travis: Work around clang_format error 2018-12-24 11:31:17 -05:00
Ryan Dahl
32e1641628 deno_net -> deno_std rename
Also don't format external js/deps
2018-12-24 11:31:17 -05:00
迷渡
c002ea10fa fix FormData.name (#1412) 2018-12-24 11:18:01 -05:00
Ryan Dahl
c6e2fffc13 v0.2.4
- "cargo build" support (#1369 #1296 #1377 #1379)
- Remove support for extensionless import (#1396)
- Upgrade V8 to 7.2.502.16 (#1403)
- make stdout unbuffered (#1355)
- Implement `Body.formData` for fetch (#1393)
- Improve handling of non-coercable objects in assertEqual (#1385)
- Avoid fetch segfault on empty Uri (#1394)
- Expose deno.inspect (#1378)
- Add illegal header name and value guards (#1375)
- Fix URLSearchParams set() and constructor() (#1368)
- Remove prebuilt v8 support (#1369)
- Enable jumbo build in release. (#1362)
- Add URL implementation (#1359)
- Add console.count and console.time (#1358)
- runtime arg check `URLSearchParams` (#1390)
2018-12-23 23:39:11 -05:00
迷渡
7d0e1050d3 runtime arg check URLSearchParams (#1390) 2018-12-23 23:07:58 -05:00
Ryan Dahl
9909e8a759
Upgrade V8 to 7.2.502.16 (#1403) 2018-12-23 17:08:08 -05:00
Ryan Dahl
f8473bf22f
Add Releases.md file (#1402) 2018-12-23 16:40:13 -05:00
Ryan Dahl
218735c7cc libdeno: Remove unused members of DenoIsolate 2018-12-23 14:43:15 -05:00
Ryan Dahl
63d558da0c
Use flatbuffers from crates.io (#1400) 2018-12-23 12:39:40 -05:00