1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-25 00:29:09 -05:00

Add a simple doc generation tool.

And website upload tool.
This commit is contained in:
Ryan Dahl 2018-11-14 09:38:42 -05:00
parent fbaa40f6dc
commit 765863e87a
6 changed files with 58 additions and 2 deletions

26
tools/docs.py Executable file
View file

@ -0,0 +1,26 @@
#!/usr/bin/env python
# Copyright 2018 the Deno authors. All rights reserved. MIT license.
import os
import tempfile
from util import run, root_path
target_path = os.path.join(root_path, "target/")
os.chdir(root_path)
# Builds into target/doc
run(["cargo", "doc", "--no-deps", "-vv"])
# 'deno --types' is stored in target/debug/gen/lib/lib.deno_runtime.d.ts
# We want to run typedoc on that declaration file only.
os.chdir(os.path.join(target_path, "debug/gen/lib/"))
# You must have typedoc installed seprately.
# TODO Replace typedoc with something else ASAP. It's very awful.
run([
"typedoc", "lib.deno_runtime.d.ts", "--out",
os.path.join(target_path, "typedoc"), "--entryPoint", "\"deno\"",
"--ignoreCompilerErrors", "--includeDeclarations", "--excludeExternals",
"--excludePrivate", "--excludeProtected", "--mode", "file", "--name",
"deno", "--theme", "minimal", "--readme", "none"
])

18
tools/upload_website.py Executable file
View file

@ -0,0 +1,18 @@
#!/usr/bin/env python
# Copyright 2018 the Deno authors. All rights reserved. MIT license.
import os
import tempfile
from util import run, root_path
# Probably run tools/docs.py first.
# AWS CLI must be installed separately.
os.chdir(os.path.join(root_path, "website"))
# Invalidate the cache.
run([
"aws", "cloudfront", "create-invalidation", "--distribution-id",
"E3NZSZMS5TZ0OU", "--paths", "/*"
])
run(["aws", "s3", "sync", ".", "s3://deno.land/"])

View file

@ -182,6 +182,13 @@ function formatSecsAsMins(t) {
* @param dataUrl The url of benchramk data json. * @param dataUrl The url of benchramk data json.
*/ */
export function drawCharts(dataUrl) { export function drawCharts(dataUrl) {
// TODO Using window["location"]["hostname"] instead of
// window.location.hostname because when deno runs app_test.js it gets a type
// error here, not knowing about window.location. Ideally Deno would skip
// type check entirely on JS files.
if (window["location"]["hostname"] != "deno.github.io") {
dataUrl = "https://denoland.github.io/deno/" + dataUrl;
}
drawChartsFromBenchmarkData(dataUrl); drawChartsFromBenchmarkData(dataUrl);
drawChartsFromTravisData(); drawChartsFromTravisData();
} }

View file

@ -13,7 +13,9 @@
<p> <a href="https://github.com/denoland/deno">github.com/denoland/deno</a> <p> <a href="https://github.com/denoland/deno">github.com/denoland/deno</a>
<p> <a href="https://github.com/denoland/deno/blob/master/Docs.md">Docs</a> <p> <a href="https://github.com/denoland/deno/blob/master/Docs.md">Intro</a>
<p> <a href="typedoc/index.html">TypeScript API</a>
<p> <a href="rustdoc/deno/index.html">Rust API</a>
<h2>Execution time</h2> <h2>Execution time</h2>
This shows how much time total it takes to run a few simple deno programs: This shows how much time total it takes to run a few simple deno programs:
@ -58,7 +60,8 @@
<script type="module"> <script type="module">
import { drawCharts } from "./app.js"; import { drawCharts } from "./app.js";
drawCharts("./recent.json");
drawCharts("recent.json");
</script> </script>
</body> </body>
</html> </html>

1
website/rustdoc Symbolic link
View file

@ -0,0 +1 @@
../target/doc/

1
website/typedoc Symbolic link
View file

@ -0,0 +1 @@
../target/typedoc/