PowerShell / PowerShell/PSScriptAnalyzer
UseCompatibleCommands should recognise partial parameter matches
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- C#
- Estrelas
- 2.2k
- Forks
- 415
- Merge médio
- 13h 1min
- PRs com merge (30d)
- 2
Descrição
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
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece rastreando UseCompatibleCommands e sua API de consulta para encontrar a pesquisa de parâmetros baseada atualmente em dicionário. Verifique como os nomes parciais de parâmetros do PowerShell são classificados e, em seguida, valide o comportamento para truncamentos resolvidos de forma única e para truncamentos ambíguos ou inválidos. Considera-se concluído quando correspondências parciais válidas são aceitas sem enfraquecer as verificações de compatibilidade existentes do analisador.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- csharp, powershell
- Domínio
- tooling
- Tipo de issue
- Funcionalidade
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 35/100