Feature Request: Switch from ready to draft in pull requests

I really like the new “create draft pull request” feature which is a more explicit way of marking PRs as a Work In Progress. Before this was usually done with per-repo solutions (adding WIP to title or via labels etc).

Unfortunately it looks like I can only switch from “draft” to “ready for review”. Sometimes it is necessary to rework the initial implementation due to reviews or CI failures though. It would be nice to be able to reflect that in the state of a PR. With the current implementation I find myself switching back to the old label or title workaround.

751 Likes

Hey @eps1lon,

Thanks for taking the time to provide this feedback! I’ve taken your suggestion and passed it along to the appropriate teams. Thanks again for reaching out 

34 Likes

My current workflow is that the maintainer closes the initial PR, as they decided it wasn’t ready for review yet after all, then I create a new draft PR for more work.  But I’d prefer if I had the option to move the initial PR back to draft and continue work there.

43 Likes

Thanks @mfb adding you comment as +1

3 Likes

Or after discussion of the PR, we decide we want to delay the work. Then wanting to turn into a draft PR to avoid merging it by accident instead of just closing the PR.

Example of this: https://github.com/jenkinsci/configuration-as-code-plugin/pull/790

11 Likes

Agreed. This happens to us frequently, which is why we’re still using https://github.com/wip/app instead of Github’s Draft PR feature; it does exactly what we need and does it well in that anyone with permission to edit the PR title can easily move a PR in and out of WIP status.

6 Likes

Totally support this. It seems like an obvious feature.

23 Likes

Can you share any updates, Andrea? Since this would make the draft PR way more useful since people often forget the feature exists.

25 Likes

I wonder if all said and done I’d like this capability, seems like a good idea overall but I can envisage lots of PRs accumulting and switching back and forth from draft to ready and ready to draft possibly causing confusion for others.

I consider draft (and I may be the one who originally asked GitHub for this, I suggested something like it over a year ago) to mean “Under no circumstances permit this merge to take place”, so my view of this a way of rigidly preventing accidental merging by anyone be they the originator of the PR or a repo owner etc.

Calling it “draft” is fine but ultimately it’s a safety feature because once merged to a base repo your’e stuck unless you revert the merge which is a drag and can also sometimes confuse people.

Another good use of draft is to be able to create a PR that has conflicts so that other can see them and ponder them yet have no desire to ever merge the PR just yet even if conflicts are fixed.

I agree with the idea, that could be very useful.

3 Likes

+1 : I often forget to mark a pull request as a draft while creating it, and it would super convenient to have a possibility to change the status back to “draft”.

8 Likes

+1 I just changed my mind, and can’t take it back…

2 Likes

This feature is really important and needed to our team, too!!

2 Likes

This feature would be great to have. Looking forward to using it in the future!

2 Likes

Any updates, @andreagriffiths11?

2 Likes

+1 I just stumbled upon this thread while literally googling “How to revert PR back to draft”. This would be so useful.

1 Like

@korporal wrote:

 

Another good use of draft is to be able to create a PR that has conflicts so that other can see them and ponder them yet have no desire to ever merge the PR just yet even if conflicts are fixed.

My enterprise instance just got this feature and it does’t behave that way. I had a merge conflict on a draft that wasn’t reported. The block that normally shows the merge conflicts was replaced with a ready for review button.

Yep, that’s why I’m here now too.

1 Like

Yeah really, this feature seems like a must-have! 

1 Like

Any update for GH on this? 

thanks!

1 Like