On 11 February 2018 at 21:07, Chris Crook <ccr...@linz.govt.nz> wrote: > Hi Nyall > > The code is on github .. > > https://github.com/ccrook/QGIS-VectorFieldRenderer-Plugin/tree/qgis3_wip > > I've documented this in issue 8 at: > > https://github.com/ccrook/QGIS-VectorFieldRenderer-Plugin/issues/8 > > Any thoughts would be greatly appreciated :-)
Ok, so the issue is that you're trying to call the base class methods by calling QgsFeatureRenderer.startRender(context,fields) That's not valid syntax. In Python 3 you should use: super().startRender(context,fields) Fixing those calls avoids the assert. ...BUT.... You'll get a lot of crashes, because there's other parts of your renderer which need upgrading to QGIS 3.0 API. And unfortunately when a renderer crashes in Python code, it segfaults after dumping the python error to the console. You'll need to run in a console to see the Python errors which are thrown and upgrade the corresponding API calls. Also - I noticed you access a layer from the project within your startRender method -- is is very unsafe for a renderer to do, since it is running in a background thread and should not be accessing layers at all. Just another thing to try to refactor out as you upgrade your plugin for 3.0! Nyall _______________________________________________ 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