<div dir="ltr"><div>Bryan,</div><div>Did you install pysim dependencies with pip and requirements.txt, or with the upstream ubuntu packages? If you installed via pip, I believe the pythonic way to handle this is for dependencies to use semantic versioning, which it appears the cmd2 developers are following. Pip is rolling, and without a version constraint defaults to the latest release. cmd2 released a 2.0.0 version on June 6 (<a href="https://github.com/python-cmd2/cmd2/releases/tag/2.0.0">https://github.com/python-cmd2/cmd2/releases/tag/2.0.0</a>), but the pysim requirements.txt has no version constraint (<a href="https://github.com/osmocom/pysim/blob/master/requirements.txt">https://github.com/osmocom/pysim/blob/master/requirements.txt</a>). Dependency management is known to be "not great" (in quotes as a sarcastic understatement : ) ) in python, and for applications with complex dependencies there are tools like pipenv and poetry (seems to be getting more traction now) that more rigorously isolate the environment and dependencies present, complete with lockfiles and reproducible environments. Since pysim is relatively simple, it is probably sufficient in practice to just add major version constraints to the requirements.txt, although a more rigorous from source install procedure could use poetry and a lockfile, at the cost of needing poetry on your system instead of just pip.<br></div><div>If you installed dependencies via system package manager, I am surprised that ubuntu pulled a new version into their LTS repo, but I expect this is not the case, although I don't have an ubuntu machine handy to verify!</div><div>Regards,</div><div>-Matt J.<br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 11, 2021 at 2:30 PM Harald Welte <<a href="mailto:laforge@osmocom.org">laforge@osmocom.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Bryan,<br>
<br>
On Fri, Jun 11, 2021 at 03:16:22PM -0400, bryan coxwell wrote:<br>
> Just wanted to share an issue and a quick workaround I found for it in case<br>
> anyone else has the same problem. I believe a cmd2 update is causing<br>
> pySim-shell to fail. <br>
<br>
thanks for reporting this.<br>
<br>
I can confirm the problem: cmd2 decided it is a good idea to rename<br>
the use_ipython argument to include_ipy in the following commit:<br>
<a href="https://github.com/python-cmd2/cmd2/commit/2397280cad072a27a51f5ec1cc64908039d14bd1" rel="noreferrer" target="_blank">https://github.com/python-cmd2/cmd2/commit/2397280cad072a27a51f5ec1cc64908039d14bd1</a><br>
<br>
I've filed an issue to ask how applications are supposed to deal with that:<br>
<a href="https://github.com/python-cmd2/cmd2/issues/1120" rel="noreferrer" target="_blank">https://github.com/python-cmd2/cmd2/issues/1120</a><br>
<br>
-- <br>
- Harald Welte <<a href="mailto:laforge@osmocom.org" target="_blank">laforge@osmocom.org</a>>            <a href="http://laforge.gnumonks.org/" rel="noreferrer" target="_blank">http://laforge.gnumonks.org/</a><br>
============================================================================<br>
"Privacy in residential applications is a desirable marketing option."<br>
                                                  (ETSI EN 300 175-7 Ch. A6)<br>
</blockquote></div>