From 1c5927815a208de59cb2c8bde932fbbfc199a198 Mon Sep 17 00:00:00 2001 From: "Florine W. Dekker" Date: Thu, 17 Feb 2022 15:58:40 +0100 Subject: [PATCH] Update dependencies, fix compatibility issues --- LICENSE | 2 +- package-lock.json | Bin 455467 -> 453420 bytes package.json | 32 ++++++++++++++++---------------- src/main/index.html | 6 +++--- src/main/js/Commands.ts | 12 +++++++++--- src/main/js/FileSystem.ts | 4 ++-- src/main/js/Main.ts | 2 +- src/main/js/Persistence.ts | 6 +++--- src/main/js/Shell.ts | 5 ++++- tsconfig.json | 4 ++-- 10 files changed, 41 insertions(+), 32 deletions(-) diff --git a/LICENSE b/LICENSE index 3792f40..7b1afc9 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2018 F.W. Dekker +Copyright (c) 2018 Florine W. Dekker Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/package-lock.json b/package-lock.json index 8364bf808888334113e0cc183d2b75db1914368f..30553095e2ef3c65cb803c6a67928783dc1f1e06 100644 GIT binary patch delta 15043 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 B9>D+r delta 15292 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 diff --git a/package.json b/package.json index 5509f5f..318926e 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "fwdekker.com", - "version": "0.40.11", + "version": "0.40.12", "description": "The source code of [my personal website](https://fwdekker.com/).", - "author": "F.W. Dekker", + "author": "Florine W. Dekker", "browser": "dist/bundle.js", "repository": { "type": "git", @@ -18,17 +18,17 @@ "coverage": "nyc npm run test" }, "dependencies": { - "js-cookie": "^2.2.1", + "js-cookie": "^3.0.1", "js-sha256": "^0.9.0", "semver": "^6.3.0" }, "devDependencies": { - "@istanbuljs/nyc-config-typescript": "^1.0.1", - "@types/chai": "^4.2.21", - "@types/js-cookie": "^2.2.7", - "@types/mocha": "^9.0.0", + "@istanbuljs/nyc-config-typescript": "^1.0.2", + "@types/chai": "^4.3.0", + "@types/js-cookie": "^3.0.1", + "@types/mocha": "^9.1.0", "@types/semver": "^6.2.1", - "chai": "^4.3.4", + "chai": "^4.3.6", "grunt": "^1.4.1", "grunt-cli": "^1.4.3", "grunt-contrib-clean": "^2.0.0", @@ -36,15 +36,15 @@ "grunt-contrib-watch": "^1.1.0", "grunt-focus": "^1.0.0", "grunt-text-replace": "^0.4.0", - "grunt-webpack": "^4.0.3", - "jsdom": "^17.0.0", + "grunt-webpack": "^5.0.0", + "jsdom": "^19.0.0", "jsdom-global": "^3.0.2", - "mocha": "^9.1.0", + "mocha": "^9.2.0", "nyc": "^15.1.0", - "ts-loader": "^9.2.5", - "ts-node": "^10.2.1", - "typescript": "^4.3.5", - "webpack": "^5.51.1", - "webpack-cli": "^4.8.0" + "ts-loader": "^9.2.6", + "ts-node": "^10.5.0", + "typescript": "^4.5.5", + "webpack": "^5.69.1", + "webpack-cli": "^4.9.2" } } diff --git a/src/main/index.html b/src/main/index.html index 83e0eca..eab4fa0 100644 --- a/src/main/index.html +++ b/src/main/index.html @@ -3,13 +3,13 @@ - + - + - + FWDekker diff --git a/src/main/js/Commands.ts b/src/main/js/Commands.ts index 0d3d597..a075bd1 100644 --- a/src/main/js/Commands.ts +++ b/src/main/js/Commands.ts @@ -57,6 +57,9 @@ export class Commands { localStreams.out = this.toStream(input.redirectTargets[1]) ?? localStreams.out; localStreams.err = this.toStream(input.redirectTargets[2]) ?? localStreams.err; } catch (error) { + if (!(error instanceof Error)) + throw Error(`Error while processing redirection error:\n${error}`); + streams.err.writeLine(`Error while redirecting output:\n${error.message}`); return ExitCode.MISC; } @@ -136,9 +139,12 @@ export class Commands { } else { return this.interpretBinary(code, this.environment, this.userList, this.fileSystem); } - } catch (e) { - console.error(`Failed to interpret script '${targetName}'.`, code, e); - return e; + } catch (error) { + if (!(error instanceof Error)) + throw Error(`Error while processing interpretation error:\n${error}`); + + console.error(`Failed to interpret script '${targetName}'.`, code, error); + return error; } } diff --git a/src/main/js/FileSystem.ts b/src/main/js/FileSystem.ts index e79d56f..e87c352 100644 --- a/src/main/js/FileSystem.ts +++ b/src/main/js/FileSystem.ts @@ -39,13 +39,13 @@ export class FileSystem { [ new User("root", HashProvider.default.hashPassword("g9PjKu"), "/root", "You're a hacker, Harry!"), - new User("f", HashProvider.default.hashPassword("password"), undefined, + new User("florine", HashProvider.default.hashPassword("password"), undefined, "Who are you?") ].map(it => User.toString(it)).join("\n") + "\n" ), }), "home": new Directory({ - "f": new Directory({ + "florine": new Directory({ "pgp-key.pub": new File("https://fwdkr.co/pgp", "lnk"), "privacy-policy.lnk": new File("https://fwdekker.com/privacy/"), "resume.pdf": new File("https://fwdkr.co/cv", "lnk"), diff --git a/src/main/js/Main.ts b/src/main/js/Main.ts index 5e65f94..019beac 100644 --- a/src/main/js/Main.ts +++ b/src/main/js/Main.ts @@ -32,7 +32,7 @@ doAfterLoad(() => { if (semver.lt(userVersion, latestVersion)) { Persistence.reset(); Persistence.setWasUpdated(true); // Message is displayed after reload - location.reload(true); + location.reload(); throw new ExpectedGoodbyeError("Goodbye"); } diff --git a/src/main/js/Persistence.ts b/src/main/js/Persistence.ts index e1abfd7..f68e73c 100644 --- a/src/main/js/Persistence.ts +++ b/src/main/js/Persistence.ts @@ -1,4 +1,4 @@ -import * as Cookies from "js-cookie"; +import Cookies from "js-cookie"; import {Environment} from "./Environment"; import {Directory, FileSystem, Node} from "./FileSystem"; import {InputHistory} from "./InputHistory"; @@ -161,10 +161,10 @@ export class Persistence { // Check user in environment if (!environment.has("user")) { - environment.set("user", "f"); + environment.set("user", "florine"); } else if (environment.get("user") !== "" && !userList.has(environment.get("user"))) { console.warn(`Invalid user '${environment.get("user")}' in environment.`); - environment.set("user", "f"); + environment.set("user", "florine"); } // Set home directory diff --git a/src/main/js/Shell.ts b/src/main/js/Shell.ts index b465d1e..188bf65 100644 --- a/src/main/js/Shell.ts +++ b/src/main/js/Shell.ts @@ -126,7 +126,7 @@ export class Shell { const inputString = streams.ins.readLine().replace("\n", ""); if (inputString === "factory-reset") { Persistence.reset(); - location.reload(true); + location.reload(); throw new ExpectedGoodbyeError("Goodbye"); } @@ -163,6 +163,9 @@ export class Shell { try { inputs = InputParser.create(this.environment, this.fileSystem).parseCommands(inputString); } catch (error) { + if (!(error instanceof Error)) + throw Error(`Error while processing parsing error:\n${error}`); + streams.err.writeLine(`Could not parse input: ${error.message}`); this.environment.set("status", "" + ExitCode.USAGE); return; diff --git a/tsconfig.json b/tsconfig.json index c32f853..80aea4f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,9 +2,9 @@ "compilerOptions": { "target": "es2019", "strict": true, -// "noUncheckedIndexedAccess": true, + "allowSyntheticDefaultImports": true, "rootDir": "./src/main/js/", - "outDir": "./dist/js/" + "outDir": "./dist/js/", }, "include": [ "src/main/js/**/*.ts"