Improvements to the libc++ approval policy

Hi folks,

I will be taking time off from March 6th 2021 to March 28th 2021. I will work a few days here and there during that period to review patches, however I will mostly be unavailable. Currently, there is a bottleneck around me for approving libc++ patches. However, I don’t think it’s news for anyone, this doesn’t scale extremely well and it also creates a heavy burden when I have less time than I’d like to give to the community. So I think this time off is a great opportunity to try something new and make our review process more efficient!

I reached out to some contributors who have been getting involved in the review process on their own and they nicely agreed to become co-approvers for libc++. Those people are Arthur, Marek, Mark and Zoe (thanks!). Whenever any two of them approve a patch, the libc++ review group will be made “green” and you can consider your patch approved and ready to go. This doesn’t change anything for contributors per se – you can basically commit your patch whenever the libc++ review group on Phabricator is marked as green, as before.

To these new co-approvers, I also think it’s important to clarify that there are no expectations. We all understand that your involvement in libc++ is purely voluntary and I want to make sure that it never transforms into a burden.

Libc++ has historically had a very high barrier to entry for contributing. I think this change in policy can greatly help lower that barrier without reducing the quality of contributions. If at all, I think having a few more approvers will force us to document policies and guidelines that were previously just in the core maintainers’ heads, leading to more consistent decisions.

I am excited to try this out and confident that it will be an improvement both for the libc++ development community and for the project itself. I also want to take this opportunity to thank everybody involved in libc++ at any level - I’m very happy to see the community forming around libc++ and the project is very lucky to have you all!

Louis Dionne

Thanks Louis, enjoy your time off!

This sounds to me like a good path forward, to mitigate the review bottleneck (and scarily low bus factor) without significantly lowering the level of quality required.

I'll be adding some of these new approvers on patches of mine where there already is one approval from someone (I guess all patches with the libc++ group reviewer set will show up in their review queues now too?) to try it out.

// Martin