Hi,

Thanks for the overview. 

We need more examples of embedding the server in python and I plan to publish 
some concrete examples from our use cases asap.

David M.


> Le 5 oct. 2017 à 09:34, Alessandro Pasotti <apaso...@gmail.com> a écrit :
> 
> Hi Règis,
> 
> thanks for the nice summary!
> 
> Maybe it would be interesting for python devs to stress out how QGIS server 3 
> brings the bindings and the plugins to a new level: while the original 
> filter-style python plugins, are still available, the new service-oriented 
> plugin-based architecture allows Python developers to create new services 
> (for example WPS) by implementing a new `QgsService` directly in Python. 
> Overriding existing services is also possible.
> 
> The server API has now full python bindings and a QGIS server can be easily 
> implemented directly in Python and wrapped into your favourite framework (see 
> this simple wsgi experiment: 
> https://gist.github.com/elpaso/0cd7fb6a0518dc46c45557d9133438b8 
> <https://gist.github.com/elpaso/0cd7fb6a0518dc46c45557d9133438b8> ).
> 
> For more examples of the API, I think there are some basic examples in the 
> official Python tests: 
> https://github.com/qgis/QGIS/blob/master/tests/src/python/test_qgsserver_services.py#L79
>  
> <https://github.com/qgis/QGIS/blob/master/tests/src/python/test_qgsserver_services.py#L79>
>  
> 
> 
> Cheers
> 
> 
> 
> 
> 
> On Wed, Oct 4, 2017 at 10:49 PM, Régis Haubourg <regis.haubo...@gmail.com 
> <mailto:regis.haubo...@gmail.com>> wrote:
> Well, from a user point of view, that's a bit hard since all this is 90 % 
> refactoring.. which is supposed to be transparent for users. 
> 
> We have the trust and multithreaded features, that should (and early testers 
> today found it slower today) and the ability to code new services using 
> python.   
> We can also show some numbers about OGC conformity tests and the goal of 
> reaching OGC certification (WMS only by now). 
> 
> Alessandro, René-Luc and David, do you have some user oriented examples for 
> the new modular API ? 
> 
> 
> 
> 2017-10-04 22:18 GMT+02:00 Anita Graser <anitagra...@gmx.at 
> <mailto:anitagra...@gmx.at>>:
> Great overview, thanks for drafting Régis!
> 
> Some additional ideas: Could we add a section with the key improvements from 
> an user perspective? 
> 
> I'm particularly intrigued by the services / plugins part. Could you 
> elaborate?
> 
> Regards,
> Anita
> 
> 
> 
> On Wed, Oct 4, 2017 at 9:42 PM, Régis Haubourg <regis.haubo...@gmail.com 
> <mailto:regis.haubo...@gmail.com>> wrote:
> Hi again, 
> here is my very first draft:
> 
>  Several images can be pulled from the joined slides given at Foss4G-EU here 
> https://drive.google.com/file/d/0BzatQbprJ-hjWF95VzdHbGRsVEk/view?usp=sharing 
> <https://drive.google.com/file/d/0BzatQbprJ-hjWF95VzdHbGRsVEk/view?usp=sharing>
>  
> 
> René-Luc, David, Paul, don't hesitate to amend that!
> 
> --------------------------------------------------------------------------------------------
> 
> Qgis server refactoring is done!
> 
> 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 year ago, a tiny troll  <https://github.com/qgis/qgis3.0_api/issues/63>from 
> switzerland rang a bell about the strong need for love server code base 
> required. 
> 
> 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.
>    
> 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 code sprint 
> <https://github.com/qgis/QGIS/wiki/QGIS3---QGIS-Server-code-sprint-Notes> in 
> the city of Lyon , France dedicated to sharing their vision, planning the 
> work and finally making all the following 
> <https://github.com/qgis/QGIS-Enhancement-Proposals/issues/74> happen :
> 
> 
> # Deep, complex and unrewarding tasks:
> 
> - Remove all singleton calls
> 
> - Cut all the dependencies to the old qgis project parser
> 
> - Minimize dependencies to GUI library. Since fonts are necessary to render 
> maps, totally removing them was not feasable. 
> 
> # Higher level refactoring
> 
> All services (WMS GetMap, WFS GetFeature, GetLegendGraphics, WCS, GetPrint 
> etc..) have been rewritten. Some like WMS were entirely rewritten. Kudos to 
> the dev's
> 
> 
> # New features and architecture stuff
> 
> - QGIS Server Services as plugins like providers. (slide 10 would be a nice 
> figure here) 
> 
> - Multi-thread rendering  <https://github.com/qgis/QGIS/pull/3886>- like in 
> the desktop
> 
> - A new option to trust layer metadata 
> <https://github.com/qgis/QGIS/pull/5094> and speed up project loading
> 
> 
> # Infrastructure tasks
> 
> - Build a OGC compliancy platform 
> <http://oslandia.com/en/2017/06/16/qgis-server-ogc-cite-compliance-testing/> 
> and integrate it to a continuous integration platform. Conformity reports are 
> now pushed to tests.qgis.org <http://tests.qgis.org/> XXX waiting for Richard 
> to expose them in the website
> 
> - Add unit tests... and again more unit tests
> 
> - Stress QGIS server against security leaks 
> <http://oslandia.com/en/2017/06/14/qgis-server-security-aspect/> (SQL 
> injections and other malicious attacks)
> 
> - Start profiling and bench marking performances. This work still need some 
> love - and funding - to be achieved
> 
> 
> A presentation 
> <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>
>  was given at FOSS4G-EU in July. 
> 
> Congratulations to the developers who worked hard on that work. 
> 
> Now this deserves to be well tested, please report back any issues!
> 
> 
> 
> 2017-10-04 15:17 GMT+02:00 Anita Graser <anitagra...@gmx.at 
> <mailto:anitagra...@gmx.at>>:
> 
> 
> On Wed, Oct 4, 2017 at 1:23 PM, Régis Haubourg <regis.haubo...@gmail.com 
> <mailto:regis.haubo...@gmail.com>> wrote:
> Hi 
> 
> Yes, refactoring is now complete! see : 
> https://github.com/qgis/QGIS-Enhancement-Proposals/issues/74#issuecomment-334123595
>  
> <https://github.com/qgis/QGIS-Enhancement-Proposals/issues/74#issuecomment-334123595>
> 
> Anita, I'll draft an article tonight if you still agree to review it, that 
> would be great!
> 
> 
> ​Sure!
> 
> Anita
> 
> 
>  
> 
> 
> 
> 
> 
> _______________________________________________
> QGIS-Developer mailing list
> QGIS-Developer@lists.osgeo.org <mailto:QGIS-Developer@lists.osgeo.org>
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer 
> <https://lists.osgeo.org/mailman/listinfo/qgis-developer>
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer 
> <https://lists.osgeo.org/mailman/listinfo/qgis-developer>
> 
> 
> 
> -- 
> Alessandro Pasotti
> w3:   www.itopen.it 
> <http://www.itopen.it/>_______________________________________________
> QGIS-Developer mailing list
> QGIS-Developer@lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

_______________________________________________
QGIS-Developer mailing list
QGIS-Developer@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to