PowerShell / PowerShell/PSScriptAnalyzer

UseCompatibleCommands should recognise partial parameter matches

Ouverte
#1,201 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Area - Rules Issue - Enhancement
Langage dominant
C#
Étoiles
2.2k
Forks
414
Merge moyen
13 h 1 min
PR mergées (30 j)
2

Description

Summary of the new feature

PowerShell allows for the usage of partial parameter names, like Import-Module 'MyModule' -Pass.

UseCompatibleCommands currently sees this is a compatibility error.

While PSScriptAnalyzer should discourage truncated parameter names (like command aliases), UseCompatibleCommands should be able to recognise the difference between a truncated parameter that will work and something that will not.

Proposed technical implementation details (optional)

The query API currently uses a dictionary to look up parameters. Instead of this, it should lazily compute a trie of parameters that is able to tell whether a parameter is uniquely resolved given an input.

What is the latest version of PSScriptAnalyzer at the point of writing

1.18.0

/cc @JamesWTruher

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par suivre UseCompatibleCommands et son API de requête afin de trouver la recherche actuelle de paramètres basée sur un dictionnaire. Vérifiez comment les noms partiels des paramètres PowerShell sont classés, puis vérifiez le comportement pour les troncations résolues de manière unique et pour les troncations ambiguës ou invalides. Le travail est terminé lorsque les correspondances partielles valides sont acceptées sans affaiblir les vérifications de compatibilité existantes de l’analyseur.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp, powershell
Domaine
tooling
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.