<div dir="auto">Hi Anita,<div dir="auto"> since today, qgis server reaches OGC compliancy for wms 1.3.0 on basic and queryable levels. We have a blog post ready for that. There are 5 tests missing for a full compliancy and we are just trying to evaluate how much work this is. <div dir="auto">We already could start a certification process in the current state, but I guess a full compliancy would be a much better message to the world 😀.</div><div dir="auto">Anyway posting right now seems a good idea! We need more folks testing the beast.</div><div dir="auto">Régis</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">Le 17 oct. 2017 22:36, "Anita Graser" <<a href="mailto:anitagraser@gmx.at">anitagraser@gmx.at</a>> a écrit :<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-size:small"><div style="font-size:12.8px">I've extended Régis' draft with some of the more recent information. Please let me know what you think. I'll try to publish in a couple of days.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">-- start --</div><div style="font-size:12.8px"><b><br></b></div><div style="font-size:12.8px"><b>QGIS server refactoring is done!<br></b><br>As you may know, QGIS is jumping to a new major version (yes!). Doing so was made necessary because of the need to switch to python 3, QT5, but also because we needed to break the QGIS API in several places. (<a href="http://blog.qgis.org/2016/02/10/qgis-3-0-plans/" target="_blank">http://blog.qgis.org/2016/02/<wbr>10/qgis-3-0-plans/</a>) </div><span class="m_-6740157290626872307gmail-im"><div style="font-size:12.8px"><br>A year ago, a <a href="https://github.com/qgis/qgis3.0_api/issues/63" target="_blank">tiny troll </a>from switzerland rang a bell about the strong need for love server code base required. <span style="font-size:12.8px">Indeed, the API was locked by some old methods of QGIS server. In short, QGIS server was reparsing the qgs project file in his own way, and created dependencies to part of QGIS we needed to drop.</span></div><div style="font-size:12.8px">   <br>As outsourcing the server code base was not an option, so we had to refactor it. The involved parties decided to get engaged in a <a href="https://github.com/qgis/QGIS/wiki/QGIS3---QGIS-Server-code-sprint-Notes" target="_blank">code sprint</a> in the city of Lyon , France dedicated to sharing their vision, planning the work and finally making all the <a href="https://github.com/qgis/QGIS-Enhancement-Proposals/issues/74" target="_blank">following</a> happen:</div></span><div style="font-size:12.8px"><div><br></div><div><b>Higher level refactoring</b></div><div><br></div><div>All services (WMS GetMap, WFS GetFeature, GetLegendGraphics, WCS, GetPrint etc..) have been rewritten. Some like WMS were entirely rewritten. Kudos to the devs!</div><div><br></div><div><b style="font-size:12.8px">New features</b><br></div><div><br></div><div style="font-size:12.8px">- <a href="https://github.com/qgis/QGIS/pull/3886" target="_blank">Multi-thread rendering</a> like in the desktop</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><span style="font-size:12.8px">- A new option to </span><a href="https://github.com/qgis/QGIS/pull/5094" style="font-size:12.8px" target="_blank">trust layer metadata</a><span style="font-size:12.8px"> and thus speed up project loading</span><br></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><span style="font-size:12.8px">- WFS 1.1 support <a href="https://github.com/qgis/QGIS/pull/5297" target="_blank">https://github.com/qgi<wbr>s/QGIS/pull/5297</a> </span><br></div><div style="font-size:12.8px"><span style="font-size:12.8px"><br></span></div><div style="font-size:12.8px">- Full Python bindings for the server API</div><div style="font-size:12.8px"><br></div><div><span style="font-size:12.8px"></span>- Server Services as plugins like providers</div><div><br></div><div><br></div><div><span class="m_-6740157290626872307gmail-im"><b style="font-size:12.8px">Deep, complex and unrewarding tasks<br></b><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">- Remove all singleton calls</div><div style="font-size:12.8px"><br></div></span><div style="font-size:12.8px">- Cut all the dependencies to the old QGIS project file parser</div><span class="m_-6740157290626872307gmail-im"><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">- Minimize dependencies to GUI library. Since fonts are necessary to render maps, totally removing them was not feasable. </div></span></div><div><br></div><span class="m_-6740157290626872307gmail-im"><div><b style="font-size:12.8px">Infrastructure tasks</b><br></div><div><br></div><div>- <a href="http://oslandia.com/en/2017/06/16/qgis-server-ogc-cite-compliance-testing/" target="_blank">Build a OGC compliancy platform</a> and integrate it to a continuous integration platform. Conformity reports are now pushed to <a href="http://tests.qgis.org/" target="_blank">tests.qgis.org</a> </div><div><i style="background-color:rgb(255,0,0)"><br></i></div></span><div>- Add unit tests ... and again more unit tests</div><div><br></div><div class="m_-6740157290626872307gmail-adL"><span class="m_-6740157290626872307gmail-im"><div>-<a href="http://oslandia.com/en/2017/06/14/qgis-server-security-aspect/" target="_blank"> Stress QGIS server against security leaks</a> (SQL injections and other malicious attacks)</div><div><br></div><div>- Start profiling and bench marking performances. This work still need some love - and funding - to be achieved</div><div><br></div><div><br></div><div>A <a href="https://git.osgeo.org/gogs/foss4g-europe/foss4g-europe-2017-paris/src/master/presentations/2017-07-20/general_track/foss4g-europe-2017-QGIS_3_Refactoring_and_enhancement-DMarteau-PBlottiere.pdf" target="_blank">presentation</a> was given at FOSS4G-EU in July. <br></div><div><br></div><div><b>Congratulations</b> to the developers who worked hard on that work. </div><div><br></div><div>Now this deserves to be well tested, please report back any issues!</div></span></div></div></div></div>
</blockquote></div></div>