<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Sep 22, 2016 at 3:22 PM, Vincent Picavet (ml) <span dir="ltr"><<a href="mailto:vincent.ml@oslandia.com" target="_blank">vincent.ml@oslandia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<span class=""><br>
<br>
On 22/09/2016 14:43, Alessandro Pasotti wrote:<br>
> On Thu, Sep 22, 2016 at 2:37 PM, Akbar Gumbira <<a href="mailto:akbargumbira@gmail.com">akbargumbira@gmail.com</a><br>
</span>> <mailto:<a href="mailto:akbargumbira@gmail.com">akbargumbira@gmail.com</a><wbr>>> wrote:<br>
[..]<br>
<span class="">>     @Jachym: AFAIK, most plugins now just ship the needed libraries<br>
>     along with it or ask the users to install them. There are some<br>
>     libraries that are already shipped into QGIS from the core python<br>
>     plugins (e.g jinja), you might want to check if what you need is<br>
>     there already.<br>
><br>
> A new metadata (external_deps: text) field was introduced for this<br>
> purpose but there is nothing implemented inside QGIS for now:<br>
> <a href="https://github.com/qgis/QGIS-Django/commit/6546a2ab54fd01b6e94b921b610c31b619e99979#diff-536e872043014a84818f87dc640b2d4d" rel="noreferrer" target="_blank">https://github.com/qgis/QGIS-<wbr>Django/commit/<wbr>6546a2ab54fd01b6e94b921b610c31<wbr>b619e99979#diff-<wbr>536e872043014a84818f87dc640b2d<wbr>4d</a><br>
><br>
> A common pattern seems shipping dependencies with the plugin as Python eggs.<br>
<br>
</span>New Python Wheels and Pypi now support binary packages. This becomes a<br>
really useful and convenient tool to install dependencies, with<br>
multi-platform support, without even having a compiler installed.<br>
<br>
Making QGIS Python plugins as Python modules would allow to use all pip<br>
and pypi insfrastructure really easily.<br>
<br>
The proposed osgeo4w grant application by Jef could include the low<br>
level required changes necessary to introduce this behaviour. Right now<br>
pip is distributed by default in OSGeo4w, but since not all OSGeo4w<br>
python modules are installed through pip (but through specific exe<br>
installers), this may lead to installation problems ( names conflicts e.g.).<br>
<br>
If this work is done, there still will be some work on the QGIS python<br>
plugin interface, but _not_ reimplementing a package management system<br>
in QGIS and use pip instead could be a good option.<br></blockquote><div> <br clear="all"></div></div><br></div><div class="gmail_extra">I could't agree more!<br><br></div><div class="gmail_extra">We definitely don't want to re-invent the (PyPi) wheel ;)<br><br></div><div class="gmail_extra">Go for pip, but still the external_deps field in metadata could be useful to hold the content of REQUIREMENTS.txt, or a path to it.<br></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Alessandro Pasotti<br>w3:   <a href="http://www.itopen.it" target="_blank">www.itopen.it</a></div>
</div></div>