Skip to content

Version 4.5.0 is built against a prerelease versions of JupyterLab #579

@ykazakov

Description

@ykazakov

Bug description

After updating jupyter-server-proxy to version 4.5.0, I noticed the following warnings in the browser console:

[Warning] Unsatisfied version 4.5.6 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/application (required ^4.6.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)
[Warning] Unsatisfied version 4.5.10 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/apputils (required ^4.7.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)
[Warning] Unsatisfied version 6.5.7 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/coreutils (required ^6.6.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)
[Warning] Unsatisfied version 4.5.6 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/filebrowser (required ^4.6.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)
[Warning] Unsatisfied version 4.5.6 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/launcher (required ^4.6.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)
[Warning] Unsatisfied version 7.5.7 from _JUPYTERLAB.CORE_OUTPUT of shared singleton module @jupyterlab/services (required ^7.6.0-alpha.4) (remoteEntry.e3e4d0a8cd0a53aac60c.js, line 1)

I do not want to be forced installing an alpha version of Jupyterlab for the extension to work properly.

How to reproduce

  1. Run conda install -c conda-forge jupyter-server-proxy
  2. Open the browser console
  3. Start jupyterlab
  4. See the above warnings
  5. Inspect the content of /opt/conda/share/jupyter/labextensions/@jupyterhub/jupyter-server-proxy/static/remoteEntry.e3e4d0a8cd0a53aac60c.js (below) for strings like h("default","@jupyterlab/application",!1,[1,4,6,0,,"alpha",4])
remoteEntry.e3e4d0a8cd0a53aac60c.js
var _JUPYTERLAB;(()=>{"use strict";var e,r,t,n,o,a,i,u,l,p,s,f,d,c,h,v,b,y,g,m={585(e,r,t){var n={"./index":()=>t.e(961).then(()=>()=>t(961)),"./extension":()=>t.e(961).then(()=>()=>t(961))},o=(e,r)=>(t.R=r,r=t.o(n,e)?n[e]():Promise.resolve().then(()=>{throw new Error('Module "'+e+'" does not exist in container.')}),t.R=void 0,r),a=(e,r)=>{if(t.S){var n="default",o=t.S[n];if(o&&o!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[n]=e,t.I(n,r)}};t.d(r,{get:()=>o,init:()=>a})}},j={};function w(e){var r=j[e];if(void 0!==r)return r.exports;var t=j[e]={exports:{}};return m[e](t,t.exports,w),t.exports}w.m=m,w.c=j,w.d=(e,r)=>{for(var t in r)w.o(r,t)&&!w.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},w.f={},w.e=e=>Promise.all(Object.keys(w.f).reduce((r,t)=>(w.f[t](e,r),r),[])),w.u=e=>e+".542dccb965db1a45defb.js?v=542dccb965db1a45defb",w.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),w.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="@jupyterhub/jupyter-server-proxy:",w.l=(t,n,o,a)=>{if(e[t])e[t].push(n);else{var i,u;if(void 0!==o)for(var l=document.getElementsByTagName("script"),p=0;p<l.length;p++){var s=l[p];if(s.getAttribute("src")==t||s.getAttribute("data-webpack")==r+o){i=s;break}}i||(u=!0,(i=document.createElement("script")).charset="utf-8",w.nc&&i.setAttribute("nonce",w.nc),i.setAttribute("data-webpack",r+o),i.src=t),e[t]=[n];var f=(r,n)=>{i.onerror=i.onload=null,clearTimeout(d);var o=e[t];if(delete e[t],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(e=>e(n)),r)return r(n)},d=setTimeout(f.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=f.bind(null,i.onerror),i.onload=f.bind(null,i.onload),u&&document.head.appendChild(i)}},w.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{w.S={};var e={},r={};w.I=(t,n)=>{n||(n=[]);var o=r[t];if(o||(o=r[t]={}),!(n.indexOf(o)>=0)){if(n.push(o),e[t])return e[t];w.o(w.S,t)||(w.S[t]={});var a=w.S[t],i="@jupyterhub/jupyter-server-proxy",u=[];return"default"===t&&((e,r,t,n)=>{var o=a[e]=a[e]||{},u=o[r];(!u||!u.loaded&&(1!=!u.eager?n:i>u.from))&&(o[r]={get:()=>w.e(961).then(()=>()=>w(961)),from:i,eager:!1})})("@jupyterhub/jupyter-server-proxy","4.5.0"),e[t]=u.length?Promise.all(u).then(()=>e[t]=1):1}}})(),(()=>{var e;w.g.importScripts&&(e=w.g.location+"");var r=w.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),w.p=e})(),t=e=>{var r=e=>e.split(".").map(e=>+e==e?+e:e),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),n=t[1]?r(t[1]):[];return t[2]&&(n.length++,n.push.apply(n,r(t[2]))),t[3]&&(n.push([]),n.push.apply(n,r(t[3]))),n},n=(e,r)=>{e=t(e),r=t(r);for(var n=0;;){if(n>=e.length)return n<r.length&&"u"!=(typeof r[n])[0];var o=e[n],a=(typeof o)[0];if(n>=r.length)return"u"==a;var i=r[n],u=(typeof i)[0];if(a!=u)return"o"==a&&"n"==u||"s"==u||"u"==a;if("o"!=a&&"u"!=a&&o!=i)return o<i;n++}},o=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,t+="u"==(typeof(u=e[a]))[0]?"-":(n>0?".":"")+(n=2,u);return t}var i=[];for(a=1;a<e.length;a++){var u=e[a];i.push(0===u?"not("+l()+")":1===u?"("+l()+" || "+l()+")":2===u?i.pop()+" "+i.pop():o(u))}return l();function l(){return i.pop().replace(/^\((.+)\)$/,"$1")}},a=(e,r)=>{if(0 in e){r=t(r);var n=e[0],o=n<0;o&&(n=-n-1);for(var i=0,u=1,l=!0;;u++,i++){var p,s,f=u<e.length?(typeof e[u])[0]:"";if(i>=r.length||"o"==(s=(typeof(p=r[i]))[0]))return!l||("u"==f?u>n&&!o:""==f!=o);if("u"==s){if(!l||"u"!=f)return!1}else if(l)if(f==s)if(u<=n){if(p!=e[u])return!1}else{if(o?p>e[u]:p<e[u])return!1;p!=e[u]&&(l=!1)}else if("s"!=f&&"n"!=f){if(o||u<=n)return!1;l=!1,u--}else{if(u<=n||s<f!=o)return!1;l=!1}else"s"!=f&&"n"!=f&&(l=!1,u--)}}var d=[],c=d.pop.bind(d);for(i=1;i<e.length;i++){var h=e[i];d.push(1==h?c()|c():2==h?c()&c():h?a(h,r):!c())}return!!c()},i=(e,r)=>e&&w.o(e,r),u=e=>(e.loaded=1,e.get()),l=e=>Object.keys(e).reduce((r,t)=>(e[t].eager&&(r[t]=e[t]),r),{}),p=(e,r,t)=>{var o=t?l(e[r]):e[r];return Object.keys(o).reduce((e,r)=>!e||!o[e].loaded&&n(e,r)?r:e,0)},s=(e,r,t,n)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+o(n)+")",f=e=>{throw new Error(e)},d=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},c=(e,r,t)=>t?t():((e,r)=>f("Shared module "+r+" doesn't exist in shared scope "+e))(e,r),h=(e=>function(r,t,n,o,a){var i=w.I(r);return i&&i.then&&!n?i.then(e.bind(e,r,w.S[r],t,!1,o,a)):e(r,w.S[r],t,n,o,a)})((e,r,t,n,o,l)=>{if(!i(r,t))return c(e,t,l);var f=p(r,t,n);return a(o,f)||d(s(r,t,f,o)),u(r[t][f])}),v={},b={637:()=>h("default","@jupyterlab/application",!1,[1,4,6,0,,"alpha",4]),76:()=>h("default","@jupyterlab/apputils",!1,[1,4,7,0,,"alpha",4]),769:()=>h("default","@jupyterlab/coreutils",!1,[1,6,6,0,,"alpha",4]),81:()=>h("default","@jupyterlab/filebrowser",!1,[1,4,6,0,,"alpha",4]),955:()=>h("default","@jupyterlab/launcher",!1,[1,4,6,0,,"alpha",4]),506:()=>h("default","@jupyterlab/services",!1,[1,7,6,0,,"alpha",4])},y={961:[637,76,769,81,955,506]},g={},w.f.consumes=(e,r)=>{w.o(y,e)&&y[e].forEach(e=>{if(w.o(v,e))return r.push(v[e]);if(!g[e]){var t=r=>{v[e]=0,w.m[e]=t=>{delete w.c[e],t.exports=r()}};g[e]=!0;var n=r=>{delete v[e],w.m[e]=t=>{throw delete w.c[e],r}};try{var o=b[e]();o.then?r.push(v[e]=o.then(t).catch(n)):t(o)}catch(e){n(e)}}})},(()=>{var e={738:0};w.f.j=(r,t)=>{var n=w.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else{var o=new Promise((t,o)=>n=e[r]=[t,o]);t.push(n[2]=o);var a=w.p+w.u(r),i=new Error;w.l(a,t=>{if(w.o(e,r)&&(0!==(n=e[r])&&(e[r]=void 0),n)){var o=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+o+": "+a+")",i.name="ChunkLoadError",i.type=o,i.request=a,n[1](i)}},"chunk-"+r,r)}};var r=(r,t)=>{var n,o,[a,i,u]=t,l=0;if(a.some(r=>0!==e[r])){for(n in i)w.o(i,n)&&(w.m[n]=i[n]);u&&u(w)}for(r&&r(t);l<a.length;l++)o=a[l],w.o(e,o)&&e[o]&&e[o][0](),e[o]=0},t=self.webpackChunk_jupyterhub_jupyter_server_proxy=self.webpackChunk_jupyterhub_jupyter_server_proxy||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})();var S=w(585);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB)["@jupyterhub/jupyter-server-proxy"]=S})();

