Azure / Azure/azure-powershell

Parameter change is always reported as "removed parameter set" in cmdlet parameter set check in static analysis

Open
#12,810 0 comments 0 reactions 0 assignees View on GitHub
Azure PS Team Engineering feature-request
Dominant language
C#
Stars
4.8k
Forks
4.3k
Avg merge
3d 14h
Merged PRs (30d)
54

Description

## Description

When a parameter is removed from cmdlet, it is evaluated twice in static analysis.
The first time, we check all the parameters across different parameter sets per cmdlet to see whether a parameter is removed. If true, report breaking changes. This is what i have suppressed.
The second time, we check the parameters by each parameter set of cmdlet. If true, the breaking change is reported by parameter set. The problem here is the error message is always `The parameter set '{0}' for cmdlet '{1}' has been removed.` which is incomprehensible here.

Refer to the source code
https://github.com/Azure/azure-powershell/blob/8f1abc18380813369c7f2dde3992c440f67e63de/tools/StaticAnalysis/BreakingChangeAnalyzer/ParameterSetMetadataHelper.cs#L149

## Cost

Contributor guide

Open the contributing guide

Research direction

Start in tools/StaticAnalysis/BreakingChangeAnalyzer/ParameterSetMetadataHelper.cs at line 149, where the parameter-set breaking-change message is produced. Trace the parameter-set check and compare it with the surrounding removed-parameter handling. Done means parameter removal is reported with a comprehensible parameter-set-specific message rather than always using the current wording.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, powershell
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.