Repository navigation
PowerStub v2.0.1
PowerStub 2.0.1
Fixes and upgrade guidance
- Relative registration paths are saved as absolute filesystem paths; literal bracket characters work in tool and configuration paths. Existing registrations are retained. If an older registration contains a relative path, re-register it from the intended directory with
New-PowerStub -Name <name> -Path <path> -Force. - Stub names
help,search, andupdateare rejected because they are built-in commands. Register affected tools under another name. Existing configuration is not silently renamed. - A free, configured invocation alias is exported by normal manifest imports. Direct aliases still cannot replace existing commands, including when
-Forceis supplied (the 2.0 safety change). - Invalid top-level configuration data is preserved in a corrupt-file backup and ignored. A failed Git fetch is reported instead of claiming that a repository is current.
- Installation, configuration, Git-check, and contribution instructions now match the exported API. PowerShell 7.0+ is required. GitHub ZIP downloads are source archives with a nested module folder; the Gallery package is separately version-stamped.
- Gallery staging now includes the Apache license text and README, verifies the installed manifest in a fresh process, and waits for successful GitHub mirroring. GitLab test reports use JUnit XML. Duplicate-release responses are verified by exact tag rather than treating every HTTP 422 as success.
Native argument limitations
The 15 shared native argument mismatches and two additional Linux quoted-glob mismatches remain explicit known issues. Both pstb and direct aliases have the same function-boundary limitations. Quote '--', colon-form flags, and comma-containing values where appropriate. For exact native parsing, including quoted globs and caller-local native argument-passing preferences, invoke the resolved path directly:
& (Get-PowerStubCommand -Stub Tools -Command tool).Path <native arguments>The matrix now also compares direct aliases and tests this resolved-path workaround against all 17 audited inputs. This release does not claim universal native transparency. See the README's Argument behavior section for details.
Validation scope
The active release pipeline runs Linux. It gates the passing matrix cases, installed-package smoke checks, documentation examples, and offline release-response cases. A Windows runner is not enabled by this change; Windows validation and the PowerShell 7.0 minimum still need separate execution. No new GitHub status integration or release ZIP asset is implied.
Whats Changed
- fix: honor literal paths and installed configuration contracts
- test: compare direct aliases across the native parsing matrix
- fix(git): distinguish unavailable status and failed updates
- fix(release): verify staged packages and constrain publication gates
- fix(commands): resolve literal files without wildcard lookalikes
- fix(help): share exact file patterns with command discovery
- test: isolate alias discovery and accept Windows line endings
Full Changelog: v2.0.0...v2.0.1