summary refs log tree commit diff
diff options
context:
space:
mode:
authorMadeline <maddyunderstars@gmail.com>2022-01-08 17:22:44 +1100
committerMadeline <maddyunderstars@gmail.com>2022-01-08 17:22:44 +1100
commite9393683facb57f9577c768bbd80fce672d80a72 (patch)
treed8a9e64ef2c8702e1187a95da0fa63f0fc6644b6
parentAdded `tsnode` npm script (diff)
downloadserver-e9393683facb57f9577c768bbd80fce672d80a72.tar.xz
Added `typescript-cached-transpile` package to help improve performance
-rw-r--r--bundle/.vscode/launch.json1
-rw-r--r--bundle/package-lock.json180
-rw-r--r--bundle/package.json7
-rw-r--r--bundle/tsnode.tsconfig.json3
4 files changed, 184 insertions, 7 deletions
diff --git a/bundle/.vscode/launch.json b/bundle/.vscode/launch.json
index ad91751f..d7129ed8 100644
--- a/bundle/.vscode/launch.json
+++ b/bundle/.vscode/launch.json
@@ -17,6 +17,7 @@
 			"internalConsoleOptions": "openOnSessionStart",

 			"env": {

 				"TS_NODE_PROJECT": "${workspaceFolder}/tsnode.tsconfig.json",

+				"TS_NODE_COMPILER": "typescript-cached-transpile"

 			},

 			"resolveSourceMapLocations": null, /* allow breakpoints in modules other than bundle */

 		},

diff --git a/bundle/package-lock.json b/bundle/package-lock.json
index e8b99037..294dfe1f 100644
--- a/bundle/package-lock.json
+++ b/bundle/package-lock.json
@@ -58,6 +58,7 @@
 				"tslib": "^2.3.1",
 				"typeorm": "^0.2.37",
 				"typescript": "^4.1.2",
+				"typescript-cached-transpile": "^0.0.6",
 				"typescript-json-schema": "^0.50.1",
 				"ws": "^7.4.2"
 			},
@@ -90,11 +91,13 @@
 				"ts-node": "^10.2.1",
 				"ts-node-dev": "^1.1.6",
 				"ts-patch": "^1.4.4",
+				"tsconfig-paths": "^3.12.0",
 				"typescript": "^4.2.3",
 				"typescript-json-schema": "0.50.1"
 			}
 		},
 		"../api": {
+			"name": "@fosscord/api",
 			"version": "1.0.0",
 			"hasInstallScript": true,
 			"license": "ISC",
@@ -158,6 +161,7 @@
 			}
 		},
 		"../cdn": {
+			"name": "@fosscord/cdn",
 			"version": "1.0.0",
 			"license": "ISC",
 			"dependencies": {
@@ -200,6 +204,7 @@
 			}
 		},
 		"../gateway": {
+			"name": "@fosscord/gateway",
 			"version": "1.0.0",
 			"hasInstallScript": true,
 			"license": "ISC",
@@ -3598,6 +3603,12 @@
 			"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==",
 			"dev": true
 		},
+		"node_modules/@types/json5": {
+			"version": "0.0.29",
+			"resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+			"integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
+			"dev": true
+		},
 		"node_modules/@types/jsonwebtoken": {
 			"version": "8.5.5",
 			"integrity": "sha512-OGqtHQ7N5/Ap/TUwO6IgHDuLiAoTmHhGpNvgkCm/F4N6pKzx/RBSfr2OXZSwC6vkfnsEdb6+7DNZVtiXiwdwFw==",
@@ -10557,6 +10568,39 @@
 				"strip-json-comments": "^2.0.0"
 			}
 		},
