Enable more oxlint rules (#34189)
* Fix type imports * Fix jsdoc * Fixup types * Fix stray awaits on non-thenables * Fixup imports * Fix splats * Fix this-context on callbacks * Memoise react contexts * Prefer find/flatMap * Make oxlint happier about our React keys * Avoid unsafe default function params * Fixup jsdoc * Fixup contexts * Switch from eslint to oxlint * Some oxlint-related tweaks * Iterate * Partial revert to defer some changes and shrink diff * Iterate * Add eslint-plugin-element-call and enable the copyright rule * Set strictStorePkgContentCheck * Iterate * Enable forwardRef oxlint rule * Enable no-unused-vars oxlint rule * Enable no-implied-eval oxlint rule * Enable no-duplicate-type-constituents oxlint rule * Enable explicit-length-check oxlint rule * Enable prefer-number-properties oxlint rule * Enable no-callback-in-promise oxlint rule * Enable no-require-imports oxlint rule * Remove disablement of most unicorn oxlint rules * Enable no-conditional-tests oxlint rule * Enable promise-valid-params oxlint rule * Enable require-unicode-regexp oxlint rule * Remove max-len comments as we use oxfmt for formatting * Enable majority of oxlint `suspicious` rules * Iterate * Fix oxlint type-aware lint running without dependencies built
This commit is contained in:
@@ -75,7 +75,7 @@ if (process.env.VARIANT_PATH) {
|
||||
console.log(`Using variant configuration from '${process.env.VARIANT_PATH}':`);
|
||||
variant = {
|
||||
...variant,
|
||||
...JSON.parse(fs.readFileSync(`${process.env.VARIANT_PATH}`, "utf8")),
|
||||
...JSON.parse(fs.readFileSync(process.env.VARIANT_PATH, "utf8")),
|
||||
};
|
||||
} else {
|
||||
console.warn(`No VARIANT_PATH specified, using default variant configuration '${DEFAULT_VARIANT}':`);
|
||||
|
||||
@@ -48,8 +48,9 @@ export default async function (hakEnv: HakEnv, moduleInfo: DependencyInfo): Prom
|
||||
"` " +
|
||||
"or your package manager if not using `rustup`",
|
||||
);
|
||||
return;
|
||||
}
|
||||
fsProm.unlink("tmp").then(resolve);
|
||||
resolve(fsProm.unlink("tmp"));
|
||||
},
|
||||
);
|
||||
rustc.stdin!.write("fn main() {}");
|
||||
|
||||
@@ -27,7 +27,7 @@ export default async function copy(hakEnv: HakEnv, moduleInfo: DependencyInfo):
|
||||
if (moduleInfo.moduleBuildDirs.length > 1) {
|
||||
if (!hakEnv.isMac()) {
|
||||
console.error(
|
||||
"You asked me to copy multiple targets but I've only been taught " + "how to do that on macOS.",
|
||||
"You asked me to copy multiple targets but I've only been taught how to do that on macOS.",
|
||||
);
|
||||
throw new Error("Can't copy multiple targets on this platform");
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@ async function main(): Promise<void> {
|
||||
for (const mod of modules) {
|
||||
const depInfo = deps[mod];
|
||||
if (depInfo === undefined) {
|
||||
console.log("Module " + mod + " not found - is it in hakDependencies " + "in your package.json?");
|
||||
console.log(`Module ${mod} not found - is it in hakDependencies in your package.json?`);
|
||||
process.exit(1);
|
||||
}
|
||||
console.log("hak " + cmd + ": " + mod);
|
||||
|
||||
@@ -42,12 +42,10 @@ describe("buildMenuTemplate", () => {
|
||||
({ buildMenuTemplate } = await import("./vectormenu.js"));
|
||||
});
|
||||
|
||||
if (platform === "darwin") {
|
||||
it("should have an app-named item first", () => {
|
||||
const menu = buildMenuTemplate();
|
||||
expect(menu.items[0].label).toBe("ChatApp");
|
||||
});
|
||||
}
|
||||
it.runIf(platform === "darwin")("should have an app-named item first", () => {
|
||||
const menu = buildMenuTemplate();
|
||||
expect(menu.items[0].label).toBe("ChatApp");
|
||||
});
|
||||
|
||||
it("should include expected `help` menu", () => {
|
||||
const menu = buildMenuTemplate();
|
||||
@@ -55,8 +53,8 @@ describe("buildMenuTemplate", () => {
|
||||
const helpMenu = menu.items.at(-1)!;
|
||||
expect(helpMenu.label).toBe("common|help");
|
||||
const helpSubmenu = helpMenu.submenu as unknown as MenuItemConstructorOptions[];
|
||||
expect(helpSubmenu[0]!.label).toBe("common|brand_help");
|
||||
helpSubmenu[0]!.click!(menu.items.at(-1)!, undefined, new Event("click") as KeyboardEvent);
|
||||
expect(helpSubmenu[0].label).toBe("common|brand_help");
|
||||
helpSubmenu[0].click!(menu.items.at(-1)!, undefined, new Event("click") as KeyboardEvent);
|
||||
expect(shell.openExternal).toHaveBeenCalledWith("https://i.need.help");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user