<div dir="ltr"><div>Hi Alex, Hi all,</div><div><br></div><div>Thank you for this very good summary, which summarizes the problems and potential solutions pretty well. On the financial side I can say that for 2021 we increased the budget available for Github and Travis management, and PR reviewing from 6k in 2020 to 10k in 2021 - related projects like the Travis to Github CI migration are not included here and have their separate budget item.</div><div><br></div><div>However, as Alessandro pointed out, the main issue here is finding skilled persons who know the QGIS project and code base good enough to be able to help in the reviewing process.</div><div><br></div><div>Nevertheless, I will try to increase the budget item dedicated to CI maintenance and PR reviewing again in 2022. Hopefully, in parallel, the reviewing process and rules can be better formalized and more people can join the effort.</div><div><br></div><div>Greetings,</div><div>Andreas<br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, 10 Apr 2021 at 10:44, Alessandro Pasotti <<a href="mailto:apasotti@gmail.com">apasotti@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Fri, Apr 9, 2021 at 11:11 PM Alexis R.L. <<a href="mailto:alroyliz0@gmail.com" target="_blank">alroyliz0@gmail.com</a>> wrote:<br>
><br>
> I agree with Gio and I was curious as to why some bugs are funded but not reviewing. Reviewing can help prevent some bugs and has also the potential to improve a PR.<br>
><br>
> I'd also say that improving the review pace will help losing PR to stalebot. In my eyes bugfix are crucial, but new features are also important, and those seem to require more time to review. New features also help promote QGIS and compete against other software.<br>
><br>
> Funding could be done like bugs or like grants, with or without a selection process. This would help competent devs to devote more of their time to reviewing.<br>
><br>
> Alex<br>
><br>
><br>
> Le ven. 9 avr. 2021 à 12:42, Giovanni Manghi <<a href="mailto:giovanni.manghi@gmail.com" target="_blank">giovanni.manghi@gmail.com</a>> a écrit :<br>
>><br>
>> Hi all,<br>
>><br>
>><br>
>> > 2.  we may have a (partially paid?) role for the review manager, to go<br>
>> > through the PR queue, ping people for reviews, etc.<br>
>><br>
>> Has this been considered/discussed (having 1 or more paid reviewers)?<br>
>><br>
>> At very least this seems a reasonable solution until we are not able<br>
>> to bring in more reviewers.<br>
>><br>
<br>
<br>
Hi,<br>
<br>
this was discussed a few times, just to clarify where we stand now:<br>
<br>
- during the last few year there has been a small QGIS.org budget for<br>
PR queue management which includes reviews to some extent, see the<br>
budget documents and financial reports<br>
<a href="https://www.qgis.org/en/site/getinvolved/governance/finance/index.html?highlight=finances" rel="noreferrer" target="_blank">https://www.qgis.org/en/site/getinvolved/governance/finance/index.html?highlight=finances</a>,<br>
Matthias, Nyall and (recently, for a small part) myself have been the<br>
recipients of the funds. I can only speak for myself but I'm pretty<br>
sure that this stands also for Nyall and Matthias when I say that<br>
these funds only covered a tiny fraction of the time that we spend on<br>
PR reviews.<br>
- most core developers that I personally know, regularly allocate<br>
budget for doing PR reviews when they do paid work, this budget is<br>
used for PR reviews by other QGIS core committers of the same company<br>
(if your company is so lucky to have more than one) or on an exchange<br>
basis, for example Nyall asks me to review his PR and I ask him to do<br>
the same for me (which happens more often than the opposite): this<br>
happens all the times.<br>
- when we (core developers) work on the QGIS.org paid bugfixing<br>
program before the releases we switch to full "QGIS dev" mode and we<br>
also do PR reviews because it's just part of the process.<br>
<br>
Now, my personal opinion about where the problems are and how to<br>
possibly solve them, I'm talking about the most complex PRs, obviously<br>
there are PRs that are really trivial and quick to review:<br>
<br>
- PR reviews may be very hard and time consuming and are an assumption<br>
of responsibility, I don't think that there is any single developer<br>
who feels comfortable to do reviews on the entire (huge) QGIS code<br>
base.<br>
- As already mentioned by Matthias, there are blurry lines between<br>
what is acceptable for backporting, the policy has changed a few times<br>
and it is not yet entirely clear to me, this can slow down the PR<br>
review process on backports.<br>
- PR reviews require a deep understanding of the QGIS internals plus a<br>
knowledge of the history of the project and why things have been<br>
implemented in a certain way (that doesn't obviously mean that they<br>
couldn't be refactored).<br>
- The entry barriers for QGIS developments are very high, we all know<br>
that, the code base is huge, the different technologies you need to<br>
know are many and the QA process (CI, tests, code style, spelling,<br>
name your favourite blocker here) is terribly complex (with a reason<br>
because it ultimately leads to better and more robust code!).<br>
<br>
That said, I feel that we are now in a better situation than we were a<br>
couple of years ago when the PR queue was much longer compared to now.<br>
<br>
But how can we speed up the process?<br>
<br>
- the obvious solution is to increase the budget for PR reviewers and<br>
enlarge the number of developers involved to make sure we can cover a<br>
larger area of the code base. Ideally we should be able to pay for a<br>
regular time slot of each involved developer (say, just for example: 4<br>
hours a week?), this may not be evenly distributed, for example a<br>
developer that takes care of the server PRs might require a smaller<br>
time slot than one that works on 3D (just an example, really).<br>
- have clear rules about what can or cannot be backported and when (do<br>
we skip a point release now?, for LTR only?)<br>
- all developers that are working on a funded feature/bugfix/whatever<br>
**MUST** allocate budget for PR reviews (including backports) and take<br>
care of that by paying another developer (if possible from a different<br>
company).<br>
- bring in more developers!<br>
<br>
The last one is clearly very difficult and probably worth its own<br>
thread, also because it cannot happen overnight.<br>
<br>
What I am 100% sure about is that we cannot just hire some random<br>
developer that knows little about QGIS development to do the work for<br>
us, the burden of PR reviews must stay on the QGIS core developers<br>
team, we must find a way to allow the core developers to **regularly**<br>
spend more time on that activity.<br>
<br>
And last but not least: time is a limiting resource and we all do have a life :)<br>
<br>
-- <br>
Alessandro Pasotti<br>
QCooperative:  <a href="http://www.qcooperative.net" rel="noreferrer" target="_blank">www.qcooperative.net</a><br>
ItOpen:   <a href="http://www.itopen.it" rel="noreferrer" target="_blank">www.itopen.it</a><br>
_______________________________________________<br>
QGIS-Developer mailing list<br>
<a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><br>--<br>Andreas Neumann<br></div><a href="http://QGIS.ORG" target="_blank">QGIS.ORG</a> board member (treasurer)<br></div></div>