1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-14 16:33:45 -05:00
Commit graph

401 commits

Author SHA1 Message Date
Bert Belder
48bf4062e4 First pass at running subprocesses (#1156) 2018-11-16 12:07:40 +08:00
Ryan Dahl
765863e87a Add a simple doc generation tool.
And website upload tool.
2018-11-14 17:34:28 -08:00
Kitson Kelly
34b6b86c76 Ensure global type instances are available. 2018-11-09 08:39:49 -08:00
Ryan Dahl
a18e51fd61
build: Use target/ instead of out/ (#1153) 2018-11-08 10:38:20 -08:00
Andy Hayden
e9327be831 Support repl multiline input (#1165) 2018-11-06 11:19:16 -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
Kitson Kelly
5e48a681c4 Fix issue with runtime lib generation. 2018-11-05 07:17:47 -08:00
Kitson Kelly
4e07783663 Improve integration test harness (#1142) 2018-11-04 11:52:31 -08:00
Kitson Kelly
765f229357 Improve robustness of lib builder. 2018-11-04 05:56:49 -08: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
Ryan Dahl
0fbee30f05 Make format.py less verbose. 2018-10-30 17:42:19 -07:00
Kevin (Kun) "Kassimo" Qian
a68403d090 Add application/x-typescript mime type support 2018-10-28 11:18:53 -07:00
Ryan Dahl
6adc87e3eb
Ergonomics: Prompt TTY for permission escalation (#1081) 2018-10-27 06:11:39 -07:00
Bert Belder
dfe21af237
Disable treat_warnings_as_errors on windows when sccache is in use 2018-10-26 04:14:37 +02:00
Ryan Dahl
231bb9cfb6 Add error_001.ts to execution time benchmarks.
Ref #1087
2018-10-25 16:12:52 -07:00
Ryan Dahl
3438dbe350 Remove deno_ns 2018-10-24 14:52:38 -07:00
Ryan Dahl
a4fb5175ce
Add node_tcp target to http_benchmark. (#1074) 2018-10-23 15:02:30 -07:00
Bert Belder
e9bf206416
format: don't format files in third_party
It's annoying, and it also makes appveyor slow because it will re-upload
the third_party cache every time something changes in there.
2018-10-23 18:51:06 +02:00
Bert Belder
0dda87f962
third_party: install yapf with pip 2018-10-23 16:51:54 +02:00
Bert Belder
4ceb205512
Bundle pywin32 in third_party 2018-10-23 16:29:46 +02:00
Kitson Kelly
8ef7da2611 Enforce media types 2018-10-23 04:48:00 -07:00
Kitson Kelly
64f0dfd50e Improve globals for runtime type library 2018-10-22 19:37:38 -07:00
Ryan Dahl
47c96a6152 CI should fail when code isn't formatted. 2018-10-21 13:59:53 -07:00
Ryan Dahl
bb9a927bd5 Add yapf to third_party. 2018-10-21 13:59:53 -07:00
Kyra
fbb3f05b6f Add URLSearchParams (#1049) 2018-10-21 08:07:29 -07:00
Kevin (Kun) "Kassimo" Qian
86409eb836 Add Rust hyper http benchmark (#1043)
* Add go net/http benchmark

* Forget about Go. Let's do Rust Hyper

* Update BUILD.gn

* Rename
2018-10-20 19:56:16 -07:00
Yoshiya Hinosawa
f44ecdff97 feat: show only 20 benchmark data in inde.html 2018-10-20 08:07:20 -04:00
Ryan Dahl
00884d7164 Add rustfmt to third_party. 2018-10-20 01:19:59 -04:00
Andy Hayden
2d583f85ee Exit http_server.py if it's crashed 2018-10-20 00:27:37 -04:00
ztplz
b809a82fd9 Add missing copyrights (#1024) 2018-10-19 15:25:29 -04:00
J2P
198fa31ec1 Fix a typo in http_benchmark.py 2018-10-19 09:07:55 -04:00
Ryan Dahl
213885a9d0 Optimization: Reuse ArrayBuffer during serialization. 2018-10-17 20:20:06 -04:00
Ryan Dahl
4e2e185de7 Add tools/build_test.py 2018-10-17 20:20:06 -04:00
Ryan Dahl
21bcdd49cd Only run deno during ./tools/http_benchmark.py 2018-10-17 16:02:00 -04:00
Yoshiya Hinosawa
d4afbe6ef3 improve benchmark page performance and fix test (#1002) 2018-10-16 12:00:47 -04:00
Amos Lim
a90cf4c2ee Interrupt http_server.py by ctrl + c (#1001) 2018-10-16 11:54:08 -04:00
Ryan Dahl
c61a0f2f84 First pass at http benchmark. 2018-10-16 09:37:38 -04:00
Ryan Dahl
62962e71fe Fix throughput_benchmark 2018-10-16 09:37:38 -04:00
Ryan Dahl
590feb1c71 Format 2018-10-16 09:37:38 -04:00
Jinho Bang
28682a1d2c Fix a binary size regression
This patch changes Jumbo build to use only in debug mode.
2018-10-15 14:22:15 -04:00
Kitson Kelly
25c97962f4 Update to TypeScript 3.1 and ts-simple-ast 17 (#980) 2018-10-15 12:47:48 -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
Kitson Kelly
298d755152 Add support for --types 2018-10-11 20:29:43 -04:00
Kitson Kelly
ec402c6932 Replace globals.d.ts with lib.deno_runtime.d.ts 2018-10-11 20:29:43 -04:00
Ryan Dahl
d4f72e18be
Improve tools/unit_tests.py (#958)
Checks the output more carefully. The first line of output from
js/unit_tests.ts should be something like "running 96 tests"
And the last line should be something like
"test result: ok. 96 passed; 0 failed; 0 ignored; 0 measured; 36
filtered out"
This parses those strings and make sure they align.

This will catch silent death bugs.
2018-10-11 16:56:50 -04:00
Ryan Dahl
c814d5a914
Add throughput benchmark (#961) 2018-10-11 16:55:22 -04:00
Bartek Iwańczuk
51f9331ecb Add deno.metrics() 2018-10-11 15:45:51 -04:00
Kevin (Kun) "Kassimo" Qian
888824c617 Add redirect follow feature (#934) 2018-10-09 20:31:06 -04:00
cedric05
ba6c617432 tslint warning supress using tsconfig 2018-10-05 21:13:35 -04:00
Ryan Dahl
ab952e3340 Format 2018-10-05 14:27:47 -04:00
Chris Bystrek
6a649012bc Changed tools/lint.py to lint the entire js and tests directories. (#900)
* Changed tools/lint.py to lint the entire js and tests directorys and sub directories, currently it was pointing at tsconfig and would only lint files that were part of js/main.ts or node_modules/typescript/lib/lib.esnext.d.ts and their dependencies

* Broke the typescript linting out into separate steps for the main typescript programing and tests.

* Fixed linting issues in ts tests.
2018-10-05 07:29:55 -04:00
Bert Belder
8ca082c508
tools/format: format markdown files with prettier 2018-10-04 02:02:23 -07:00
Ryan Dahl
b7fd6e9c69 Add fetch_deps syscall count benchmark. 2018-09-30 16:35:12 -04:00
Bert Belder
4c6f37cec3
tools: define ERROR_INVALID_PARAMETER in utils.py
Fixes #865.
2018-09-30 12:44:58 -07:00
Andy Hayden
bf93ca54dd Ensure spawning python server twice raises an exception.
Previously it would dump the traceback but not raise.
It's unclear if serve_forever could crash for some other reason,
but the main reason spawn throws is if the port is already in use.
2018-09-27 15:49:43 -04:00
Kevin (Kun) "Kassimo" Qian
32806b1871 Expand binary size benchmark (#830) 2018-09-26 14:16:22 -07:00
Bert Belder
206d4f5c17
tools/setup: detect sccache presence and use it to cache rustc targets 2018-09-26 10:25:58 -07:00
Bert Belder
f10012facf
build: let rustc pick filenames, remove rust depfile hack
Fixes #787.
2018-09-26 10:25:49 -07:00
Bert Belder
531a427d88
build: do not quote cc_wrapper on windows
This brings behavior inline with the unix toolchain, which also leaves
cc_wrapper unquoted. If necessary, add quotes in the setup phase instead.
2018-09-26 09:52:30 -07:00
Bert Belder
023b4640fc
tools/setup: add gn_string() utility function 2018-09-26 09:52:30 -07:00
Bert Belder
1b9424e9d7
tools: add shell_quote() utility function 2018-09-26 09:52:30 -07:00
Bert Belder
3a6da19eb8 Revert "Expand binary size benchmark (#830)"
This reverts commit 8c7416b3f6.
2018-09-26 08:35:12 -04:00
Kevin (Kun) "Kassimo" Qian
8c7416b3f6 Expand binary size benchmark (#830) 2018-09-25 20:08:09 -04:00
Ryan Dahl
1956d6846c Also plot cold start time. 2018-09-25 13:13:09 -04:00
Kevin (Kun) "Kassimo" Qian
d957f8ebc2 Add syscall count benchmark for 002_hello.ts (#820)
* Add syscall count tracking for benchmark

* Add fetch_deps thread benchmark

* Switch to `strace -c` for syscall parsing

* Spawn http_server during benchmark (for fetch)

* Rename `benchmarks` to `exec_time_benchmarks`

* Update app_test.js
2018-09-24 23:58:18 -04:00
Kevin (Kun) "Kassimo" Qian
1729bdb0d7 Add thread count benchmark (#811) 2018-09-24 18:12:52 -04:00
Bert Belder
2e3a8b495d
tools: make color output work on windows 2018-09-24 13:45:03 -07:00
Yoshiya Hinosawa
9203e983d1 benchmark: track the binary size (#804) 2018-09-23 11:54:07 -04:00
Yoshiya Hinosawa
3747ec57e0
Add benchmark tools (#777) 2018-09-22 01:09:25 -07:00
Bert Belder
516e1da54c
Revert "Add benchmark tools (#777)"
This reverts commit 3ad48bdb3e.
2018-09-21 15:18:44 -07:00
Yoshiya Hinosawa
3ad48bdb3e Add benchmark tools (#777) 2018-09-21 12:06:59 -04:00
Bert Belder
3574c7a5d3
tools/setup: on windows, make env vars not affect gn gen output 2018-09-10 04:29:18 +02:00
Bert Belder
8ace0f142f
tools/format: don't format files in third_party on Windows 2018-09-10 02:20:21 +02:00
Bert Belder
9b052ace09
tools/setup: replace generated args.gn unless handcrafted 2018-09-08 23:55:18 +02:00
Bert Belder
30b268dd7d
build: override host_toolchain on windows to use sccache with v8 2018-09-08 23:55:18 +02:00
Ryan Dahl
7784b0e17e Move installer to its own repo.
https://github.com/denoland/deno_install

1. This allows the installer to use a more aggressive CI build matrix
   with different version of python.

2. Running the installer during tools/test.py artificially inflates our
   download stats.

3. Running the installer during tools/test.py makes the test script
   dependent on having an internet connection.

4. Running the installer during tools/test.py introduces a race
   condition during release - where it tries and fails to download the
   latest release in build process that should be uploading that release.
2018-09-06 10:22:15 -04:00
Ryan Dahl
43aead854f Add --reload to JS unit tests.
Fixes #677
2018-09-05 22:27:47 -04:00
Bert Belder
2c0d00840d
tools/build: skip build path detection when given '-C «dir»' ninja arg 2018-09-05 01:24:55 +02:00
Ryan Dahl
787832c68e Format. 2018-09-03 10:45:58 -04:00
Andy Hayden
89dddca3b4 Refactor release_url to take platform as an argument 2018-09-01 10:40:08 -04:00
Andy Hayden
c0ef797fc9 Avoid using temporary directory in install.py 2018-09-01 10:40:08 -04:00
Mirko Jotic
3d063223cc Add release installer (#639) 2018-08-31 20:55:04 -04:00
Aaron Power
f131445a46 Implemented deno.env and refactored flags.rs 2018-08-31 13:18:24 -04:00
Ryan Dahl
a63d794c7f Fix lastchange rebuild problem.
lastchange.py is causing a full rebuild on every commit. This is a
temporary workaround.
2018-08-29 12:05:58 -04:00
Bert Belder
542eb54254
tools: make sha256sum.py more generic and move it to 'tools' 2018-08-29 12:28:11 +02:00
Bert Belder
fe9ca53bc2
tools/setup: don't overwrite existing args.gn 2018-08-28 02:01:42 +02:00
Bert Belder
7e3d9f8f2b
format 2018-08-28 02:01:41 +02:00
Ryan Dahl
85ebc6b1ac Run lastchange.py during setup.py 2018-08-27 19:23:53 -04:00
Ryan Dahl
e13f3c10ca Add ability to unit test by permissions. 2018-08-27 17:51:24 -04:00
Ryan Dahl
fde96a8e43 allow_reuse_address for test http server. 2018-08-27 17:51:24 -04:00
Bert Belder
4747f50f52
tools/format: fix clang-format glob pattern 2018-08-26 18:27:12 +02:00
Bert Belder
3bcf7e271f
Build: make it possible to use ccache/sccache on windows
Also auto-detect the availability of sccache in setup.py.
2018-08-25 14:16:41 +02:00
Ryan Dahl
e2f9b0e6fd First pass at HTTP imports
Implement --reload

Integrate hyper errors into DenoError

In collaboration with Tommy Savaria <tommy.savaria@protonmail.ch>
2018-08-23 09:41:08 -04:00
Ryan Dahl
7d7263c48f Implement writeFileSync
In collaboration with Tommy Savaria <tommy.savaria@protonmail.ch>
2018-08-22 18:39:07 -04:00
Ryan Dahl
790baae673 Expose deno.exit() and add test. 2018-08-21 18:34:56 -04:00
Ryan Dahl
f7fd238953 Enable http server for tests. 2018-08-20 16:53:39 -04:00
Ryan Dahl
81b042c8db
Rename :all target to :default 2018-08-18 01:09:48 +02:00
Bert Belder
3640ea4c0d
build: don't clobber rust depfile mtime when fixing its paths
This avoids ninja unnecessarily rebuilding rust targets.
Add a check for problems like these to be run on appveyor.
2018-08-18 00:58:01 +02:00
Ryan Dahl
3f7d61a589 Add yarn.lock to third_party
Prevents upgrades with running tools/sync_third_party.py
2018-08-17 15:11:32 -04:00
Yoshiya Hinosawa
67d89ff692 chore: download clang-format from google storage 2018-08-17 12:58:58 -04:00
Yoshiya Hinosawa
565a21eb0e chore: format files in tests/ 2018-08-17 12:43:21 -04:00
mervynzhang
e41ee9bf4c import sys since sys.exit(1) used 2018-08-17 11:00:57 -04:00
Kitson Kelly
c4cafcecb1 Support wildcard matching of output in tests 2018-08-10 11:50:45 -07:00
Ryan Dahl
9d90c4ae95
Adds js/unit_tests.ts (#448) 2018-08-09 14:48:17 -07:00
Ryan Dahl
038c5f0727 Remove RUSTFMT_FLAGS 2018-08-08 18:35:26 -07:00
Ryan Dahl
4a1ccdeadb Change rustfmt flags. For v0.8.2. 2018-08-08 18:35:26 -07:00
Ryan Dahl
f632797bc8 Print output even when test failed. 2018-08-08 18:35:26 -07:00
Ryan Dahl
942b3090e7 Remove yarn.lock
Fixes #393.
2018-08-08 10:08:18 -07:00
Ryan Dahl
229e3b80c5 Improve rust build docs 2018-08-03 10:04:12 -04:00
Ryan Dahl
7fe656f4b9 Add 005_more_imports.ts
And run check_output_test in order.
2018-08-02 12:49:40 -04:00
Bert Belder
788b0795de
util: make symlink() work on older Windows versions 2018-08-02 02:59:37 +02:00
Bert Belder
e5b7d31aba
tools/setup: avoid running gn gen twice in the same output directory 2018-08-02 02:59:36 +02:00
Bert Belder
1a6ba1f812
tools: fix tools/clang symlink on startup 2018-08-02 02:59:36 +02:00
Ryan Dahl
b44c235579 Install sysroot on linux. 2018-07-29 00:24:16 -04:00
Ryan Dahl
db65c723ae Rename run_hooks.py to setup.py
Moves 'gn gen' into setup.py

Make tools/build.py more ergonomic.
2018-07-29 00:24:16 -04:00
Kitson Kelly
5d146ed742 Ignore any generated TypeScript files 2018-07-27 10:06:29 -04:00
Ryan Dahl
6b49944da1 Simplify run_rustc.py output. 2018-07-26 11:38:03 -04:00
Kitson Kelly
5562c36824 Remove msg_generated hack (#409) 2018-07-25 23:07:50 -04:00
Bert Belder
4d08bb85a4
Clean up and fix tools
* Make sync_third_party work in general
* Un-break build.py and run_hooks.py on windows
* Partially fix format.py on windows
* Reduce code duplication between run_hooks and sync_third_party
2018-07-25 20:13:17 +02:00
Ryan Dahl
0875411267
Add tools/build.py (#398)
To allow better tab completion for ./tools/build.py
mv build_third_party.py sync_third_party.py
2018-07-24 13:42:23 -04:00
Ryan Dahl
0213053856 Remove handlers crate target.
- Add build scripts for Rust flatbuffers.
- Rewrites some reply.cc methods in Rust.
- Changes some struct elements to table in msg.fbs (rust flatbuffers
  lacks support currently)
- Renames handlers_test to test_rs.
- This reorg is needed to make progress on the code cache handler.
2018-07-24 12:29:54 -04:00
Ryan Dahl
7baf8a0fd1 Fix recursive globbing in tools/format.py
And use third_party/depot_tools/gn.
2018-07-24 12:29:54 -04:00
Bert Belder
dcaf9b3227
Make check_output_test.py tolerate CRLF line endings in test output 2018-07-22 03:50:22 +02:00
Ryan Dahl
dff5c16e85
Add tools/test.py test runner. (#384) 2018-07-21 19:08:24 -04:00
Bert Belder
709b0cb90c Fix symlink creation on windows 2018-07-21 13:04:11 -04:00
Ryan Dahl
5d1cb54261 Add deno_third_party as git submodule. 2018-07-21 13:04:11 -04:00
Ryan Dahl
21c4b8a42d Use 2 space indent.
Apologies for the churn, but my screen is small. rustfmt assumes big
monitors.
2018-07-20 03:46:26 -04:00
Ryan Dahl
a7bf154cb8 Wrap rust at 80 columns. 2018-07-20 03:46:26 -04:00
Bert Belder
422150c797
Link rust_test targets with external linker, fix handlers_test linkage 2018-07-19 21:55:39 +02:00
robbym
d93bd4b127 Use Cargo to install rust deps into //third_party/rust_crates (#383) 2018-07-18 20:00:53 -04:00
Ryan Dahl
d78254009e Reduce unnecessary build output. 2018-07-18 15:43:50 -04:00
Ryan Dahl
f9e0a5dece gclient sync should be shallow 2018-07-13 14:38:50 -04:00
Ryan Dahl
791357115c
Remove -f option from rustfmt. (#356)
And add support for RUSTFMT_FLAGS (Some people might need -f option)
2018-07-10 19:18:30 -04:00
Ryan Dahl
c4d61accf4 Fix rust depfile problem.
Fixes #316.
2018-07-09 16:50:33 -04:00
Yoshiya Hinosawa
46db20172c chore: use local prettier 2018-07-09 11:05:02 -04:00
Bert Belder
7c5db007de tools: fix windows
This fixes most things, but format.py doesn't work yet, because
yapf is broken due to some depot_tools shimming python.
2018-07-08 13:40:18 -04:00
Ryan Dahl
f917c5e722 Clean up tools/
- Factor out tools/util.py
- Move js/*.py to tools.
- Rewrite tools/format.sh in python.
- Run lint first in travis.
2018-07-08 13:40:18 -04:00
Yoshiya Hinosawa
6c79b471aa tools: generate third_party dir and symlinks from the script. (#346)
Everyone needs to run ./tools/build_third_party.py after this commit.
2018-07-08 02:18:14 -04:00
Hao Li
cf0c0668da Rewrite tools/lint.sh in python (#343) 2018-07-08 01:56:03 -04:00
Ryan Dahl
d30664958e Further gn/rust cleanups
Move rust.gni and deno.gni into build_extra/

Removes rust_library which was only an action. This instead defines
rust_component, which is an action plus a gn "component" target
to expose the resulting object file. This simplifies link code in
rust.gni.

Support rust modules that can be linked into C++.
2018-07-06 10:46:30 -04:00
Faris Amali Alis
bfe08aa462 Rename deno.cc to binding.cc and other renames (#339)
Fixes #336
2018-07-06 03:19:19 -04:00
Yoshiya Hinosawa
31eda28a64 chore: clean up build_third_party.py 2018-07-05 20:57:42 -04:00
Ryan Dahl
06a28998ea Replace protobufs with flatbuffers 2018-07-04 16:43:08 -04:00
Yoshiya Hinosawa
2060bc939d Add tools/build_third_party.py (#328)
Fixes #312
2018-07-04 15:04:59 +02:00
Ryan Dahl
15d6541d4d Separate deno.gni and rust.gni and clean up.
Put rust depfile in target_out_dir because the depfile isn't in the
outputs, the gen directory doesn't get created.

Prefix rlib files with lib.
2018-07-04 14:24:25 +02:00
Yoshiya Hinosawa
6f7ca760b8 move v8 to third_party/v8 (#322) 2018-07-03 10:15:32 +02:00
Parsa Ghadimi
235e549035 Add tslint 2018-07-01 21:41:53 +02:00
Yoshiya Hinosawa
ea35281d63 chore: move //src/js to //js
refs: #285
2018-07-01 17:22:36 +02:00
Ryan Dahl
9528ee4a42 Add cpplint to third_party 2018-07-01 15:28:36 +02:00
Yoshiya Hinosawa
6830370c3e reorg: Move GN files to root (#309)
refs: #285
2018-07-01 13:47:28 +02:00
Ryan Dahl
467408c6dc Reorg: Move tools/ and gitignore to root. 2018-06-28 21:56:53 +02:00