@markw65/monkeyc-optimizer 1.1.65 → 1.1.67

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.
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_67LU4GPQ_exports = {};
30
- __export(chunk_67LU4GPQ_exports, {
29
+ var chunk_OASVKTK5_exports = {};
30
+ __export(chunk_OASVKTK5_exports, {
31
31
  AwaitedError: () => AwaitedError,
32
32
  GenericQueue: () => GenericQueue,
33
33
  bumpLogging: () => bumpLogging,
@@ -55,7 +55,7 @@ __export(chunk_67LU4GPQ_exports, {
55
55
  spawnByLine: () => spawnByLine,
56
56
  wouldLog: () => wouldLog
57
57
  });
58
- module.exports = __toCommonJS(chunk_67LU4GPQ_exports);
58
+ module.exports = __toCommonJS(chunk_OASVKTK5_exports);
59
59
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
60
60
  var child_process = __toESM(require("child_process"));
61
61
  var fsc = __toESM(require("fs"));
@@ -5729,7 +5729,10 @@ var init_util = (0, import_chunk_ABYVSU2C.__esm)({
5729
5729
  this.messagePromise = messagePromise;
5730
5730
  }
5731
5731
  resolve() {
5732
- return this.messagePromise.then((message) => this.message = message);
5732
+ return this.messagePromise.then((message) => {
5733
+ this.message = message;
5734
+ return this;
5735
+ });
5733
5736
  }
5734
5737
  };
5735
5738
  }
@@ -18,29 +18,30 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var optimizer_exports = {};
20
20
  __export(optimizer_exports, {
21
- StateNodeAttributes: () => import_chunk_MDTDXRQB.StateNodeAttributes,
22
- buildConfigDescription: () => import_chunk_MDTDXRQB.buildConfigDescription,
23
- buildOptimizedProject: () => import_chunk_MDTDXRQB.buildOptimizedProject,
24
- copyRecursiveAsNeeded: () => import_chunk_67LU4GPQ.copyRecursiveAsNeeded,
25
- defaultConfig: () => import_chunk_MDTDXRQB.defaultConfig,
26
- display: () => import_chunk_MDTDXRQB.display,
27
- generateOneConfig: () => import_chunk_MDTDXRQB.generateOneConfig,
28
- generateOptimizedProject: () => import_chunk_MDTDXRQB.generateOptimizedProject,
29
- getConfig: () => import_chunk_MDTDXRQB.getConfig,
30
- getProjectAnalysis: () => import_chunk_MDTDXRQB.getProjectAnalysis,
31
- get_jungle: () => import_chunk_MDTDXRQB.get_jungle,
32
- isErrorWithLocation: () => import_chunk_MDTDXRQB.isErrorWithLocation,
33
- launchSimulator: () => import_chunk_MDTDXRQB.launchSimulator,
34
- manifestProducts: () => import_chunk_MDTDXRQB.manifestProducts,
35
- mctree: () => import_chunk_MDTDXRQB.mctree,
36
- simulateProgram: () => import_chunk_MDTDXRQB.simulateProgram
21
+ StateNodeAttributes: () => import_chunk_2OEXWI65.StateNodeAttributes,
22
+ buildConfigDescription: () => import_chunk_2OEXWI65.buildConfigDescription,
23
+ buildOptimizedProject: () => import_chunk_2OEXWI65.buildOptimizedProject,
24
+ copyRecursiveAsNeeded: () => import_chunk_OASVKTK5.copyRecursiveAsNeeded,
25
+ defaultConfig: () => import_chunk_2OEXWI65.defaultConfig,
26
+ display: () => import_chunk_2OEXWI65.display,
27
+ generateOneConfig: () => import_chunk_2OEXWI65.generateOneConfig,
28
+ generateOptimizedProject: () => import_chunk_2OEXWI65.generateOptimizedProject,
29
+ getConfig: () => import_chunk_2OEXWI65.getConfig,
30
+ getFnMapAnalysis: () => import_chunk_2OEXWI65.getFnMapAnalysis,
31
+ getProjectAnalysis: () => import_chunk_2OEXWI65.getProjectAnalysis,
32
+ get_jungle: () => import_chunk_2OEXWI65.get_jungle,
33
+ isErrorWithLocation: () => import_chunk_2OEXWI65.isErrorWithLocation,
34
+ launchSimulator: () => import_chunk_2OEXWI65.launchSimulator,
35
+ manifestProducts: () => import_chunk_2OEXWI65.manifestProducts,
36
+ mctree: () => import_chunk_2OEXWI65.mctree,
37
+ simulateProgram: () => import_chunk_2OEXWI65.simulateProgram
37
38
  });
38
39
  module.exports = __toCommonJS(optimizer_exports);
39
- var import_chunk_MDTDXRQB = require("./chunk-MDTDXRQB.cjs");
40
- var import_chunk_67LU4GPQ = require("./chunk-67LU4GPQ.cjs");
40
+ var import_chunk_2OEXWI65 = require("./chunk-2OEXWI65.cjs");
41
+ var import_chunk_OASVKTK5 = require("./chunk-OASVKTK5.cjs");
41
42
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
42
43
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
43
- (0, import_chunk_MDTDXRQB.init_optimizer)();
44
+ (0, import_chunk_2OEXWI65.init_optimizer)();
44
45
  // Annotate the CommonJS export names for ESM import in node:
45
46
  0 && (module.exports = {
46
47
  StateNodeAttributes,
@@ -52,6 +53,7 @@ var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
52
53
  generateOneConfig,
53
54
  generateOptimizedProject,
54
55
  getConfig,
56
+ getFnMapAnalysis,
55
57
  getProjectAnalysis,
56
58
  get_jungle,
57
59
  isErrorWithLocation,
@@ -18,25 +18,25 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var sdk_util_exports = {};
20
20
  __export(sdk_util_exports, {
21
- SectionKinds: () => import_chunk_MDTDXRQB.SectionKinds,
22
- appSupport: () => import_chunk_MDTDXRQB.appSupport,
23
- connectiq: () => import_chunk_MDTDXRQB.connectiq,
24
- getDeviceInfo: () => import_chunk_MDTDXRQB.getDeviceInfo,
25
- getFunctionDocumentation: () => import_chunk_MDTDXRQB.getFunctionDocumentation,
26
- getLanguages: () => import_chunk_MDTDXRQB.getLanguages,
27
- getSdkPath: () => import_chunk_MDTDXRQB.getSdkPath,
28
- isWin: () => import_chunk_MDTDXRQB.isWin,
29
- optimizeProgram: () => import_chunk_MDTDXRQB.optimizeProgram,
30
- readPrg: () => import_chunk_MDTDXRQB.readPrg,
31
- readPrgWithOffsets: () => import_chunk_MDTDXRQB.readPrgWithOffsets,
32
- xmlUtil: () => import_chunk_MDTDXRQB.xml_util_exports
21
+ SectionKinds: () => import_chunk_2OEXWI65.SectionKinds,
22
+ appSupport: () => import_chunk_2OEXWI65.appSupport,
23
+ connectiq: () => import_chunk_2OEXWI65.connectiq,
24
+ getDeviceInfo: () => import_chunk_2OEXWI65.getDeviceInfo,
25
+ getFunctionDocumentation: () => import_chunk_2OEXWI65.getFunctionDocumentation,
26
+ getLanguages: () => import_chunk_2OEXWI65.getLanguages,
27
+ getSdkPath: () => import_chunk_2OEXWI65.getSdkPath,
28
+ isWin: () => import_chunk_2OEXWI65.isWin,
29
+ optimizeProgram: () => import_chunk_2OEXWI65.optimizeProgram,
30
+ readPrg: () => import_chunk_2OEXWI65.readPrg,
31
+ readPrgWithOffsets: () => import_chunk_2OEXWI65.readPrgWithOffsets,
32
+ xmlUtil: () => import_chunk_2OEXWI65.xml_util_exports
33
33
  });
34
34
  module.exports = __toCommonJS(sdk_util_exports);
35
- var import_chunk_MDTDXRQB = require("./chunk-MDTDXRQB.cjs");
36
- var import_chunk_67LU4GPQ = require("./chunk-67LU4GPQ.cjs");
35
+ var import_chunk_2OEXWI65 = require("./chunk-2OEXWI65.cjs");
36
+ var import_chunk_OASVKTK5 = require("./chunk-OASVKTK5.cjs");
37
37
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
38
38
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
39
- (0, import_chunk_MDTDXRQB.init_sdk_util)();
39
+ (0, import_chunk_2OEXWI65.init_sdk_util)();
40
40
  // Annotate the CommonJS export names for ESM import in node:
41
41
  0 && (module.exports = {
42
42
  SectionKinds,
@@ -2,6 +2,7 @@ export type DiagnosticType = "ERROR" | "WARNING" | "INFO";
2
2
  export type LookupRules = "COMPILER1" | "COMPILER2" | "DEFAULT";
3
3
  export type EnforceStatic = "YES" | "NO";
4
4
  export type BuildConfig = {
5
+ ignore_settings_files?: boolean;
5
6
  workspace?: string;
6
7
  jungleFiles?: string;
7
8
  developerKeyPath?: string;
@@ -30,6 +31,7 @@ export type BuildConfig = {
30
31
  compilerLookupRules?: LookupRules;
31
32
  enforceStatic?: EnforceStatic;
32
33
  sizeBasedPRE?: boolean | string;
34
+ preSkipLiterals?: boolean;
33
35
  prettier?: Record<string, unknown>;
34
36
  extensionVersion?: string;
35
37
  useLocalOptimizer?: boolean;
@@ -42,6 +44,7 @@ export type BuildConfig = {
42
44
  iterateOptimizer?: boolean;
43
45
  covarianceWarnings?: boolean;
44
46
  checkTypes?: DiagnosticType | "OFF";
47
+ strictTypeCheck?: "On" | "Off" | "Default";
45
48
  removeArgc?: boolean;
46
49
  postBuildPRE?: boolean;
47
50
  allowForbiddenOpts?: boolean;
@@ -4,7 +4,7 @@ import { BuildConfig, Diagnostic, FilesToOptimizeMap, LookupDefinition, ProgramS
4
4
  import { xmlUtil } from "./sdk-util";
5
5
  export declare function getFileSources(fnMap: FilesToOptimizeMap): Promise<void>;
6
6
  export declare function getFileASTs(fnMap: FilesToOptimizeMap): Promise<boolean>;
7
- export declare function analyze(fnMap: FilesToOptimizeMap, resourcesMap: Record<string, JungleResourceMap>, manifestXML: xmlUtil.Document | undefined, config: BuildConfig): Promise<ProgramStateAnalysis>;
7
+ export declare function analyze(fnMap: FilesToOptimizeMap, resourcesMap: Record<string, JungleResourceMap>, manifestXML: xmlUtil.Document | undefined, config: BuildConfig, allowParseErrors?: boolean): Promise<ProgramStateAnalysis>;
8
8
  export declare function reportMissingSymbols(state: ProgramStateAnalysis, config?: BuildConfig): void;
9
9
  export declare function getLiteralFromDecls(lookupDefns: LookupDefinition[]): mctree.Literal | mctree.AsExpression | null;
10
10
  export declare function optimizeMonkeyC(fnMap: FilesToOptimizeMap, resourcesMap: Record<string, JungleResourceMap>, manifestXML: xmlUtil.Document, config: BuildConfig): Promise<{
@@ -70,13 +70,8 @@ export type PreAnalysis = {
70
70
  fnMap: FilesToOptimizeMap;
71
71
  paths: string[];
72
72
  };
73
- declare type RequiredNonNull<T> = {
74
- [K1 in keyof T]-?: {
75
- [K2 in keyof T[K1]]-?: NonNullable<T[K1][K2]>;
76
- };
77
- };
78
73
  export type Analysis = {
79
- fnMap: RequiredNonNull<FilesToOptimizeMap>;
74
+ fnMap: FilesToOptimizeMap;
80
75
  paths: string[];
81
76
  state: ProgramStateAnalysis;
82
77
  typeMap?: TypeMap | null | undefined;
@@ -93,3 +88,8 @@ export declare function generateOneConfig(buildConfig: JungleQualifier, manifest
93
88
  sdkVersion: number | undefined;
94
89
  }>;
95
90
  export declare function getProjectAnalysis(targets: Target[], analysis: PreAnalysis | null, manifestXML: xmlUtil.Document, options: BuildConfig): Promise<Analysis | PreAnalysis>;
91
+ export declare function getFnMapAnalysis(fnMap: FilesToOptimizeMap, resourcesMap: Record<string, JungleResourceMap>, manifestXML: xmlUtil.Document, options: BuildConfig): Promise<{
92
+ fnMap: FilesToOptimizeMap;
93
+ state: ProgramStateAnalysis;
94
+ typeMap: TypeMap | null;
95
+ }>;
@@ -1,3 +1,3 @@
1
1
  import { mctree } from "@markw65/prettier-plugin-monkeyc";
2
- import { Diagnostic, ProgramStateOptimizer } from "./optimizer-types";
3
- export declare function pragmaChecker(state: ProgramStateOptimizer, ast: mctree.Program, diagnostics: Diagnostic[] | null | undefined): Promise<void>;
2
+ import { Diagnostic, ProgramStateAnalysis } from "./optimizer-types";
3
+ export declare function pragmaChecker(state: ProgramStateAnalysis, ast: mctree.Program, diagnostics: Diagnostic[] | null | undefined): Promise<void>;
@@ -17,7 +17,7 @@ export declare function printBlockHeader(block: TypeFlowBlock): void;
17
17
  export declare function describeEvent(event: Event): Promise<string>;
18
18
  export declare function printBlockEvents(block: TypeFlowBlock, extra?: (event: Event) => string): void;
19
19
  export declare function printBlockTrailer(block: TypeFlowBlock): void;
20
- export declare function findObjectDeclsByProperty(state: ProgramStateAnalysis, object: ExactOrUnion, next: mctree.DottedMemberExpression): readonly [null, null] | [StateNode[], StateNode[]];
20
+ export declare function findObjectDeclsByProperty(state: ProgramStateAnalysis, object: ExactOrUnion, next: mctree.Identifier): readonly [null, null] | [StateNode[], StateNode[]];
21
21
  export declare function refineObjectTypeByDecls(istate: InterpState, object: ExactOrUnion, trueDecls: StateNode[]): ExactOrUnion;
22
22
  export declare function findNextObjectType(istate: InterpState, trueDecls: StateNode[], next: mctree.DottedMemberExpression): import("./types").UnionType | import("./types").NumberType | import("./types").LongType | import("./types").FloatType | import("./types").DoubleType | import("./types").CharType | import("./types").StringType | import("./types").ArrayType | import("./types").DictionaryType | import("./types").MethodType | import("./types").ModuleType | import("./types").FunctionType | import("./types").ClassType | import("./types").ObjectType | import("./types").EnumType | import("./types").SymbolType | import("./types").TypedefType | null;
23
23
  export declare function resolveDottedMember(istate: InterpState, object: ExactOrUnion, next: mctree.DottedMemberExpression): {
@@ -34,5 +34,5 @@ export declare class GenericQueue<Block> {
34
34
  export declare class AwaitedError extends Error {
35
35
  private messagePromise;
36
36
  constructor(messagePromise: Promise<string>);
37
- resolve(): Promise<string>;
37
+ resolve(): Promise<this>;
38
38
  }
package/build/util.cjs CHANGED
@@ -18,35 +18,35 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var util_exports = {};
20
20
  __export(util_exports, {
21
- AwaitedError: () => import_chunk_67LU4GPQ.AwaitedError,
22
- GenericQueue: () => import_chunk_67LU4GPQ.GenericQueue,
23
- bumpLogging: () => import_chunk_67LU4GPQ.bumpLogging,
24
- copyRecursiveAsNeeded: () => import_chunk_67LU4GPQ.copyRecursiveAsNeeded,
25
- every: () => import_chunk_67LU4GPQ.every,
26
- first_modified: () => import_chunk_67LU4GPQ.first_modified,
27
- forEach: () => import_chunk_67LU4GPQ.forEach,
28
- globSome: () => import_chunk_67LU4GPQ.globSome,
29
- globa: () => import_chunk_67LU4GPQ.globa,
30
- last_modified: () => import_chunk_67LU4GPQ.last_modified,
31
- log: () => import_chunk_67LU4GPQ.log,
32
- logPromise: () => import_chunk_67LU4GPQ.logPromise,
33
- logger: () => import_chunk_67LU4GPQ.logger,
34
- map: () => import_chunk_67LU4GPQ.map,
35
- popcount: () => import_chunk_67LU4GPQ.popcount,
36
- promiseAll: () => import_chunk_67LU4GPQ.promiseAll,
37
- pushUnique: () => import_chunk_67LU4GPQ.pushUnique,
38
- readByLine: () => import_chunk_67LU4GPQ.readByLine,
39
- reduce: () => import_chunk_67LU4GPQ.reduce,
40
- sameArrays: () => import_chunk_67LU4GPQ.sameArrays,
41
- setBanner: () => import_chunk_67LU4GPQ.setBanner,
42
- some: () => import_chunk_67LU4GPQ.some,
43
- spawnByLine: () => import_chunk_67LU4GPQ.spawnByLine,
44
- wouldLog: () => import_chunk_67LU4GPQ.wouldLog
21
+ AwaitedError: () => import_chunk_OASVKTK5.AwaitedError,
22
+ GenericQueue: () => import_chunk_OASVKTK5.GenericQueue,
23
+ bumpLogging: () => import_chunk_OASVKTK5.bumpLogging,
24
+ copyRecursiveAsNeeded: () => import_chunk_OASVKTK5.copyRecursiveAsNeeded,
25
+ every: () => import_chunk_OASVKTK5.every,
26
+ first_modified: () => import_chunk_OASVKTK5.first_modified,
27
+ forEach: () => import_chunk_OASVKTK5.forEach,
28
+ globSome: () => import_chunk_OASVKTK5.globSome,
29
+ globa: () => import_chunk_OASVKTK5.globa,
30
+ last_modified: () => import_chunk_OASVKTK5.last_modified,
31
+ log: () => import_chunk_OASVKTK5.log,
32
+ logPromise: () => import_chunk_OASVKTK5.logPromise,
33
+ logger: () => import_chunk_OASVKTK5.logger,
34
+ map: () => import_chunk_OASVKTK5.map,
35
+ popcount: () => import_chunk_OASVKTK5.popcount,
36
+ promiseAll: () => import_chunk_OASVKTK5.promiseAll,
37
+ pushUnique: () => import_chunk_OASVKTK5.pushUnique,
38
+ readByLine: () => import_chunk_OASVKTK5.readByLine,
39
+ reduce: () => import_chunk_OASVKTK5.reduce,
40
+ sameArrays: () => import_chunk_OASVKTK5.sameArrays,
41
+ setBanner: () => import_chunk_OASVKTK5.setBanner,
42
+ some: () => import_chunk_OASVKTK5.some,
43
+ spawnByLine: () => import_chunk_OASVKTK5.spawnByLine,
44
+ wouldLog: () => import_chunk_OASVKTK5.wouldLog
45
45
  });
46
46
  module.exports = __toCommonJS(util_exports);
47
- var import_chunk_67LU4GPQ = require("./chunk-67LU4GPQ.cjs");
47
+ var import_chunk_OASVKTK5 = require("./chunk-OASVKTK5.cjs");
48
48
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
49
- (0, import_chunk_67LU4GPQ.init_util)();
49
+ (0, import_chunk_OASVKTK5.init_util)();
50
50
  // Annotate the CommonJS export names for ESM import in node:
51
51
  0 && (module.exports = {
52
52
  AwaitedError,
@@ -21,17 +21,17 @@ __export(worker_thread_exports, {
21
21
  default: () => worker_thread_default
22
22
  });
23
23
  module.exports = __toCommonJS(worker_thread_exports);
24
- var import_chunk_MDTDXRQB = require("./chunk-MDTDXRQB.cjs");
25
- var import_chunk_67LU4GPQ = require("./chunk-67LU4GPQ.cjs");
24
+ var import_chunk_2OEXWI65 = require("./chunk-2OEXWI65.cjs");
25
+ var import_chunk_OASVKTK5 = require("./chunk-OASVKTK5.cjs");
26
26
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
27
27
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
28
28
  var import_node_worker_threads = require("node:worker_threads");
29
29
  var require_worker_thread = (0, import_chunk_ABYVSU2C.__commonJS)({
30
30
  "src/worker-thread.ts"() {
31
- (0, import_chunk_MDTDXRQB.init_worker_task)();
31
+ (0, import_chunk_2OEXWI65.init_worker_task)();
32
32
  if (import_node_worker_threads.parentPort) {
33
33
  import_node_worker_threads.parentPort.on("message", async (task) => {
34
- return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_MDTDXRQB.performTask)(task));
34
+ return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_2OEXWI65.performTask)(task));
35
35
  });
36
36
  }
37
37
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@markw65/monkeyc-optimizer",
3
3
  "type": "commonjs",
4
- "version": "1.1.65",
4
+ "version": "1.1.67",
5
5
  "description": "Source to source optimizer for Garmin Monkey C code",
6
6
  "main": "build/optimizer.cjs",
7
7
  "types": "build/src/optimizer.d.ts",
@@ -24,8 +24,8 @@
24
24
  "prepack": "node esbuild.mjs --release && mkdir -p bin && cp test/cft-font-info.js bin",
25
25
  "test": "npm run test-mocha && npm run test-analysis && npm run test-optimized && npm run test-unopt && npm run test-post-only && npm run test-tiny && npm run test-remote && npm run test-remote-tests && npm run test-personality",
26
26
  "test-mocha": "npx mocha --timeout 999999 build/mocha.cjs",
27
- "test-remote": "node ./test/test.js --showInfo --postOptimize --product=pick-one --github",
28
- "test-remote-tests-default": "node ./test/test.js --showInfo --postOptimize --product=pick-one --run-tests --github",
27
+ "test-remote": "node ./test/test.js --showInfo --postOptimize --product=pick-one --ignore-settings-files --github",
28
+ "test-remote-tests-default": "npm run test-remote -- --run-tests",
29
29
  "test-remote-tests-with-forbidden": "npm run test-remote-tests-default -- --allowForbiddenOpts",
30
30
  "test-remote-tests": "npm run test-remote-tests-default && npm run test-remote-tests-with-forbidden",
31
31
  "test-optimized-default": "node test/test.js --showInfo --postOptimize --typeCheckLevel Strict --run-tests --product=fenix5 --product=fr235 --jungle ./test/OptimizerTests/monkey.jungle",
@@ -36,7 +36,7 @@
36
36
  "test-garmin-opt": "node test/test.js --typeCheckLevel Strict --skipOptimization --garminOptLevel=2 --run-tests --product=fenix5 --product=fr235 --jungle ./test/OptimizerTests/monkey.jungle",
37
37
  "test-personality": "node test/test-personality.js",
38
38
  "test-analysis": "node test/test.js --showInfo --typeCheckLevel Strict --product=fr955 --sourceFile 'test/analysis/*.mc'",
39
- "test-tiny": "node test/test.js --postOptimize --showInfo --typeCheckLevel Strict --run-tests --product=pick-one --jungle test/tiny/array-overflow/monkey.jungle",
39
+ "test-tiny": "node test/test-tiny.js",
40
40
  "eslint": "npx eslint ."
41
41
  },
42
42
  "bin": {