fix: relative path handling in Find-Item #18
Draft
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.
By default if you pass a relative path to the .NET APIs, it will use [Environment]::CurrentDirectory as its base, not your actual PowerShell working directory.
The problem is that the two are almost never the same.
This changes it so that the entry path is resolved by PowerShell, not .NET.
Description
This resolves relative paths to absolute in PowerShell's working directory context instead of .NET's.
By default if you pass a relative path to the .NET APIs, it will use [Environment]::CurrentDirectory as its base, not your actual PowerShell working directory.
The problem is that the two are almost never the same.
This changes it so that the entry path is resolved by PowerShell, not .NET, by using PSCmdlet.GetResolvedProviderPathFromPSPath to resolve the path.
Related Issue
#19
Motivation and Context
It lets me specify relative paths to Find-Item.
How Has This Been Tested?
Ran
Find-Item
manually:Find-Item
Find-Item foo
$PWD\foo
instead of$HOME\foo
Find-Item D:\github\cdonnellytx\foo
Find-Item 'Microsoft.PowerShell.Core\FileSystem::D:\github\cdonnellytx\foo'
D:\github\cdonnellytx\foo
Screenshots (if appropriate):
Types of changes
Checklist: