#50608: jupyter: its subcommands are versioned, they should not ------------------------------+-------------------------------- Reporter: akim.demaille@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: py34-notebook | ------------------------------+-------------------------------- Comment (by stromnov@…): Actually it's not a bug, but a side-effect of MacPorts naming convention and Jupyter name resolution. MacPorts allows to coexist several python versions at the same time (for example 2.7, 3.4 and 3.5). And even explicitly requires to specify Python version at install time in terms of pyXY-* packages (most of py-* packages just an aliases for pyXY-* subports). Some python packages installs executable scripts in ${prefix}/bin, and MacPorts use special scheme (with suffixes -X.Y) to resolve naming clash (for example pytest from 2.7 and pytest from 3.5). Jupyter executable doesn't know nothing about 'notebook', 'nbconvert' and other tools. Instead, Jupyter scans $PATH at runtime and selects all executables with pattern 'jupyter-*' and just allows to execute them. So, you have py34-jupyter and py34-notebook packages, which installs ${prefix}/bin/jupyter-3.4 and ${prefix}/bin/jupyter-notebook-3.4 respectively. Which leads to 'jypyter-3.4 notebook-3.4' recipe instead of 'jupyter notebook'. MacPorts already have OPTIONAL facility to 'select' specific package from sevaral alternatives (something like Ubuntu's 'update-alternatives'), which actually symlinks versioned files (-X.Y) to unversioned ones (see a bunch of *_select ports like ipython_select, cython_select). It is possible to provide such 'selectable' packages for all Jupyter tools, but due to its OPTIONALITY it will require a tons of additional steps from users (one 'select' step for each package). Alternatively, it is possible to create one Jupyter meta-package with all dependencies (even rarely used) hardcoded and one 'select' package to select specific version. -- Ticket URL: <https://trac.macports.org/ticket/50608#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X