You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RamblingCookieMonster once created something similar to this (though I don't think it was ever published to PowerShell Gallery); it's simply called Invoke-Parallel.
Rather than defining each variable, module, or function you wanted one-at-a-time, it would import everything from the local session. While this really isn't an optimal approach, it's certainly a convenient one in some circumstances.
It'd be nice if PSParallelPipeline had these switches as well.
@God-damnit-all I don't like the idea of keep adding more parameters to the cmdlet. What can be done is make it so -Variables can take strings with wildcards then something like this works:
Same for -Functions *. For -ModuleNames I will not consider it as needed since modules are automatically imported in the parallel scope due to discovery as long as they're correctly installed in one of the $env:PSModulePath paths.
[I'm reposting this edit entirely just in case you rely on email alerts (because I changed my suggestion).]
I suppose you could check if there's a literal match for the string before trying it as a wildcard, and if there's a literal match, continue with importing via wildcard, but issue a warning along with an instruction that if a user wants to suppress the warning, they can set $PSParallelPipelineNoLiteralWildcardWarning to $true (so you wouldn't have to add a switch just for this one edge-case).
Activity
santisq commentedon Jul 24, 2026
@God-damnit-all I don't like the idea of keep adding more parameters to the cmdlet. What can be done is make it so
-Variablescan take strings with wildcards then something like this works:Same for
-Functions *. For-ModuleNamesI will not consider it as needed since modules are automatically imported in the parallel scope due to discovery as long as they're correctly installed in one of the$env:PSModulePathpaths.God-damnit-all commentedon Jul 24, 2026
Sounds good!
santisq commentedon Jul 27, 2026
@God-damnit-all before this update, when
-Functionswas passed a non-existent name it'd throw:Which, after the update has now been changed to:
Should it behave the same way for
-Variableswhen passed a string that may or may not contain a wildcard? e.g.:God-damnit-all commentedon Jul 28, 2026
Technically you can have wildcard characters in both variables and functions too (and not just their aliases):
But as long as it honors wildcard escapes, it shouldn't be an issue.
God-damnit-all commentedon Jul 28, 2026
[I'm reposting this edit entirely just in case you rely on email alerts (because I changed my suggestion).]
I suppose you could check if there's a literal match for the string before trying it as a wildcard, and if there's a literal match, continue with importing via wildcard, but issue a warning along with an instruction that if a user wants to suppress the warning, they can set
$PSParallelPipelineNoLiteralWildcardWarningto$true(so you wouldn't have to add a switch just for this one edge-case).santisq commentedon Jul 28, 2026
@God-damnit-all new version is available in the pwsh gallery: https://github.com/santisq/PSParallelPipeline/releases/tag/v1.3.0