+		"node_modules/tsconfig-paths": {
+			"version": "3.12.0",
+			"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz",
+			"integrity": "sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==",
+			"dev": true,
+			"dependencies": {
+				"@types/json5": "^0.0.29",
+				"json5": "^1.0.1",
+				"minimist": "^1.2.0",
+				"strip-bom": "^3.0.0"
+			}
+		},
+		"node_modules/tsconfig-paths/node_modules/json5": {
+			"version": "1.0.1",
+			"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+			"integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+			"dev": true,
+			"dependencies": {
+				"minimist": "^1.2.0"
+			},
+			"bin": {
+				"json5": "lib/cli.js"
+			}
+		},
+		"node_modules/tsconfig-paths/node_modules/strip-bom": {
+			"version": "3.0.0",
+			"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+			"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+			"dev": true,
+			"engines": {
+				"node": ">=4"
+			}
+		},
 		"node_modules/tsconfig/node_modules/strip-bom": {
 			"version": "3.0.0",
 			"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
@@ -10822,7 +10866,6 @@
 		"node_modules/typescript": {
 			"version": "4.4.3",
 			"integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==",
-			"dev": true,
 			"bin": {
 				"tsc": "bin/tsc",
 				"tsserver": "bin/tsserver"
@@ -10831,6 +10874,58 @@
 				"node": ">=4.2.0"
 			}
 		},
+		"node_modules/typescript-cached-transpile": {
+			"version": "0.0.6",
+			"resolved": "https://registry.npmjs.org/typescript-cached-transpile/-/typescript-cached-transpile-0.0.6.tgz",
+			"integrity": "sha512-bfPc7YUW0PrVkQHU0xN0ANRuxdPgoYYXtZEW6PNkH5a97/AOM+kPPxSTMZbpWA3BG1do22JUkfC60KoCKJ9VZQ==",
+			"dependencies": {
+				"@types/node": "^12.12.7",
+				"fs-extra": "^8.1.0",
+				"tslib": "^1.10.0"
+			},
+			"peerDependencies": {
+				"typescript": "*"
+			}
+		},
+		"node_modules/typescript-cached-transpile/node_modules/@types/node": {
+			"version": "12.20.41",
+			"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.41.tgz",
+			"integrity": "sha512-f6xOqucbDirG7LOzedpvzjP3UTmHttRou3Mosx3vL9wr9AIQGhcPgVnqa8ihpZYnxyM1rxeNCvTyukPKZtq10Q=="
+		},
+		"node_modules/typescript-cached-transpile/node_modules/fs-extra": {
+			"version": "8.1.0",
+			"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+			"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+			"dependencies": {
+				"graceful-fs": "^4.2.0",
+				"jsonfile": "^4.0.0",
+				"universalify": "^0.1.0"
+			},
+			"engines": {
+				"node": ">=6 <7 || >=8"
+			}
+		},
+		"node_modules/typescript-cached-transpile/node_modules/jsonfile": {
+			"version": "4.0.0",
+			"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+			"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+			"optionalDependencies": {
+				"graceful-fs": "^4.1.6"
+			}
+		},
+		"node_modules/typescript-cached-transpile/node_modules/tslib": {
+			"version": "1.14.1",
+			"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+			"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+		},
+		"node_modules/typescript-cached-transpile/node_modules/universalify": {
+			"version": "0.1.2",
+			"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+			"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+			"engines": {
+				"node": ">= 4.0.0"
+			}
+		},
 		"node_modules/typescript-json-schema": {
 			"version": "0.50.1",
 			"integrity": "sha512-GCof/SDoiTDl0qzPonNEV4CHyCsZEIIf+mZtlrjoD8vURCcEzEfa2deRuxYid8Znp/e27eDR7Cjg8jgGrimBCA==",
@@ -14020,6 +14115,12 @@
 			"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==",
 			"dev": true
 		},
+		"@types/json5": {
+			"version": "0.0.29",
+			"resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+			"integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
+			"dev": true
+		},
 		"@types/jsonwebtoken": {
 			"version": "8.5.5",
 			"integrity": "sha512-OGqtHQ7N5/Ap/TUwO6IgHDuLiAoTmHhGpNvgkCm/F4N6pKzx/RBSfr2OXZSwC6vkfnsEdb6+7DNZVtiXiwdwFw==",
@@ -19221,6 +19322,35 @@
 				}
 			}
 		},
