Skip to content

Add -NoRecurse to Invoke-PSModuleAnalyzer - #17

Merged
thisjustin816 merged 1 commit into
mainfrom
feature/analyzer-norecurse
Jul 28, 2026
Merged

thisjustin816 merged 1 commit into
mainfrom
feature/analyzer-norecurse

Conversation

@thisjustin816

@thisjustin816 thisjustin816 commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Callers that want to analyze a single directory's own scripts had no way to say so: Recurse was
hardcoded on, so a wildcard like scripts/*.ps1 still pulled in a nested tests folder that needs
different rules. Routing such a target through direct Invoke-ScriptAnalyzer instead is not a
workaround, since that path hits the PSScriptAnalyzer 1.25.0 casing crash this module exists to
avoid.

  • Add -NoRecurse, which flips the previously hardcoded Recurse argument
  • Thread Recurse into the casing workaround''s Get-ChildItem so its per-file pass matches the scope
  • Document the wildcard form on SourceDirectory and add an example
  • Cover default-recursive vs -NoRecurse dispatch, wildcard scoping, and non-recursive casing
  • Bump the module to 3.1.0

71 tests pass locally.

Callers that want to analyze a single directory's own scripts had no way to say so: Recurse was
hardcoded on, so a wildcard like scripts/*.ps1 still pulled in a nested tests folder that needs
different rules. Routing such a target through direct Invoke-ScriptAnalyzer instead is not a
workaround, since that path hits the PSScriptAnalyzer 1.25.0 casing crash this module exists to
avoid.

- Add -NoRecurse, which flips the previously hardcoded Recurse argument
- Thread Recurse into the casing workaround's Get-ChildItem so its per-file pass matches the scope
- Document the wildcard form on SourceDirectory and add an example
- Cover default-recursive vs -NoRecurse dispatch, wildcard scoping, and non-recursive casing
- Bump the module to 3.1.0
@github-actions

Copy link
Copy Markdown

Test Results

71 tests  +3   71 ✅ +3   24s ⏱️ +3s
18 suites ±0    0 💤 ±0 
 1 files   ±0    0 ❌ ±0 

Results for commit ba86e55. ± Comparison against base commit 889e256.

@github-actions

Copy link
Copy Markdown

Summary

Summary
Generated on: 7/28/2026 - 7:57:04 PM
Coverage date: 7/28/2026 - 7:55:36 PM
Parser: JaCoCo
Assemblies: 2
Classes: 11
Files: 11
Line coverage: 91.3% (296 of 324)
Covered lines: 296
Uncovered lines: 28
Coverable lines: 324
Total lines: 1035
Covered branches: 0
Total branches: 0
Method coverage: Feature is only available for sponsors
Tag: 107_30393999492

Coverage

src/Private - 94.8%
Name Line Branch
src/Private 94.8% ****
src/Private/Get-PSModuleAnalyzerSettingsPath 100%
src/Private/Get-PSModuleGitMetadata 96%
src/Private/Get-PSModulePublishedManifest 100%
src/Private/Invoke-PSModuleAnalyzerCasingWorkaround 93.6%
src/Private/Resolve-PSModuleGitRemote 93.8%
src/Public - 88.8%
Name Line Branch
src/Public 88.8% ****
src/Public/Build-PSModule 77.9%
src/Public/Export-PSModuleAnalyzerSettings 84.2%
src/Public/Invoke-PSModuleAnalyzer 100%
src/Public/New-PSModuleManifest 97.6%
src/Public/Publish-PSModule 100%
src/Public/Test-PSModule 100%

@thisjustin816
thisjustin816 merged commit 734de98 into main Jul 28, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant