Search code examples
jupyter-notebookpackageanacondajupyterconda

Confusing Jupyter Notebook packages on Anaconda: jupyter or notebook?


I have been wondering about this for a while and cannot seem to find a reliable source to explain this.

I want to install Jupyter Notebook to my Conda environment, and when I search for it on https://anaconda.org/, there are 2 very popular packages available and both of them can open a working Jupyter Notebook with no problem.

However, according to the Project Jupyter's official documentation, the pip command to install Jupyter Notebook is:

pip install notebook 

And nowhere in the documenation, it mentions anything about this jupyter package.

Question

So what exactly is this jupyter package?

  • It does not have any license, no description, no references to the Project Jupyter website, and the package just looks unmaintained with version 1.0.0 for a while now.
  • Yet it has > 200k total downloads and when installed, it is able to open Jupyter Notebook properly.

I find it very confusing and easy to lead to dependencies problem in the future in Conda environment.


Solution

  • It's clear from the Project Jupyter instructions that the canonical package name for installing Jupyter Notebook is notebook. There are parallel jupyter and notebook packages in PyPI as well as the anaconda channel you mention. However, it is clear that notebook is regularly updated (as of writing, notebook on anaconda was last updated on 30 July 2022, jupyter on 22 January 2017!) The jupyter package on PyPI has the description "Jupyter metapackage. Install all the Jupyter components in one go." (However, I tested the jupyter anaconda package and it only runs notebook, not eg Jupyterlab.)

    I would guess that the jupyter package is left over from when Project Jupyter was just notebooks, without other projects like Jupyter Lab and Jupyter Hub. Of course in installing one should follow the official instructions, since the older package is not kept up to date. The fact that it has a lot of downloads only shows (as does this question) that python package management and the Jupyter ecosystem are confusing for many...