Bartek Iwańczuk
161adfc51b
workers: proper TS libs, more spec-compliant APIs ( #3812 )
...
* split lib.deno_main.d.ts into:
- lib.deno.shared_globals.d.ts
- lib.deno.window.d.ts
- lib.deno.worker.d.ts
* remove no longer used libs:
- lib.deno_main.d.ts
- lib.deno_worker.d.ts
* change module loading to use proper TS library for compilation
* align to Worker API spec:
- Worker.terminate()
- self.close()
- self.name
2020-01-29 18:54:23 +01:00
Bartek Iwańczuk
ac10d79d23
refactor: isomorphic snapshot for CLI ( #3728 )
2020-01-27 21:12:25 -05:00
Kitson Kelly
f604becaba
Improve support of type definitions ( #3755 )
2020-01-26 13:59:41 -05:00
Bartek Iwańczuk
c824eb5817
refactor: Modules and Loader trait ( #3791 )
...
* move is_dyn_import argument from Loader::resolve to Loader::load - it was always kind of strange that resolve() checks permissions.
* change argument type from &str to &ModuleSpecifier where applicable
2020-01-25 18:53:16 +01:00
Bert Belder
37a7b01d5c
Refactor error tracking and scope juggling in deno_core ( #3783 )
2020-01-25 14:31:42 +01:00
Ryan Dahl
5e32c5ea44
s/PinnedBuf/ZeroCopyBuf ( #3782 )
2020-01-24 15:10:49 -05:00
Yoshiya Hinosawa
bc89f04cbf
Add signal handlers ( #3757 )
2020-01-24 08:15:31 -05:00
Bartek Iwańczuk
bd9561f4de
Reland "Create an old program to be used in snapshot." ( #3747 )
...
* read CLI assets from disk during snapshotting
2020-01-22 20:18:01 +01:00
Ry Dahl
fa7f34eb8c
Revert "Create an old program to be used in snapshot. ( #3644 )"
...
Ref #3712 . This change allowed the deno_typescript crate to reference
cli/js/lib.deno_runtime.d.ts which breaks "cargo package". We intend to
reintroduce a revised version of this patch later once "cargo
package" is working and tested.
This reverts commit 737ab94ea1
.
2020-01-21 14:57:56 -05:00
Yoshiya Hinosawa
9de8178c9b
feat: add AsyncUnref ops ( #3721 )
...
This is in order to support features like signal handlers, which
shouldn't prevent the program from exiting.
2020-01-21 12:01:10 -05:00
Bartek Iwańczuk
ecd1d3abb0
refactor: split cli::Worker ( #3735 )
...
* cli::Worker is base struct to create specialized workers
* add MainWorker
* add CompilerWorker
* refactor WebWorker to use Worker
2020-01-21 17:50:06 +01:00
Bartek Iwańczuk
5e2fd183ff
refactor: Rename JS entry functions ( #3732 )
2020-01-21 15:53:29 +01:00
Bartek Iwańczuk
0cd605515c
refactor: don't create new runtime for fs ops ( #3730 )
2020-01-21 14:26:11 +01:00
Michał Sabiniarz
21cc9cb7a7
Implemented alternative open mode in files ( #3119 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-01-21 10:49:42 +01:00
Bartek Iwańczuk
7966bf14c0
refactor: split worker and worker host logic ( #3722 )
...
* split ops/worker.rs into ops/worker_host.rs and ops/web_worker.rs
* refactor js/workers.ts and factor out js/worker_main.ts - entry point for WebWorker runtime
* BREAKING CHANGE: remove support for blob: URL in Worker
* BREAKING CHANGE: remove Deno namespace support and noDenoNamespace option in Worker constructor
* introduce WebWorker struct which is a stripped down version of cli::Worker
2020-01-21 09:49:47 +01:00
Bartek Iwańczuk
c90036ab88
refactor: reduce number of ErrorKind variants ( #3662 )
2020-01-20 10:50:16 -05:00
Nayeem Rahman
7f80f9db3f
refactor: Improve path handling in permission checks ( #3714 )
2020-01-20 09:45:44 -05:00
Bartek Iwańczuk
23e67eb515
stabilize net Addr ( #3709 )
...
Co-authored-by: xiaoxintang <15707971810@163.com>
2020-01-18 21:49:55 +01:00
Bartek Iwańczuk
34b99fec8e
rename dial to connect and dialTLS to connectTLS ( #3710 )
2020-01-18 18:35:12 +01:00
Bartek Iwańczuk
5fa056e53b
workers: minimal error handling and async module loading ( #3665 )
2020-01-17 18:43:53 -05:00
Nayeem Rahman
f8d5f5b80e
fix: Resolve read/write whitelists from CWD ( #3684 )
2020-01-16 14:47:02 -05:00
Bartek Iwańczuk
1de02b0643
perf: share http client in file fetcher ( #3683 )
2020-01-16 16:10:01 +01:00
Kevin (Kun) "Kassimo" Qian
91757f63fd
feat(fs): add more unix-only fields to FileInfo ( #3680 )
2020-01-16 09:46:32 -05:00
Kitson Kelly
737ab94ea1
Create an old program to be used in snapshot. ( #3644 )
2020-01-12 12:20:33 +01:00
Bartek Iwańczuk
8fac8ab130
upgrade: tokio 0.2.9, reqwest 0.10.1 ( #3653 )
2020-01-12 10:21:53 +01:00
Ry Dahl
d492c5abe3
feat: Deno.args now does not include script ( #3628 )
...
Previously Deno.args was ["script.js", "arg1", "arg2"]
Now it is just ["arg1", "arg2"]
BREAKING CHANGE
2020-01-09 11:37:01 -07:00
Kitson Kelly
d325566a7e
Runtime Compiler API ( #3442 )
...
Also restructures the compiler TypeScript files to make them easier to
manage and eventually integrate deno_typescript fully.
2020-01-08 09:17:44 -05:00
Ry Dahl
29df272133
error on warnings ( #3612 )
2020-01-06 11:38:56 -05:00
Ry Dahl
76e44ddfd0
Rename crates: 'deno' to 'deno_core' and 'deno_cli' to 'deno' ( #3600 )
2020-01-05 11:56:18 -05:00
Gurwinder Singh
9f6bab6010
Use async at places, use &self instead of self: &Self ( #3594 )
2020-01-04 05:20:52 -05:00
Ry Dahl
bfab4ed0df
Happy new year! ( #3578 )
2020-01-02 15:13:47 -05:00
Gurwinder Singh
b0761138e5
Remove unnecessary use of Pin, use ready! ( #3576 )
2020-01-02 13:11:33 -05:00
Bartek Iwańczuk
4258ed262f
refactor: move HttpBody to cli/http_util.rs ( #3569 )
2019-12-31 15:09:58 +01:00
Bartek Iwańczuk
46d76a7562
upgrade: Tokio 0.2 ( #3418 )
2019-12-30 14:57:17 +01:00
Axetroy
3bb15ceaea
Upgrades rust to 1.40.0 ( #3542 )
2019-12-23 09:59:44 -05:00
Nayeem Rahman
f07ffe8980
feat: Add Deno.dir("executable") ( #3526 )
2019-12-21 06:30:13 -05:00
Ry Dahl
077b6f7672
Reduce all directory functions to Deno.dir() ( #3518 )
2019-12-18 09:29:00 -05:00
Axetroy
de94698915
Feat: Add more dir APIs for Deno ( #3491 )
2019-12-15 13:14:20 +08:00
Luca Casonato
7144bbed34
fix: plugin ops should change op count metrics ( #3455 )
2019-12-08 04:09:09 +08:00
Andy Finch
7c3b9b4f4f
feat: first pass at native plugins ( #3372 )
2019-12-05 15:30:20 -05:00
Ry Dahl
ee013102ff
remove duplicated argv member from ThreadSafeGlobalState ( #3433 )
2019-12-03 17:23:10 -05:00
Bartek Iwańczuk
136b5e3da2
disable eager polling for ops ( #3434 )
2019-12-02 12:21:32 -08:00
木杉
537c6b3ed9
fix realpath behavior in windows ( #3425 )
2019-12-01 11:23:35 -08:00
Kevin (Kun) "Kassimo" Qian
f88dc4e197
Add Deno.realpath ( #3404 )
2019-11-26 00:40:57 -08:00
Bartek Iwańczuk
658ec2aaf9
better error message for missing module ( #3402 )
2019-11-25 09:33:23 -05:00
Kevin (Kun) "Kassimo" Qian
bca23e6433
refactor: Elevate DenoPermissions lock to top level ( #3398 )
2019-11-24 10:42:30 -05:00
Bartek Iwańczuk
1912ed6740
remove tokio_util::block_on from ops/workers.rs ( #3381 )
2019-11-19 19:17:05 -05:00
Bartek Iwańczuk
f356b2bd5e
refactor: fixes for futures ( #3363 )
...
After landing #3358 the benchmarks exploded indicating problems with workers and deno_core_http_bench.
This PR dramatically fixes thread/syscall count that showed up on benchmarks. Thread count is not back to previous levels but difference went from hundreds/thousands to about ~50.
2019-11-17 08:14:50 -05:00
Bartek Iwańczuk
8f9a942cb9
Use futures 0.3 API ( #3358 )
2019-11-16 19:17:47 -05:00
Bartek Iwańczuk
8b90b8e883
refactor: per-worker resource table, take 2 ( #3342 )
...
- removes global `RESOURCE_TABLE` - resource tables are now created per `Worker`
in `State`
- renames `CliResource` to `StreamResource` and moves all logic related
to it to `cli/ops/io.rs`
- removes `cli/resources.rs`
- adds `state` argument to `op_read` and `op_write` and consequently adds
`stateful_minimal_op` to `State`
- IMPORTANT NOTE: workers don't have access to process stdio - this is
caused by fact that dropping worker would close stdout for process
(because it's constructed from raw handle, which closes underlying file
descriptor on drop)
2019-11-14 12:10:25 -05:00