Repository navigation
Releases
Releases · webpro-nl/knip
Release 6.44.2
- Follow extends in Babel configuration files (#2274) (50d9a3c) - thanks @clean99!
- Follow extended Stylelint configuration files (#2275) (dd45e47) - thanks @clean99!
- Add more shell builtins and POSIX utilities to the ignored global binaries (#2277) (7a89dec) - thanks @SwastikTripathi!
- Fix typos and grammar errors (#2279) (0be8782) - thanks @deining!
- Read gatsby-config.mjs and gatsby-node.mjs in the Gatsby plugin (#2280) (daf7d03) - thanks @SwastikTripathi!
- Ignore the uno.css virtual module in the UnoCSS plugin (#2276) (518e67f) - thanks @SwastikTripathi!
- Read every extension React Router accepts in the React Router plugin (#2281) (97afba1) - thanks @SwastikTripathi!
- Recognize Storybook module config extensions (#2273) (b697baa) - thanks @clean99!
- Skip URL imports in the SCSS compiler (#2289) (eb98923) - thanks @gioboa!
- Support custom coverage providers in the Vitest plugin (#2291) (e9e656c) - thanks @gioboa!
- Read npx options only before the package (#2290) (3195963) - thanks @gioboa!
- Accept jsx and tsx for Storybook main config (86c1133)
- Update sanity snapshot (2064858)
- Accept -r as shorthand for --root in the Vitest plugin (3060124)
- Resolve commands executed with vp exec (#2285) (406a776) - thanks @everton-dgn!
- Keep production entries that bun and nub also run (#2293) (55aa0f8) - thanks @gioboa!
- Remove
minimumReleaseAgeExcludeitems (e97fe78) - Update dependencies (203e380)
- Add some prerequisites to release machinery (736327f)
Release 6.44.1
- Narrow the docs package Node.js engine range to Astro's requirement (60589c4)
- Follow resolve.alias in the Rsbuild plugin (#2251) (4dc61d2) - thanks @fixfon!
- Read SWC plugins from
tools.swcin the Rsbuild plugin (#2253) (ad2227a) - thanks @fixfon! - Read .release-it.mjs and other c12 extensions in the Release It plugin (#2258) (87816e6) - thanks @SwastikTripathi!
- Read .mocharc.mjs in the Mocha plugin (#2259) (16fee14) - thanks @SwastikTripathi!
- Restart the language server on config changes after a failed start (#2257) (f7db448) - thanks @fixfon!
- Keep the command after boolean flags in the Bun resolver (resolve #2262) (3c84caf)
- Read babel.config.mts in the Babel plugin (#2267) (04abfd8) - thanks @clean99!
- Track import().then() callback member usage (#2264) (14565eb) - thanks @gioboa!
- Reload the knip config file when the language server restarts (#2261) (fa9ca71) - thanks @fixfon!
- Read all supported CSpell configuration locations (#2265) (c6c5b2c) - thanks @clean99!
- Read SVGR configs from cosmiconfig search locations (#2266) (47082a8) - thanks @clean99!
- Handle extends arrays in the npm-package-json-lint plugin (#2269) (83c8c80) - thanks @clean99!
- Read Relay configuration from package.json (#2270) (6ce8b00) - thanks @clean99!
- Read dependencies from SWC config arrays (#2271) (5ffe927) - thanks @clean99!
- Recognize CJS and ESM data files in the Eleventy plugin (#2272) (d939417) - thanks @clean99!
- Unroll case iterations in the SolidJS Vite, Buf, Eve and Nx plugin tests (5f87aab)
- Hoist remark to the root for the VS Code remark extension (e777270)
- Format root Markdown and package READMEs with pnpm remark (58c7670)
- Write readable tests (393b348)
- Format Markdown with remark (10c0133)
- Fix local links in Markdown (a3fd031)
- Treat cloudflare: specifiers as runtime built-ins (#2268) (e7f261e) - thanks @SwastikTripathi!
Release 6.44.0
- Clarify that custom
entrystill adds entry files from package.json (#2206) (4099dde) - thanks @MannXo! - Resolve expanded package scripts against the directory of their manifest (#2209) (9d8464d) - thanks @fixfon!
- Track exports through namespace member chains of any depth (#2210) (7569702) - thanks @fixfon!
- Do not treat Windows drive letters as package names (#2217) (d412c5b) - thanks @Cherry!
- Generate built-in compilers list from source (#2216) (d6f594c) - thanks @abrahamguo!
- Update to pnpm@^11 + pnpm dedupe (ef5b819)
- Stop growing and rewriting the analysis cache on warm runs (close #2213) (54b02dd)
- Use
entryin plugins that do not resolve their config files (0b0e328) - Reuse graph reachability for incremental sessions (#2190) (38d926a) - thanks @jakeleventhal!
- fix: reload discovered configuration in watch sessions (#2211) (cefef30) - thanks @jakeleventhal!
- Keep editor sessions and views current (#2215) (cfe91ab) - thanks @jakeleventhal!
- Add Lingui plugin (#2212) (611e7db) - thanks @clean99!
- Update dependency bun to v1.4.4 (#2219) (3f35bbd) - thanks @renovate[bot]!
- Read CSpell configuration from package.json (#2228) (86ab963) - thanks @clean99!
- Ignore file discovery order in session configuration test (51a8d33)
- Fix strict mode for caught optional peer imports (#2218) (e535f40) - thanks @jay23606!
- Add kysely-codegen plugin (#2223) (a50e842) - thanks @clean99!
- Add PurgeCSS plugin (#2224) (668aea6) - thanks @clean99!
- Document plugin args and path bases, issue key order and real-world fixes (8e48df6)
- Add Mastra plugin (#2227) (dd4e1f7) - thanks @ashokram-si!
- Count
findPackageJSON()bare specifiers as dependencies (#2235) (d4e387b) - thanks @abrahamguo! - Add universal hooks file to SvelteKit entries (#2237) (f286584) - thanks @APX403!
- Attribute extended tsconfig plugins correctly (#2230) (8d1d1d1) - thanks @gioboa!
- Resolve
reporterin the Mocha plugin (#2232) (c413715) - thanks @X-Guardian! - Read nyc.config.cjs and nyc.config.mjs in the nyc plugin (#2240) (724c3c9) - thanks @SwastikTripathi!
- Read hidden .biome.json and .biome.jsonc in the Biome plugin (#2239) (dde22a7) - thanks @SwastikTripathi!
- fix: narrow Remix plugin enabler to @remix-run/dev (#2242) (5e10c52) - thanks @gioboa!
- Document alsoReferenceOwner on Input (387e97f)
- Document path bases and the dir option per input type (98180d3)
- Emit the Gatsby production entries from resolveConfig (c224f16)
- Emit the TanStack Router entry files from resolveConfig (c2598a3)
- Discover Marko tag files when only marko-tag.json files exist (c264697)
- Remove the static public/sw.js production entry from the vite-plugin-pwa plugin (b3f9a56)
- Keep absolute
build.lib.entrypaths in the Vitest plugin (5d974fa) - Resolve Vite alias targets from the workspace without prefixing absolute paths (8f93e9d)
- Keep absolute
testDirpaths in the Playwright plugin (4e3e6b3) - Keep absolute
storiespaths in the Storybook plugin (321decc) - Resolve an absolute
basePathin the Karma plugin (64e8b1b) - Keep absolute local plugin paths in the Docusaurus plugin (058930d)
- Keep absolute local plugin paths in the Serverless Framework plugin (0176d78)
- Resolve Nx
run-commandscwd from the workspace root (39c08aa) - Resolve package specifiers in Marko tag definitions (168ee52)
- Keep absolute include paths in the Taskfile plugin (7945ec1)
- Resolve Lefthook
rootfrom the repository root (f28fae6) - Pass specifiers with
dirinstead of absolutizing them in the webpack, Nx and textlint plugins (1ad804d) - Drop redundant
relativecalls on entry patterns in the rstest and Marko plugins (9096f25) - Use
toAbsolutein the Jasmine, Lunaria and electron-vite plugins (b4266ef) - Mark inputs from the start script as production (2fb1024)
- Mark inputs from scripts in production files as production (af469e9)
- Apply directory gitignore patterns to static-only globs (efe514f)
- Glob plugin config files once per workspace (b515677)
- Resolve Mocha
requireandfilefrom the working directory (c6850eb) - Cover the owning workspace of
jsxImportSourcein the tsconfig plugins test (0442096) - List
nyc.config.{js,cjs,mjs}in the nyc plugin example (671e5fb) - Fold agent lessons into the tracked guides (e6cbfe3)
- Ignore development script inputs that the start script repeats in production mode (15cd870)
- Resolve Taskfile script entry patterns from the workspace directory (2730ffa)
- Resolve plugin entry patterns from
dir(6df9c4e) - Add GitHub Actions
working-directoryfixtures for mocha spec patterns (95efd3a) - Pin the scope of negations and workspace exclusions for plugin entry patterns with
dir(2070464) - Parse GitHub Actions step scripts against their working directory (98d0b98)
- Parse MCP server commands against their
cwd(381e3e3) - Let core resolve script entries from
dirin the Playwright, Railway and mise plugins (5d10668) - Add --output-file option to write reporter output to a file (#2243) (1a58eb5) - thanks @X-Guardian!
- Treat packageExtensions peers as optional (#2246) (e118ef4) - thanks @gioboa!
- Support pnpm workspace config includes (#2238) (acbbbf5) - thanks @gioboa!
- Detect SWC plugins in options set directly on a webpack rule (#2252) (624da93) - thanks @fixfon!
- Escape pipes in symbols in the markdown reporter (#2254) (153ba1e) - thanks @NgoQuocViet2001!
- More than two hundred plugins (e68eaa5)
- Update dependencies (8b06f9a)
Release 6.43.0
- Document and pin exports that only keep each other alive (#2160) (39af70a)
- Don't add config files without an extension as entry files (resolve #2168) (46a825d)
- Recognize unscoped ~name workspace packages (resolve #2172) (ba527f7)
- Follow imports and re-exports in ambient modules (resolve #2174) (dbd3a8b) - thanks @tlq5l!
- Follow
@referencein Tailwind CSS compiler (#2177) (219f16d) - thanks @mkantautas! - Support
{ find, replacement }array form of Vitealias(#2179) (5d0779b) - thanks @mkantautas! - fix(expo): treat local config plugins as entry files (#2176) (100ef49) - thanks @Cayan!
- fix(next): detect Turbopack loaders in shared config factories (#2161) (9cf928b) - thanks @jakeleventhal!
- Ignore osascript as global binary (#2182) (c301e44) - thanks @abrahamguo!
- Skip
--fixfor exports in multi-declarator variable statements (#2178) (326afd9) - thanks @mkantautas! - Watch the project directory instead of process.cwd() (#2183) (16d9932) - thanks @abrahamguo!
- Follow directory paths in tsconfig
references(#2186) (d741c46) - thanks @mkantautas! - Handle
@pluginoptions blocks in Tailwind CSS compiler (#2187) (9fae773) - thanks @mkantautas! - Remove anonymous default-exported functions and classes in
--fix(#2188) (6748259) - thanks @mkantautas! - Recognize bun fmt as a built-in command (#2189) (e971b09) - thanks @TomasHubelbauer!
- Add plugin for @bufbuild/buf (#2142) (90216c2) - thanks @ryanquinn3!
- Pass
isSsrBuildto Vite config functions (#2191) (d2aa101) - thanks @mkantautas! - Follow
srcof<script>and<style>blocks in Vue SFCs (#2193) (3d14839) - thanks @mkantautas! - Remove import attributes with emptied re-exports in
--fix(#2192) (231026c) - thanks @mkantautas! - Update npmx.dev snapshot (b2cc439)
- Read string
parserOptions.parserin ESLint flat configs (#2198) (302f908) - thanks @mkantautas! - Resolve directory matches in Vitest
test.projectsto their config (#2195) (4d38613) - thanks @fixfon! - Ignore custom elements named
script-*when extracting script blocks (#2199) (23e6479) - thanks @mkantautas! - feat(mcp): add MCP plugin (#2180) (fc92470) - thanks @jakeleventhal!
- Handle non-Error plugin config failures (8f21ea2)
- Update articles list (6569cdc)
- Skip
--fixexport ranges inside a larger removal (204a809) - Detect
.travis.ymlwith a stat instead of a glob (3601c6e) - Mark YAML catalog entries fixed only when their line is removed (#2201) (813fa30) - thanks @mkantautas!
- Add Electron Forge plugin (#2158) (12e4355) - thanks @mehdimirzafaruk!
- Resolve function and promise entries in Vitest
test.projects(#2197) (ec293d1) - thanks @mkantautas! - Follow npm lifecycle scripts and run-script aliases (#2202) (89dfdc8) - thanks @sushanta-neupane!
- Follow pnpm
t,tstandrun-scriptaliases (ce91e23) - Treat
vitest-environment-nuxtas optional (it comes with@nuxt/test-utils) (db9aa74) - Ignore tool output before the first report section in ecosystem snapshots (9434bf6)
- Update dependencies (21c3b75)
- Bump
engines.nodeto follow Astro's (9d7a5e0)
Release 6.42.1
- fix(semantic-release): resolve shareable configs from extends (#2159) (4c4a5ec) - thanks @giaBaoJS!
- fix(jest): load projects entries as Jest configs (#2167) (4c22593) - thanks @Cayan!
- Update npmx.dev snapshot (4b19797)
- fix(tailwind): track packages referenced from CSS url() (#2166) (949da00) - thanks @agustincastaing!
- Add .otf to foreign file extensions (fcff4db)
- Match quoted SCSS url() values within a single line (2c5c2a2)
- fix(bun): treat bun test arguments as path filters (#2165) (5f3a7fb) - thanks @jakeleventhal!
- fix(vitest): use default test entries when config has no test key (#2170) (7ee576c) - thanks @fixfon!
Release 6.42.0
- fix: add bun 1.4.3 check subcommand (#2131) (09129b8) - thanks @NimmLor!
- Detect pnpm workspaces correctly around
packages:(resolve #2133, close #2134) (d1cc092) - fix(github-actions): resolve working-directory nested under checkout path (#2136) (87e051e) - thanks @kenny-ish!
- fix(nx): track local generator and executor entry points (#2117) (#2121) (558407f) - thanks @DreamLongYT!
- Update dependency bun to v1.4.3 (#2137) (71f90bf) - thanks @renovate[bot]!
- docs(react-router): note to run react-router typegen before Knip (#2140) (f21ce9a) - thanks @MannXo!
- fix: normalize scoped binary names (close #2143) (c8509c4)
- Clarify plugin implementation boundaries (c5a67f5)
- fix(jest): treat mocked and required dependencies as used (#2141) (3eaf1ba) - thanks @TkDodo!
- fix: preserve root-only plugins for trailing-slash cwd (#2139) (7f0db0e) - thanks @sean0407!
- fix(nx): resolve run-commands script paths from the target cwd (#2151) (516bd9a) - thanks @JeanBeaurepaire!
- Resolve Nx run-commands loader paths from the target cwd (fa8ca13)
- Add @solidjs/vite-plugin plugin (#2144) (579a88d) - thanks @everton-dgn!
- feat: add filesystem-routing plugin (#2145) (1abd9e1) - thanks @everton-dgn!
- Support tags in line comments (resolve #1924) (5abef48)
- Keep resolveFromAST to static values in plugin guide (4cd353f)
- fix(solidjs-vite-plugin): keep entry overrides in production (#2155) (e4b5f89) - thanks @everton-dgn!
- feat(angular): resolve styleUrl and styleUrls of @component (#2157) (c20d4d7) - thanks @Cayan!
- Update npmx.dev snapshot (59eb873)
- fix(next): recognize Turbopack alias targets (#2156) (1d44f6a) - thanks @jakeleventhal!
- fix: preserve re-exports from framework entries (#2154) (263ce20) - thanks @jakeleventhal!
- feat(solidjs-vite-plugin): follow Solid's SSR and client mode entry rules (#2148) (d711231) - thanks @everton-dgn!
- feat(filesystem-routing): read route options from Vite configs (#2149) (585f206) - thanks @everton-dgn!
- feat(filesystem-routing): resolve routes from the Vite root (#2150) (8cc0cb0) - thanks @everton-dgn!
- fix: track namespace members in Promise.all imports (#2162) (3f17cdf) - thanks @everton-dgn!
- Update a few dependencies (161dbed)
- Fix Solid setup fixture coverage (ebe4180)
- Migrate shell script parsing to unbash v6 (f86044c)
- Add sponsors: @pennylane-hq, @agentscore, @oblique-security (thank you!) (57ff23e)
- Stop pairing Promise.all imports and bindings after a spread (5bd2c64)
- Update some stats (dd02dde)
- fix(nx): read karmaConfig from target options (#2164) (4e1e4bc) - thanks @Cayan!
- Add tsrs plugin (#2163) (ba09126) - thanks @jakeleventhal!
- Drop redundant containingFilePath from plugin config inputs (ffb6caf)
- Resolve Nx target option configs from the workspace root (52c5233)
Release 6.41.0
- Add Flue plugin (#2124) (c52737d) - thanks @LuisFigueroaG!
- Match all React Native config file extensions (#2125) (898fdff) - thanks @LuisFigueroaG!
- Consolidate fixture guidance and extend plugin guidelines (37a4ca0)
- Add AI contribution policy (b15f0fb)
- Use files from tsconfig references with --use-tsconfig-files (#2126) (9618185) - thanks @kaanisthatyou!
- Compile gitignore walk patterns once (resolve #2127) (09c8029)
- Drop readdir order dependent case from gitignore walk test (ab3da8f)
- fix: recognize binaries from absent optional dependencies (#2120) (d908556) - thanks @DreamLongYT!
- Apply a directory's .gitignore before walking its subdirectories (9560c07)
- Apply nested .gitignore files to workspace globs (23d3542)
- Update gitignore matcher and walk notes (499f85f)
- Keep the cwd out of glob patterns and matchers (#2107) (1e82fb8) - thanks @kaanisthatyou!
- Support function configs in Rsbuild plugin (#2122) (38071db) - thanks @bytedoe!
- Separate Expo Router plugin; remove expo-router entry points from Expo plugin (#2128) (ad54176) - thanks @jjjjonathan!
- Link Expo config discovery source and fold expo6 fixture into expo-router (2ddeca5)
- Update dependencies (c9f7914)
- Migrate shell script parsing to unbash v5 (4942cca)
- Handle updated Formatly result types (ca9e831)
- Preserve TypeScript 5.0 compatibility in shell AST filters (957ac7b)
- Point timerify crashes to the Node.js version that fixes them (0c235de)
- Copy importer identifier sets into the reverse index (2860d67)
- Clear the resolver cache at the start of a run (10b5bb8)
Release 6.40.0
- Resolve local and scope-only extends in commitlint plugin (#2079) (e667552) - thanks @giaBaoJS!
- Clarify worktree guides and plugin review preparation (dd02baf)
- Document stale cache results and workarounds (#2078) (3573749)
- Exclude test files from package entries in production mode (resolve #2082) (b86f45f) - thanks @jonathanong!
- Resolve Serverless file variables in plugins and functions (resolve #2074) (99cac78) - thanks @SwastikTripathi!
- Preserve locally referenced namespace members (resolve #2070) (f0f36df) - thanks @MFA-G!
- fix: add the commitlint-plugin prefix to Commitlint plugin names (#2096) (3decd35) - thanks @devYRPauli!
- fix: match .mjs config files in the simple-git-hooks plugin (#2097) (79a87d9) - thanks @devYRPauli!
- fix: match capacitor.config.js in the Capacitor plugin (#2098) (4a5ec96) - thanks @devYRPauli!
- fix(typescript): ArrayExpression (#2099) (#2100) (87fea9f) - thanks @DreamLongYT!
- Preserve development entry pattern groups (7c229f4)
- Resolve null package exports to the files they hide (resolve #2084, close #2085) (5bd4626)
- Pin InvokeAI ecosystem test (4e0a343)
- fix(utils): add jsx extension to source mapping (#2087) (eaa353b) - thanks @DreamLongYT!
- fix(serverless-framework): handle explicit extensions in handler paths (#2091) (e939396) - thanks @DreamLongYT!
- Annotate published manifest return type (d95a831)
- Add Jasmine plugin (#2105) (9ed1491) - thanks @SulimanAbdulrazzaq!
- fix: resolve workspace exports with fallback arrays (#2088) (49c2aae) - thanks @DreamLongYT!
- fix(postcss): ignore disabled plugins in object configs (#2092) (b84fdf8) - thanks @DreamLongYT!
- Resolve webServer commands in Playwright plugin (#2110) (1af96bc) - thanks @everton-dgn!
- Cache config file inputs per plugin (#2109) (01cb432) - thanks @everton-dgn!
- fix: include custom compiler extensions in source path mapping (#2090) (dc3a47e) - thanks @DreamLongYT!
- Don't let a self-closing <script /> swallow the next <script> (#2113) (989fdad) - thanks @maniflopi!
- fix(oxlint): resolve lint from loaded Vite config (#2108) (6d44e53) - thanks @everton-dgn!
- fix: resolve Jest module names without the jest-* prefix (#2095) (a5f4cfb) - thanks @devYRPauli!
- Resolve Vitest paths from the top-level root (resolve #2114) (#2119) (8a495d4) - thanks @SwastikTripathi!
- fix(rsbuild): detect config from tools.rspack inside rsbuild config (#2077) (c4ed619) - thanks @TkDodo!
- Add osls plugin (#2104) (a8bf4bf) - thanks @bytedoe!
- Explain why types in signatures of used exports are not reported (61f5cc0)
- Update sponsors page (7ea33fa)
- Edit docs (b459d7c)
Release 6.39.0
- Add Railway plugin (#2026) (6da5576) - thanks @jonahsnider!
- Update query snapshot (8877d3c)
- Fix excluded tags on entry re-exports (#2062) (b22e275) - thanks @devYRPauli!
- Update rolldown snapshot (3a45c80)
- Skip synthetic self-imports in Vue and Nuxt auto-import compilers (#2067) (d912d80) - thanks @bytedoe!
- fix(angular): keep other projects' inputs when one has no architect (#2064) (af3f42e) - thanks @Cayan!
- fix(vite): resolve nested HTML entry points in multi-page apps (#1988) (4648aef) - thanks @DreamLongYT!
- Improve Rstest plugin support (#2068) (add8799) - thanks @fi3ework!
- Handle profiles, formatters and require paths in Cucumber plugin (#2065) (2ad39fc) - thanks @giaBaoJS!
- fix(playwright): resolve globalSetup/globalTeardown from config dir (#2076) (7060bb9) - thanks @alokn!
- fix: read entry export tags under the re-exported names (#2069) (1698683) - thanks @devYRPauli!
Release 6.38.0
- Include co-authors in docs contributor list (0c33410)
- Filter bots and agents from docs contributors (617f70d)
- Update Eve plugin conventions (#2049) (260dbb9) - thanks @matchai!
- Add
argsexample to that doc page (50b271b) - Add Turborepo plugin (#2055) (e49d3db) - thanks @changbaebang!
- Support
import-x/*settings in ESLint plugin (#2050) (1a34cf8) - thanks @bytedoe! - Resolve file option in Mocha configuration files (#2051) (9b5c5f6) - thanks @giaBaoJS!
- Support oxlint extends (#2054) (a149a98) - thanks @matthewnitschke-wk!
- Fix import.meta handling in built-in compilers (#2059) (8b0c850) - thanks @vdavid!
- Fix tag hints for enum and namespace members (#2061) (8a8805e) - thanks @devYRPauli!
- Flag unused member tags in tagged enums and namespaces (584e53f)
- feat: resolve MDX content mapper remarkPlugins (#2060) (34dbccf) - thanks @gioboa!
- Refactor and separate concerns w/ new typescript-content-mapper plugin (11e9450)
- Resolve mdx content mapper providerImportSource (7b58251)
- Fix config → entry in plop plugin (25a380c)