⚙️ [Maintenance]: Lock Pester test dependency to the 6.x major version#639
⚙️ [Maintenance]: Lock Pester test dependency to the 6.x major version#639Marius Storhaug (MariusStorhaug) wants to merge 3 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. |
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
There was a problem hiding this comment.
Pull request overview
This PR updates the test suite’s Pester dependency declaration to allow any Pester 6.x release (rather than pinning to 5.8.0), aligning the tests with the newly published Pester 6 major version while still pinning the module identity via GUID.
Changes:
- Replaced
RequiredVersion = '5.8.0'with a 6.x range lock usingModuleVersion = '6.0.0'andMaximumVersion = '6.999.999'. - Applied the updated
#Requires -Modulesdeclaration consistently across all test files, includingtests/TEMPLATE.ps1.
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Variables.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Users.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/TEMPLATE.ps1 | Updates the template Pester #Requires to allow Pester 6.x for new tests. |
| tests/Teams.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Secrets.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Repositories.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Releases.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Permissions.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Organizations.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/GitHubFormatter.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/GitHub.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Environments.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Enterprise.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Emojis.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Artifacts.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Apps.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
| tests/Actions.Tests.ps1 | Updates Pester #Requires to allow Pester 6.x. |
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
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
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
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
This module's Pester tests now lock to the 6.x major version instead of the exact
5.8.0pin. An exact pin breaks whenever the runner resolves a different Pester (as happened once 5.8.0 was superseded); a major lock tracks every 6.x release while still blocking an unvetted new major.Changed: the exact 5.8.0 pin becomes a 6.x major lock
Each
*.Tests.ps1file now requires:#Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '6.0.0'; MaximumVersion = '6.*' }Any Pester
6.xsatisfies it, so routine minor and patch updates no longer need a PR — only a new major does.Technical Details
#Requires -Modulesstatement in each test file undertests/fromRequiredVersion = '5.8.0'toModuleVersion = '6.0.0'; MaximumVersion = '6.*'.GUID) pinning is intentionally omitted — a separate supply-chain control, not part of the lock-to-major risk appetite.