<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 29 Jan 2021 at 08:28, Marco Bernasocchi <<a href="mailto:marco@qgis.org">marco@qgis.org</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"><div dir="auto"><div>Hi all, no need to vote again, the budget was approved and it included an item for working on CI.</div><div dir="auto"><br></div><div dir="auto">So the funds are available. I spoke about this yesterday with Andreas following up a request by Denis.</div><div dir="auto"><br></div><div dir="auto">Nyall do I see it correctly that you and Denis (and Alessandro?) are probably the ones going to be doing most of the work?</div><div dir="auto"><br></div><div dir="auto">Do you have a concrete plan and how can we help getting things moving?</div></div></blockquote><div><br></div><div>I'll chat to Denis and Alessandro again later today, but originally we'd discussed using Denis' earlier PR to move to Gtihub actions and have Denis do the remaining bits needed for this, and then splitting the test fixes between myself, Denis and Alessandro based on the area of code covered by the failing tests. (I.e. I'll handle the symbology/labeling/print layout and projection related ones, Alessandro would focus on server, etc).</div><div><br></div><div>I'd propose that we:</div><div>1. Get Denis' earlier PR rebased and working on master again</div><div>2. Blocklist all the failing tests on the github action, and then merge the PR so that we get some test coverage outside of Travis</div><div>3. Chip away re-enabling the individual blocklisted tests one-by-one</div><div><br></div><div>Nyall</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto"><br></div><div dir="auto">cheers Marco<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Thu, 28 Jan 2021, 23:11 Tim Sutton, <<a href="mailto:tim@kartoza.com" target="_blank">tim@kartoza.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"><div dir="ltr"><div style="font-family:arial,helvetica,sans-serif;font-size:small">Any reason we can't just vote on it here on teh ML Marco?</div><div style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div style="font-family:arial,helvetica,sans-serif;font-size:small">I am +1 to invest the money to pay the crack team to fix the tests. If Microsoft ever shafts us we can consider moving to a self hosted Jenkins (my preference) or that thing that Sandro mentioned, but at least we will have a working suite.</div><div style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div style="font-family:arial,helvetica,sans-serif;font-size:small">Regards</div><div style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div style="font-family:arial,helvetica,sans-serif;font-size:small">Tim</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 28, 2021 at 8:53 PM Nyall Dawson <<a href="mailto:nyall.dawson@gmail.com" rel="noreferrer" target="_blank">nyall.dawson@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 Thu, 12 Nov 2020 at 23:59, Marco Bernasocchi <<a href="mailto:marco@qgis.org" rel="noreferrer" target="_blank">marco@qgis.org</a>> wrote:<br>
><br>
> thanks everyone for the all the information and feedback, it was really helpful in preparing the budget proposal.<br>
<br>
Can I ask what the status on this request is? Travis has become<br>
completely unworkable over the last week, with new jobs taking 10hrs+<br>
to start, and then failing instantly because of the docker limits.<br>
It's really slowing down the bug fixing efforts, and I fear that if it<br>
degrades any further we'll be forced to just turn off Travis and as a<br>
result have NO regression testing protecting the QGIS codebase! argh<br>
:O<br>
<br>
Nyall<br>
<br>
<br>
<br>
<br>
><br>
> cheers Marco<br>
><br>
> On Mon, 9 Nov 2020, 10:40 Alessandro Pasotti, <<a href="mailto:apasotti@gmail.com" rel="noreferrer" target="_blank">apasotti@gmail.com</a>> wrote:<br>
>><br>
>> Great, thanks!<br>
>><br>
>> You've done a really good job there.<br>
>><br>
>> Cheers<br>
>><br>
>> On Mon, Nov 9, 2020 at 10:20 AM Denis Rouzaud <<a href="mailto:denis.rouzaud@gmail.com" rel="noreferrer" target="_blank">denis.rouzaud@gmail.com</a>> wrote:<br>
>> ><br>
>> ><br>
>> ><br>
>> > Le lun. 9 nov. 2020 à 09:06, Alessandro Pasotti <<a href="mailto:apasotti@gmail.com" rel="noreferrer" target="_blank">apasotti@gmail.com</a>> a écrit :<br>
>> >><br>
>> >> On Mon, Nov 9, 2020 at 12:55 AM Nyall Dawson <<a href="mailto:nyall.dawson@gmail.com" rel="noreferrer" target="_blank">nyall.dawson@gmail.com</a>> wrote:<br>
>> >> ><br>
>> >> > On Fri, 6 Nov 2020 at 20:57, Matthias Kuhn <<a href="mailto:matthias@opengis.ch" rel="noreferrer" target="_blank">matthias@opengis.ch</a>> wrote:<br>
>> >> > ><br>
>> >> > > This would be desirable.<br>
>> >> > ><br>
>> >> > > It's unfortunately a bit of complexity included. As Alessandro said, the rendering tests are a good example of tests which are hard to maintain and - unfortunately - not well defined functions like we happen to have on e.g. database engine unit tests.<br>
>> >> > ><br>
>> >> > > To recall, when we started with CI some 5 years ago we were in the situation that we had a set of tests, which randomly passed on some dev machines and some on others. So effectively you had no chance to know if a test doesn't pass because of your machine or your patch.<br>
>> >> > ><br>
>> >> > > At least now we have a reference platform and know if a patch actually does cause changes. Which is the most important information.<br>
>> >> > ><br>
>> >> > > Currently many of the tests are already cross platform. And nobody is actively writing CI centric tests. It's just a matter of fact that the tests have a requirement to at least pass on the CI env because it's the only thing that can be enforced.<br>
>> >> > ><br>
>> >> > > When tests are updated to a new platform (ci or not), many of them will pass on a wider variety of platforms. Because bugs are fixed or they are made more generic. And some will just have reference images for one more platform added.<br>
>> >> > ><br>
>> >> > > So whatever we do we will do a step into the right direction. But there will be no guarantee that every test passes on your machine except if you make them all pass on your machine - which would be very welcome!!<br>
>> >> > ><br>
>> >> > > What you could also do is listing tests that are generic / platform independent (e.g. the expression tests would be a very good example) and then always just run these instead of the whole set of tests.<br>
>> >> ><br>
>> >> ><br>
>> >> > Just to add a few extra thoughts to the already comprehensive replies<br>
>> >> > given by Matthias and Denis:<br>
>> >> ><br>
>> >> > - we had to do a very similar effort with updating existing tests when<br>
>> >> > we moved from Qt 4 -> Qt 5. We'll probably have to do another similar<br>
>> >> > effort in another 18-24 months or so. It's going to be a regular,<br>
>> >> > recurring task to go through and update all the tests which have been<br>
>> >> > introduced since the previous effort and ensure that they are<br>
>> >> > sufficiently tolerant to pass under different environments/software<br>
>> >> > versions. (Maybe we should consider adding "test maintenance" as a<br>
>> >> > regular yearly expense of the nature of 1.5 weeks?)<br>
>> >> > - we really should do a similar effort to get the existing tests<br>
>> >> > passing under mac os and windows too. I suspect there's some valid<br>
>> >> > bugs that the test suites would reveal if we could reliably run them<br>
>> >> > under windows/mac, but the real issues are drowned in the noise of<br>
>> >> > tests which haven't been designed to be cross platform compatible.<br>
>> >> > (This could be a good grant proposal idea for future funding rounds!)<br>
>> >> ><br>
>> >> > And then my personal 2c:<br>
>> >> ><br>
>> >> > We have a great test suite, and fantastic tools for making and<br>
>> >> > managing tests. Sure, there's a learning curve involved with them.<br>
>> >> > Sure, they ARE different to the test suites used by gdal, or geos, or<br>
>> >> > <insert other project here>. But that's just business as usual in<br>
>> >> > software development, and not at all reflective of inferiority in the<br>
>> >> > test suites. Can we please move on from this recurring point once and<br>
>> >> > for all and focus on the current relevant parts of this discussion<br>
>> >> > instead?<br>
>> >> ><br>
>> >> > Nyall<br>
>> >> ><br>
>> >> ><br>
>> >><br>
>> >><br>
>> >> Hi,<br>
>> >><br>
>> >> While I agree on all points, there is one important thing that we<br>
>> >> should make it better while we work on it:<br>
>> >> make sure the test suite can **easily** run locally using the same<br>
>> >> docker images we are using in the CI process, I can do it but I cannot<br>
>> >> say it was easy to set up and it's probably overly complicated for<br>
>> >> most people.<br>
>> ><br>
>> ><br>
>> > The new github workflow is far more simple and easier to read than the travis config.<br>
>> > Everything is in one file and should be easily replicable.<br>
>> > <a href="https://github.com/qgis/QGIS/blob/test-focal/.github/workflows/run-tests.yml#L101-L124" rel="noreferrer noreferrer" target="_blank">https://github.com/qgis/QGIS/blob/test-focal/.github/workflows/run-tests.yml#L101-L124</a><br>
>> ><br>
>> >><br>
>> >> Also, making the test suite independent from the particular CI we will<br>
>> >> use (GH workflows, Travis & C.) will make it easier to move it to<br>
>> >> another CI if needed.<br>
>> ><br>
>> ><br>
>> > It should!<br>
>> > Let's when we move the CI for 3.16 to Github: the base image will remain (bionic) and we shouldn't have anything to touch in the tests.<br>
>> ><br>
>> >><br>
>> >><br>
>> >> This is of course also a matter of producing a good documentation for<br>
>> >> the process and the tools.<br>
>> >><br>
>> >> Kind regards.<br>
>> >><br>
>> >> --<br>
>> >> Alessandro Pasotti<br>
>> >> QCooperative:  <a href="http://www.qcooperative.net" rel="noreferrer noreferrer" target="_blank">www.qcooperative.net</a><br>
>> >> ItOpen:   <a href="http://www.itopen.it" rel="noreferrer noreferrer" target="_blank">www.itopen.it</a><br>
>> >> _______________________________________________<br>
>> >> Qgis-psc mailing list<br>
>> >> <a href="mailto:Qgis-psc@lists.osgeo.org" rel="noreferrer" target="_blank">Qgis-psc@lists.osgeo.org</a><br>
>> >> <a href="https://lists.osgeo.org/mailman/listinfo/qgis-psc" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-psc</a><br>
>><br>
>><br>
>><br>
>> --<br>
>> Alessandro Pasotti<br>
>> QCooperative:  <a href="http://www.qcooperative.net" rel="noreferrer noreferrer" target="_blank">www.qcooperative.net</a><br>
>> ItOpen:   <a href="http://www.itopen.it" rel="noreferrer noreferrer" target="_blank">www.itopen.it</a><br>
>> _______________________________________________<br>
>> Qgis-psc mailing list<br>
>> <a href="mailto:Qgis-psc@lists.osgeo.org" rel="noreferrer" target="_blank">Qgis-psc@lists.osgeo.org</a><br>
>> <a href="https://lists.osgeo.org/mailman/listinfo/qgis-psc" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-psc</a><br>
><br>
> _______________________________________________<br>
> Qgis-psc mailing list<br>
> <a href="mailto:Qgis-psc@lists.osgeo.org" rel="noreferrer" target="_blank">Qgis-psc@lists.osgeo.org</a><br>
> <a href="https://lists.osgeo.org/mailman/listinfo/qgis-psc" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-psc</a><br>
_______________________________________________<br>
Qgis-psc mailing list<br>
<a href="mailto:Qgis-psc@lists.osgeo.org" rel="noreferrer" target="_blank">Qgis-psc@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/qgis-psc" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-psc</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div style="text-align:center">------------------------------------------------------------------------------------------</div><div style="text-align:center"><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:small;display:inline"></div><img src="https://mail.google.com/mail/u/0/?ui=2&ik=7ebbf93252&view=fimg&th=15a9e43c0bbf93ca&attid=0.1&disp=emb&realattid=9436e64174762963_0.1.1&attbid=ANGjdJ-WL_J24nvBiYidJ0V0xpdsYqRwswi5nq5oywcJEHC7twYVMrxG0y-GNPu_ahJthV8ktXwYuHoVm5DI2FrRAtPzelTRHrsE2wweR9uu8wT-zz2hNRqFwi4SorQ&sz=s0-l75-ft&ats=1488721675176&rm=15a9e43c0bbf93ca&atsh=1" style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"><br></div><div style="text-align:center">Tim Sutton</div><div style="text-align:center"><span style="text-align:start">Visit </span><a href="http://kartoza.com/" style="text-align:start" rel="noreferrer" target="_blank">http://kartoza.com</a><span style="text-align:start"> to find out about open source:</span><br style="text-align:start"><span style="text-align:start"> * Desktop GIS programming services</span><br style="text-align:start"><span style="text-align:start"> * Geospatial web development</span></div><div style="text-align:center"><span style="text-align:start">* GIS Training</span></div><div style="text-align:center"><span style="text-align:start">* Consulting Services</span></div><div style="text-align:center"><div style="text-align:center"></div><div style="text-align:start"><div style="text-align:center">Tim is a member of the QGIS Project Steering Committee</div><div style="text-align:center">-------------------------------------------------------------------------------------------</div></div></div></div></div></div></div>
</blockquote></div></div></div>
</blockquote></div></div>