+		"tsconfig-paths": {
+			"version": "3.12.0",
+			"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz",
+			"integrity": "sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==",
+			"dev": true,
+			"requires": {
+				"@types/json5": "^0.0.29",
+				"json5": "^1.0.1",
+				"minimist": "^1.2.0",
+				"strip-bom": "^3.0.0"
+			},
+			"dependencies": {
+				"json5": {
+					"version": "1.0.1",
+					"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+					"integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+					"dev": true,
+					"requires": {
+						"minimist": "^1.2.0"
+					}
+				},
+				"strip-bom": {
+					"version": "3.0.0",
+					"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+					"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+					"dev": true
+				}
+			}
+		},
 		"tslib": {
 			"version": "2.3.1",
 			"integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw=="
@@ -19357,8 +19487,52 @@
 		},
 		"typescript": {
 			"version": "4.4.3",
-			"integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==",
-			"dev": true
+			"integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA=="
+		},
+		"typescript-cached-transpile": {
+			"version": "0.0.6",
+			"resolved": "https://registry.npmjs.org/typescript-cached-transpile/-/typescript-cached-transpile-0.0.6.tgz",
+			"integrity": "sha512-bfPc7YUW0PrVkQHU0xN0ANRuxdPgoYYXtZEW6PNkH5a97/AOM+kPPxSTMZbpWA3BG1do22JUkfC60KoCKJ9VZQ==",
+			"requires": {
+				"@types/node": "^12.12.7",
+				"fs-extra": "^8.1.0",
+				"tslib": "^1.10.0"
+			},
+			"dependencies": {
+				"@types/node": {
+					"version": "12.20.41",
+					"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.41.tgz",
+					"integrity": "sha512-f6xOqucbDirG7LOzedpvzjP3UTmHttRou3Mosx3vL9wr9AIQGhcPgVnqa8ihpZYnxyM1rxeNCvTyukPKZtq10Q=="
+				},
+				"fs-extra": {
+					"version": "8.1.0",
+					"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+					"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+					"requires": {
+						"graceful-fs": "^4.2.0",
+						"jsonfile": "^4.0.0",
+						"universalify": "^0.1.0"
+					}
+				},
+				"jsonfile": {
+					"version": "4.0.0",
+					"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+					"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+					"requires": {
+						"graceful-fs": "^4.1.6"
+					}
+				},
+				"tslib": {
+					"version": "1.14.1",
+					"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+					"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+				},
+				"universalify": {
+					"version": "0.1.2",
+					"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+					"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="
+				}
+			}
 		},
 		"typescript-json-schema": {
 			"version": "0.50.1",
diff --git a/bundle/package.json b/bundle/package.json
index fa64ce6b..7dc9a776 100644
--- a/bundle/package.json
+++ b/bundle/package.json
@@ -93,6 +93,7 @@
 		"missing-native-js-functions": "^1.2.18",
 		"morgan": "^1.10.0",
 		"multer": "^1.4.2",
+		"nanocolors": "^0.2.12",
 		"node-fetch": "^2.6.1",
 		"node-os-utils": "^1.3.5",
 		"patch-package": "^6.4.7",
@@ -105,8 +106,8 @@
 		"tslib": "^2.3.1",
 		"typeorm": "^0.2.37",
 		"typescript": "^4.1.2",
+		"typescript-cached-transpile": "^0.0.6",
 		"typescript-json-schema": "^0.50.1",
-		"ws": "^7.4.2",
-		"nanocolors": "^0.2.12"
+		"ws": "^7.4.2"
 	}
-}
\ No newline at end of file
+}
diff --git a/bundle/tsnode.tsconfig.json b/bundle/tsnode.tsconfig.json
index 841cc013..422d336c 100644
--- a/bundle/tsnode.tsconfig.json
+++ b/bundle/tsnode.tsconfig.json
@@ -3,7 +3,8 @@
 	"ts-node": {

 		"transpileOnly": true,

 		"preferTsExts": true,

-		"require": ["tsconfig-paths/register"]

+		"require": ["tsconfig-paths/register"],

+		"compiler": "typescript-cached-transpile",

 	},

 	"compilerOptions": {

 		"rootDir": "../",