mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2026-01-10 01:14:27 +08:00
- main linting is now done by oxlint. eslint remains for linting json files in the frontend (until oxlint adds support) - move type checking to the lint step (with --type-check) this improves performance by removing a duplicated typescript parse task (instead of parsing for linting then again for type checking, it parses once for both) - add a `lint-fast` npm script to get some fast fail behavior. it simply lints with no type information - oxc plugins are still in preview, so the custom plugin that checks for `__testing` usage outside of tests runs outside the main linting job until performance is improved - fixes some type issues (and config issues) that were not visible due to a missing type check on some files. now type checking will run on every file that is linted - split up oxc config for easier management waiting https://github.com/oxc-project/tsgolint/pull/494 seeing around 3x improvement in type aware linting
29 lines
734 B
JavaScript
29 lines
734 B
JavaScript
// oxlint-disable no-require-imports
|
|
const fs = require("fs");
|
|
|
|
function fixQuoteLengths() {
|
|
return new Promise((resolve) => {
|
|
const quotesFiles = fs.readdirSync("../static/quotes/");
|
|
quotesFiles.forEach((quotefilename) => {
|
|
quotefilename = quotefilename.split(".")[0];
|
|
let quoteData = JSON.parse(
|
|
fs.readFileSync(`../static/quotes/${quotefilename}.json`, {
|
|
encoding: "utf8",
|
|
flag: "r",
|
|
}),
|
|
);
|
|
|
|
quoteData.quotes.forEach((quote) => {
|
|
quote.length = quote.text.length;
|
|
});
|
|
|
|
fs.writeFileSync(
|
|
`../static/quotes/${quotefilename}.json`,
|
|
JSON.stringify(quoteData, null, 2),
|
|
);
|
|
});
|
|
resolve();
|
|
});
|
|
}
|
|
|
|
fixQuoteLengths();
|