1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-03 17:08:35 -05:00
Commit graph

297 commits

Author SHA1 Message Date
Bert Belder
48bf4062e4 First pass at running subprocesses (#1156) 2018-11-16 12:07:40 +08:00
Bartek Iwańczuk
9b702da9e5 improve flag parsing 2018-11-16 11:44:43 +08:00
Ryan Dahl
eaec5a8780 Support uploading data from fetch()
Does not yet support streaming, only strings and TypedArrays for now.
2018-11-16 11:44:25 +08:00
Ryan Dahl
9d9853b319 Lift snapshot to be an argument of Isolate::new(). 2018-11-16 08:25:54 +08:00
Ryan Dahl
f88fa2dcf8 Support shebang 2018-11-16 08:05:13 +08:00
Ryan Dahl
d7abdfe754 Simplify NotFound code. 2018-11-16 08:05:13 +08:00
Ryan Dahl
3c8d2bde68
Support request method and headers in fetch() (#1188)
Adds a general HttpHeader flatbuffer message for serializing requests
and responses.
2018-11-14 17:36:34 -08:00
Ryan Dahl
b1579460ce Support streaming response bodies from fetch()
Also Buffer.readFrom in fetch() to buffer response.
2018-11-13 21:44:38 -08:00
Ryan Dahl
f2223fb9ad Wrapper around hyper::Body so it can be used as AsyncRead 2018-11-13 21:44:38 -08:00
Ryan Dahl
92e404706b
Use include_bytes! instead of incbin. (#1182) 2018-11-12 17:17:30 -08:00
Ryan Dahl
0c740ff85d v0.1.12
- Update to TypeScript 3.1.6 (#1177)
- Fixes Headers type not available. (#1175)
- Reader/Writer to use Uint8Array not ArrayBufferView (#1171)
- Fixes importing modules starting with 'http'. (#1167)
- build: Use target/ instead of out/ (#1153)
- Support repl multiline input (#1165)
2018-11-12 09:16:00 -08:00
Ryan Dahl
98e6366cb5
Local filenames starting with 'http' shouldn't be remote. (#1167) 2018-11-08 10:38:54 -08:00
Andy Hayden
13e1eb2b87 Fix many of the clippy::pedantic warnings 2018-11-06 06:43:02 -08:00
Andy Hayden
7a17e2aec6 Remove flags::process
It was doing two independent things:
- print help and exit
- set log level

It's better to do those explicitly in main.rs
2018-11-06 06:25:38 -08:00
Ryan Dahl
e1d5f82d36 v0.1.11
- Performance and stability improvements on all platforms.
- Add repl (#998)
- Add deno.Buffer (#1121)
- Support cargo check (#1128)
- Upgrade Rust crates and Flatbuffers. (#1145, #1127)
- Add helper to turn deno.Reader into async iterator (#1130)
- Add ability to load JSON as modules (#1065)
- Add deno.resources() (#1119)
- Add application/x-typescript mime type support (#1111)
2018-11-05 14:51:29 -08:00
Andy Hayden
27ecfc1617 Add repl (#998)
- Running repl from js side.
- Add tests for repl behavior.
- Handle ctrl-C and ctrl-D.
2018-11-05 09:55:59 -08:00
Andy Hayden
1241b8e9ba Fix clippy warnings (#1149)
Run with: cargo clippy
https://github.com/rust-lang-nursery/rust-clippy
2018-11-04 06:04:24 -08:00
Bert Belder
b9914c3113
third_party: add tokio-process Rust crate and its dependencies 2018-11-03 07:42:24 +01:00
Ryan Dahl
ee24254bad Rename EnvPair to KeyValue. 2018-11-02 20:50:01 -07:00
Bert Belder
ec17239f46
cargo: build in Cargo's out dir if DENO_BUILD_PATH is not set
Plus some minor improvements and clean-ups:

* Resolve DENO_BUILD_PATH to an absolute path if necessary.
* Rename DENO_BUILD_PATH to GN_OUT_DIR in places where it is supposed to
  be set by the build system (and not a user configuration variable).
* Output Cargo `rerun-if-*-changed` instructions first, so even if the
  build itself fails, configuration changes will still trigger a re-run
  of build.rs.
* Remove TODOs that are impossible.
* Re-run build.rs when the flatbuffer definition file changes.
2018-11-01 14:18:18 +01:00
Ryan Dahl
198e396ead
Support cargo check (#1128)
- Based on code from @qti3e and @piscisaureus in #724 and #1125
  respectively.
- TODO The DENO_BUILD_PATH env var must be supplied and must be an
  absolute path, this restriction should be removed in future work.
2018-10-31 11:11:10 -07:00
Joseph
21dac66465 Better output on panic (#1129) 2018-10-31 07:30:52 -07:00
Ryan Dahl
7c82667f75
Upgrade Flatbuffers. (#1127)
Use msg_generated.rs as mod instead of crate.
2018-10-31 00:32:42 -07:00
Ryan Dahl
80b5c61460 Rename FetchReq op to Fetch. 2018-10-30 17:42:19 -07:00
Bartek Iwańczuk
946acbc559 Add resources op (#1119) 2018-10-30 12:58:55 -07:00
Kitson Kelly
8b39d2c99e Separate source map from output code. 2018-10-29 08:16:35 -07:00
Kevin (Kun) "Kassimo" Qian
a68403d090 Add application/x-typescript mime type support 2018-10-28 11:18:53 -07:00
Ryan Dahl
da959e8c87 v0.1.10
- Add URLSearchParams (#1049)
- Implement clone for FetchResponse (#1054)
- Use content-type headers when importing from URLs. (#1020)
- Use checkJs option, JavaScript will be type checked and users can
  supply JSDoc type annotations that will be enforced by Deno (#1068)
- Add separate http/https cache dirs to DENO_DIR (#971)
- Support https in fetch. (#1100)
- Add chmod/chmodSync on unix (#1088)
- Remove broken features: --deps and trace() (#1103)
- Ergonomics: Prompt TTY for permission escalation (#1081)
2018-10-27 08:13:28 -07:00
Ryan Dahl
882a323811 Minor sorting not handled by format. 2018-10-27 08:08:51 -07:00
Ryan Dahl
6adc87e3eb
Ergonomics: Prompt TTY for permission escalation (#1081) 2018-10-27 06:11:39 -07:00
Ryan Dahl
6bbf0777b1 Remove broken feature: --deps 2018-10-26 13:07:33 -07:00
Kevin (Kun) "Kassimo" Qian
a99aaf5def Add chmod/chmodSync on unix (and fix Cargo.toml) (#1088)
Initial implementation by Srijan Reddy (@srijanreddy98, #672).
2018-10-26 13:01:45 -07:00
Ryan Dahl
9b8f77f525 Support https in fetch.
fetch should use same hyper connector as import.
2018-10-26 09:40:27 -07:00
Kevin (Kun) "Kassimo" Qian
8500b78955 Add separate http/https cache dirs to DENO_DIR (#971)
Also change remote relative import logic.
2018-10-26 06:55:05 -07:00
Ryan Dahl
0501330607 Add libdeno.shared global shared ArrayBuffer. 2018-10-24 14:52:38 -07:00
Ryan Dahl
fd68f85ce8 libdeno: deno_new should take a snapshot parameter. 2018-10-24 14:52:38 -07:00
Joseph
d2df67e822 fix typos (#1083) 2018-10-24 08:54:34 -07:00
Bert Belder
ae00df73a2
Move eager functions into eager_unix.rs 2018-10-24 11:16:00 +02:00
Bert Belder
58f0547e09
Refactor eager_{read,write,accept}_tcp into separate functions 2018-10-24 11:16:00 +02:00
Kevin (Kun) "Kassimo" Qian
988ec88dd0 Switch to getopts for flag parsing (#1080) 2018-10-23 21:02:43 -07:00
Kitson Kelly
8ef7da2611 Enforce media types 2018-10-23 04:48:00 -07:00
Ryan Dahl
c85311dd7d v0.1.9
- Performance and stability improvements on all platforms.
- Add cwd() and chdir() #907
- Specify deno_dir location with env var DENO_DIR #970
- Make fetch() header compliant with the current spec #1019
- Upgrade TypeScript to 3.1.3
- Upgrade V8 to 7.1.302.4
2018-10-20 17:30:17 -07:00
Ryan Dahl
92b0a94c23 Optimization: eager accept 2018-10-20 12:39:56 -07:00
Ryan Dahl
aac9e204b7 Optimization: eager write 2018-10-20 12:39:56 -07:00
Ryan Dahl
2c33334d28 Optimization: eager read
TCP sockets should attempt the non-blocking read in the main thread.
2018-10-20 12:39:56 -07:00
Ryan Dahl
2af25b1957 Allow partial writes.
Do not use tokio_io::io:write_all().
Adds src/tokio_write.rs
2018-10-20 12:39:56 -07:00
Ryan Dahl
8f9d407e22 Sort ops. 2018-10-19 21:36:07 -04:00
ztplz
b809a82fd9 Add missing copyrights (#1024) 2018-10-19 15:25:29 -04:00
Bert Belder
d0b859ec37
format 2018-10-19 00:29:09 +02:00
Bartek Iwańczuk
3a226f166f add test case for metrics 2018-10-18 05:08:49 -04:00
Bartek Iwańczuk
fd2bb015c7 fix metrics logic 2018-10-18 05:08:49 -04:00
Ryan Dahl
213885a9d0 Optimization: Reuse ArrayBuffer during serialization. 2018-10-17 20:20:06 -04:00
Jinho Bang
32f0797128 Fix a bug that copyFile reports different error codes
This is a workaroud. Once the issue is resolved in Rust side, we should
remove it.

Fixes #895
2018-10-17 08:24:31 -04:00
Ryan Dahl
590feb1c71 Format 2018-10-16 09:37:38 -04:00
Jinho Bang
1322f3de9f deno -v should report typescript version
Fixes #993
2018-10-15 22:16:55 -04:00
Andy Hayden
fb90c6f525 Exit cleanly on unrecognized arguments (#990)
Refactor set_flags to return a Result
2018-10-15 14:26:22 -04:00
Amos Lim
15590a0cde Specify deno_dir location with env var DENO_DIR (#970)
(Use C:\deno instead of c:\deno in appveyor config because it's cloned to c:\ by clone_folder variable in .appveyor.yml. On the other hand, build directory is pointed to C:\ by $(APPVEYOR_BUILD_FOLDER) so that test targets are placed on separated partitions.)
2018-10-15 12:08:19 -04:00
Shiva Prasanth
bbf88c5295 Add cwd() and chdir() (#907) 2018-10-13 16:03:27 -04:00
Ryan Dahl
d92c99eaba v0.1.8
- Fix promise reject issue (#936)
- Add --types command line flag.
- Add metrics()
- Add redirect follow feature #934
- Fix clearTimer bug #942
- Improve error printing #935
- Expose I/O interfaces Closer, Seeker, ReaderCloser, WriteCloser,
  ReadSeeker, WriteSeeker, ReadWriteCloser, ReadWriteSeeker
- Fix silent death on double await #919
- Add Conn.closeRead() and Conn.closeWrite() #903
2018-10-12 14:44:42 -04:00
Kevin (Kun) "Kassimo" Qian
45d3b8955d Fix promise reject issue (#936) 2018-10-12 14:22:52 -04:00
Kitson Kelly
298d755152 Add support for --types 2018-10-11 20:29:43 -04:00
Ryan Dahl
4f4075307d
Fix metrics() race condition. (#965) 2018-10-11 18:22:05 -04:00
Bartek Iwańczuk
51f9331ecb Add deno.metrics() 2018-10-11 15:45:51 -04:00
Ryan Dahl
417ea7bb6d src/http.rs -> src/http_util.rs
So as not to conflict with http crate.
2018-10-10 14:29:55 -04:00
J2P
7cc9b64ff7 Rename BadFileDescriptor 2018-10-10 12:21:01 -04:00
Ryan Dahl
d26792d926 Clean up Isolate::event_loop with utility function. 2018-10-10 12:18:48 -04:00
Kevin (Kun) "Kassimo" Qian
888824c617 Add redirect follow feature (#934) 2018-10-09 20:31:06 -04:00
Ryan Dahl
94889aef08 Re-enable test_fetch_sync_string 2018-10-09 13:59:50 -04:00
Bert Belder
4f3250bc43
Remove deno_get_data()
Instead, pass the isolate data to the dispatch callback directly.
2018-10-08 18:19:36 +02:00
Bert Belder
e742af10aa
Abide by the rules when passing Isolate between c and rust
Ensure that at most one mutable Isolate reference exists at a time.

`deno_execute()` and `deno_respond()` now borrow a reference to the rust-side
isolate from the caller. When we need a reference to the isolate while one of
these functions is on the stack, `deno_get_data()` can be used to borrow back
that reference.
2018-10-08 18:19:32 +02:00
Bert Belder
d86e5d2605
Remove ntasks aliasing workaround 2018-10-08 18:10:28 +02:00
Bert Belder
ad4c4c214a
Rename Deno.data to Deno.user_data
Also use the correct rust type for it.
2018-10-08 18:10:28 +02:00
Bert Belder
14b971c5f7
Rename Isolate.ptr to Isolate.libdeno_isolate 2018-10-08 18:10:27 +02:00
Yoshiya Hinosawa
48923f48a2 docs: fix urls in comments 2018-10-06 23:26:39 -04:00
Ryan Dahl
0514f54a22 Make ntasks an atomic counter.
Fixes #919.
2018-10-06 20:24:47 -04:00
Kevin (Kun) "Kassimo" Qian
62a5020602 Fix symlink error message 2018-10-06 20:24:47 -04:00
Kevin (Kun) "Kassimo" Qian
1ac80feb1c Replace panic with error on windows for symlink 2018-10-05 21:20:34 -04:00
Ryan Dahl
c3bce178b8 Clean up helpers in src/errors.rs
* Add errors::bad_resource()
* Move permission_denied() to errors.rs
* Make op_symlink's not_implemented() into a runtime panic.
2018-10-05 14:27:47 -04:00
Ryan Dahl
cfa54cabbd Always die on panic. 2018-10-05 14:27:47 -04:00
Kevin (Kun) "Kassimo" Qian
941e27d8c1 Implement closeRead/closeWrite using TcpStream::shutdown (#903) 2018-10-05 12:16:23 -04:00
Ryan Dahl
5307aa94e1 v0.1.7
- Improve fetch headers (#853)
- Add deno.truncate (#805)
- Add copyFile/copyFileSync (#863)
- Limit depth of output in console.log for nested objects, and add
  console.dir (#826)
- Guess extensions on extension not provided (#859)
- Renames:
  deno.platform -> deno.platform.os
  deno.arch -> deno.platform.arch
- Upgrade TS to 3.0.3
- Add readDirSync(), readDir()
- Add support for TCP servers and clients. (#884)
  Adds deno.listen(), deno.dial(), deno.Listener and deno.Conn.
2018-10-04 08:56:32 -04:00
Ryan Dahl
2f44db6756 Use underscores in filenames. 2018-10-04 00:25:55 -04:00
Ryan Dahl
f774953011 Rename flatbuffer base.msg to base.inner
This better disambiguates with the msg_generated.ts module, which in JS
we call "fbs", but would be better called "msg".
2018-10-04 00:25:55 -04:00
Ryan Dahl
51dc46eff4 Rename msg_from_js() to dispatch(). 2018-10-04 00:25:55 -04:00
Ryan Dahl
d38c4e0ff1 Rename handler.rs to ops.rs 2018-10-04 00:25:55 -04:00
Ryan Dahl
0422b224e8
First pass at support for TCP servers and clients. (#884)
Adds deno.listen(), deno.dial(), deno.Listener and deno.Conn.
2018-10-03 23:58:29 -04:00
J2P
ea87034e26 Implemented readDirSync, readDir 2018-10-03 18:22:57 -04:00
Bert Belder
97e08a6fab
isolate: work around a rust compiler bug 2018-10-03 13:27:59 -07:00
Bert Belder
4eeda9ea27
timers: remove the old timer implementation
Fixes #878.
2018-10-03 13:27:59 -07:00
Bert Belder
aa691ea26c
timers: implement timers in javascript 2018-10-03 13:27:55 -07:00
Kevin (Kun) "Kassimo" Qian
eba58b7188 Guess extensions on extension not provided (#859)
Fixes #857
2018-10-02 12:38:45 -04:00
Ryan Dahl
fc1c54dde0 Adjust how handle_read handle_write function.
Use tokio_io::io::read() and tokio_io::io::write_all()
instead of poll_fn() as suggested in the Tokio gitter.
2018-10-01 22:30:57 -04:00
Ryan Dahl
42c5b103ec Rename FdTable to ResourceTable.
Add docs to src/resources.rs.
2018-10-01 22:30:57 -04:00
Ryan Dahl
393f751a27 Format. 2018-10-01 22:30:57 -04:00
ztplz
1fcc11a19d rename parse_core_args to v8_set_flags_preprocess (#871) 2018-10-01 10:23:36 -04:00
Kevin (Kun) "Kassimo" Qian
50a9c2b575 Add copyFile/copyFileSync (#863) 2018-09-30 18:06:41 -04:00
Kevin (Kun) "Kassimo" Qian
eceeabdab2 Remove unused table WriteFileSync 2018-09-30 18:05:37 -04:00
ztplz
062b22fe56 Add deno.truncate (#805) 2018-09-30 15:06:20 -04:00
Ryan Dahl
77e876388b v0.1.6
- Adds deno.stdin, deno.stdout, deno.stderr, deno.open(), deno.write(),
  deno.read(), deno.Reader, deno.Writer, deno.copy() #846
- Print 'Compiling' when compiling TS.
- Support zero-copy for writeFile() writeFileSync() #838
- Fixes eval error bug #837
- Make Deno multithreaded #782
- console.warn() goes to stderr #810
- Add deno.readlink()/readlinkSync() #797
- Add --recompile flag #801
- Use constructor.name to print out function type #664
- Rename deno.argv to deno.args
- Add deno.trace() #795
- Continuous benchmarks https://denoland.github.io/deno/
2018-09-29 13:36:07 -04:00
Ryan Dahl
bcbbee7399 Adds basic File I/O and FD table.
Adds deno.stdin, deno.stdout, deno.stderr, deno.open(), deno.write(),
deno.read(), deno.Reader, deno.Writer, deno.copy().

Fixes #721. tests/cat.ts works.
2018-09-28 20:53:33 -04:00