From fe3ffe66a6ab8f9424c2abb9adf0495dd9ce4eeb Mon Sep 17 00:00:00 2001
From: Aaron Turner <aaron@aaronthedev.com>
Date: Wed, 8 Jul 2020 16:00:51 -0700
Subject: [PATCH] Added an asconfig to test things out

---
 asconfig.json     | 21 ++++++++++++++++
 package-lock.json | 63 +++++++++++++++++++++++++++++++++++++++++------
 package.json      |  3 ++-
 3 files changed, 78 insertions(+), 9 deletions(-)
 create mode 100644 asconfig.json

diff --git a/asconfig.json b/asconfig.json
new file mode 100644
index 00000000..fffe1177
--- /dev/null
+++ b/asconfig.json
@@ -0,0 +1,21 @@
+{
+  "targets": {
+    "untouched": {
+      "binaryFile": "dist/core/core.untouched.wasm",
+      "textFile": "dist/core/core.untouched.wat",
+      "sourceMap": "core/dist/core/core.untouched.wasm.map",
+      "debug": true
+    },
+    "release": {
+      "binaryFile": "dist/core/core.optimized.wasm",
+      "textFile": "dist/core/core.optimized.wat",
+      "sourceMap": "core/dist/core/core.optimized.wasm.map",
+      "shrinkLevel": 1,
+      "optimizeLevel": 3
+    }
+  },
+  "options": {
+    "memoryBase": 0
+  },
+  "entries": ["core/index.ts"]
+}
diff --git a/package-lock.json b/package-lock.json
index e2f16b67..42810a50 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -841,13 +841,32 @@
       }
     },
     "assemblyscript": {
-      "version": "0.8.1",
-      "resolved": "https://registry.npmjs.org/assemblyscript/-/assemblyscript-0.8.1.tgz",
-      "integrity": "sha512-AEpb4Aq5g77XOxSvWn9ZFjIdfyypGavO5oKOAXUo22tnSpebGHdrx0iyVindGKkDlxWhHUc87B0fvM/w1fnpDg==",
+      "version": "git+https://github.com/jtenner/assemblyscript.git#3163abb49af8caa0c8f884680397c1bad1422c76",
+      "from": "git+https://github.com/jtenner/assemblyscript.git",
       "dev": true,
       "requires": {
-        "binaryen": "89.0.0-nightly.20191113",
-        "long": "^4.0.0"
+        "binaryen": "93.0.0-nightly.20200609",
+        "long": "^4.0.0",
+        "source-map-support": "^0.5.19",
+        "ts-node": "^6.2.0"
+      },
+      "dependencies": {
+        "source-map": {
+          "version": "0.6.1",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+          "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+          "dev": true
+        },
+        "source-map-support": {
+          "version": "0.5.19",
+          "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
+          "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
+          "dev": true,
+          "requires": {
+            "buffer-from": "^1.0.0",
+            "source-map": "^0.6.0"
+          }
+        }
       }
     },
     "assert-plus": {
@@ -1653,9 +1672,9 @@
       "dev": true
     },
     "binaryen": {
-      "version": "89.0.0-nightly.20191113",
-      "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-89.0.0-nightly.20191113.tgz",
-      "integrity": "sha512-scODswmj6Xf/Adjy1PRsjf8fHxpIIUYpH7HjKUaZ/RdZYjqB1Zq3X4izpLfcK+hKGNah92DpAJ3i/adEayMe9g==",
+      "version": "93.0.0-nightly.20200609",
+      "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-93.0.0-nightly.20200609.tgz",
+      "integrity": "sha512-CIaeav05u+fWRN2h1ecwIoSaOF/Mk6U85M/G6eg1nOHAXYYmOuh9TztF9Fu8krRWnl98J3W+VfDClApMV5zCtw==",
       "dev": true
     },
     "bluebird": {
@@ -5633,6 +5652,12 @@
         "pify": "^3.0.0"
       }
     },
+    "make-error": {
+      "version": "1.3.6",
+      "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz",
+      "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
+      "dev": true
+    },
     "map-cache": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@@ -10902,6 +10927,22 @@
         "escape-string-regexp": "^1.0.2"
       }
     },
+    "ts-node": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-6.2.0.tgz",
+      "integrity": "sha512-ZNT+OEGfUNVMGkpIaDJJ44Zq3Yr0bkU/ugN1PHbU+/01Z7UV1fsELRiTx1KuQNvQ1A3pGh3y25iYF6jXgxV21A==",
+      "dev": true,
+      "requires": {
+        "arrify": "^1.0.0",
+        "buffer-from": "^1.1.0",
+        "diff": "^3.1.0",
+        "make-error": "^1.1.1",
+        "minimist": "^1.2.0",
+        "mkdirp": "^0.5.1",
+        "source-map-support": "^0.5.6",
+        "yn": "^2.0.0"
+      }
+    },
     "tslib": {
       "version": "1.10.0",
       "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
@@ -11999,6 +12040,12 @@
       "requires": {
         "camelcase": "^4.1.0"
       }
+    },
+    "yn": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz",
+      "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=",
+      "dev": true
     }
   }
 }
diff --git a/package.json b/package.json
index e4baea0e..6d0bfe2e 100644
--- a/package.json
+++ b/package.json
@@ -44,6 +44,7 @@
     "core:watch": "npx watch \"npm run core:build\" core",
     "core:build": "npx run-s core:build:asc core:build:dist core:build:done",
     "core:build:asc": "npx asc core/index.ts -b dist/core/core.untouched.wasm -t dist/core/core.untouched.wat -O3 --validate --sourceMap core/dist/core.untouched.wasm.map --memoryBase 0",
+    "core:build:asc:asconfig": "asc",
     "core:build:ts": "npx rollup -c --environment TS",
     "core:build:asc:measure": "npm run core:build:asc -- --measure --noEmit",
     "core:build:ts:measure": "npx tsc --project core/tsconfig.json --noEmit --extendedDiagnostics",
@@ -123,7 +124,7 @@
     "@rollup/plugin-node-resolve": "^7.1.1",
     "@wasmer/io-devices-lib-assemblyscript": "^0.1.3",
     "as-wasi": "git+https://github.com/jedisct1/as-wasi.git",
-    "assemblyscript": "^0.8.1",
+    "assemblyscript": "git+https://github.com/jtenner/assemblyscript.git",
     "babel-plugin-filter-imports": "^2.0.3",
     "babel-preset-env": "^1.6.1",
     "big-integer": "^1.6.38",