1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
denoland-deno/tools/format.py
2018-10-21 13:59:53 -07:00

48 lines
1.8 KiB
Python
Executable file

#!/usr/bin/env python
# Copyright 2018 the Deno authors. All rights reserved. MIT license.
from glob import glob
import os
import sys
from third_party import third_party_path, fix_symlinks, google_env, clang_format_path
from util import root_path, run, find_exts, platform
fix_symlinks()
prettier = os.path.join(third_party_path, "node_modules", "prettier",
"bin-prettier.js")
tools_path = os.path.join(root_path, "tools")
rustfmt_config = os.path.join(tools_path, "rustfmt.toml")
os.chdir(root_path)
run([clang_format_path, "-i", "-style", "Google"] +
find_exts("libdeno", ".cc", ".h"))
for fn in ["BUILD.gn", ".gn"] + find_exts("build_extra", ".gn", ".gni"):
run(["third_party/depot_tools/gn", "format", fn], env=google_env())
# We use `glob()` instead of `find_exts()` in the tools directory, because:
# * On Windows, `os.walk()` (called by `find_exts()`) follows symlinks.
# * The tools directory contains a symlink 'clang', pointing at the directory
# 'third_party/v8/tools/clang', which contains many .py files.
# * These third party python files shouldn't be formatted.
# * The tools directory has no subdirectories, so `glob()` is sufficient.
run([sys.executable, "third_party/yapf/yapf", "-i"] + glob("tools/*.py") +
find_exts("build_extra", ".py"),
merge_env={"PYTHONPATH": "third_party/yapf"})
# yapf: disable
run(["node", prettier, "--write"] +
["rollup.config.js"] + glob("*.json") + glob("*.md") +
find_exts(".github/", ".md") +
find_exts("js/", ".js", ".ts", ".md") +
find_exts("tests/", ".js", ".ts", ".md") +
find_exts("tools/", ".js", ".json", ".ts", ".md") +
find_exts("website/", ".js", ".ts", ".md"))
# yapf: enable
run([
"third_party/rustfmt/" + platform() +
"/rustfmt", "--config-path", rustfmt_config
] + find_exts("src/", ".rs"))