Introducing the New Pull Request Experience for Azure Repos

Apeksha Awasthi

Pull Requests are a vital feature for many Azure Repos customers. We are excited to announce that our new pull request web experience is now available in preview! Not only is the new experience mobile-friendly and faster, we have also added several new features to help you review pull requests quicker and improve your overall pull request experience. Customers will see the preview option rollout in the upcoming weeks.

Please try out the new experience then let us know your feedback! You can try the new experience by turning on ‘New Repos pull request experience’ in preview through user settings or via a banner that will show up once the feature rolls out. After trying it, we would love to hear your feedback: New Repos Pull Request Experience Survey

Image new pr experience

Completion readiness summary in rollup view

A pull request with a large amount of policies can really clutter the view and make it difficult to determine the status of a pull request. To help get a quick picture of what the status of a pull request is, we have summed up policies in the overview tab. The rollup view will summarize the policies that are passing/failing and only surface failed checks. If available, the summary will show a snippet of the failure message from the check’s log. Re-queueing a failed policy is a one-step process. You can view all checks in a panel where you can also re-queue all checks and releases with one click, unless multiple actions can be taken on the check.

Image policy rollup     Image policy rollup 2

Add required reviewers per pull request

Often times, you want to be able to not just have required reviewers for branches set by policy, but also specific people from different teams to review your pull request and be able to wait on them. With the new experience, you can add reviewers to be required and wait on them to auto-complete. You can do this while creating a pull request or within a pull request in the reviewers section. You can also make existing optional reviewers required or can demote required reviewers to optional, unless they are required by policy.

Image required reviewer     Image required viewer 2

Image create pr overview

Multiple Iteration select

Viewing only subsequent updates when there are several updates doesn’t always give you the full picture of changes made to files. When reviewing files in a pull request, you can now view multiple updates at a time by pressing shift and selecting which updates you’d like to see. So if you’ve already reviewed updates 1-3 but still need to review updates 4-7, you don’t have to view all updates or sift through one update at a time.

Image multiple iteration

Add suggested changes and commit within a pull request

It is often tedious when a reviewer comments on your pull request with a minor change like a syntax fix that then requires you to leave the pull request experience, make the change, commit and push it, and update the reviewer. With suggested changes you can reduce the hassle by using the new “suggest an idea” option! You can include the change you are suggesting within your comment and the pull request author can accept the change without ever leaving the pull request experience. When you’re commenting, you will be able to see a preview of the diff. When you are reviewing you can choose to accept the change and make a commit for each change or batch the suggestions you are accepting to make a single commit for all the changes.

Image suggested changes

Image suggested changes 2

Image suggested chagnes 3

Auto-complete: wait on optional policies

Currently, when a pull request is set to auto-complete, it only waits on required policies that are set by admins. In the new auto-complete panel, you can choose to wait on optional policies as well. Once you have set auto-complete you can see all the policies auto-complete is waiting on when you “view all checks”.

Create pull request page – separate tab for the changes preview

When you create a pull request you can now preview the changes in a separate tab for files and commits the same as a pull request. This will help you ensure you have everything in order before you create the pull request.

Image create pr files tab

Image create pr commits tab

Create pull request – wrong target branch warning

When creating a pull request, a user can sometimes select the wrong target branch by mistake and have unintended issues. The create pull request experience will now warn you when the selected changes are very large in an attempt to prevent this mistake.

Image create pr warning

It can be difficult to understand why a reviewer is required by policy on your pull request and where the policy is being set. With the new drop down option you can click “View Policy” to directly go to where the policy was set.

Image direct policy link

View a team’s membership that is a required reviewer

Teams can be added as a required reviewer by policy and it can be hard to determine which user may be able to approve on that team’s behalf. Finding out who belongs to the group is now easier because you can click on the team’s icon and view all the members in that team without having to leave the pull request.

Image contact card

Improved mobile experience

The new experience makes quickly reviewing pull requests on your mobile device easier!

Improved performance

Early results show 3x the initial load improvement! The below metrics show the changes in apdex score and load time at 50th and 85th percentiles.

Old Apdex New Apdex
0.719 0.924

 

Old 50% New 50% Old 85% New 85% Delta 85%
0.875s 0.158s 3.072s 0.937s 3.28x faster

 

As this experience rolls out in the upcoming weeks, you will see a banner that will prompt you to turn it on. If you’ve dismissed the banner, you can also turn it on by going to user settings, then preview features and turning on the toggle for ‘New Repos pull request experience’. Once you’ve tried out the new experience, please provide us feedback through this survey to help us give you the best experience we can!

81 comments

Discussion is closed. Login to edit/delete existing comments.

  • Dan MillerMicrosoft employee 0

    It would be great if there were a way to see linked work items in the new experience. They seem to have been completely removed 🙁 .

    • Johan Benschop 0

      They’re still there for me, below Tags and Reviewers.

  • Johan Benschop 0

    This new Pull Request experience should also show deployments done to environments somewhere. Gitlab has this for example and is useful for a tester to navigate to the deployment so he or she can test and approve the PR.

    • Amir Setoudeh 0

      Agreed. It would be amazing to see the associated releases so that the user can quickly navigate to them and approve/cancel.

  • Mohammad Varmazyar 0

    Hi Apeksha,

    Thanks for the information that you shared, I suppose it would be great if we can add maximum number of reviewers too in the Cross-repo policies section. We have a team of reviewers and we want to apply a policy that consisting maximum 2 reviewers and mentioning related work items, for now we did the setup for 4 reviewers and it forces all of them to approve and the pull requests does not continue even if one of them not approve.

    Thanks

    • McClure, Brandon 0

      Hey Mohammad,
      I am not sure if this is the same for “cross-repo policies” but we have our automatic code reviewers setup for some of our directories in our repo to behave in the way you describe. I setup groups in devops that consist of the users who should review that section of the codebase, then I setup a automatic code reviewer policy on our master branch with a path filter. The MS doc does not explicitly mention this, so maybe this is new functionality hidden behind one of the preview features, but now I can tell the branch policy to require X number of reviewers from that group.

      Hope that helps you out.

  • Eldad Cohen 0

    Hi,

    Thanks on the updates.
    On preme support ?

  • Monty Chavez 0

    I love the functionality and look and feel, especially being able to make suggestions and edits directly in the code.

    Unfortunately it seems that creating the pull request does not automatically link the work items for me using the linked work items from their commits. This is a part of our workflow and without it, makes the preview unusable for us. After switching off the preview, the functionality is restored.

    I just wanted to share this, I’m not sure if that’s by design or not.

    • Erik Ruggles 0

      This is the same for us. The inability for it to automatically link work items makes it unusable.

    • Bob Maguire 0

      I’m having the same problem. I created a bug for it, and in the meantime I’ll be switching back to the old experience, because we have a policy on our PRs that they should have at least 1 work item attached, so I’m switching back to the UI that can attach them automatically.

      • Viviana Robles 0

        Hi Bob, How do you make this policy? How do you make that the PR automatically link the work items?

    • Adam Wylde 0

      yes this is a problem for us too. Hope its fixed before release.

    • Włodzimierz Kesler 0

      Same for me. I hope it will be resolved quickly.

  • Will BjornMicrosoft employee 0

    Looks great! Please consider decreasing the code font size. It’s quite larger, larger even than many of the other pieces of text on the page.

  • James Hsia 0

    I received this error message when completing a pull request while using the preview feature mode:
    “Operation failed: Invalid argument value. Parameter name: Completion options have exceeded the maximum encoded length (4313/4000). (400)”

    I didn’t receive it once switching back to the old PR mode.

  • Yutao Huang 0

    Looks great! Very tempting! A few questions/thoughts (suggestions already submitted through the survey link)

    • Question: So if I turn on this preview flag and use a new feature like “Add suggested changes and commit within a pull request”, does the pull request author also needs to opt-in this preview in order to see and apply my in-line suggestions?

    • Suggestion: The banner (the one that contains “All Changes”, “Filter”, and a few other UI controls) above the files pane and code editor now looks huge and is taking too much vertical space. Please, make it smaller!

    • Suggestion: On the “Files” tab of the old experience, I recall I was able to see a small banner on the top for a summarized completion readiness status (reviewers approved, rejected, waiting, etc.). I kind of like that. I guess it’s probably because the “Files” tab is the place where we would spend most of the time during a pull request so I don’t have to switch to the “Overview” tab. A more detailed completion readiness section on the “Overview” tab is good, but it would also be helpul to have some mini status view on the “Files” tab IMHO.

    Overall a great update! Please keep up the good work. Thank you!

  • Dheeraj Mekala 0

    Unable to add a group for review when I create a PR. But I can add the group after I create the PR. Can you please look into it.

  • Jyoti Prakash 0

    I started using this from the past few days, it looks clean and section highlight is very distinctive. Just one suggestion, if the Build status can be brought back to the main focus area, as it was before. Really happy to see these updates and great improvements.

Feedback usabilla icon