<div dir="ltr">Hi again,<div><br></div><div>I've went on and created a proper pull request to websockify [0], comment there if you think we need it :)</div><div><br></div><div>I also realized that there is another option, which is to include python-numpy to files/debs/ironic and files/debs/nova (strangely it is already present in rpms/ for nova, noVNC and spice services).</div><div>This should install a pre-compiled version from distro repos, and should also speed things up.</div><div><br></div><div>Any comments welcome.</div><div><br></div><div>[0] <a href="https://github.com/kanaka/websockify/pull/212">https://github.com/kanaka/websockify/pull/212</a></div><div><br></div><div>Best regards,</div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Nov 26, 2015 at 1:44 PM Pavlo Shchelokovskyy <<a href="mailto:pshchelokovskyy@mirantis.com">pshchelokovskyy@mirantis.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi all,<div><br></div><div>I was long puzzled why devstack is installing numpy. Being a fantastic package itself, it has the drawback of taking about 4 minutes to compile its C extensions when installing on our gates (e.g. [0]). I finally took time to research and here is what I've found:</div><div><br></div><div>it is used only by websockify package (installed by AFAIK ironic and nova only), and there it is used to speed up the HyBi protocol. Although the code itself has a path to work without numpy installed [1], the setup.py of websockify declares numpy as a hard dependency [2].</div><div><br></div><div>My question is do we really need those speedups? Do we test any feature requiring fast HyBi support on gates? Not installing numpy would shave 4 minutes off any gate job that is installing Nova or Ironic, which seems like a good deal to me.</div><div><br></div><div>If we decide to save this time, I have prepared a pull request for websockify that moves numpy requirement to "extras" [3]. As a consequence numpy will not be installed by default as dependency, but still possible to install with e.g. "pip install websockify[fastHyBi]", and package builders can also specify numpy as hard dependency for websockify package in package specs.</div><div><br></div><div>What do you think?</div><div><br></div><div>[0] <a href="http://logs.openstack.org/82/236982/6/check/gate-tempest-dsvm-ironic-agent_ssh/1141960/logs/devstacklog.txt.gz#_2015-11-11_19_51_40_784" target="_blank">http://logs.openstack.org/82/236982/6/check/gate-tempest-dsvm-ironic-agent_ssh/1141960/logs/devstacklog.txt.gz#_2015-11-11_19_51_40_784</a></div><div>[1] <a href="https://github.com/kanaka/websockify/blob/master/websockify/websocket.py#L143" target="_blank">https://github.com/kanaka/websockify/blob/master/websockify/websocket.py#L143</a></div><div>[2] <a href="https://github.com/kanaka/websockify/blob/master/setup.py#L37" target="_blank">https://github.com/kanaka/websockify/blob/master/setup.py#L37</a></div><div>[3] <a href="https://github.com/pshchelo/websockify/commit/0b1655e73ea13b4fba9c6fb4122adb1435d5ce1a" target="_blank">https://github.com/pshchelo/websockify/commit/0b1655e73ea13b4fba9c6fb4122adb1435d5ce1a</a></div><div><br></div><div>Best regards,</div></div><div dir="ltr">-- <br></div><div dir="ltr"><span>Dr. Pavlo Shchelokovskyy</span><div>Senior Software Engineer</div><div>Mirantis Inc</div><div><a>www.mirantis.com</a></div></div></blockquote></div><div dir="ltr">-- <br></div><div dir="ltr"><span>Dr. Pavlo Shchelokovskyy</span><div>Senior Software Engineer</div><div>Mirantis Inc</div><div><a>www.mirantis.com</a></div></div>