1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-14 16:33:45 -05:00
denoland-deno/tools/cargo_publish_others.py
Ryan Dahl c9ef182886
Make deno_cli installable via crates.io (#2946)
- Fixes cargo publish on deno_typescript, deno_cli_snapshots, and
  deno_cli.
- Combines cli_snapshots and js into one directory.
- Extracts TS version at compile time rather than runtime
- Bumps version awkwardly - it was necessary to test end-to-end
  publishing. Sorry.
- Adds git submodule deno_typescript/typescript
2019-09-15 18:36:27 -04:00

34 lines
868 B
Python
Executable file

#!/usr/bin/env python
# Publishes 'deno_cli', 'deno_cli_snapshots', and 'deno_typescript' crates.
# DOES NOT PUBLISH 'deno' crate see tools/cargo_package.py for that.
import os
import sys
import argparse
from util import run, root_path
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--dry-run", action="store_true")
args = parser.parse_args()
cargo_publish = ["cargo", "publish"]
if args.dry_run:
cargo_publish += ["--dry-run"]
# Publish the deno_typescript crate.
os.chdir(os.path.join(root_path, "deno_typescript"))
run(cargo_publish)
# Publish the deno_cli_snapshots crate.
os.chdir(os.path.join(root_path, "js"))
run(cargo_publish)
# Publish the deno_cli crate.
os.chdir(os.path.join(root_path, "cli"))
run(cargo_publish)
if __name__ == '__main__':
sys.exit(main())