Deployment Pipelines: ignore JSON element ordering when comparing items (avoid false differences)
When comparing items across stages (e.g. Dev vs Test vs Prod), Deployment Pipelines sometimes flags a pipeline (Data Factory pipeline) as “different” even though its logic and configuration are identical. The only difference is the order of elements in the underlying JSON definition, for example:
- The order of activities in the activities array
- The order of properties within an object
- The order of parameters, variables, or dependsOn entries
This is a false positive. The compare view shows a difference, the item is marked as changed, and users have to redeploy or resync it even though nothing functional has changed.
Impact
- Noise in the compare view makes it hard to spot real changes.
- Unnecessary deployments add risk and extend release cycles.
- Teams lose trust in the “no differences” indicator, which undermines the value of the comparison.
- Extra manual review is needed to confirm that a flagged difference is only cosmetic.
Expected behavior
Two pipeline definitions that are semantically identical should be reported as “same”, regardless of the order in which elements are serialized.
Proposed solution
One or both of the following:
- Semantic comparison: Normalize both definitions before comparing, by sorting object properties alphabetically and ordering arrays where order has no functional meaning (e.g. activities, parameters, variables). Arrays where order is meaningful should be kept as they are.
- Deterministic serialization: Make the pipeline JSON serializer always write elements in a canonical, stable order, whether the item is saved from the UI, Git integration, REST API, or a deployment. The same pipeline would then always produce the same JSON.
Steps to reproduce
- Create a pipeline in Dev and deploy it to Test.
- Make a change that results in a reordering only (e.g. open and save the pipeline, move an activity on the canvas, or save via a different route such as Git sync or the API).
- Open the deployment pipeline’s compare view.
- The pipeline is flagged as different, but the content differs only in element order.
Workaround today
Redeploy or resync the item to clear the difference, which is manual and has to be repeated.
Recent ideas
Restore PNG snapshot attachments in Power BI report subscriptions
Microsoft recently migrated Power BI report subscriptions to a new email delivery platform. As part of this change, report snapshots are no longer delivered as separate PNG attachments and are only e...modch1 hour agoNew MemberNew83Views9likes2CommentsReturn .png Attachments to Subscriptions
With the latest update to Power BI subscriptions, the separate .png report snapshot attachment has been removed. From Microsoft’s troubleshooting documentation, this appears to be an intentional chan...KDC_Group_PBI1 hour agoNew MemberNew226Views24likes8CommentsAutomatically process calculated tables after semantic model deployment through Git integration.
We have a composite semantic model containing DirectQuery tables and calculated tables stored in Import mode. The semantic model and its associated reports work as expected in the development worksp...Manojkumar291 hour agoMicrosoft EmployeeNew16Views6likes0Comments