docs: Refresh the job-isolation rationale in the fixture helpers - #223
Merged
Conversation
The two-platyPS-majors conflict that originally justified the background jobs ended with the 1.x migration, so the comment described a constraint that no longer exists. The replacement drafted for it was also wrong: it credited Import-Module -Global, but Microsoft.PowerShell.PlatyPS resolves commands through the PSModuleInfo object rather than a session-state name lookup, and the generated markdown is byte-for-byte identical without -Global. State the reason that actually survives -- every docs command leaves Microsoft.PowerShell.PlatyPS loaded, and assemblies load per process rather than per runspace, so only a separate process starts clean -- and keep the original conflict as recorded history rather than as a live justification. Also note that Invoke-TestPSBuildPesterInJob's matrix has spanned a single Pester major since #172, so its job buys isolation rather than reach. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G7WMiaQNgL3wULG4thw7nk
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Invoke-PSBuildCommandInJobrationale, which described a constraint that ended with the platyPS 1.x migration: the suite no longer exercises two platyPS majors in one run, so the YamlDotNet assembly-identity conflict is history rather than a live reason for the jobs.Import-Module -Global, butMicrosoft.PowerShell.PlatyPS1.0.3 exposes only-ModuleInfo <PSModuleInfo[]>and-CommandInfo <CommandInfo[]>-- there is no name-taking parameter, so there is no session-state lookup for-Globalto serve. Measured: generated markdown is byte-for-byte identical with-Globaldropped.Microsoft.PowerShell.PlatyPSloaded once it returns, and assemblies load per process rather than per runspace, so a separate runspace cannot undo it and only a separate process starts clean.Invoke-TestPSBuildPesterInJob's matrix has spanned a single Pester major since Pester version floors do not match what is tested, and Test-PSBuildPester's guard admits versions that cannot work #172, so its job buys isolation rather than reach. Related to A skipped Test-PSBuildPester test can never run, and its comment says it does #220, which covers the test that skip made unrunnable.Comments only. No behaviour change.
Test plan
./build.ps1 -Task Test-- full suite green.[System.Management.Automation.Language.Parser]::ParseFileon the changed file reports no errors, andGet-Help Invoke-PSBuildCommandInJobstill renders a description, confirming the comment-based help block is still well formed.Breaking changes
None.
Related
The
-Globalfindings that prompted this came out of the investigation now filed as #221 and #222. This pull request only corrects the comment; neither defect is fixed here.