Opened 6 years ago

Closed 6 years ago

#57933 closed update (fixed)

py-ipython: update to latest version

Reported by: reneeotten (Renee Otten) Owned by: stromnov@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: lpsinger (Leo Singer), seanfarley (Sean Farley), xeron (Ivan Larionov), g5pw (Aljaž Srebrnič), lbschenkel (Leonardo Brondani Schenkel), Schamschula (Marius Schamschula), mf2k (Frank Schima)
Port: py-ipython http-prompt mycli pgcli py-jupyter_console py-prompt_toolkit topydo xonsh

Description

port -v livecheck py-ipython
py-ipython seems to have been updated (port version: 6.5.0, new version: 7.2.0)

IPython 7.2 was released on November 29, 2018; please update to this latest version.

Change History (13)

comment:1 Changed 6 years ago by reneeotten (Renee Otten)

Port: py-ipython added

comment:2 Changed 6 years ago by stromnov (Andrey Stromnov)

It's not possible until py-prompt_toolkit is bounded to 1.x branch.

Also take a look on https://lists.macports.org/pipermail/macports-dev/2018-October/039447.html

And excerpt from direct mail to Ryan (29 Sep 2018):

Hi,

How to properly upgrade py-ipython to version 7.x?

1) py27-ipython is bounded to ipython 6.x and thus strictly depends on older prompt_toolkit < 2.x.

2) py3x-ipython 7.x requires prompt_toolkit >= 2.x

3) prompt_toolkit 1.x and 2.x are incompatible and thus can’t coexists in macports tree

I can create py-prompt_toolkit1 package and switch py27-python to it, but it’ll fail on upgrade for current MacPorts due to conflict between installed py27-prompt_toolkit and required py27-prompt_toolkit1.

For now I'm using latest ipython 7.x Portfile from my own local repository.

comment:3 Changed 6 years ago by reneeotten (Renee Otten)

sorry for the late response and thanks for your answer. I do see your point regarding py-prompt-toolkit, but we'll need to deal with that at some point...

Currently, the following ports depend on py-prompt-toolkit:

mycli
* current version (1.17) in MacPorts requires: prompt_toolkit>=1.0.10,<1.1.0
* latest release (1.19) requires: prompt_toolkit>=2.0.6

pgcli
* current version (1.10.3) in MacPorts requires: prompt_toolkit>=1.0.10,<1.1.0
* latest release (2.0.2) requires: prompt_toolkit>=2.0.6,<2.1.0

http-prompt
* current version (1.0.0, latest release) in MacPorts requires: prompt-toolkit>=1.0.0,<2.0.0

topydo
* current version (0.13, latest release) in MacPorts requires: prompt_toolkit >= 0.53

xonsh
* current version (0.89, latest release) in MacPorts requires: prompt_toolkit
Looking at https://github.com/xonsh/xonsh and the project’s Travis CI; all test pass with the newest prompt_toolkit (version 2.0.8)

py-ipython
* py27-ipython: current version (5.4.0, latest release) in MacPorts requires: prompt_toolkit>=1.0.15,<2.0.0

* py3?-ipython: current version (6.5.0) in MacPorts requires: prompt_toolkit>=1.0.15,<2.0.0
* py3?-ipython: latest release (7.2.0) requires: prompt_toolkit>=2.0.0,<2.1.0

py-jupyter_console
* current version (5.2.0) in MacPorts requires: prompt_toolkit>=1.0.0,<2.0.0
* latest release (6.0.0) requires: prompt_toolkit>=2.0.0,<2.1.0

So I think a workable situation is to do the following:

  • py-prompt_toolkit: pin the python2.7 to version 1.0.15; update the python3? to version 2.0.8
  • mycli: pin the python27 variant to version 1.17 (it seems that 1.18 would also work); update the python3? variants to 1.19
  • pgcli: pin the python27 variant to version 1.10.3 (it seems that 1.11.0 would also work); update the python3? variants to 2.02
  • http-prompt: restrict to python27 until they’ve update the prompt-toolkit dependency ; this is the only port that “suffers” if we decide to follow this proposal
  • topydo doesn’t specify the highest version of prompt_toolkit, so when installing through pip or condo one will also get version 2.0.8; don't know if that actually works
  • xonsh: no need to do anything
  • py-ipython: keep the python2.7 version pinned to 5.4.0; update the python3? supports to 7.2.0
  • py-jupyter_console (has a dependency on py-ipython): pin the python2.7 version to 5.2.0 and update the py3? supports to version 6.0.0

Any thoughts?

Last edited 6 years ago by reneeotten (Renee Otten) (previous) (diff)

comment:4 Changed 6 years ago by reneeotten (Renee Otten)

can someone with sufficient permissions please add the other ports to the "Port" field and their maintainers to "CC":

  • py-prompt_toolkit: xeron
  • mycli: xeron
  • pgcli: g5pw, xeron
  • http-prompt: lbschenkel
  • topydo:
  • xonsh: mps
  • py-jupyter_console

comment:5 Changed 6 years ago by mf2k (Frank Schima)

Cc: xeron g5pw lbschenkel Schamschula added

comment:6 Changed 6 years ago by mf2k (Frank Schima)

Port: http-prompt mycli pgcli py-jupyter_console py-prompt_toolkit topydo xonsh added

comment:7 Changed 6 years ago by mf2k (Frank Schima)

Cc: mf2k added

comment:8 Changed 6 years ago by lbschenkel (Leonardo Brondani Schenkel)

The problem with http-prompt is that it's just a wrapper for httpie: to downgrade the former to python2.7 we must also downgrade the latter (maintained by @g5pw).

comment:9 Changed 6 years ago by g5pw (Aljaž Srebrnič)

mmmh... I'd rather not downgrade httpie, maybe we could add a separate port for the 2.7 version.

Last edited 6 years ago by g5pw (Aljaž Srebrnič) (previous) (diff)

comment:10 Changed 6 years ago by mf2k (Frank Schima)

Sure, can it be made to install side by side with the existing port - i.e. non-conflicting?

Last edited 6 years ago by mf2k (Frank Schima) (previous) (diff)

comment:11 in reply to:  8 Changed 6 years ago by reneeotten (Renee Otten)

Replying to lbschenkel:

The problem with http-prompt is that it's just a wrapper for httpie: to downgrade the former to python2.7 we must also downgrade the latter (maintained by @g5pw).

It appears there is (a PR) that attempts to make http-prompt compatible with higher versions of py-prompt_toolkit. Perhaps you can give this a try to see if everything still works and, if so, add these patches? Alternatively, asking upstream if there is any reason why this PR isn't accepted yet, might be an option.

Last edited 6 years ago by reneeotten (Renee Otten) (previous) (diff)

comment:12 Changed 6 years ago by reneeotten (Renee Otten)

see PR3845 for an attempt to resolve this.

comment:13 Changed 6 years ago by reneeotten <reneeotten@…>

Resolution: fixed
Status: assignedclosed

In ae9f78e8f7da8a3d2490feadb9e271fc2ae8ad8f/macports-ports (master):

py-prompt_toolkit: update to 2.0.9, pin to 1.0.15 for py27/py34

  • update license
  • enable tests
  • install files in post-destroot
  • use default PyPI livecheck
  • sort dependencies alphabetically

Closes: #57933

Note: See TracTickets for help on using tickets.