Possible cause

Looks like the build environment used a prerelease version of JupyterLab: see the log for Build dist here:

https://github.com/jupyterhub/jupyter-server-proxy/actions/runs/23869492935/job/69597435514

asset remoteEntry.e3e4d0a8cd0a53aac60c.js 6.67 KiB [emitted] [immutable] [minimized] (name: @jupyterhub/jupyter-server-proxy)
asset 961.542dccb965db1a45defb.js?v=542dccb965db1a45defb 2.45 KiB [emitted] [immutable] [minimized]
asset third-party-licenses.json 20 bytes [emitted]
runtime modules 17.2 KiB 11 modules
orphan modules 1.59 KiB [orphan] 1 module
built modules 252 bytes (consume-shared) 10.8 KiB (javascript) 42 bytes (share-init) [built]
  consume-shared-module modules 252 bytes
    consume shared module (default) @jupyterlab/application@^4.6.0-alpha...(truncated) 42 bytes [built] [code generated]
    consume shared module (default) @jupyterlab/apputils@^4.7.0-alpha.4 (singleton) 42 bytes [built] [code generated]
    consume shared module (default) @jupyterlab/coreutils@^6.6.0-alpha.4 (singleton) 42 bytes [built] [code generated]
    consume shared module (default) @jupyterlab/filebrowser@^4.6.0-alpha...(truncated) 42 bytes [built] [code generated]
    consume shared module (default) @jupyterlab/launcher@^4.6.0-alpha.4 (singleton) 42 bytes [built] [code generated]
    consume shared module (default) @jupyterlab/services@^7.6.0-alpha.4 (singleton) 42 bytes [built] [code generated]
  javascript modules 10.8 KiB
    container entry 42 bytes [built] [code generated]
    ./lib/index.js + 1 modules 10.8 KiB [built] [code generated]
  provide shared module (default) @jupyterhub/jupyter-server-proxy@4.5.0 = ...(truncated) 42 bytes [built] [code generated]
webpack 5.105.4 compiled successfully in 458 ms

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions