Contributor
Aasheesh Tiwari

Making pgRoutingLayer plugin compatible with QGIS 3.0 and Adding GUI support for proposed stable functions which are scheduled for next release.


Mentors
cvvergara, Cayetano Benavent
Organization
OSGeo

The new version of QGIS has introduced an API break. The key changes in QGIS 3.0 are as follows:

Updated from Qt4 to Qt5

Updated from PyQt4 to PyQt5

Updated from Python 2.7 to Python 3.0

QGIS API is improved , many classes have been deprecated or renamed.

The above changes have implications that the pgRoutingLayer plugin is no longer compatible with QGIS 3.0 . For my GSoC project, I propose to accommodate these changes in pgRoutingLayer plugin code and also make use of the new features introduced in QGIS 3.0 to improve the functionality of plugin’s GUI. Also currently there is no test coverage for plugin code which makes it difficult to change features efficiently, so a complete unit test coverage will be built which not only will help in this project but also in future ventures. In addition to this I propose to add functionality for the proposed stable functions of following families:

Astar : pgr_astarCost , pgr_astarCostMatrix

Bidirectional astar : pgr_bdAstarCost , pgr_bdAstarCostMatrix

Bidirectional Dijkstra : pgr_bdDijkstraCost , pgr_bdDijkstraCostMatrix

Flow