PowerShell / PowerShell/PSScriptAnalyzer

Rule Request: Warn Against Special Characters that PowerShell Accepts

Offen
#1,436 6 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Area - Rules Issue - Enhancement Issue - New Rule Up-for-Grabs
Vorherrschende Sprache
C#
Sterne
2.2k
Forks
414
Ø Merge
13 Std. 1 Min.
Gemergte PRs (30 T.)
2

Beschreibung

Powershell 7 supports the use of Em Dash ( – ) for parameter prefixes, while Windows Powershell doesn't and can cause errors such as

Invoke-Command –ComputerName $Computer ...
–ComputerName $Computer
The string is missing the terminator: "

I'm not sure how but in the last month a good dozen Em Dashes were accidentally added to my codebase.

As Em Dashes are almost impossible to notice in a fix width font, I think it should be considered best practice to never use them and put a big error/warning on screen when you come across one.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Es wird keine Implementierungsdatei, kein Test und kein Einstiegspunkt genannt. Beginne damit, die vorhandene Registrierung von Regeln und die Regeltests in PSScriptAnalyzer zu finden, und ermittle dann, wie ein Gedankenstrich an der Position eines PowerShell-Parameters gemeldet werden sollte. Erledigt ist die Aufgabe, wenn der Analyzer konsistent vor dem Zeichen warnt und die Tests den gemeldeten Fall abdecken.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp, powershell
Bereich
tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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