| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
doc: corrects type references in jsdoc | 18 小时前 | |
feat(extract/tsc): adds support for imports inside module and namespace blocks (#1095) # Detect imports in ambient TypeScript declarations ## Description - Adds opt-in `detectImportsInAmbientModules` to detect imports, re-exports, c.s. inside ambient modules and namespaces, including nested and qualified namespaces. - Keeps the option disabled by default; enabling it selects the TypeScript parser. - Wires the option through config normalization, schemas, types, generated configs, initialization prompts, summarization and cache compatibility. - Bumps cache format version to prevent stale caches from hiding the option’s effect. - :tent: side-catch: Handle TypeScript ASTs with missing statements and - :tent: side-catch: use the built-in `dot-webpage` reporter in generated graph scripts. - :tent: side-catch: exclude some hard-to cover branches that only exist for robustness (e.g. `doThing (someUsuallyExistingArray ||[])` in a helper) from coverage ## Motivation and Context Imports inside ambient declarations were not included in dependency analysis. This adds a configurable way to detect them while preserving existing behavior by default. TypeScript must be installed to enable detection. ## How Has This Been Tested? - [x] Green CI - [x] Additional automated non-regression tests - [x] Adapted existing test fixtures ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) | 26 天前 | |
doc: corrects type references in jsdoc | 18 小时前 | |
feat: enables configurations in typescript (#1077) ## Description - enables configurations in typescript ## Motivation and Context by popular demand ## How Has This Been Tested? - [x] green ci - [x] actually using a .dependency-cruiser.mts config locally ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) | 2 个月前 | |
doc: corrects type references in jsdoc | 18 小时前 | |
doc: corrects type references in jsdoc | 18 小时前 | |
doc: corrects type references in jsdoc | 18 小时前 | |
doc: corrects type references in jsdoc | 18 小时前 | |
feat(extract/tsc): adds support for imports inside module and namespace blocks (#1095) # Detect imports in ambient TypeScript declarations ## Description - Adds opt-in `detectImportsInAmbientModules` to detect imports, re-exports, c.s. inside ambient modules and namespaces, including nested and qualified namespaces. - Keeps the option disabled by default; enabling it selects the TypeScript parser. - Wires the option through config normalization, schemas, types, generated configs, initialization prompts, summarization and cache compatibility. - Bumps cache format version to prevent stale caches from hiding the option’s effect. - :tent: side-catch: Handle TypeScript ASTs with missing statements and - :tent: side-catch: use the built-in `dot-webpage` reporter in generated graph scripts. - :tent: side-catch: exclude some hard-to cover branches that only exist for robustness (e.g. `doThing (someUsuallyExistingArray ||[])` in a helper) from coverage ## Motivation and Context Imports inside ambient declarations were not included in dependency analysis. This adds a configurable way to detect them while preserving existing behavior by default. TypeScript must be installed to enable detection. ## How Has This Been Tested? - [x] Green CI - [x] Additional automated non-regression tests - [x] Adapted existing test fixtures ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) | 26 天前 | |
chore(doc): marks depcruise-baseline command as deprecated in favor of dependency-cruiser --baseline (#1090) ## Description - marks depcruise-baseline command as deprecated in favor of dependency-cruiser --baseline ## Motivation and Context Consolidating all functionality into the dependency-cruiser main script ## How Has This Been Tested? - [x] green ci ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [x] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) | 1 个月前 | |
chore: replaces eslint with oxlint (#1074) ## Description - replaces eslint with oxlint - fixes some (now) low-hanging fruit ## Motivation and Context Simplify my life. ## How Has This Been Tested? - [x] green ci ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [x] Chore (thing that needs doing for hygiene purposes) | 2 个月前 | |
feat: adds environment inconsistency checks (starting with typescript and babel) (#1070) ## Description - adds environment inconsistency checks (e.g. there's a tsconfig, but there's no typescript transpiler installed we can use to handle it) and emit warnings when they're hit. Warnings shipping with this PR regard inconsistencies with - typescript - babel - swc - available in the _error_ reporter (which is the default and hence likely the most often used one) and the _json_ reporter. Other reporters will probably follow in later PR's. ## Motivation and Context See #1048, #1069 - There's a trend to run a type-skipping transpilers on typescript code (e.g. esbuild or maybe node.js rudimentary typescript support), without a type-checking transpiler (microsoft's typescript) installed. Currently dependency-cruiser is silent about it, which leads to confusion, - TypeScript 7.0 just shipped _without_ an API, so we cannot support that yet - the first issue on it is already in, and I expect more. If dependency-cruiser already tells what the issue is, that should limit the confusion (and save users having to raise an issue, and me answering them). ## How Has This Been Tested? - [x] green ci - [x] additional non-regression tests ## Screenshots <img width="929" height="326" alt="image" src="https://github.com/user-attachments/assets/79ab00a5-ee03-4c03-b07b-d4e15ae737bb" /> ## Types of changes - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] Documentation only change - [ ] Refactor (non-breaking change which fixes an issue without changing functionality) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] AI was used to write some of the code ## Checklist - [x] :book: - My change doesn't require a documentation update, or ... - it _does_ and I have updated it - [x] :balance_scale: - The contribution will be subject to [The MIT license](https://github.com/sverweij/dependency-cruiser/blob/main/LICENSE), and I'm OK with that. - The contribution is my own original work. - I am ok with the stuff in [**CONTRIBUTING.md**](https://github.com/sverweij/dependency-cruiser/blob/main/.github/CONTRIBUTING.md). | 3 个月前 | |
18.7.0 | 7 天前 |