Use gzipped files, add test files to S3

This commit is contained in:
Piotr Rogowski 2021-04-08 14:50:09 +02:00
parent 895c457a38
commit 99b15c1e9d
No known key found for this signature in database
GPG Key ID: F40F61D5587F5673
11 changed files with 30 additions and 5 deletions

14
package-lock.json generated
View File

@ -13,6 +13,7 @@
"electron-squirrel-startup": "^1.0.0",
"js-yaml": "^4.0.0 ",
"mlg-converter": "^0.5.0",
"pako": "^1.0.11",
"parsimmon": "^1.16.0",
"react": "^17.0.1",
"react-dom": "^17.0.2",
@ -33,6 +34,7 @@
"@electron-forge/maker-zip": "^6.0.0-beta.54",
"@types/js-yaml": "^4.0.0",
"@types/node": "^14.14.37",
"@types/pako": "^1.0.1",
"@types/parsimmon": "^1.10.6",
"@types/react": "^17.0.3",
"@types/react-dom": "^17.0.3",
@ -3377,6 +3379,12 @@
"resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
"integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA=="
},
"node_modules/@types/pako": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@types/pako/-/pako-1.0.1.tgz",
"integrity": "sha512-GdZbRSJ3Cv5fiwT6I0SQ3ckeN2PWNqxd26W9Z2fCK1tGrrasGy4puvNFtnddqH9UJFMQYXxEuuB7B8UK+LLwSg==",
"dev": true
},
"node_modules/@types/parse-json": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
@ -28960,6 +28968,12 @@
"resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
"integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA=="
},
"@types/pako": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@types/pako/-/pako-1.0.1.tgz",
"integrity": "sha512-GdZbRSJ3Cv5fiwT6I0SQ3ckeN2PWNqxd26W9Z2fCK1tGrrasGy4puvNFtnddqH9UJFMQYXxEuuB7B8UK+LLwSg==",
"dev": true
},
"@types/parse-json": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",

View File

@ -40,6 +40,7 @@
"electron-squirrel-startup": "^1.0.0",
"js-yaml": "^4.0.0 ",
"mlg-converter": "^0.5.0",
"pako": "^1.0.11",
"parsimmon": "^1.16.0",
"react": "^17.0.1",
"react-dom": "^17.0.2",
@ -60,6 +61,7 @@
"@electron-forge/maker-zip": "^6.0.0-beta.54",
"@types/js-yaml": "^4.0.0",
"@types/node": "^14.14.37",
"@types/pako": "^1.0.1",
"@types/parsimmon": "^1.10.6",
"@types/react": "^17.0.3",
"@types/react-dom": "^17.0.3",

Binary file not shown.

BIN
public/logs/long.mlg.gz Normal file

Binary file not shown.

Binary file not shown.

BIN
public/logs/longest.mlg.gz Normal file

Binary file not shown.

Binary file not shown.

BIN
public/logs/middle.mlg.gz Normal file

Binary file not shown.

View File

@ -129,6 +129,7 @@ const Log = ({ ui, config }: { ui: UIState, config: Config }) => {
};
} catch (error) {
setFetchError(error);
throw error;
}
};

View File

@ -78,5 +78,11 @@ export const loadAll = async () => {
});
};
export const loadLogs = (onProgress?: onProgressType, signal?: AbortSignal) => fetchWithProgress('./logs/longest.mlg', onProgress, signal)
.then((response) => response);
export const loadLogs = (onProgress?: onProgressType, signal?: AbortSignal) =>
fetchWithProgress(
// 'https://speedytuner-cloud.s3.eu-west-2.amazonaws.com/logs/longest.mlg.gz',
'https://d29mjpbgm6k6md.cloudfront.net/logs/longest.mlg.gz',
onProgress,
signal,
)
.then((response) => response);

View File

@ -1,15 +1,16 @@
/* eslint-disable no-bitwise */
import { Parser } from 'mlg-converter';
import pako from 'pako';
// eslint-disable-next-line no-restricted-globals
const ctx: Worker = self as any;
ctx.addEventListener('message', ({ data }: { data: ArrayBuffer }) => {
const t0 = performance.now();
try {
const result = new Parser(data).parse((progress) => {
const t0 = performance.now();
const buff = pako.inflate(new Uint8Array(data)).buffer;
const result = new Parser(buff).parse((progress) => {
ctx.postMessage({
type: 'progress',
progress,
@ -24,5 +25,6 @@ ctx.addEventListener('message', ({ data }: { data: ArrayBuffer }) => {
ctx.postMessage({ type: 'result', result });
} catch (error) {
ctx.postMessage({ type: 'error', error });
throw error;
}
});