Coder Social home page Coder Social logo

ptipython-meta's People

Contributors

timofurrer avatar un-def avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ptipython-meta's Issues

Legacy Python 2 support broken due to conflicting version requirements.

On Python 2 there is a versioning conflict between ptpython and ipython, both of which have demands over the allowable version of prompt-toolkit.

Python 3:

$ venv shell  # equiv: python3 -m venv shell; cd shell; . bin/activate

(shell)$ which pip
$HOME/Projects/shell/.venv/bin/pip

(shell)$ pip install ptipython
Collecting ptipython
Collecting ptpython (from ptipython)
Collecting ipython (from ptipython)
Collecting pygments (from ptpython->ptipython)
Collecting jedi>=0.9.0 (from ptpython->ptipython)
Collecting docopt (from ptpython->ptipython)
Collecting prompt-toolkit<2.1.0,>=2.0.6 (from ptpython->ptipython)
Collecting traitlets>=4.2 (from ipython->ptipython)
Collecting backcall (from ipython->ptipython)
Collecting pexpect; sys_platform != "win32" (from ipython->ptipython)
Collecting appnope; sys_platform == "darwin" (from ipython->ptipython)
Collecting decorator (from ipython->ptipython)
Requirement already satisfied: setuptools>=18.5 in ./.venv/lib/python3.7/site-packages (from ipython->ptipython) (40.6.2)
Collecting pickleshare (from ipython->ptipython)
Collecting parso>=0.3.0 (from jedi>=0.9.0->ptpython->ptipython)
Collecting wcwidth (from prompt-toolkit<2.1.0,>=2.0.6->ptpython->ptipython)
Collecting six>=1.9.0 (from prompt-toolkit<2.1.0,>=2.0.6->ptpython->ptipython)
Collecting ipython-genutils (from traitlets>=4.2->ipython->ptipython)
Collecting ptyprocess>=0.5 (from pexpect; sys_platform != "win32"->ipython->ptipython)
Installing collected packages: pygments, parso, jedi, docopt, wcwidth, six, prompt-toolkit, ptpython, ipython-genutils, decorator, traitlets, backcall, ptyprocess, pexpect, appnope, pickleshare, ipython, ptipython
  Running setup.py install for backcall ... done
Successfully installed appnope-0.1.0 backcall-0.1.0 decorator-4.3.0 docopt-0.6.2 ipython-7.2.0 ipython-genutils-0.2.0 jedi-0.13.2 parso-0.3.1 pexpect-4.6.0 pickleshare-0.7.5 prompt-toolkit-2.0.7 ptipython-1.0.0 ptpython-2.0.4 ptyprocess-0.6.0 pygments-2.3.1 six-1.12.0 traitlets-4.3.2 wcwidth-0.1.7
pip install ptipython  3.60s user 1.79s system 84% cpu 6.399 total

(shell)$ ptipython
(works)

Python 2:

$ virtualenv --python=python shell
$ cd shell; . bin/activate

(shell)$ which pip
$HOME/Projects/shell/bin/pip

(shell)$ pip install ptipython
Collecting ptipython
Collecting ipython (from ptipython)
Collecting ptpython (from ptipython)
Collecting prompt-toolkit<2.0.0,>=1.0.4 (from ipython->ptipython)
Collecting decorator (from ipython->ptipython)
Collecting pexpect; sys_platform != "win32" (from ipython->ptipython)
Collecting backports.shutil-get-terminal-size; python_version == "2.7" (from ipython->ptipython)
Requirement already satisfied: setuptools>=18.5 in ./lib/python2.7/site-packages (from ipython->ptipython) (40.6.3)
Collecting pygments (from ipython->ptipython)
Collecting pathlib2; python_version == "2.7" or python_version == "3.3" (from ipython->ptipython)
Collecting traitlets>=4.2 (from ipython->ptipython)
Collecting simplegeneric>0.8 (from ipython->ptipython)
Collecting pickleshare (from ipython->ptipython)
Collecting appnope; sys_platform == "darwin" (from ipython->ptipython)
Collecting jedi>=0.9.0 (from ptpython->ptipython)
Collecting docopt (from ptpython->ptipython)
Collecting wcwidth (from prompt-toolkit<2.0.0,>=1.0.4->ipython->ptipython)
Collecting six>=1.9.0 (from prompt-toolkit<2.0.0,>=1.0.4->ipython->ptipython)
Collecting ptyprocess>=0.5 (from pexpect; sys_platform != "win32"->ipython->ptipython)
Collecting scandir; python_version < "3.5" (from pathlib2; python_version == "2.7" or python_version == "3.3"->ipython->ptipython)
Collecting ipython-genutils (from traitlets>=4.2->ipython->ptipython)
Collecting enum34; python_version == "2.7" (from traitlets>=4.2->ipython->ptipython)
Collecting parso>=0.3.0 (from jedi>=0.9.0->ptpython->ptipython)
ptpython 2.0.4 has requirement prompt-toolkit<2.1.0,>=2.0.6, but you'll have prompt-toolkit 1.0.15 which is incompatible.
Installing collected packages: wcwidth, six, prompt-toolkit, decorator, ptyprocess, pexpect, backports.shutil-get-terminal-size, pygments, scandir, pathlib2, ipython-genutils, enum34, traitlets, simplegeneric, pickleshare, appnope, ipython, parso, jedi, docopt, ptpython, ptipython
Successfully installed appnope-0.1.0 backports.shutil-get-terminal-size-1.0.0 decorator-4.3.0 docopt-0.6.2 enum34-1.1.6 ipython-5.8.0 ipython-genutils-0.2.0 jedi-0.13.2 parso-0.3.1 pathlib2-2.3.3 pexpect-4.6.0 pickleshare-0.7.5 prompt-toolkit-1.0.15 ptipython-1.0.0 ptpython-2.0.4 ptyprocess-0.6.0 pygments-2.3.1 scandir-1.9.0 simplegeneric-0.8.1 six-1.12.0 traitlets-4.3.2 wcwidth-0.1.7
pip install ptipython  3.28s user 1.62s system 87% cpu 5.576 total

(shell)$ ptipython
Traceback (most recent call last):
  File "/Users/amcgregor/Projects/shell/bin/ptipython", line 11, in <module>
    sys.exit(run())
  File "/Users/amcgregor/Projects/shell/lib/python2.7/site-packages/ptpython/entry_points/run_ptipython.py", line 41, in run
    from ptpython.ipython import embed
  File "/Users/amcgregor/Projects/shell/lib/python2.7/site-packages/ptpython/ipython.py", line 14, in <module>
    from prompt_toolkit.completion import PathCompleter, WordCompleter
ImportError: cannot import name PathCompleter

Note specifically the line ptpython 2.0.4 has requirement prompt-toolkit<2.1.0,>=2.0.6, but you'll have prompt-toolkit 1.0.15 which is incompatible. above, just prior to the final "Installing collected packages" line. With some finagling, I can also generate a message for the conflicting package, which happens to be ipython:

ipython 5.8.0 has requirement prompt-toolkit<2.0.0,>=1.0.4, but you'll have prompt-toolkit 2.0.7 which is incompatible.

Ruh-roh. What should I be pinning locally to avoid this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.