[Qgis-developer] Plugin Dependencies

Vincent Picavet (ml) vincent.ml at oslandia.com
Thu Nov 5 03:14:10 PST 2015


Hello,

On 05/11/2015 09:50, Richard Duivenvoorde wrote:
> On 05-11-15 04:56, Tim Sutton wrote:
>[...]
>>> I'm afraid that by using a much more complicate system (such as
>>> setuptools), would solve some problem for the (few) complex plugins
>>> and create a lot of problems and increase the barrier for the vast
>>> majority of simpler plugin authors.
> 
> I agree with Tim, unless we come up with a very simple way, this will
> not solve the problem: "non tech savvy users cannot setup their python
> environment for some complex plugi".

You are right, but this should be taken the other way round : how do we
add sugar onto a powerful system, to make it accessible for
non-that-tech people.
This is clearly doable and would be an ideal solution.
The proposals from Victor and all to create a set of functions to help
writing plugins is already a good start in that direction for the code part.
We should be able to do the same for the development environment part.

I think there are much more end-users which are annoyed by dependency
problems than new plugin writers not willing to setup en environment.
Dependency problems are hard whatever we do, and we should definitely
rely on the experience of others for this.



> The different module versions problem I do not see as a practical
> problem, most times python can work with higher versions. Let's keep it
> the responsibility of the plugin builders to keep up with versions of
> their modules.

Yes the plugin versions dependencies should be left to the plugin
writer. Dealing with one application using various versions of a module
for various plugins will just lead to "DLL Hell", multiple duplication
of modules and behaviour inconsistencies for the end user.

I think we should build on top of well-defined and bullet-proof tools
the Python world has to offer, and focus on adding simple ways for a
newcomer to start with development. It is not a question of overhead, it
is a question of interface.

Vincent

> I still think just copy the modules into the plugin is easiest (although
> redundant).
> And if you cannot package the lib with your plugin because of OS
> problems: documentation is the answer...
> 
> Somebody with this insights, maybe can write a chapter about python path
> magics and how QGIS works with that?
> 
> Regards,
> 
> Richard
> 
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 



More information about the Qgis-developer mailing list