At the moment, sml-sync requires prompt toolkit version 2, but IPython relies on version 1 of prompt toolkit. These are incompatible, so installing sml-sync typically leads to an upgrade of prompt toolkit, which, in turn, breaks IPython.
An obvious fix is to run sml-sync in a dedicated virtual environment (I think this can be handled automatically using pipsi). This is painful for users who don't use the virtual environment mechanism.
As alternatives:
vendor prompt toolkit and import from vendored directories
packaging as a zip archive (see PEP 441 and docs) -- thanks Scott for the idea
pants looks like it would help, but at the cost of introducing a build took that we are unfamiliar with.
Do nothing and recommend using pipsi for the installation.
I think my preferences are 2., then investigate how difficult 3. is to set up, then 1., but happy with whatever.
At the moment, sml-sync requires prompt toolkit version 2, but IPython relies on version 1 of prompt toolkit. These are incompatible, so installing sml-sync typically leads to an upgrade of prompt toolkit, which, in turn, breaks IPython.
An obvious fix is to run sml-sync in a dedicated virtual environment (I think this can be handled automatically using pipsi). This is painful for users who don't use the virtual environment mechanism.
As alternatives:
I think my preferences are 2., then investigate how difficult 3. is to set up, then 1., but happy with whatever.