Bartek Iwańczuk
1fc61f3b6a
core: Privatize ModuleNameMap SymbolicModule deno_buf ( #2324 )
2019-05-09 16:44:30 -04:00
Kevin (Kun) "Kassimo" Qian
d9cdc6788b
fix: support relative path for whitelisting ( #2317 )
...
Using `std::fs::canonicalize` to expand path to full existing path, such that
later attempt to loop-pop and compare path segment would work.
2019-05-09 12:20:34 -04:00
andy finch
2edee3367d
First pass at permissions whitelist ( #2129 )
2019-05-08 19:20:30 -04:00
Yingbo (Max) Wang
ec9080f34c
Add Deno.chown ( #2292 )
2019-05-07 21:58:57 -04:00
Bartek Iwańczuk
1f7ad17152
fix: Add all permissions to deno xeval ( #2290 )
2019-05-06 10:48:19 -04:00
Ryan Dahl
2aae09c2b8
v0.4.0
2019-05-03 19:33:50 -04:00
Bartek Iwańczuk
5824e55efa
fix: deno version panic ( #2286 )
2019-05-03 18:48:50 -04:00
Ryan Dahl
3b1e2f1ad4
v0.3.11
2019-05-03 18:05:41 -04:00
Bartek Iwańczuk
f6a9d7d717
add "deno run" subcommand ( #2215 )
2019-05-03 17:15:16 -04:00
Kevin (Kun) "Kassimo" Qian
3608117132
feat(cli cmd): deno xeval ( #2260 )
2019-05-03 16:24:09 -04:00
Kevin (Kun) "Kassimo" Qian
401a5c0211
feat: support .mjs extension resolution ( #2283 )
...
Removed `extmap` and added .mjs entry in `map_file_extension`.
The assert in the compiler does not need to be updated, since it is
resolving from the compiled cache instead of elsewhere (notice the .map
is asserted next to it)
2019-05-03 15:03:10 -04:00
Bartek Iwańczuk
459162fc6e
add --no-fetch CLI flag to prevent remote downloads ( #2213 )
2019-05-03 11:09:51 -04:00
Bartek Iwańczuk
bf9b0c8231
Fix: deno --v8-options does not print v8 options ( #2277 )
2019-05-03 08:59:52 -04:00
Ryan Dahl
00ac871607
Optimize read and write ops ( #2259 )
2019-05-03 00:06:43 -04:00
Bert Belder
8999517421
core,cli: fix clippy warnings
2019-05-03 03:29:42 +02:00
Kurt Mackey
c05cbc8eac
Add Request global constructor ( #2253 )
2019-05-01 23:56:42 -04:00
Kevin (Kun) "Kassimo" Qian
1dd30f658f
doc: add long about messages for subcommands ( #2264 )
...
Type deno <subcommand> -h to view descriptions.
2019-05-01 19:15:36 -04:00
Ryan Dahl
c171813e89
core: express op as enum ( #2255 )
2019-05-01 18:22:32 -04:00
Bert Belder
41c7e96f1a
Refactor zero-copy buffers for performance and to prevent memory leaks
...
* In order to prevent ArrayBuffers from getting garbage collected by V8,
we used to store a v8::Persistent<ArrayBuffer> in a map. This patch
introduces a custom ArrayBuffer allocator which doesn't use Persistent
handles, but instead stores a pointer to the actual ArrayBuffer data
alongside with a reference count. Since creating Persistent handles
has quite a bit of overhead, this change significantly increases
performance. Various HTTP server benchmarks report about 5-10% more
requests per second than before.
* Previously the Persistent handle that prevented garbage collection had
to be released manually, and this wasn't always done, which was
causing memory leaks. This has been resolved by introducing a new
`PinnedBuf` type in both Rust and C++ that automatically re-enables
garbage collection when it goes out of scope.
* Zero-copy buffers are now correctly wrapped in an Option if there is a
possibility that they're not present. This clears up a correctness
issue where we were creating zero-length slices from a null pointer,
which is against the rules.
2019-05-01 21:11:09 +02:00
Bartek Iwańczuk
8978870808
Rename test targets ( #2262 )
2019-05-01 09:48:56 -04:00
Kevin (Kun) "Kassimo" Qian
7237e9d34a
fs: add Deno.utime/Deno.utimeSync ( #2241 )
2019-05-01 05:08:11 -04:00
Ryan Dahl
6c137342d7
flags: fix merge error ( #2244 )
2019-04-29 18:35:25 -07:00
Bartek Iwańczuk
636827a1d5
Rewrite flags.rs::parse_flags ( #2237 )
2019-04-29 16:43:06 -07:00
Kitson Kelly
1a0f53a807
Add support for custom tsconfig.json ( #2089 )
...
Use `--config`
2019-04-29 07:58:31 -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
Yusuke Sakurai
972ac03858
recover: #1517 Kill all pending accepts when TCP listener is closed ( #2224 )
2019-04-27 11:33:24 -07:00
Bartek Iwańczuk
02596c08bd
disable --version flag from deno version ( #2226 )
2019-04-27 11:19:50 -07:00
Ryan Dahl
40d8ef1ec9
v0.3.10
2019-04-25 13:59:18 -06:00
Bartek Iwańczuk
aa85a4d288
Rename CLI flags to subcommands ( #2212 )
2019-04-25 12:59:49 -06:00
Ryan Dahl
b426ecce80
compile lib.deno_runtime.d.ts into executable ( #2209 )
2019-04-25 12:27:30 -06:00
Bartek Iwańczuk
b7d8a0c6f6
Rename deno prefetch to deno fetch ( #2210 )
2019-04-25 13:47:33 -04:00
Ryan Dahl
e725b26b28
v0.3.9
2019-04-25 17:44:34 +02:00
Ryan Dahl
d68b44b6b2
core: make Isolate concrete, remove Dispatch trait ( #2183 )
...
Op dispatch is now dynamically dispatched, so slightly less efficient.
The immeasurable perf hit is a reasonable trade for the API simplicity
that is gained here.
2019-04-23 18:58:00 -04:00
Ryan Dahl
675919e915
Use tokio_threadpool's new panic_handler ( #2188 )
2019-04-23 16:27:44 -04:00
Bert Belder
6caf865507
third_party: upgrade rust crates
2019-04-23 18:01:57 +02: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
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
Ryan Dahl
0796a8f2f7
v0.3.8
2019-04-19 11:41:13 -04:00
Ryan Dahl
5e5c8553e7
core: test Modules::deps and handle error cases better ( #2141 )
2019-04-19 11:18:46 -04:00
Kevin (Kun) "Kassimo" Qian
afabb3f833
Fix redirects under async load ( #2133 )
2019-04-18 21:33:50 -04:00
Bert Belder
8477daa8b9
Fix clippy warnings
2019-04-17 15:35:46 +02:00
Bert Belder
90c2b10f47
Add cli dependency on tokio-rustls
2019-04-17 14:02:20 +02:00
Ryan Dahl
1bfb443369
Implement async module loading in CLI ( #2084 )
2019-04-16 15:13:42 -04:00
Bert Belder
97f0fe7437
third_party: upgrade rust crates
2019-04-15 18:56:29 +02:00
Ryan Dahl
c7e1f8fabd
Fix silent error, add custom panic handler ( #2098 )
...
This is to work around Tokio's panic recovery feature.
Ref https://github.com/tokio-rs/tokio/issues/495
Ref https://github.com/tokio-rs/tokio/issues/209
Ref https://github.com/denoland/deno/issues/1311
Fixes #2097
2019-04-14 16:07:24 -04:00
Yoshiya Hinosawa
635ad2a18e
fix absolute path resolution from remote ( #2109 )
2019-04-13 13:27:27 -04:00
Bartek Iwańczuk
591b5e4a7d
Add deno eval subcommand ( #2102 )
2019-04-13 13:24:15 -04:00
andy finch
d3bd5879c3
better wait for removed_from_resource_table_on_close test ( #2104 )
2019-04-12 18:39:31 -04:00
Ryan Dahl
8584d80cfd
v0.3.7
2019-04-11 15:35:21 -04:00
andy finch
960ee5257a
Improve op dispatch ( #2088 )
2019-04-11 10:58:31 -04:00
Bartek Iwańczuk
1034d9723d
fix --v8-options ( #2093 )
2019-04-11 10:20:07 -04:00
Bert Belder
4ffe1612ff
Silence clippy warnings and format source code
2019-04-09 20:05:47 +02:00
Bert Belder
fe2f3ba889
Use correct type for source_bytes
when buiding in check-only mode
2019-04-09 20:05:47 +02:00
Ryan Dahl
d2579f4564
core: Rename Behavior to Dispatch ( #2082 )
...
And rename IsolateState to ThreadSafeState.
Also make ThreadSafeState directly implement Dispatch. This is simpler.
2019-04-09 13:11:25 -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
Ryan Dahl
f7fdb90fd5
core: snapshot improvements ( #2052 )
...
* Moves how snapshots are supplied to the Isolate. Previously they were
given by Behavior::startup_data() but it was only called once at
startup. It makes more sense (and simplifies Behavior) to pass it to the
constructor of Isolate.
* Adds new libdeno type deno_snapshot instead of overloading
deno_buf.
* Adds new libdeno method to delete snapshot deno_snapshot_delete().
* Renames deno_get_snapshot() to deno_snapshot_new().
* Makes StartupData hold references to snapshots. This was implicit when
it previously held a deno_buf but is made explicit now. Note that
include_bytes!() returns a &'static [u8] and we want to avoid
copying that.
2019-04-08 10:12:43 -04:00
Kevin (Kun) "Kassimo" Qian
1746a3ac69
Add link/linkSync fs call for hardlinks ( #2074 )
2019-04-08 09:11:32 -04:00
Bartek Iwańczuk
86aee7f137
Flags clean up: DenoFlags::from ( #2068 )
2019-04-07 14:58:16 -04:00
Bartek Iwańczuk
780e72ab6a
Refactor CLI flag parsing ( #2025 )
2019-04-07 01:13:06 +03:00
andy finch
07f0d077c7
add compile_async ( #2053 )
2019-04-05 00:04:06 -04:00
Ryan Dahl
744e56cb58
v0.3.6
2019-04-04 09:59:41 -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
Bert Belder
5f1e42f8ac
cli: refactor compile_sync() for readability
2019-04-02 18:04:25 +02:00
Bert Belder
b735155712
Clippy fixes
2019-04-02 18:04:25 +02:00
Kevin (Kun) "Kassimo" Qian
534b8d3021
Follow redirect location as new referrers for nested module imports ( #2031 )
...
Fixes #1742
Fixes #2021
2019-04-01 21:46:40 -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
Bert Belder
ff1c80d6d8
third_party: add rust crate 'clap'
2019-03-31 17:55:03 -04:00
Ryan Dahl
e9910d8ae5
Rename crate deno_core to deno ( #2022 )
2019-03-30 19:30:40 -04:00
Ryan Dahl
6744bb8d75
Call ninja directly from build.rs ( #2020 )
2019-03-30 19:27:00 -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
Ryan Dahl
c25e262b04
Merge the --recompile and --reload flags ( #2003 )
2019-03-28 16:05:41 -04:00
Bert Belder
da1b98b690
Clippy fixes ( #2009 )
2019-03-28 08:09:19 -04:00
Bartek Iwańczuk
597ee38ef2
Rewrite readFile and writeFile ( #2000 )
...
Using open/read/write
2019-03-27 23:29:36 -04:00
Ryan Dahl
d0b6152f11
Fix error when JS is executed with --recompile ( #2007 )
...
test case from @afinch7
2019-03-27 16:10:31 -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
Ryan Dahl
d8714281b4
Resolve callback moved from Behavior to mod_instantiate() ( #1999 )
...
This simplifies the Behavior trait and makes it more explicit where the
resolve callback is being made.
Also s/StartupScript/Script
2019-03-25 17:43:31 -04:00
andy finch
1499d57490
Remove dead code ( #1983 )
2019-03-21 15:52:30 -04:00
Ryan Dahl
94405bb617
Fix clippy errors and upgrade Rust to 1.33.0 in CI ( #1945 )
2019-03-20 18:55:52 -04:00
Ryan Dahl
4c831f1eb5
Add more async module loading function ( #1974 )
...
* get_source_code_async
* fetch_module_meta_data_async
* fetch_module_meta_data_and_maybe_compile_async
2019-03-20 11:38:43 -04:00
andy finch
48bf419669
Separate behavior for the compiler isolate ( #1973 )
2019-03-19 20:55:59 -04:00
andy finch
6131152a57
Remove old Buf definition in cli.rs ( #1971 )
2019-03-19 16:47:35 -04:00
Ryan Dahl
fb2c0c29ec
Add fetch_remote_source_async ( #1972 )
2019-03-19 16:45:39 -04:00
Ryan Dahl
5e4312de4d
Move fetch_remote_source, fetch_local_source
...
They do not depend on DenoDir, so should not be methods of it.
2019-03-19 14:50:41 -04:00
Ryan Dahl
2c5030000b
Add async version of http_util::fetch_sync_string
2019-03-19 14:50:41 -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