Skip to content

Enhance changelog detection tool for parameter order change #25425

@tadelesh

Description

@tadelesh

We have function to get changelog for a package when updating version. See code here.
However, the breaking changes do not contain the case that function parameter order change.
For example:
before:

func (client *AllPoliciesClient) NewListByServicePager(resourceGroupName string, serviceName string, options *AllPoliciesClientListByServiceOptions) *runtime.Pager[AllPoliciesClientListByServiceResponse]

after:

func (client *AllPoliciesClient) NewListByServicePager(serviceName string, resourceGroupName string, options *AllPoliciesClientListByServiceOptions) *runtime.Pager[AllPoliciesClientListByServiceResponse]

Two parameters serviceName and resourceGroupName have same type but different order. It should be a behavior breaking change.
We need to update the logic of finding function change here to support such cases.
E2E tests should be added here.
The detection logic should be reliable to prevent false positive. If there is only one param name change, it should not be detected. The parameters' name should keep same before after. Only the order changed.

Metadata

Metadata

Assignees

Labels

MgmtThis issue is related to a management-plane library.Mgmt-EngSysEngineering System (Management Plane Specific)needs-triageWorkflow: This is a new issue that needs to be triaged to the appropriate team.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions