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.

  • sudhakar reddy 0

    It looks Good! i know we can conflicted files, can’t we see conflicted area in PR over view level?

  • Frommberger, Lutz 0

    I have one major concern: Failing optional build policies are almost invisible now. Where in the old view there was a prominent red cross, there is now a small grey text below a green badge. People tend to overlook it. Maybe it would be possible to just have the badge in yellow, if an optional check fails?

  • Farmer, Steven 0

    I love the feature. For some reason members of my team are unable to complete their pull requests using the new feature. Looks like the complete merge button is disabled. If I have the individual turn that feature off. The button them becomes available again.

  • Nancy ChongMicrosoft employee 0

    Is there plans to show all the optional policies in the new checks panel that pops up when you click ‘View all [x] checks’?
    The repository that our team supports has over 70+ policies/checks. The button says view all 74 checks but only 31 of them appears in the UI that comes up

  • Sam Kompfner 0

    Not keen. Reverted back.

    1. Conflicts often don’t load – you see an empty file.
    2. Where has nice view of validation build gone from top right?
    3. Overall seems dumbed-down, and I lack the details I am used to seeing.
  • Charles Gamble 0

    With this feature enabled it no longer downloads files from a commit page; instead it opens the file in a new browser tab and I have to manually save it from there with the right name and extension.

    We’ll be turning this off until that’s fixed.

  • Pete Andersen 0

    Hello,

    After this update it seems many of our team members in the same group can no longer set auto-complete on their pull requests. We have branch policies in place on the branch. I personally can still set it, but I have elevated access to bypass branch policies.

    Anyone have any ideas or came across this as well?

    Thanks

  • Scott Mizer 0

    Nice work on the iteration selector. Much more convenient than editing the query string. Are you going to implement a commit selector version aswell? I suppose updates cover most of the use cases, but I could see wanting to break them down further for those devs that drop way too much into a PR.

  • Bongani Skosana 0

    Great improvements. But There’s just one feature I don’t seem to find anymore, the search on the files. That was very useful and if you could bring that back it would be really great. We work with many different files and find that you’re only focused on one type of file extension to review.

  • Jonathan FinnecyMicrosoft employee 0

    <

    p>Not a big fan of the “Completion readiness summary in rollup view”, where before I could see status at the top-level, at a glance, for example:

    Policies
    Required
    3 reviewers approved
    Required reviewers have approved
    Work items linked
    All comments resolved
    Policies check failed

    3 reviewers approved
    Required reviewers have approved
    Work items linked
    All comments resolved
    Policies check failed
    Optional
    AnyCpu Build in progress
    AnyCpu Tests (requires successful AnyCpu Build) failed

    Player Build in progress
    Player Tests (requires successful Player build) succeeded

    Ownership Enforcer: Missing Approvals
    AnyCpu Build in progress
    AnyCpu Tests (requires successful AnyCpu Build) failed
    Player Build in progress
    Player Tests (requires successful Player build) succeeded
    Ownership Enforcer: Missing Approvals
    Status
    Coverage status check queued for PowerApps-master-PR-AnyCpu
    Coverage status check queued for PowerApps-ma

    Instead of seeing at a glance what is green/red, all I get now is:

    “1 required check failed
    1 optional check failed

    View all 10 checks”

    and I have to drill in to get these details. This is a huge setback in productivity, as I need to see what’s going on with several PR’s every day, multiple times a day, and all these extra clicks and opening/closing pop-out views adds up and is super annoying.

    Please get this information back to the top-level… turning off this preview feature and massively hoping you guys re-think, or at least leave me a setting so I can have it either way. For me at least, the change to “fix” clutter and ease of use has done the reverse and made it *harder* to see things ‘at a glance’.

Feedback usabilla icon