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

470 commits

Author SHA1 Message Date
Nayeem Rahman
69e0886362
fix(URL): Implement spec-compliant host parsing (#6689) 2020-07-10 15:51:24 -04:00
Marcos Casagrande
39dba12a06
fix(cli/buffer): allow Buffer to store MAX_SIZE bytes (#6570) 2020-07-10 11:49:35 -04:00
Sebastien Filion
1bcc35b84a
feat(unstable): add Deno.consoleSize (#6520) 2020-07-10 10:07:12 -04:00
Kitson Kelly
202e7fa6ad
feat: move unstable Deno.permissions to navigator.permissions (#6244) 2020-07-09 05:00:18 -04:00
Valentin Anger
be7e0f2d49
BREAKING(core): Remove control slice from ops (#6048) 2020-07-08 11:23:50 -04:00
uki00a
a2bf61d1ae
feat(unstable): Deno.ppid (#6539) 2020-07-08 10:35:45 -04:00
Marcos Casagrande
231899695d
feat(cli): Add WriteFileOptions to writeTextFile & writeTextFileSync (#6280) 2020-07-08 09:38:22 -04:00
Kitson Kelly
82aabb657a
feat: add --no-check option (#6456)
This commit adds a "--no-check" option to following subcommands:
- "deno cache"
- "deno info"
- "deno run"
- "deno test"

The "--no-check" options allows to skip type checking step and instead 
directly transpiles TS sources to JS sources. 

This solution uses `ts.transpileModule()` API and is just an interim
solution before implementing it fully in Rust.
2020-07-08 11:26:39 +02:00
Marcos Casagrande
e4899b6ba4
perf(cli/body): improve .arrayBuffer() speed (#6669) 2020-07-07 22:25:34 -04:00
Sebastien Filion
4534db656d
feat(test): Add support for regex in filter flag (#6343)
Currently, the documentation makes it sound like the test subcommand's filter
flag could accept some kind of pattern matching value like a glob or a regex,
although the function "createFilterFn" accepts a regex as an argument, there's
no way to pass an actual regex value from the CLI.

This commit makes it possible to pass a string that could be cast as regex 
when string matches "^/.*/$".

With this change, a user can use the filter flag as follow:

deno test --filter "/test-.+/"

Also tested that `\` get escaped properly, on MacOS at least, and this is 
also a valid flag:

deno test --filter "/test-\d+/"
2020-07-07 15:13:38 +02:00
Nayeem Rahman
61d9952ff9
fix(cli/js/process): Fix process socket types (#6676) 2020-07-07 12:21:49 +02:00
Stanislav
158ae0bfe9
clean up code in cli/js (#6611) 2020-07-06 21:45:39 -04:00
Ryan Dahl
5c43131be1
Fix definition of URL constructor (#6653) 2020-07-06 17:39:13 -04:00
dubiousjim
6b78729ba8
feat: Deno.chown() make uid, gid args optional (#4612) 2020-07-06 13:15:13 +02:00
Marcos Casagrande
3b4260dc54
fix(cli/fetch): response constructor default properties (#6650) 2020-07-05 21:37:18 -04:00
Kitson Kelly
4f60a0b3bd
chore: improve type safety of cli/js/compiler (#6647) 2020-07-05 20:13:27 -04:00
Marcos Casagrande
f85a0ce634
refactor(cli/body): use Deno.Buffer in bufferFromStream (#6632) 2020-07-05 18:05:38 -04:00
Kyle June
d52e4007c8
Update timers to ignore Date Override (#6552) 2020-07-04 15:16:27 -04:00
Kitson Kelly
2527a6e296
fix: move ImportMeta to deno.ns lib (#6588) 2020-07-03 12:44:45 +02:00
Casper Beyer
8a14eafaff
doc: add unstable note to Deno.ftruncateSync and ftruncate (#6590) 2020-07-02 09:34:19 -04:00
Marcos Casagrande
89ebe2079b
fix(cli/body): Maximum call stack size exceeded error (#6537) 2020-06-28 10:31:56 -04:00
Marcos Casagrande
6c093c0b5a
fix(cli): Buffer.bytes() ArrayBuffer size (#6511) 2020-06-27 13:52:27 +02:00
Nayeem Rahman
d77a55a973
fix(cli/js/process): Fix conditional types for process sockets (#6275) 2020-06-27 13:44:02 +02:00
Maayan Hanin
598a7dcc84
fix(cli/permissions): panic on hostless URLs (#6500) 2020-06-26 17:37:03 -04:00
Casper Beyer
e278c90d8a
feat(unstable): add Deno.fdatasyncSync and fdatasync (#6403) 2020-06-26 08:36:35 -04:00
Nayeem Rahman
ed0b1d4627
fix(cli/js/web/url): Support UNC paths on Windows (#6418) 2020-06-26 08:34:17 -04:00
Casper Beyer
175867ab76
fix(cli): strings shouldn't be interpreted as file URLs (#6412) 2020-06-26 08:29:34 -04:00
Kitson Kelly
6f09b8de41
Restore stats for incremental compile (#6474) 2020-06-25 15:50:16 +02:00
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
Nayeem Rahman
3314b46321
fix(cli/js/web/console): Improve string quoting behaviour (#6457) 2020-06-24 09:47:05 -04:00
Kitson Kelly
1d8fc39494
Add ability to output compiler performance information (#6434) 2020-06-24 11:58:23 +02:00
Chris Couzens
f6a4146973
fix(cli/web): Support URLSearchParam as Body (#6416)
The following used to fail in Deno despite working in the browser:

```javascript
new Request('http://localhost/', {method: 'POST', body: new URLSearchParams({hello: 'world'})}).text().then(console.log)
```
2020-06-23 23:56:05 -04:00
Casper Beyer
6b3be01a00
feat(unstable): add Deno.fstatSync and fstat (#6425) 2020-06-22 08:58:52 -04:00
Bartek Iwańczuk
79adc7b000
core: add Deno.core.dispatchByName (#6395)
This commit adds alternate dispatch method to core JS API.

"Deno.core.dispatchByName()" works like "Deno.core.dispatch()", 
but takes op name instead of op id as a first argument.
2020-06-21 16:34:43 +02:00
Casper Beyer
40866d7cd5
feat(unstable): add Deno.fsyncSync and fsync (#6411) 2020-06-21 09:29:44 -04:00
Ryan Dahl
0a81ec6b1e
Remove Deno.dir and dirs dependency (#6385) 2020-06-20 23:49:27 -04:00
Casper Beyer
86f92e04c7
feat(unstable): add Deno.ftruncate and ftruncateSync (#6243) 2020-06-20 09:46:10 -04:00
Bartek Iwańczuk
826a3135b4
refactor(compiler): split code paths for compile and bundle (#6304)
* refactor "compile" and "runtimeCompile" in "compiler.ts" and factor out
separate methods for "compile" and "bundle" operations

* remove noisy debug output from "compiler.ts"
 
* provide "Serialize" implementations for enums in "msg.rs"

* rename "analyze_dependencies_and_references" to "pre_process_file" and
move it to "tsc.rs"

* refactor ModuleGraph to use more concrete types and properly annotate
locations where errors occur

* remove dead code from "file_fetcher.rs" - "SourceFile.types_url" is no
longer needed, as type reference parsing is done in "ModuleGraph"

* remove unneeded field "source_path" from ".meta" files stored for
compiled source file (towards #6080)
2020-06-19 12:27:15 +02:00
uki00a
345a5b3dff
fix: "deno test" should respect NO_COLOR=true (#6371) 2020-06-19 12:10:31 +02:00
Marcos Casagrande
36ad5e4402
refactor(cli/web): use isTypedArray method (#6369) 2020-06-18 14:39:29 -04:00
Ryan Dahl
a2969ecd27
Deno.bundle supports targets < ES2017 (#6346)
This commit provides a "system_loader_es5.js" bundle loader which will be added
to the bundle when the target is < ES2017, which is the minimum target syntax
required for "system_loader.js".

Supports #5913 (via Deno.bundle()) with a couple caveats:

* Allowing "deno bundle" to take a different target is not supported, as we
specifically ignore "target" when passed in a TypeScript config file. This is
because deno bundle is really intended to generate bundles that work in Deno.
It is an unintentional side effect that some bundles are loadable in browsers.

* While a target of "es3" will be accepted, the module loader will still only be
compatible with ES5 or later. Realistically no one should be expecting bundles
generated by Deno to be used on IE8 and prior, and there is just too much
"baggage" to support that at this point.

This is a minor variation of 75bb9d, which exposed some sort of internal V8 bug.
Ref #6358

This is 100% authored by Kitson Kelly. Github might change the author when landing
so I'm leaving this in:
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2020-06-18 09:06:48 -04:00
River
2a5af8b36b
fix: decode path properly on win32 (#6351) 2020-06-18 06:10:07 -04:00
Bartek Iwańczuk
e60922981b
Revert "Deno.bundle supports targets < ES2017. (#6328)" (#6342)
This reverts commit 75bb9dbdfc.
2020-06-17 19:44:40 +02:00
Kitson Kelly
75bb9dbdfc
Deno.bundle supports targets < ES2017. (#6328)
This commit provides a "system_loader_es5.js" bundle loader which will be added
to the bundle when the target is < ES2017, which is the minimum target syntax
required for "system_loader.js".

Supports #5913 (via Deno.bundle()) with a couple caveats:

* Allowing "deno bundle" to take a different target is not supported, as we
specifically ignore "target" when passed in a TypeScript config file. This is
because deno bundle is really intended to generate bundles that work in Deno.
It is an unintentional side effect that some bundles are loadable in browsers.

* While a target of "es3" will be accepted, the module loader will still only be
compatible with ES5 or later. Realistically no one should be expecting bundles
generated by Deno to be used on IE8 and prior, and there is just too much
"baggage" to support that at this point.
2020-06-17 15:13:02 +02:00
Kermit Xuan
77545219a6
fix: DatagramConn.send should return bytes sent (#6265) 2020-06-13 10:14:31 -04:00
Nayeem Rahman
e613bfe47a
feat: Add TestDefinition::only (#5793) 2020-06-12 11:58:04 -04:00
Ryan Dahl
e9424bf6b5
Revert "feat: add Deno.osName()" (#6261)
Deno.build.os provides the same functionality

This reverts commit 6ccf9037a6.
2020-06-12 09:53:53 -04:00
Chris Knight
ca1c2ee822
doc: fix inspect example with correct InspectOptions (#6255) 2020-06-12 14:40:32 +02:00
Rubin Bhandari
6ccf9037a6
feat: add Deno.osName() (#5714) 2020-06-11 13:11:26 -04:00
River
818a801092
feat: URL support in Deno filesystem methods (#5990) 2020-06-11 12:36:20 -04:00