GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Use DefaultPathSeparator char instead of DefaultPathSeparatorString by iSazonov · Pull Request #8082 · PowerShell/PowerShell

Conversation

@iSazonov

@iSazonov Ilya (iSazonov) commented Oct 19, 2018 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Collaborator

PR Summary

Replace string operations on char ones by using overloads like StartsWith(char) and EndsWith(char).

It speeds up path operations in filesystem provider and globbing.

PR Checklist

  • PR has a meaningful title
    • Use the present tense and imperative mood when describing your changes
  • Summarized changes
  • Change is not breaking
  • Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
  • This PR is ready to merge and is not Work in Progress.
    • If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready.
  • User-facing changes
    • Not Applicable
    • OR
    • User-facing Documentation needed
      • Issue filed - Issue link:
  • Testing - New and feature
    • Not Applicable or can only be tested interactively
    • OR
    • Make sure you've added a new test if existing tests do not effectively test the code changed
      • Add [feature] if the change is significant or affects feature tests

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Ilya (iSazonov) added 4 commits October 19, 2018 15:21
@iSazonov
SessionStateLocationAPIs
be33c6c
@iSazonov
FileSystemProvider
71238cf
@iSazonov
LocationGlobber
14bc4c5
@iSazonov
NavigationProviderBase
a3b83c1
@iSazonov Ilya (iSazonov) added the Issue-Code Cleanup the issue is for cleaning up the code with no impact on functionality label Oct 19, 2018
@iSazonov Ilya (iSazonov) self-assigned this Oct 19, 2018
@iSazonov
Ilya (iSazonov) requested review from Steve Lee (SteveL-MSFT) and Travis Plunk (TravisEz13) October 19, 2018 10:53
@iSazonov
Ilya (iSazonov) requested review from Bruce Payette (BrucePay), Andrew (anmenaga) and Dongbo Wang (daxian-dbw) as code owners October 19, 2018 10:53
@iSazonov
Merge branch 'master' into cleanup-defaultpathseparator
11540f8
TravisEz13
Travis Plunk (TravisEz13) reviewed Oct 29, 2018
View reviewed changes
Comment thread src/System.Management.Automation/namespaces/NavigationProviderBase.cs Resolved

Uh oh!

There was an error while loading. Please reload this page.

TravisEz13
Travis Plunk (TravisEz13) approved these changes Oct 30, 2018
View reviewed changes
@anmenaga

Andrew (anmenaga) commented Oct 30, 2018

Copy link
Copy Markdown

I'm curious, what was the reason why Path Separator was a string (rather than a char)?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@SteveL-MSFT

Steve Lee (SteveL-MSFT) commented Oct 30, 2018

Copy link
Copy Markdown
Member

Andrew (@anmenaga) .NET Framework only has overload for string, .NET Core added overload for char

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@iSazonov
Ilya (iSazonov) merged commit ecb467c into PowerShell:master Oct 31, 2018
@iSazonov
Ilya (iSazonov) deleted the cleanup-defaultpathseparator branch October 31, 2018 03:26
Thatgfsj (Thatgfsj) pushed a commit to Thatgfsj-contribs/PowerShell that referenced this pull request Aug 6, 2026
@iSazonov
Use DefaultPathSeparator char instead of DefaultPathSeparatorString (P…
7bb515f
…owerShell#8082)

In:
* SessionStateLocationAPIs
* FileSystemProvider
* LocationGlobber
* NavigationProviderBase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@TravisEz13 Travis Plunk (TravisEz13) TravisEz13 approved these changes
@SteveL-MSFT Steve Lee (SteveL-MSFT) Awaiting requested review from SteveL-MSFT
@anmenaga Andrew (anmenaga) Awaiting requested review from anmenaga
@BrucePay Bruce Payette (BrucePay) Awaiting requested review from BrucePay
@daxian-dbw Dongbo Wang (daxian-dbw) Awaiting requested review from daxian-dbw

Uh oh!

There was an error while loading. Please reload this page.

Assignees

@iSazonov Ilya (iSazonov)

Labels

Issue-Code Cleanup the issue is for cleaning up the code with no impact on functionality

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@iSazonov @anmenaga @SteveL-MSFT @TravisEz13
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.