Eshost-cli

eshost-cli

Run ECMAScript code uniformly across any ECMAScript host.

eshost-cli makes it easy to run and compare ECMAScript code uniformly across a number of runtimes. Support for runtimes is provided by the library eshost.

Get it: npm install -g eshost-cli

Sample usage:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
nmotw.in> eshost -e 'Date.parse("1 Octopus 2018")'

#### Chakra
NaN

#### JavaScriptCore
1538332200000

#### SpiderMonkey
NaN

#### V8
1538332200000

#### V8 --harmony
1538332200000

#### XS
NaN
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
nmotw.in> eshost --help
Usage: eshost [options] [input-file]
       eshost [options] -e "input-script"
       eshost --list
       eshost --add [host name] [host type] <host path> --args <host arguments>
       eshost --delete [host name]

Options:
  -e, --eval        eval an expression and print the result
  -x, --execute     execute a multi-statement program
  -h, --host        select hosts by name (glob syntax is supported as well)
  -g, --hostGroup   select host groups by host type
  --tags            select hosts by tag
  -c, --config      select a config file
  --table, -t       output in a table                                  [boolean]
  --coalesce, -s    coalesce like output into a single entry           [boolean]
  --showSource, -i  show input source                                  [boolean]
  --unanimous, -u   If all engines agree, exit(0) with no output, otherwise
                    print and exit(1); implies --coalesce              [boolean]
  --add             add a host
  --edit            edit a host
  --delete          delete a host
  --args            set arguments for a host entry (use with --add)
  --configure-jsvu  Configure jsvu hosts in the config                 [boolean]
  --jsvu-prefix     [OPTIONAL] Set the prefix of the configured hosts. If prefix
                    is "jsvu" then hosts will be configured as, e.g., "jsvu-sm".
                    By default, no prefix (e.g. "sm"). Use this flag with
                    --configure-jsvu.
  --jsvu-root       [OPTIONAL] Use this path containing the .jsvu folder (use
                    this option if .jsvu is located somewhere other than the
                    home directory). Use this flag with --configure-jsvu.
  --help            Show help                                          [boolean]
  -a, --async       wait for realm destruction before reporting results[boolean]

Examples:
  eshost --list
  eshost --add d8 d8 path/to/d8 --args
  "--harmony"
  eshost --add ch ch path/to/ch --tags
  latest
  eshost --add ch ch path/to/ch --tags
  latest,greatest
  eshost --configure-jsvu
  eshost --configure-jsvu --jsvu-prefix
  jsvu
  eshost test.js
  eshost -e "1+1"
  eshost -its -x "for (let i=0; i<10; ++i)
  { print(i) }"
  eshost -h d8 -h chakra test.js
  eshost -h d8,sm test.js
  eshost -g node,ch test.js
  eshost -h d8 -g node test.js
  eshost -h ch-*,node test.js
  eshost -h ch-1.?.? test.js
  eshost --tags latest test.js
  eshost --unanimous test.js

GIT FTW!

eshost-cli

Suggest a module

Comments