From d5ae6d3fecbd515ed82eb07fbc359dd70955725b Mon Sep 17 00:00:00 2001 From: Alex Grozav Date: Sun, 8 Mar 2026 12:27:45 +0200 Subject: [PATCH] Fix linting errors and add development tooling - Fix no-new-array lint error in scanner.ts by using Array.from instead - Add eslint-disable comments for intentional unused variables in test fixtures - Add typecheck script using tsc --noEmit - Expand .gitignore with standard entries (coverage, logs, env files, OS artifacts) --- .gitignore | 12 ++++++++++++ package.json | 1 + src/__tests__/fixtures/externals/entry.ts | 2 ++ src/__tests__/fixtures/externals/local.ts | 1 + src/__tests__/fixtures/mixed/entry.ts | 3 +++ src/__tests__/fixtures/strings/entry.ts | 3 +++ src/scanner.ts | 2 +- vitest.config.ts | 7 +------ 8 files changed, 24 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index b947077..28a5037 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,14 @@ node_modules/ dist/ +dist-docs/ +coverage/ + +*.log +*.tsbuildinfo +*.tgz + +.DS_Store +Thumbs.db + +.env +.env.* diff --git a/package.json b/package.json index 0a5e672..c3c1428 100644 --- a/package.json +++ b/package.json @@ -49,6 +49,7 @@ "dev:docs": "npx http-server docs -p 8765 -o", "bench": "vitest bench", "bench:run": "vitest bench --run", + "typecheck": "tsc --noEmit", "lint": "oxlint", "lint:fix": "oxlint --fix", "fmt": "oxfmt", diff --git a/src/__tests__/fixtures/externals/entry.ts b/src/__tests__/fixtures/externals/entry.ts index ee1faa1..8e5a821 100644 --- a/src/__tests__/fixtures/externals/entry.ts +++ b/src/__tests__/fixtures/externals/entry.ts @@ -1,4 +1,6 @@ +// eslint-disable-next-line no-unused-vars import lodash from "lodash"; +// eslint-disable-next-line no-unused-vars import { useState } from "react"; import { local } from "./local"; diff --git a/src/__tests__/fixtures/externals/local.ts b/src/__tests__/fixtures/externals/local.ts index 4dc99d7..e8b7635 100644 --- a/src/__tests__/fixtures/externals/local.ts +++ b/src/__tests__/fixtures/externals/local.ts @@ -1,3 +1,4 @@ +// eslint-disable-next-line no-unused-vars import { join } from "node:path"; export const local = "local"; diff --git a/src/__tests__/fixtures/mixed/entry.ts b/src/__tests__/fixtures/mixed/entry.ts index a013e2d..6421e68 100644 --- a/src/__tests__/fixtures/mixed/entry.ts +++ b/src/__tests__/fixtures/mixed/entry.ts @@ -1,8 +1,11 @@ import { staticDep } from "./static-dep"; +// eslint-disable-next-line no-unused-vars import type { SomeType } from "./types"; import "./side-effect"; +// eslint-disable-next-line no-unused-vars const dynamic = import("./dynamic-dep"); +// eslint-disable-next-line no-unused-vars const cjs = require("./cjs-dep"); export { everything } from "./reexport"; diff --git a/src/__tests__/fixtures/strings/entry.ts b/src/__tests__/fixtures/strings/entry.ts index 4980d79..ebfbe35 100644 --- a/src/__tests__/fixtures/strings/entry.ts +++ b/src/__tests__/fixtures/strings/entry.ts @@ -1,7 +1,10 @@ import { real } from "./real"; +// eslint-disable-next-line no-unused-vars const fakeImport = "import { fake } from './fake'"; +// eslint-disable-next-line no-unused-vars const anotherFake = `import { also } from './also-fake'`; +// eslint-disable-next-line no-unused-vars const template = `some ${real} template`; export const main = real; diff --git a/src/scanner.ts b/src/scanner.ts index 6d596ca..64606e9 100644 --- a/src/scanner.ts +++ b/src/scanner.ts @@ -8,7 +8,7 @@ */ export function stripComments(code: string): string { const len = code.length; - const result: string[] = new Array(len); + const result: string[] = Array.from({ length: len }); let i = 0; while (i < len) { diff --git a/vitest.config.ts b/vitest.config.ts index ea761cc..7d143b3 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -9,12 +9,7 @@ export default defineConfig({ coverage: { provider: "v8", include: ["src/**/*.ts"], - exclude: [ - "src/**/*.test.ts", - "src/__tests__/**", - "src/__benchmarks__/**", - "src/types.ts", - ], + exclude: ["src/**/*.test.ts", "src/__tests__/**", "src/__benchmarks__/**", "src/types.ts"], thresholds: { lines: 99, functions: 99,