summary refs log tree commit diff
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-12-17 19:00:40 +1100
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-12-17 19:00:40 +1100
commitf59ec466de05b9cd1090f55929367a192b3ce979 (patch)
treee90fab9f1a958e1a630004d2a6df8bfa9f354777
parentuser validation stuff (diff)
downloadserver-f59ec466de05b9cd1090f55929367a192b3ce979.tar.xz
comments and such
-rw-r--r--src/bundle/Server.ts13
-rw-r--r--src/util/util/Database.ts43
2 files changed, 9 insertions, 47 deletions
diff --git a/src/bundle/Server.ts b/src/bundle/Server.ts
index 1ae9511c..3ceebc06 100644
--- a/src/bundle/Server.ts
+++ b/src/bundle/Server.ts
@@ -54,12 +54,14 @@ async function main() {
 
 		Sentry.addGlobalEventProcessor((event, hint) => {
 			if (event.transaction) {
+				// Rewrite things that look like IDs to `:id` for sentry
 				event.transaction = event.transaction
 					.split("/")
 					.map((x) => (!parseInt(x) ? x : ":id"))
 					.join("/");
 			}
 
+			// TODO: does this even do anything?
 			delete event.request?.cookies;
 			if (event.request?.headers) {
 				delete event.request.headers["X-Real-Ip"];
@@ -70,16 +72,11 @@ async function main() {
 
 			if (event.breadcrumbs) {
 				event.breadcrumbs = event.breadcrumbs.filter((x) => {
+					// Filter breadcrumbs that we don't care about
 					if (x.message?.includes("identified as")) return false;
 					if (x.message?.includes("[WebSocket] closed")) return false;
-					if (
-						x.message?.includes(
-							"Got Resume -> cancel not implemented",
-						)
-					)
-						return false;
-					if (x.message?.includes("[Gateway] New connection from"))
-						return false;
+					if (x.message?.includes("Got Resume -> cancel not implemented")) return false;
+					if (x.message?.includes("[Gateway] New connection from")) return false;
 
 					return true;
 				});
diff --git a/src/util/util/Database.ts b/src/util/util/Database.ts
index e96be6c4..f2190bfc 100644
--- a/src/util/util/Database.ts
+++ b/src/util/util/Database.ts
@@ -12,12 +12,14 @@ var dbConnection: DataSource | undefined;
 let dbConnectionString =
 	process.env.DATABASE || path.join(process.cwd(), "database.db");
 
+// Gets the existing database connection
 export function getDatabase(): DataSource | null {
 	// if (!dbConnection) throw new Error("Tried to get database before it was initialised");
 	if (!dbConnection) return null;
 	return dbConnection;
 }
 
+// Called once on server start
 export async function initDatabase(): Promise<DataSource> {
 	if (dbConnection) return dbConnection;
 
@@ -36,7 +38,7 @@ export async function initDatabase(): Promise<DataSource> {
 	}
 
 	const dataSource = new DataSource({
-		//@ts-ignore
+		//@ts-ignore type 'string' is not 'mysql' | 'sqlite' | 'mariadb' | etc etc
 		type,
 		charset: "utf8mb4",
 		url: isSqlite ? undefined : dbConnectionString,
@@ -47,49 +49,12 @@ export async function initDatabase(): Promise<DataSource> {
 		bigNumberStrings: false,
 		supportBigNumbers: true,
 		name: "default",
+		// TODO migrations
 		// migrations: [path.join(__dirname, "..", "migrations", "*.js")],
 	});
 
 	dbConnection = await dataSource.initialize();
 
-	// // @ts-ignore
-	// promise = createConnection({
-	// 	type,
-	// 	charset: 'utf8mb4',
-	// 	url: isSqlite ? undefined : dbConnectionString,
-	// 	database: isSqlite ? dbConnectionString : undefined,
-	// 	// @ts-ignore
-	// 	entities: Object.values(Models).filter((x) => x?.constructor?.name !== "Object" && x?.name),
-	// 	synchronize: type !== "mongodb",
-	// 	logging: false,
-	// 	// cache: { // cache is used only by query builder and entity manager
-	// 	// duration: 1000 * 30,
-	// 	// type: "redis",
-	// 	// options: {
-	// 	// host: "localhost",
-	// 	// port: 6379,
-	// 	// },
-	// 	// },
-	// 	bigNumberStrings: false,
-	// 	supportBigNumbers: true,
-	// 	name: "default",
-	// 	migrations: [path.join(__dirname, "..", "migrations", "*.js")],
-	// });
-
-	// // run migrations, and if it is a new fresh database, set it to the last migration
-	// if (dbConnection.migrations.length) {
-	// 	if (!(await Migration.findOne({ }))) {
-	// 		let i = 0;
-
-	// 		await Migration.insert(
-	// 			dbConnection.migrations.map((x) => ({
-	// 				id: i++,
-	// 				name: x.name,
-	// 				timestamp: Date.now(),
-	// 			}))
-	// 		);
-	// 	}
-	// }
 	await dbConnection.runMigrations();
 	console.log(`[Database] ${green("connected")}`);