facultyai / faculty-sync

Synchronise a local directory with your Faculty platform workspace
https://pypi.org/project/faculty_sync/
Apache License 2.0
10 stars 1 forks source link

Ensure sml-sync can coexist with IPython in a Python environment #20

Closed pbugnion closed 5 years ago

pbugnion commented 6 years ago

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:

  1. vendor prompt toolkit and import from vendored directories
  2. packaging as a zip archive (see PEP 441 and docs) -- thanks Scott for the idea
  3. pants looks like it would help, but at the cost of introducing a build took that we are unfamiliar with.
  4. 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.

srstevenson commented 5 years ago

IPython has now migrated to prompt_toolkit 2: https://github.com/ipython/ipython/pull/11177.

janfreyberg commented 5 years ago

yeah, this has been resolved for a while now