Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

IgnoreOneLineBlock=$false Correction Issue in PSPlaceOpenBrace and PSPlaceCloseBrace

Offen
#2,218 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
72/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
csharp, powershell
Bereich
tooling

Rechercherichtung

Start by running the supplied Invoke-Formatter reproduction with PSPlaceOpenBrace and PSPlaceCloseBrace set to IgnoreOneLineBlock=$false, then trace those rule entry points in PSScriptAnalyzer. Done means the formatter produces the expected indentation and brace placement for this conditional, with regression coverage for the reported settings.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

So far as I can tell, this hasn't been reported, but it is related to issue #2210 which I was also going to include. I've also gone through and applied the surfaced corrections one-by-one, which produces the exact same results in VS Code with the latest PowerShell extension (pre-release, 2026.1.2, which has PSScriptAnalyzer 1.25.0).

Steps to reproduce

Run the following command:

Invoke-Formatter -ScriptDefinition "if (`$RegEx) { '-match' } else { '-like' }" -Settings @{IncludeDefaultRules=$true;Rules=@{PSPlaceOpenBrace=@{Enable=$true;IgnoreOneLineBlock=$false;};PSPlaceCloseBrace=@{Enable=$true;IgnoreOneLineBlock=$false;}}}

Expected behavior

if ($RegEx) {
    '-match'
} else {
    '-like'
}

Actual behavior

if ($RegEx) {
 '-match' 
   }
 else {
 '-like' 
 }

Environment data

> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.6.6
PSEdition                      Core
GitCommitId                    7.6.6
OS                             Microsoft Windows 10.0.22631
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.4
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }

1.25.0
1.25.0

The settings passed, a little easier to read, if needed.

@{
    IncludeDefaultRules = $true
    Rules = @{
        PSPlaceOpenBrace = @{
            Enable = $true
            IgnoreOneLineBlock = $false
        }
        PSPlaceCloseBrace = @{
            Enable = $true
            IgnoreOneLineBlock = $false
        }
    }
}
Vorherrschende Sprache
C#
Sterne
2.2k
Forks
415
Ø Merge
13 Std. 1 Min.
Gemergte PRs (30 T.)
2

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus PowerShell/PSScriptAnalyzer

Alle Issues in PowerShell/PSScriptAnalyzer

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.