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 — Fix edge case of PSUseConsistentIndentation for non-default value (IncreaseIndentationForFirstPipeline/IncreaseIndentationAfterEveryPipeline) by bergmeister · Pull Request #1423 · PowerShell/PSScriptAnalyzer

Conversation

@bergmeister

@bergmeister Christoph Bergmeister (bergmeister) commented Mar 2, 2020 •
edited
Loading

Uh oh!

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

Copy link
Copy Markdown
Collaborator

PR Summary

Fixes #1406

The code assumed that the first pipe in a pipeline Ast is the last one on that line, which made the code not work in the following scenario (where it did not add the indentation in the 2nd line)

foo | bar |
    baz

Therefore add code to be able to determine the last pipe on the line were the first pipe occurs
cc Felix Becker (@felixfbecker)

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 .cs, .ps1 and .psm1 files have the correct copyright header
  • Make sure you've added a new test if existing tests do not effectively test the code changed and/or updated documentation
  • 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.

Sorry, something went wrong.

Uh oh!

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

All reactions
Christoph Bergmeister added 3 commits March 2, 2020 08:41
Christoph Bergmeister
When pipelineIndentationStyle is non-default setting: fix edge
dd3cfd3
Christoph Bergmeister
Merge branch 'master' of https://github.com/powershell/psscriptanalyzer…
f63e335
… into issue1406
Christoph Bergmeister
add test cases
c252651
@bergmeister Christoph Bergmeister (bergmeister) added the Issue - Bug label Mar 2, 2020
@bergmeister
Christoph Bergmeister (bergmeister) requested review from James Truher (JamesWTruher) and Rob Holt (rjmholt) March 2, 2020 13:04
@bergmeister Christoph Bergmeister (bergmeister) added the Area - Formatter label Mar 2, 2020
JamesWTruher
James Truher (JamesWTruher) approved these changes Mar 4, 2020
View reviewed changes

@JamesWTruher James Truher (JamesWTruher) left a comment

Copy link
Copy Markdown
Contributor

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this looks fine

Sorry, something went wrong.

Uh oh!

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

All reactions
Comment thread Tests/Rules/UseConsistentIndentation.tests.ps1 Outdated
DiagnosticRecord = $violations[0]
CorrectionsCount = 1
ViolationText = "baz"
CorrectionText = (New-Object -TypeName String -ArgumentList $indentationUnit, ($indentationSize * 1)) + 'baz'

@JamesWTruher James Truher (JamesWTruher) Mar 4, 2020

Copy link
Copy Markdown
Contributor

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this could also be written without using New-Object:

CorrectionText = ($indentationUnit * $indentationSize) + 'baz'

it's sort of a toss up as to which one is more readable

Sorry, something went wrong.

Uh oh!

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

All reactions

@bergmeister Christoph Bergmeister (bergmeister) Apr 4, 2020

Copy link
Copy Markdown
Collaborator Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea, thanks, I applied it, I could even remove the parenthesis because multiplication takes precedence over addition

Sorry, something went wrong.

Uh oh!

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

All reactions
rjmholt
Rob Holt (rjmholt) reviewed Mar 9, 2020
View reviewed changes
Comment thread Rules/UseConsistentIndentation.cs Resolved

Uh oh!

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

Christoph Bergmeister added 2 commits April 4, 2020 20:38
Christoph Bergmeister
Merge branch 'master' of https://github.com/powershell/psscriptanalyzer…
6021b3e
… into issue1406
Christoph Bergmeister
Apply test code simplification suggested by @JamesWTruher
ab454fe
@bergmeister
Christoph Bergmeister (bergmeister) merged commit 128a9a2 into PowerShell:master Apr 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

2 more reviewers
@rjmholt Rob Holt (rjmholt) rjmholt left review comments
@JamesWTruher James Truher (JamesWTruher) JamesWTruher approved these changes
Reviewers whose approvals may not affect merge requirements

Uh oh!

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

Assignees

No one assigned

Labels

Area - Formatter Issue - Bug

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

PSUseConsistentIndentation: Identation missing if command was broken over multiple lines

Uh oh!

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

3 participants

@bergmeister @rjmholt @JamesWTruher
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.