npm eslint-plugin-etc-misc @2.0.0
score
0.5269
med
flagged
2026-07-21 02:41
Signals fired
| signal | weight | rationale |
|---|---|---|
| content | ||
| script_count_spike | 0.5 | scripts count 136 -> 143 |
| cadence | ||
| rapid_release | 0.8 | 3 versions in last 24h: ['1.3.0', '1.3.1', '2.0.0'] |
| topology | ||
| typosquat | 1.0 | combosquat of 'eslint' |
Prior profile (what it deviated from)
{
"had_install_script": false,
"maintainers": [
"typpi"
],
"versions": 19
}
Evidence (package doc at flag time)
{
"dependencies_count": 9,
"dist": {
"integrity": "sha512-FLr4EdQU3UDYsN08oWS1/QxT598hDa9DJ19al1kEirzqXb6CJQzrBjMlkS+E/LIcf9ibgXf+RvI9++eyl7jbjg==",
"tarball": "https://registry.npmjs.org/eslint-plugin-etc-misc/-/eslint-plugin-etc-misc-2.0.0.tgz",
"unpackedSize": 3336430
},
"dist-tags": {
"latest": "2.0.0"
},
"latest_version": "2.0.0",
"maintainers": [
{
"email": "Typpi.NPM@outlook.com",
"name": "typpi"
}
],
"num_versions": 21,
"repository": {
"type": "git",
"url": "git+https://github.com/Nick2bad4u/eslint-plugin-etc-misc.git"
},
"scripts": {
"bench:eslint:stats": "node benchmarks/run-eslint-stats.mjs",
"bench:eslint:timing": "npx cross-env TIMING=1 npx eslint --config benchmarks/eslint-timing.config.mjs benchmarks/fixtures/recommended-valid.fixture.ts",
"build": "npx tsc -b tsconfig.build.json --force && npm run build:types:cjs && npm run build:cjs && npm run build:verify",
"build:cjs": "npx esbuild dist/plugin.js --bundle --format=cjs --platform=node --packages=external --sourcemap --outfile=dist/plugin.cjs --footer:js=\"module.exports = module.exports.default;\"",
"build:clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
"build:eslint-inspector": "npx -y @eslint/config-inspector@latest build --outDir \"docs/docusaurus/static/eslint-inspector\" --base \"/eslint-plugin-etc-misc/eslint-inspector/\"",
"build:eslint-inspector:local": "npx @eslint/config-inspector",
"build:types:cjs": "node scripts/build-cjs-types.mjs",
"build:verify": "node scripts/verify-built-plugin-meta.mjs",
"changelog:generate": "git cliff --config node_modules/gitcliff-config-nick2bad4u/cliff.toml --github-repo Nick2bad4u/eslint-plugin-etc-misc --output CHANGELOG.md",
"changelog:preview": "git cliff --config node_modules/gitcliff-config-nick2bad4u/cliff.toml --github-repo Nick2bad4u/eslint-plugin-etc-misc --unreleased",
"changelog:release-notes": "git cliff --config node_modules/gitcliff-config-nick2bad4u/cliff.toml --github-repo Nick2bad4u/eslint-plugin-etc-misc --current",
"clean:cache": "node scripts/remove-paths.mjs dist coverage cache .cache .vite .turbo",
"clean:cache:coverage": "node scripts/remove-paths.mjs coverage .coverage",
"clean:cache:dist": "node scripts/remove-paths.mjs dist release",
"clean:cache:eslint": "node scripts/remove-paths.mjs .cache/.eslintcache",
"clean:cache:ncu": "node scripts/remove-paths.mjs .cache/.ncu-cache.json",
"clean:cache:prettier": "node scripts/remove-paths.mjs .cache/.prettier-cache .prettier-cache .prettiercache",
"clean:cache:stryker": "node scripts/remove-paths.mjs .stryker-tmp",
"clean:cache:stylelint": "node scripts/remove-paths.mjs .cache/stylelintcache stylelintcache .stylelintcache",
"clean:cache:temp": "node scripts/remove-paths.mjs \".temp/.**\"",
"clean:cache:typescript": "node scripts/remove-paths.mjs .cache/**.tsbuildinfo .cache/builds",
"clean:cache:vite": "node scripts/remove-paths.mjs .cache/vite .cache/vitest .cache/vitest-zero-coverage .cache/vite-zero-coverage",
"clean:database": "node scripts/remove-paths.mjs %appdata%/uptime-watcher/uptime-watcher.sqlite",
"clean:docs": "node scripts/remove-paths.mjs docs/docusaurus/.docusaurus/** docs/docusaurus/build/** docs/docusaurus/site-docs/developer/api/**",
"clean:docusaurus": "npm run clean:docs && npm run --workspace docs/docusaurus clear",
"commit": "npx git-cz",
"contrib": "npx all-contributors",
"contrib:add": "npx all-contributors add",
"contrib:check": "npx all-contributors check",
"contrib:compare": "npm run contrib:check",
"contrib:generate": "npx all-contributors generate",
"coverage": "npx vitest run --coverage",
"docs:api": "npm run --workspace docs/docusaurus docs:api",
"docs:build": "npm run --workspace docs/docusaurus build",
"docs:build:local": "npm run --workspace docs/docusaurus build:local",
"docs:check-links": "node ./scripts/check-doc-links.mjs",
"docs:serve": "npm run --workspace docs/docusaurus serve",
"docs:start": "npm run --workspace docs/docusaurus start",
"docs:toc": "npx remark docs --use remark-toc --output",
"docs:typecheck": "npm run --workspace docs/docusaurus typecheck",
"docs:typedoc": "node scripts/run-typedoc-docs.mjs",
"docs:validate-links": "npx remark docs --use remark-validate-links --frail",
"knip": "npx cross-env NODE_OPTIONS=--max_old_space_size=4096 NODE_NO_WARNINGS=1 npx knip -c knip.config.ts --cache --cache-location .cache/knip --no-config-hints --tsConfig tsconfig.json",
"lint": "npx cross-env NODE_OPTIONS=--max_old_space_size=16384 npx eslint --cache --cache-strategy content --cache-location .cache/.eslintcache",
"lint:action": "npm run lint:actions",
"lint:actions": "actionlint -color -shellcheck= -pyflakes=",
"lint:all": "npm run lint && npm run lint:css && npm run lint:prettier && npm run lint:remark && npm run lint:package && npm run lint:gitleaks && npm run lint:secretlint && npm run lint:yaml && npm run lint:yamllint && npm run lint:actions && npm run lint:circular",
"lint:all:fix": "npm run lint:fix && npm run lint:remark:fix && npm run lint:css:fix && npm run lint:prettier:fix && npm run lint:remark && npm run lint:package && npm run lint:secretlint && npm run lint:yaml:fix && npm run lint:actions && npm run lint:circular",
"lint:all:fix:quiet": "npm run lint:fix:quiet && npm run lint:css:fix && npm run lint:prettier:fix && npm run lint:remark && npm run lint:package && npm run lint:secretlint && npm run lint:yaml:fix && npm run lint:actions && npm run lint:circular",
"lint:circular": "npm run madge:circular",
"lint:compat:eslint9": "node scripts/eslint9-compat-smoke.mjs",
"lint:config:build": "npm run build:eslint-inspector",
"lint:config:inspect": "npx eslint --inspect-config",
"lint:css": "npx stylelint --cache --config stylelint.config.mjs --cache-strategy content --cache-location .cache/stylelintcache src/ docs/ --custom-formatter stylelint-formatter-pretty && echo \"Stylelint done!\"",
"lint:css:fix": "npx stylelint --cache --config stylelint.config.mjs --cache-strategy content --cache-location .cache/stylelintcache src/ docs/ --custom-formatter stylelint-formatter-pretty --fix && echo \"Stylelint done!\"",
"lint:depcheck": "npm run knip -- --dependencies",
"lint:deps": "npm run knip -- --dependencies && npm run knip",
"lint:dupes": "npx jscpd src/ --config node_modules/jscpd-config-nick2bad4u/jscpd.json",
"lint:dupes:all": "npx jscpd src/ --config node_modules/jscpd-config-nick2bad4u/jscpd.json --min-lines 3",
"lint:dupes:skiplocal": "npx jscpd src/ --skipLocal --config node_modules/jscpd-config-nick2bad4u/jscpd.json",
"lint:dupes:skiplocal:all": "npx jscpd src/ --skipLocal --config node_modules/jscpd-config-nick2bad4u/jscpd.json --min-lines 3",
"lint:duplicates": "npm run lint:dupes",
"lint:exports": "npx ts-unused-exports tsconfig.json src/plugin.ts --excludePathsFromReport=plugin.ts",
"lint:fix": "npx cross-env NODE_OPTIONS=--max_old_space_size=16384 npx eslint --cache --cache-strategy content --cache-location .cache/.eslintcache --fix",
"lint:fix:quiet": "npx cross-env ESLINT_PROGRESS=off NODE_OPTIONS=--max_old_space_size=16384 eslint --cache --cache-strategy content --cache-location .cache/.eslintcache --fix && echo \"Eslint fix done!\"",
"lint:gitleaks": "gitleaks dir --config .gitleaks.toml .",
"lint:grype": "grype . -c .grype.yaml --name eslint-plugin-etc-misc",
"lint:jscpd": "npx jscpd --config node_modules/jscpd-config-nick2bad4u/jscpd.json",
"lint:knip": "npm run knip",
"lint:knip:exports": "npm run knip -- --include exports,nsExports,classMembers,types,nsTypes,enumMembers,duplicates",
"lint:knip:unused:exports": "npm run knip -- --dependencies --exports",
"lint:leaves": "npm run madge:leaves",
"lint:lychee": "lychee --config node_modules/lychee-config-nick2bad4u/lychee.toml .",
"lint:lychee:smoke": "lychee --config node_modules/lychee-config-nick2bad4u/lychee.toml --dump-inputs README.md",
"lint:node-version-files": "node scripts/sync-node-version-files.mjs --check",
"lint:orphans": "npm run madge:orphans",
"lint:package": "npm run lint:node-version-files && npm run lint:package-sort && npm run lint:packagelintrc && echo \"Package.json lint done!\"",
"lint:package-check": "npx publint && npx attw --pack .",
"lint:package-check:strict": "npx publint && npx attw --pack . --profile strict --config-path ./.attw.json",
"lint:package-json": "npx npmPkgJsonLint . --config .npmpackagejsonlintrc.json",
"lint:package-sort": "npx sort-package-json \"./package.json\" \"./docs/docusaurus/package.json\"",
"lint:package-sort-check": "npx sort-package-json --check \"./package.json\" \"./docs/docusaurus/package.json\"",
"lint:package:strict": "npm run lint:node-version-files && npm run lint:package-sort && npm run lint:package-check:strict && npm run lint:packagelintrc && echo \"Package.json lint done!\"",
"lint:packagelintrc": "npx npmPkgJsonLint . --config .npmpackagejsonlintrc.json",
"lint:prettier": "npx prettier . --log-level warn --cache --cache-location=.cache/.prettier-cache --cache-strategy=content --check",
"lint:prettier:fix": "npx prettier . --log-level warn --cache --cache-location=.cache/.prettier-cache --cache-strategy=content --write",
"lint:publint": "npx publint",
"lint:quiet": "npx cross-env ESLINT_PROGRESS=nofile NODE_OPTIONS=--max_old_space_size=16384 eslint --cache --cache-strategy content --cache-location .cache/.eslintcache && echo \"Eslint done!\"",
"lint:remark": "npx remark . --frail --ignore-path .remarkignore",
"lint:remark:fix": "npx remark . --ignore-path .remarkignore --output",
"lint:secretlint": "npx secretlint --secretlintrc .secretlintrc.cjs --secretlintignore .secretlintignore \"./*\" \".vscode/**\" \"assets/**\" \"src/**\" \"electron/**\" \"shared/**\" \"config/**\" \"scripts/**\" \"playwright/**\" \"storybook/**\" \".storybook\" \"tests/**\" \"benchmarks/**\" \".devin/**\" \"public/**\" \".github/**\" \"docs/Architecture/**\" \"docs/*\" \"docs/assets/**\" \"docs/Guides/**\" \"docs/Testing/**\" \"docs/TSDoc/**\" \"docs/docusaurus/src/**\" \"docs/docusaurus/static/**\" \"docs/docusaurus/blog/**\" \"docs/docusaurus/docs/**\" \"docs/docusaurus/docs/*\"",
"lint:secrets": "detect-secrets scan",
"lint:unused": "npm run knip -- --include unlisted,unresolved,duplicates",
"lint:unused-deps": "npm run knip -- --dependencies",
"lint:yaml": "npx cross-env NODE_OPTIONS=--max_old_space_size=16384 npx eslint --cache --cache-strategy content --cache-location .cache/.eslintcache \"**/*.{yml,yaml}\" && echo \"YAML lint done!\"",
"lint:yaml:fix": "npx cross-env NODE_OPTIONS=--max_old_space_size=16384 npx eslint --cache --cache-strategy content --cache-location .cache/.eslintcache --fix \"**/*.{yml,yaml}\" && echo \"YAML lint (fix) done!\"",
"lint:yamllint": "yamllint -c .yamllint .",
"madge:circular": "npx madge --circular --no-spinner --ts-config tsconfig.json --extensions ts,tsx,js,jsx,mjs,cjs,cts,mts ./src --exclude \"(^|[\\/])(test|dist|node_modules|cache|.cache|coverage|build|eslint-inspector|temp|.docusaurus)($|[\\/])|\\.css$\"",
"madge:leaves": "npx madge --leaves --no-spinner --ts-config tsconfig.json --extensions ts,tsx,js,jsx,mjs,cjs,cts,mts ./src --exclude \"(^|[\\/])(test|dist|node_modules|cache|.cache|coverage|build|eslint-inspector|temp|.docusaurus)($|[\\/])|\\.css$\"",
"madge:orphans": "npx madge --orphans --no-spinner --ts-config tsconfig.json --extensions ts,tsx,js,jsx,mjs,cjs,cts,mts ./src --exclude \"(^|[\\/])(test|dist|node_modules|cache|.cache|coverage|build|eslint-inspector|temp|.docusaurus)($|[\\/])|\\.css$\"",
"open:coverage": "npx open-cli coverage/index.html",
"prebuild": "npm run build:clean",
"prelint": "npm run build",
"prelint:compat:eslint9": "npm run build",
"prepublishOnly": "npm run release:check",
"pretest": "npm run build",
"release:check": "npm run release:verify",
"release:verify": "npm run lint:all && npm run typecheck && npm run test && npm pack --dry-run",
"remark:fix": "npx remark --rc-path .remarkrc.mjs --silently-ignore --ignore-path .remarkignore --frail --quiet --output -- \"*.{md,mdx}\" \"docs/**/*.{md,mdx}\"",
"remark:test-config": "npx remark --rc-path .remarkrc.mjs --silently-ignore --ignore-path .remarkignore --frail \"README.md\"",
"sync:node-version-files": "node scripts/sync-node-version-files.mjs",
"sync:peer-eslint-range": "node scripts/sync-peer-eslint-range.mjs",
"sync:preset-rule-links": "node scripts/sync-preset-rule-links.mjs",
"sync:readme-rules-table": "node scripts/sync-readme-rules-table.mjs",
"sync:rule-catalog-ids": "node scripts/sync-rule-catalog-ids.mjs",
"sync:rule-doc-structure": "node scripts/sync-rule-doc-structure.mjs",
"sync:rules:write": "npm run sync:readme-rules-table && npm run sync:peer-eslint-range && npm run sync:node-version-files",
"test": "npx vitest run",
"test:ci": "npx cross-env CI=true npx vitest run --reporter=default",
"test:coverage": "npx vitest run --coverage --reporter=default",
"test:coverage:detailed": "npx vitest run --coverage --reporter=verbose",
"test:coverage:minimal": "npx vitest run --coverage --reporter=dot",
"test:coverage:open": "npm run test:coverage && npm run open:coverage",
"test:coverage:quiet": "npx vitest run --coverage --reporter=default --silent",
"test:coverage:verbose": "npx vitest run --coverage --reporter=verbose",
"test:detailed": "npx vitest run --reporter=verbose",
"test:minimal": "npx vitest run --reporter=dot",
"test:open": "npm run test:coverage && npm run open:coverage",
"test:quiet": "npx vitest run --reporter=default --silent",
"test:serial": "npx cross-env MAX_THREADS=1 npx vitest run",
"test:stryker": "npx stryker run --ignoreStatic --concurrency 12 --incrementalFile .cache/stryker/incremental-fast.json",
"test:stryker:ci": "npx cross-env CI=true npx stryker run --ignoreStatic --concurrency 2 --incrementalFile .cache/stryker/incremental-fast-ci.json",
"test:stryker:full": "npx stryker run --concurrency 12 --incrementalFile .cache/stryker/incremental-full.json",
"test:stryker:full:ci": "npx cross-env CI=true npx stryker run --concurrency 2 --incrementalFile .cache/stryker/incremental-full-ci.json",
"test:verbose": "npx vitest run --reporter=verbose",
"test:watch": "npx vitest",
"typecheck": "npx tsc -p tsconfig.json --noEmit && npx tsc -p tsconfig.build.json --noEmit && npx tsc -p tsconfig.eslint.json --noEmit && npx tsc -p tsconfig.js.json --noEmit && npm run --workspace docs/docusaurus typecheck",
"typecheck:all": "npm run typecheck",
"types:update": "npx typesync",
"update-actions": "npx actions-up --yes --style sha",
"update-all": "npm run update-actions && npm run update-deps",
"update-deps": "npx ncu --configFileName .ncurc.workspaces.json --configFilePath node_modules/ncu-config-nick2bad4u && npm update --workspaces --force && npm install --force && npm run sync:rules:write"
},
"signal_details": {
"rapid_release": "3 versions in last 24h: ['1.3.0', '1.3.1', '2.0.0']",
"script_count_spike": "scripts count 136 -> 143",
"typosquat": "combosquat of 'eslint'"
},
"time": {
"created": "2026-03-15T00:38:35.305Z",
"modified": "2026-07-21T07:41:01.999Z"
}
}