pulumi/tools/mujs
2017-02-03 21:03:34 -08:00
..
cmd Fix a lint error that crept in: missing semicolon 2017-02-03 20:20:43 -08:00
lib Emit proper TypeToken AST nodes 2017-02-03 21:03:34 -08:00
tests Add map tests 2017-02-02 14:57:37 -08:00
.gitignore Add a new harness for test cases 2017-01-08 15:20:46 -06:00
mujs Add a handy executable wrapper for MuJS 2017-01-08 15:34:10 -06:00
package.json Colorize MuJS errors/warnings 2017-02-02 16:47:45 -08:00
README.md Update some READMEs from last night 2017-02-02 11:09:33 -08:00
tsconfig.json Emit good tokens 2017-01-30 13:00:53 -08:00
tslint.json Upgrade to latest TSLint, and compile cleanly 2016-12-31 11:16:36 -08:00
yarn.lock Colorize MuJS errors/warnings 2017-02-02 16:47:45 -08:00

MuJS

This directory contains Mu's JavaScript compiler.

It implements a subset of JavaScript with TypeScript-style type annotations, and can compile that subset into MuPack/IL.

Building and Testing

MuJS is built independent from the overall Mu toolchain. First clone and cd to the right place:

$ git clone git@github.com:marapongo/mu
$ cd mu/tools/mujs

Next, install dependencies, ideally using Yarn:

$ yarn install

(NPM can be used instead, but Yarn offers better performance, reliability, and security, so it's what we use below.)

From there, to build:

$ yarn run build

It's possible to simply run the TypeScript compiler using tsc, however the Yarn build step performs a couple extra steps; namely, it runs TSLint and also copies some test baseline files into the right place.

Next, to test, simply run:

$ yarn run test

It will be obvious if the tests passed or failed and, afterwards, code coverage data will be output to the console.

Libraries

In order to use the Mu libraries -- including the Mu standard library -- you will need to do a few additional steps to prepare your developer workspace. Please see this document for details on how to do this.