Problem
The current behavior of extra_labextensions_path is inconsistent across jupyterlab_server and voila repositories.
- Within the jupyterlab_server repository the PATH var for looking up extensions is constructed as
extra_labextensions_path + labextensions_path
- However, in the voila repository the PATH var for looking up extensions is constructed as
labextensions_path + extra_labextensions_path
This changes the precedence of extensions lookup. If the same extension exists in both locations, the differing order changes which copy is used, causing surprising behavior depending on the environment.
Proposed Solution
- The
extra_labextensions_path should be prepended to labextensions_path in both repositories.
- It should be constructed like -
labextensions_path = extra_labextensions_path + labextensions_path
- This makes the behavior consistent across both ecosystems (jupyterlab_server and voila) thus ensuring predictable behavior.
Additional context/ References
- jupyterlab_server: labextensions_path
- voila labextensions_path
Problem
The current behavior of
extra_labextensions_pathis inconsistent acrossjupyterlab_serverandvoilarepositories.extra_labextensions_path + labextensions_pathlabextensions_path + extra_labextensions_pathThis changes the precedence of extensions lookup. If the same extension exists in both locations, the differing order changes which copy is used, causing surprising behavior depending on the environment.
Proposed Solution
extra_labextensions_pathshould be prepended tolabextensions_pathin both repositories.labextensions_path = extra_labextensions_path + labextensions_pathAdditional context/ References