rapydscript-ns 0.9.1 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agignore +1 -1
- package/.github/workflows/ci.yml +38 -38
- package/=template.pyj +5 -5
- package/CHANGELOG.md +3 -1
- package/HACKING.md +103 -103
- package/LICENSE +24 -24
- package/README.md +1 -1
- package/TODO.md +117 -0
- package/add-toc-to-readme +2 -2
- package/bin/export +75 -75
- package/bin/rapydscript +70 -70
- package/bin/web-repl-export +102 -102
- package/build +2 -2
- package/language-service/index.js +7 -7
- package/language-service/language-service.d.ts +1 -1
- package/package.json +6 -2
- package/publish.py +37 -37
- package/release/compiler.js +245 -230
- package/release/signatures.json +22 -22
- package/session.vim +4 -4
- package/setup.cfg +2 -2
- package/src/compiler.pyj +36 -36
- package/src/errors.pyj +30 -30
- package/src/lib/aes.pyj +646 -646
- package/src/lib/copy.pyj +120 -120
- package/src/lib/elementmaker.pyj +83 -83
- package/src/lib/encodings.pyj +126 -126
- package/src/lib/gettext.pyj +569 -569
- package/src/lib/itertools.pyj +580 -580
- package/src/lib/math.pyj +193 -193
- package/src/lib/operator.pyj +11 -11
- package/src/lib/pythonize.pyj +20 -20
- package/src/lib/random.pyj +118 -118
- package/src/lib/react.pyj +74 -74
- package/src/lib/traceback.pyj +63 -63
- package/src/lib/uuid.pyj +77 -77
- package/src/monaco-language-service/diagnostics.js +2 -2
- package/src/monaco-language-service/dts.js +550 -550
- package/src/monaco-language-service/index.js +2 -2
- package/src/output/comments.pyj +45 -45
- package/src/output/exceptions.pyj +201 -201
- package/src/output/jsx.pyj +164 -164
- package/src/output/loops.pyj +9 -0
- package/src/output/treeshake.pyj +182 -182
- package/src/output/utils.pyj +72 -72
- package/src/string_interpolation.pyj +72 -72
- package/src/unicode_aliases.pyj +576 -576
- package/src/utils.pyj +192 -192
- package/test/_import_one.pyj +37 -37
- package/test/_import_two/__init__.pyj +11 -11
- package/test/_import_two/level2/deep.pyj +4 -4
- package/test/_import_two/other.pyj +6 -6
- package/test/_import_two/sub.pyj +13 -13
- package/test/aes_vectors.pyj +421 -421
- package/test/annotations.pyj +80 -80
- package/test/decorators.pyj +77 -77
- package/test/docstrings.pyj +39 -39
- package/test/elementmaker_test.pyj +45 -45
- package/test/functions.pyj +151 -151
- package/test/generators.pyj +41 -41
- package/test/generic.pyj +370 -370
- package/test/imports.pyj +72 -72
- package/test/internationalization.pyj +73 -73
- package/test/lint.pyj +164 -164
- package/test/loops.pyj +85 -85
- package/test/numpy.pyj +734 -734
- package/test/omit_function_metadata.pyj +20 -20
- package/test/repl.pyj +121 -121
- package/test/scoped_flags.pyj +76 -76
- package/test/unit/index.js +66 -0
- package/test/unit/language-service-dts.js +543 -543
- package/test/unit/language-service-hover.js +455 -455
- package/test/unit/language-service.js +1 -1
- package/tools/compiler.d.ts +367 -0
- package/tools/completer.js +131 -131
- package/tools/gettext.js +185 -185
- package/tools/ini.js +65 -65
- package/tools/msgfmt.js +187 -187
- package/tools/repl.js +223 -223
- package/tools/test.js +118 -118
- package/tools/utils.js +128 -128
- package/tools/web_repl.js +95 -95
- package/try +41 -41
- package/web-repl/env.js +196 -196
- package/web-repl/index.html +163 -163
- package/web-repl/prism.css +139 -139
- package/web-repl/prism.js +113 -113
- package/web-repl/rapydscript.js +224 -224
- package/web-repl/sha1.js +25 -25
package/bin/rapydscript
CHANGED
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// vim:ft=javascript:ts=4:et
|
|
3
|
-
|
|
4
|
-
"use strict";
|
|
5
|
-
|
|
6
|
-
function load(mod) {
|
|
7
|
-
return require('../tools/' + mod);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
var utils = load('utils');
|
|
11
|
-
|
|
12
|
-
// We need ES 6 generators so relaunch with the --harmony flag
|
|
13
|
-
if (!utils.generators_available()) {
|
|
14
|
-
if (process.execArgv.indexOf('--harmony') != -1) {
|
|
15
|
-
console.error('RapydScript needs ES 6 generators, update your version of nodejs');
|
|
16
|
-
process.exit(1);
|
|
17
|
-
}
|
|
18
|
-
var args = ['--harmony', module.filename].concat(process.argv.slice(2));
|
|
19
|
-
require('child_process').spawn(process.execPath, args, {stdio:'inherit'}).on('exit', function(code, signal) {
|
|
20
|
-
process.exit(code);
|
|
21
|
-
});
|
|
22
|
-
} else {
|
|
23
|
-
|
|
24
|
-
var start_time = new Date().getTime();
|
|
25
|
-
var path = require('path');
|
|
26
|
-
|
|
27
|
-
var argv = load('cli').argv;
|
|
28
|
-
|
|
29
|
-
var base_path = path.normalize(path.join(path.dirname(module.filename), ".."));
|
|
30
|
-
var src_path = path.join(base_path, 'src');
|
|
31
|
-
var lib_path = path.join(base_path, 'dev');
|
|
32
|
-
if (!utils.path_exists(path.join(lib_path, 'compiler.js'))) lib_path = path.join(base_path, 'release');
|
|
33
|
-
|
|
34
|
-
if (argv.mode === 'self') {
|
|
35
|
-
if (argv.files.length > 0) {
|
|
36
|
-
console.error("WARN: Ignoring input files since --self was passed");
|
|
37
|
-
}
|
|
38
|
-
load('self')(base_path, src_path, lib_path, argv.complete, argv.profile);
|
|
39
|
-
if (argv.test) {
|
|
40
|
-
console.log('\nRunning test suite...\n');
|
|
41
|
-
argv.files = []; // Ensure all tests are run
|
|
42
|
-
load('test')(argv, base_path, src_path, path.join(base_path, 'dev'));
|
|
43
|
-
}
|
|
44
|
-
process.exit(0);
|
|
45
|
-
} else
|
|
46
|
-
|
|
47
|
-
if (argv.mode === 'test') {
|
|
48
|
-
load('test')(argv, base_path, src_path, lib_path);
|
|
49
|
-
} else
|
|
50
|
-
|
|
51
|
-
if (argv.mode === 'lint') {
|
|
52
|
-
load('lint').cli(argv, base_path, src_path, lib_path);
|
|
53
|
-
} else
|
|
54
|
-
|
|
55
|
-
if (argv.mode === 'repl') {
|
|
56
|
-
load('repl')({'lib_path':lib_path, 'imp_path':path.join(src_path, 'lib'), show_js:!argv.no_js});
|
|
57
|
-
} else
|
|
58
|
-
|
|
59
|
-
if (argv.mode === 'gettext') {
|
|
60
|
-
load('gettext').cli(argv, base_path, src_path, lib_path);
|
|
61
|
-
} else
|
|
62
|
-
|
|
63
|
-
if (argv.mode === 'msgfmt') {
|
|
64
|
-
load('msgfmt').cli(argv, base_path, src_path, lib_path);
|
|
65
|
-
} else
|
|
66
|
-
|
|
67
|
-
{
|
|
68
|
-
load('compile')(start_time, argv, base_path, src_path, lib_path);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// vim:ft=javascript:ts=4:et
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
|
|
6
|
+
function load(mod) {
|
|
7
|
+
return require('../tools/' + mod);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
var utils = load('utils');
|
|
11
|
+
|
|
12
|
+
// We need ES 6 generators so relaunch with the --harmony flag
|
|
13
|
+
if (!utils.generators_available()) {
|
|
14
|
+
if (process.execArgv.indexOf('--harmony') != -1) {
|
|
15
|
+
console.error('RapydScript needs ES 6 generators, update your version of nodejs');
|
|
16
|
+
process.exit(1);
|
|
17
|
+
}
|
|
18
|
+
var args = ['--harmony', module.filename].concat(process.argv.slice(2));
|
|
19
|
+
require('child_process').spawn(process.execPath, args, {stdio:'inherit'}).on('exit', function(code, signal) {
|
|
20
|
+
process.exit(code);
|
|
21
|
+
});
|
|
22
|
+
} else {
|
|
23
|
+
|
|
24
|
+
var start_time = new Date().getTime();
|
|
25
|
+
var path = require('path');
|
|
26
|
+
|
|
27
|
+
var argv = load('cli').argv;
|
|
28
|
+
|
|
29
|
+
var base_path = path.normalize(path.join(path.dirname(module.filename), ".."));
|
|
30
|
+
var src_path = path.join(base_path, 'src');
|
|
31
|
+
var lib_path = path.join(base_path, 'dev');
|
|
32
|
+
if (!utils.path_exists(path.join(lib_path, 'compiler.js'))) lib_path = path.join(base_path, 'release');
|
|
33
|
+
|
|
34
|
+
if (argv.mode === 'self') {
|
|
35
|
+
if (argv.files.length > 0) {
|
|
36
|
+
console.error("WARN: Ignoring input files since --self was passed");
|
|
37
|
+
}
|
|
38
|
+
load('self')(base_path, src_path, lib_path, argv.complete, argv.profile);
|
|
39
|
+
if (argv.test) {
|
|
40
|
+
console.log('\nRunning test suite...\n');
|
|
41
|
+
argv.files = []; // Ensure all tests are run
|
|
42
|
+
load('test')(argv, base_path, src_path, path.join(base_path, 'dev'));
|
|
43
|
+
}
|
|
44
|
+
process.exit(0);
|
|
45
|
+
} else
|
|
46
|
+
|
|
47
|
+
if (argv.mode === 'test') {
|
|
48
|
+
load('test')(argv, base_path, src_path, lib_path);
|
|
49
|
+
} else
|
|
50
|
+
|
|
51
|
+
if (argv.mode === 'lint') {
|
|
52
|
+
load('lint').cli(argv, base_path, src_path, lib_path);
|
|
53
|
+
} else
|
|
54
|
+
|
|
55
|
+
if (argv.mode === 'repl') {
|
|
56
|
+
load('repl')({'lib_path':lib_path, 'imp_path':path.join(src_path, 'lib'), show_js:!argv.no_js});
|
|
57
|
+
} else
|
|
58
|
+
|
|
59
|
+
if (argv.mode === 'gettext') {
|
|
60
|
+
load('gettext').cli(argv, base_path, src_path, lib_path);
|
|
61
|
+
} else
|
|
62
|
+
|
|
63
|
+
if (argv.mode === 'msgfmt') {
|
|
64
|
+
load('msgfmt').cli(argv, base_path, src_path, lib_path);
|
|
65
|
+
} else
|
|
66
|
+
|
|
67
|
+
{
|
|
68
|
+
load('compile')(start_time, argv, base_path, src_path, lib_path);
|
|
69
|
+
}
|
|
70
|
+
}
|
package/bin/web-repl-export
CHANGED
|
@@ -1,102 +1,102 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// vim:ft=javascript:ts=4:et
|
|
3
|
-
|
|
4
|
-
"use strict";
|
|
5
|
-
|
|
6
|
-
var fs = require('fs');
|
|
7
|
-
var path = require('path');
|
|
8
|
-
|
|
9
|
-
var base = path.normalize(path.resolve(path.join(path.dirname(__dirname))));
|
|
10
|
-
var meta = JSON.parse(fs.readFileSync(path.join(base, 'package.json'), {'encoding':'utf-8'}));
|
|
11
|
-
var commit_sha = fs.readFileSync(path.join(base, '.git', 'refs', 'heads', 'master'), {'encoding':'utf-8'}).trim();
|
|
12
|
-
var compiler_dir = path.join(base, 'dev');
|
|
13
|
-
if (!path_exists(path.join(compiler_dir, 'compiler.js'))) compiler_dir = path.join(base, 'release');
|
|
14
|
-
|
|
15
|
-
var manifest = {}, total = 0;
|
|
16
|
-
['compiler.js', 'baselib-plain-pretty.js'].forEach(function(x) {
|
|
17
|
-
manifest[x] = fs.readFileSync(path.join(compiler_dir, x), {'encoding':'utf-8'});
|
|
18
|
-
total += manifest[x].length;
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
['web_repl.js', 'embedded_compiler.js', 'utils.js', 'completer.js', 'msgfmt.js', 'gettext.js'].forEach(function(x) {
|
|
22
|
-
x = 'tools/' + x;
|
|
23
|
-
manifest[x] = fs.readFileSync(path.join(base, x), {'encoding':'utf-8'});
|
|
24
|
-
total += manifest[x].length;
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
var stdlib = path.join(base, 'src', 'lib');
|
|
28
|
-
|
|
29
|
-
function path_exists(path) {
|
|
30
|
-
try {
|
|
31
|
-
fs.statSync(path);
|
|
32
|
-
return true;
|
|
33
|
-
} catch(e) {
|
|
34
|
-
if (e.code != 'ENOENT') throw e;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function process_dir(relpath) {
|
|
39
|
-
var fullpath = (relpath) ? path.join(stdlib, relpath) : stdlib;
|
|
40
|
-
fs.readdirSync(fullpath).forEach(function (x) {
|
|
41
|
-
var q = path.join(fullpath, x);
|
|
42
|
-
var s = fs.statSync(q);
|
|
43
|
-
if (s.isDirectory()) return process_dir(relpath + '/' + x);
|
|
44
|
-
if (!x.endsWith('.pyj')) return;
|
|
45
|
-
var iname = ('__stdlib__' + '/' + relpath + '/' + x).replace(/\\/g, '/').replace(/\/+/g, '/');
|
|
46
|
-
var raw = fs.readFileSync(q, {'encoding':'utf-8'});
|
|
47
|
-
manifest[iname] = raw;
|
|
48
|
-
total += s.size;
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
process_dir('');
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
var rs = '// vim:fileencoding=utf-8\n';
|
|
55
|
-
rs += '(function(external_namespace) {\n';
|
|
56
|
-
rs += '"use strict;"\n';
|
|
57
|
-
rs += 'var rs_version = ' + JSON.stringify(meta.version) + ';\n';
|
|
58
|
-
rs += 'var rs_commit_sha = ' + JSON.stringify(commit_sha) + ';\n';
|
|
59
|
-
rs += '\n// Embedded modules {{{\n';
|
|
60
|
-
rs += 'var data = ' + JSON.stringify(manifest) + ';\n\n';
|
|
61
|
-
rs += '// End embedded modules }}}\n\n';
|
|
62
|
-
rs += fs.readFileSync(path.join(base, 'web-repl', 'env.js'));
|
|
63
|
-
rs += '\n// Embedded sha1 implementation {{{\n';
|
|
64
|
-
rs += '(function() {\n';
|
|
65
|
-
rs += fs.readFileSync(path.join(base, 'web-repl', 'sha1.js'));
|
|
66
|
-
rs += '}).call(jsSHA);\n';
|
|
67
|
-
rs += '// End embedded sha1 implementation }}}\n\n';
|
|
68
|
-
rs += 'var exports = namespace;\n';
|
|
69
|
-
rs += fs.readFileSync(path.join(base, 'tools', 'export.js'), {'encoding':'utf-8'});
|
|
70
|
-
rs += 'external_namespace.RapydScript = namespace;\n';
|
|
71
|
-
rs += '})(this);\n';
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
var base_dir = process.argv.slice(-1)[0];
|
|
75
|
-
if (process.argv.length !== 3) {
|
|
76
|
-
console.error('Usage: web-repl-export /path/to/export/directory');
|
|
77
|
-
process.exit(1);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
base_dir = path.normalize(path.resolve(base_dir));
|
|
81
|
-
|
|
82
|
-
try {
|
|
83
|
-
fs.mkdirSync(base_dir);
|
|
84
|
-
} catch(e) {
|
|
85
|
-
if (e.code !== 'EEXIST') throw e;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
try {
|
|
89
|
-
process.chdir(base_dir);
|
|
90
|
-
} catch(e) {
|
|
91
|
-
if (e.code === 'ENOTDIR') { console.error(base_dir + ' is not a directory'); process.exit(1); }
|
|
92
|
-
throw e;
|
|
93
|
-
}
|
|
94
|
-
fs.writeFileSync('rapydscript.js', rs, {'encoding':'utf-8'});
|
|
95
|
-
var web_repl = path.join(base, 'web-repl');
|
|
96
|
-
fs.readdirSync(web_repl).forEach(function(x) {
|
|
97
|
-
if (['sha1.js', 'env.js'].indexOf(x) !== -1) return;
|
|
98
|
-
var data = fs.readFileSync(path.join(web_repl, x), {'encoding':'utf-8'});
|
|
99
|
-
fs.writeFileSync(x, data, {'encoding':'utf-8'});
|
|
100
|
-
});
|
|
101
|
-
console.log('RapydScript compiler (uncompressed) size: ' + (total/(1024)).toFixed(1) + ' KB');
|
|
102
|
-
console.log('web-repl exported to: ' + base_dir);
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// vim:ft=javascript:ts=4:et
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
|
|
6
|
+
var fs = require('fs');
|
|
7
|
+
var path = require('path');
|
|
8
|
+
|
|
9
|
+
var base = path.normalize(path.resolve(path.join(path.dirname(__dirname))));
|
|
10
|
+
var meta = JSON.parse(fs.readFileSync(path.join(base, 'package.json'), {'encoding':'utf-8'}));
|
|
11
|
+
var commit_sha = fs.readFileSync(path.join(base, '.git', 'refs', 'heads', 'master'), {'encoding':'utf-8'}).trim();
|
|
12
|
+
var compiler_dir = path.join(base, 'dev');
|
|
13
|
+
if (!path_exists(path.join(compiler_dir, 'compiler.js'))) compiler_dir = path.join(base, 'release');
|
|
14
|
+
|
|
15
|
+
var manifest = {}, total = 0;
|
|
16
|
+
['compiler.js', 'baselib-plain-pretty.js'].forEach(function(x) {
|
|
17
|
+
manifest[x] = fs.readFileSync(path.join(compiler_dir, x), {'encoding':'utf-8'});
|
|
18
|
+
total += manifest[x].length;
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
['web_repl.js', 'embedded_compiler.js', 'utils.js', 'completer.js', 'msgfmt.js', 'gettext.js'].forEach(function(x) {
|
|
22
|
+
x = 'tools/' + x;
|
|
23
|
+
manifest[x] = fs.readFileSync(path.join(base, x), {'encoding':'utf-8'});
|
|
24
|
+
total += manifest[x].length;
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
var stdlib = path.join(base, 'src', 'lib');
|
|
28
|
+
|
|
29
|
+
function path_exists(path) {
|
|
30
|
+
try {
|
|
31
|
+
fs.statSync(path);
|
|
32
|
+
return true;
|
|
33
|
+
} catch(e) {
|
|
34
|
+
if (e.code != 'ENOENT') throw e;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function process_dir(relpath) {
|
|
39
|
+
var fullpath = (relpath) ? path.join(stdlib, relpath) : stdlib;
|
|
40
|
+
fs.readdirSync(fullpath).forEach(function (x) {
|
|
41
|
+
var q = path.join(fullpath, x);
|
|
42
|
+
var s = fs.statSync(q);
|
|
43
|
+
if (s.isDirectory()) return process_dir(relpath + '/' + x);
|
|
44
|
+
if (!x.endsWith('.pyj')) return;
|
|
45
|
+
var iname = ('__stdlib__' + '/' + relpath + '/' + x).replace(/\\/g, '/').replace(/\/+/g, '/');
|
|
46
|
+
var raw = fs.readFileSync(q, {'encoding':'utf-8'});
|
|
47
|
+
manifest[iname] = raw;
|
|
48
|
+
total += s.size;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
process_dir('');
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
var rs = '// vim:fileencoding=utf-8\n';
|
|
55
|
+
rs += '(function(external_namespace) {\n';
|
|
56
|
+
rs += '"use strict;"\n';
|
|
57
|
+
rs += 'var rs_version = ' + JSON.stringify(meta.version) + ';\n';
|
|
58
|
+
rs += 'var rs_commit_sha = ' + JSON.stringify(commit_sha) + ';\n';
|
|
59
|
+
rs += '\n// Embedded modules {{{\n';
|
|
60
|
+
rs += 'var data = ' + JSON.stringify(manifest) + ';\n\n';
|
|
61
|
+
rs += '// End embedded modules }}}\n\n';
|
|
62
|
+
rs += fs.readFileSync(path.join(base, 'web-repl', 'env.js'));
|
|
63
|
+
rs += '\n// Embedded sha1 implementation {{{\n';
|
|
64
|
+
rs += '(function() {\n';
|
|
65
|
+
rs += fs.readFileSync(path.join(base, 'web-repl', 'sha1.js'));
|
|
66
|
+
rs += '}).call(jsSHA);\n';
|
|
67
|
+
rs += '// End embedded sha1 implementation }}}\n\n';
|
|
68
|
+
rs += 'var exports = namespace;\n';
|
|
69
|
+
rs += fs.readFileSync(path.join(base, 'tools', 'export.js'), {'encoding':'utf-8'});
|
|
70
|
+
rs += 'external_namespace.RapydScript = namespace;\n';
|
|
71
|
+
rs += '})(this);\n';
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
var base_dir = process.argv.slice(-1)[0];
|
|
75
|
+
if (process.argv.length !== 3) {
|
|
76
|
+
console.error('Usage: web-repl-export /path/to/export/directory');
|
|
77
|
+
process.exit(1);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
base_dir = path.normalize(path.resolve(base_dir));
|
|
81
|
+
|
|
82
|
+
try {
|
|
83
|
+
fs.mkdirSync(base_dir);
|
|
84
|
+
} catch(e) {
|
|
85
|
+
if (e.code !== 'EEXIST') throw e;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
process.chdir(base_dir);
|
|
90
|
+
} catch(e) {
|
|
91
|
+
if (e.code === 'ENOTDIR') { console.error(base_dir + ' is not a directory'); process.exit(1); }
|
|
92
|
+
throw e;
|
|
93
|
+
}
|
|
94
|
+
fs.writeFileSync('rapydscript.js', rs, {'encoding':'utf-8'});
|
|
95
|
+
var web_repl = path.join(base, 'web-repl');
|
|
96
|
+
fs.readdirSync(web_repl).forEach(function(x) {
|
|
97
|
+
if (['sha1.js', 'env.js'].indexOf(x) !== -1) return;
|
|
98
|
+
var data = fs.readFileSync(path.join(web_repl, x), {'encoding':'utf-8'});
|
|
99
|
+
fs.writeFileSync(x, data, {'encoding':'utf-8'});
|
|
100
|
+
});
|
|
101
|
+
console.log('RapydScript compiler (uncompressed) size: ' + (total/(1024)).toFixed(1) + ' KB');
|
|
102
|
+
console.log('web-repl exported to: ' + base_dir);
|
package/build
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
exec bin/rapydscript self --complete --test
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
exec bin/rapydscript self --complete --test
|
|
3
3
|
exec bin/web-repl-export web-repl
|