How does `jupyter labextension list` determine if an extension is outdated?


I’m developing an extension locally and have been seeing a confusing message when I run jupyter labextension list :

        nbdime-jupyterlab v2.1.0 enabled OK
        jupyter-matplotlib v0.9.0 enabled OK
        tc4ml_sbc_github v0.1.0 enabled  X
        @jupyter-widgets/jupyterlab-sidecar v0.6.1 enabled OK (python, sidecar)
        @jupyter-widgets/jupyterlab-manager v3.0.0 enabled OK (python, jupyterlab_widgets)

   The following extension are outdated:

   Consider running "jupyter labextension update --all" to check for updates.

How does the command determine whether an extension is outdated? Since tc4ml_sbc_github is being developed locally, I don’t think jupyter labextension update --all will fix things.

Any guidance appreciated!

1 Like

It does not know anything about new versions/releases of the extension; instead it compares what version of JupyterLab the extension requests/was built for and checks if this is older than the current version of JupyterLab.

Say your extension depends on packages @jupyterlab/something in version 2.0 but you are running JupyterLab 3.0 - this is when you should expect this error. The code that checks this is in: