⚙️ [Maintenance]: Require Pester 6.x in test files#25
⚙️ [Maintenance]: Require Pester 6.x in test files#25Marius Storhaug (MariusStorhaug) wants to merge 2 commits into
Conversation
No Significant Changes DetectedThis PR does not contain changes to files that would trigger a new release:
Build, test, and publish stages will be skipped for this PR. If you believe this is incorrect, please verify that your changes are in the correct locations. |
There was a problem hiding this comment.
Pull request overview
This PR adds an explicit Pester dependency requirement to the module’s test script so tests only run when an appropriate Pester major version is available.
Changes:
- Added a
#Requires -Modulesheader to the Pester test file to enforce Pester presence and version constraints. - Pinned the Pester module identity via
GUID.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Super-linter summary
Super-linter detected linting errors For more information, see the GitHub Actions workflow run Powered by Super-linter MARKDOWN |
The GUID pins module identity (precise pinning), a stricter control than the lock-to-major risk appetite. Keep only the version range.
No Significant Changes DetectedThis PR does not contain changes to files that would trigger a new release:
Build, test, and publish stages will be skipped for this PR. If you believe this is incorrect, please verify that your changes are in the correct locations. |
Super-linter summary
Super-linter detected linting errors For more information, see the GitHub Actions workflow run Powered by Super-linter MARKDOWN |
Pester tests in this module now require the Pester 6.x major version, so every contributor and CI run resolves the same major and a new Pester major can't slip in and break the suite. The tests previously declared no framework requirement and ran on whatever Pester happened to be installed.
Changed: tests are locked to the Pester 6.x major
Every
*.Tests.ps1file now starts with a version-bounded requirement:#Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '6.0.0'; MaximumVersion = '6.*' }Any Pester
6.xsatisfies it, so minor and patch releases flow in automatically while moving to a new major stays a deliberate, reviewed change. No module source or behaviour changes.Technical Details
#Requires -Modulesstatement to each test file undertests/; non-test files are untouched.ModuleVersion = '6.0.0'is the floor andMaximumVersion = '6.*'the wildcard major ceiling. Module-identity (GUID) pinning is intentionally omitted — it is a separate supply-chain control, not part of the lock-to-major risk appetite.