1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-01 09:24:20 -04:00
Commit graph

560 commits

Author SHA1 Message Date
Bartek Iwańczuk
137f33733d port more ops to JSON (#2809) 2019-08-24 08:31:14 -07:00
Bartek Iwańczuk
79f82cf10e port ops to JSON: compiler, errors, fetch, files (#2804) 2019-08-24 06:02:42 -07:00
Ryan Dahl
5b2baa5c99
Port rest of os ops to JSON (#2802) 2019-08-24 05:13:50 -07:00
Ryan Dahl
bc467b265f
introduce JSON serialization for ops (#2799)
Converts env(), exit(), execPath(), utime() and utimeSync() to use JSON
instead of flatbuffers.
2019-08-22 22:30:14 -07:00
Kitson Kelly
6c7d337960 Support .d.ts files (#2746)
Fixes #1432
2019-08-22 12:05:01 -04:00
Ryan Dahl
bdc97b3976
Organize dispatch a bit (#2796)
Just some clean up reorganization around flatbuffer/minimal dispatch
code. This is prep for adding a JSON dispatcher.
2019-08-21 20:42:48 -04:00
Kitson Kelly
f0a235563e Support custom inspection of objects (#2791) 2019-08-19 11:35:43 -04:00
Kevin (Kun) "Kassimo" Qian
9acb17742f Implement console.trace() (#2780)
groupCollapsed alias to group, remove noTrailingNewline, move newline 
out of stringifyArgs, fix console.dir, add tests, and fix a repl log quirk.
For repl logging quirks, I believe we should not indent repl logging. If
we really want such indentation, we probably also want to indent "> "
prompts.
2019-08-17 12:51:51 -04:00
Yoshiya Hinosawa
9aa9aafbab fix: set response.url (#2782) 2019-08-16 18:20:04 -04:00
Ryan Dahl
81f809f2a6 Revert "Remove dead code: legacy read/write ops"
This is causing a segfault for unknown reasons - see #2787.

This reverts commit 498f6ad431.
2019-08-16 14:41:08 -04:00
Ryan Dahl
498f6ad431
Remove dead code: legacy read/write ops (#2776)
readSync and writeSync use dispatch_minimal now.
2019-08-14 19:54:35 -04:00
Nayeem Rahman
1947f572d7 Fix permission requirements for Deno.rename() and Deno.link() (#2737) 2019-08-13 09:39:01 -04:00
Ryan Dahl
e438ac2c74
Add op_id throughout op API (#2734)
Removes the magic number hack to switch between flatbuffers and the
minimal dispatcher.

Adds machinery to pass the op_id through the shared_queue.
2019-08-07 14:02:29 -04:00
Kevin (Kun) "Kassimo" Qian
77d0d1e45c Fix small execPath issues (#2744) 2019-08-06 20:32:25 -04:00
Kevin (Kun) "Kassimo" Qian
4519f9a50d Make Deno.execPath a function (#2743)
And throws without allow-env
2019-08-06 17:05:47 -04:00
Kevin (Kun) "Kassimo" Qian
ccee2f01ba Implement Blob url support for worker (#2729) 2019-08-06 09:22:11 -04:00
Nayeem Rahman
11c850af42 Enforce permissions on kill(), homeDir() and execPath (#2723) 2019-08-06 01:45:36 -04:00
Ryan Dahl
a517513182
Remove Deno.build.args feature (#2728)
This is a minor feature which complicates the build signifigantly.
Removing to ease refactoring the build system:
https://github.com/denoland/deno/issues/2608
2019-08-05 18:00:45 -04:00
Kevin (Kun) "Kassimo" Qian
ddee2dff14 Provide option to delete Deno namespace in worker (#2717) 2019-08-05 07:23:41 -04:00
Kevin (Kun) "Kassimo" Qian
52c13fb3ed Enforce env permission on homeDir() and execPath (#2714) 2019-08-03 21:34:13 -04:00
Tomohito Nakayama
deec1b9b97 Implement function convertLineEndingsToNative in blob.ts (#2695)
based on https://w3c.github.io/FileAPI/#convert-line-endings-to-native
2019-08-01 10:04:39 -04:00
Bartek Iwańczuk
2e1ab82321 refactor: cleanup compiler pipeline (#2686)
* remove fetch_source_file_and_maybe_compile_async and 
  replace it with State.fetch_compiled_module

* remove SourceFile.js_source()

* introduce CompiledModule which is basically the same as
  deno::SourceInfo and represents arbitrary file that has been 
  compiled to JS module

* introduce //cli/compilers module containing all compilers

* introduce JsCompiler which is a no-op compiler
  - output is the same as input, no compilation takes place
  - it is used for MediaType::JavaScript and MediaType::Unknown

* introduce JsonCompiler that wraps JSON in default export

* support JS-to-JS compilation using checkJs
2019-07-31 13:16:03 -04:00
Nayeem Rahman
ef63ec763a Makes shebang Linux compatible (#2694) 2019-07-31 11:13:05 +00:00
Kitson Kelly
5083f5fd90 Remap stack traces of unthrown errors. (#2693) 2019-07-29 09:11:08 +00:00
Kevin (Kun) "Kassimo" Qian
e49d1e16ca feat: expose writeAll() and writeAllSync() (#2298)
Symmetric with `readAll()` and `readAllSync()`. Also used in `xeval`.
Also correct usage in `writeFile()`/`writeFileSync()`.
2019-07-23 11:16:39 -04:00
迷渡
ac98bd8a7c fix timer's params length (#2655) 2019-07-18 06:09:32 -04:00
Bartek Iwańczuk
8214b686ce Refactor DenoDir (#2636)
* rename `ModuleMetaData` to `SourceFile` and remove TS specific
  functionality

* add `TsCompiler` struct encapsulating processing of TypeScript files

* move `SourceMapGetter` trait implementation to `//cli/compiler.rs`

* add low-level `DiskCache` API for general purpose caches and use it in
  `DenoDir` and `TsCompiler` for filesystem access

* don't use hash-like filenames for compiled modules, instead use
  metadata file for storing compilation hash

* add `SourceFileCache` for in-process caching of loaded files for fast
  subsequent access

* define `SourceFileFetcher` trait encapsulating loading of local and
  remote files and implement it for `DenoDir`

* define `use_cache` and `no_fetch` flags on `DenoDir` instead of using
  in fetch methods
2019-07-17 18:15:30 -04:00
迷渡
181cfc9fb5 Adjust console constructor (#2649)
https://github.com/denoland/deno/pull/2073#discussion_r303401539
2019-07-17 09:42:04 -04:00
Yoshiya Hinosawa
9c45499864 Support window.onload (#2643) 2019-07-16 00:19:26 -04:00
Yoshiya Hinosawa
a948f9ff54 io: change Reader interface (#2591)
Instead of returning { nread: number, eof: bool }, read() returns EOF | number.
2019-07-06 10:16:03 -04:00
Evgeniy Karagodin
d089f97978 Add homeDir to Deno namespace (#2578) 2019-06-25 09:05:41 -07:00
Ryan Dahl
d1482c6b8a
Upgrade deno_std (#2565) 2019-06-24 12:41:50 -07:00
Long(Tony) Lian
1d0d54247c feat: fetch() now handles redirects (#2561) 2019-06-24 06:34:09 -07:00
Yoshiya Hinosawa
988bcbb884 fetch: make body async iterable (#2563) 2019-06-22 07:22:27 -07:00
Bartek Iwańczuk
642eaf97c6 feat: redirect process stdio to file (#2554) 2019-06-21 16:00:14 -07:00
andy finch
eb93dc58a1 add encodeInto to TextEncoder (#2558) 2019-06-21 15:32:14 -07:00
迷渡
6a5177dc11 event isTrusted is enumerable (#2543) 2019-06-20 05:21:43 -07:00
迷渡
d5e80ad677 fix clearTimeout.name / clearInterval.name (#2540) 2019-06-18 06:24:20 -07:00
andy finch
76d51b0f9a refactor dispatch take 2 (#2533) 2019-06-17 18:02:08 -07:00
迷渡
9ad5b0653e clearTimeout should convert to number (#2539) 2019-06-17 10:42:20 -07:00
迷渡
a953190742 fix urlSearchParams custom symbol iterator (#2537) 2019-06-17 08:39:23 -07:00
Ryan Dahl
1361e30223 Revert "Refactor dispatch handling (#2452)"
Due to performance regression:
dc60fe9f30 (commitcomment-33943711)

This reverts commit dc60fe9f30.
2019-06-14 13:56:36 -07:00
迷渡
52448f351d feat: URLSearchParams should work with custom iterator (#2512) 2019-06-14 08:46:07 -07:00
andy finch
dc60fe9f30 Refactor dispatch handling (#2452)
Promise id is now created in core and passed back to JS.
2019-06-13 20:43:54 -07:00
Bartek Iwańczuk
fdd2eb5383 expose window.Response (#2515) 2019-06-13 19:53:30 -07:00
迷渡
42d1024cd9 forbidden to set this for setTimeout (#2511) 2019-06-13 08:08:27 -07:00
Kurt Mackey
7bdeee8997 makes global request type an interface (#2503) 2019-06-11 21:32:49 -04:00
Ryan Dahl
912e4f7177
feat: default output filename for deno bundle (#2484)
And improve bundle docs
2019-06-11 14:38:19 -04:00
justjavac
cb58162052 set setTimeout callback's this to window object 2019-06-11 10:09:33 -04:00
迷渡
0efb7c2ab7 fix bug in URL (#2495) 2019-06-10 23:55:38 -04:00
迷渡
5871d22d9b check URLSearchParams.constructor's params (#2488) 2019-06-10 07:20:59 -04:00
Ryan Dahl
8ec5276d30
Add asserts checking that async ops return null (#2463) 2019-06-08 18:11:47 -04:00
Kitson Kelly
307e092753 Add 'bundle' subcommand. (#2467) 2019-06-08 14:42:28 -04:00
Kitson Kelly
a71305b4fe Handle compiler diagnostics in Rust (#2445) 2019-06-04 09:03:56 -04:00
Ryan Dahl
60d4522641
Compiler exit before emit if preEmitDiagnostics found (#2441) 2019-06-03 12:58:49 -04:00
Kitson Kelly
d438a6d259 Upgrade TypeScript to 3.5.1 (#2437) 2019-06-01 11:13:36 -04:00
Kurt Mackey
652be19041 use body when Request instance is passed to fetch (fixes #2433) (#2435) 2019-05-31 17:00:37 -04:00
Ryan Dahl
856c44213b TS compiler refactor
* Compiler no longer has its own Tokio runtime. Compiler handles one
  message and then exits.

* Uses the simpler ts.CompilerHost interface instead of
  ts.LanguageServiceHost.

* avoids recompiling the same module by introducing a hacky but simple
  `hashset<string>` that stores the module names that have been already
  compiled.

* Removes the CompilerConfig op.

* Removes a lot of the mocking stuff in compiler.ts like `this._ts`. It
  is not useful as we don't even have tests.

* Turns off checkJs because it causes fmt_test to die with OOM.
2019-05-29 07:53:39 -04:00
Adam Conrad
9fd4096235 add EventTarget implementation (#2377) 2019-05-27 09:20:34 -04:00
Ryan Dahl
583a646be7
Fix concurrent accepts (#2403) 2019-05-23 21:22:52 +03:00
Ryan Dahl
2952fb5405
Rename --allow-high-precision to --allow-hrtime (#2398) 2019-05-23 19:28:29 +03:00
Ryan Dahl
4a52fd7b61 Upgrade deno_std (#2378) 2019-05-20 10:42:41 -07:00
chiefbiiko
00f6fa46b3 Add crypto.getRandomValues() (#2327) 2019-05-17 14:03:01 -04:00
JaePil Jung
c3a30dd3c3 Delete unnecessary console.log in test code (#2368) 2019-05-17 02:49:20 -04:00
Ryan Dahl
e02d8bcf18 Remove FileInfo.path 2019-05-15 21:14:17 -04:00
Ryan Dahl
7d25c559fc Upgrade deno_std 2019-05-15 21:14:17 -04:00
diskkid
2508480465 Add error handling to dispatch_minimal::ops::read/write (#2349) 2019-05-15 14:50:54 -04:00
Ryan Dahl
aba952397a
Add progress bar (#2309) 2019-05-11 10:23:19 -04:00
Bartek Iwańczuk
2c6b93e0a0 fix: edge case in toAsyncIterator (#2335) 2019-05-11 10:05:56 -04:00
andy finch
2edee3367d First pass at permissions whitelist (#2129) 2019-05-08 19:20:30 -04:00
Bartek Iwańczuk
ac8c6fec5b Refactor unit test runner (#2294)
Properly discovers the permissions needed for each test.
2019-05-08 19:15:24 -04:00
Yingbo (Max) Wang
ec9080f34c Add Deno.chown (#2292) 2019-05-07 21:58:57 -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
6929aba71d fix: display "-0" for -0 (#2281)
Added special handling code in js/console.ts
2019-05-03 14:01:20 -04:00
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