@jupyterlite/pyodide-kernel 0.5.0-alpha.0 → 0.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/_pypi.d.ts +2 -2
- package/lib/_pypi.js +2 -2
- package/lib/coincident.worker.js +4 -4
- package/lib/coincident.worker.js.map +2 -2
- package/lib/comlink.worker.js +1 -1
- package/lib/comlink.worker.js.map +2 -2
- package/lib/worker.js +2 -2
- package/package.json +4 -4
- package/pypi/all.json +33 -33
- package/pypi/ipykernel-6.9.2-py3-none-any.whl +0 -0
- package/pypi/piplite-0.5.0b0-py3-none-any.whl +0 -0
- package/pypi/{pyodide_kernel-0.5.0a0-py3-none-any.whl → pyodide_kernel-0.5.0b0-py3-none-any.whl} +0 -0
- package/pypi/widgetsnbextension-3.6.999-py3-none-any.whl +0 -0
- package/pypi/widgetsnbextension-4.0.999-py3-none-any.whl +0 -0
- package/pypi/piplite-0.5.0a0-py3-none-any.whl +0 -0
package/lib/comlink.worker.js
CHANGED
|
@@ -9,7 +9,7 @@ var Ni=Object.create;var Ge=Object.defineProperty;var qi=Object.getOwnPropertyDe
|
|
|
9
9
|
piplite.piplite._PIPLITE_DISABLE_PYPI = ${n?"True":"False"}
|
|
10
10
|
piplite.piplite._PIPLITE_URLS = ${JSON.stringify(a)}
|
|
11
11
|
`)}async initKernel(e){let t=(e.loadPyodideOptions||{}).packages||[],n=["ssl","sqlite3","ipykernel","comm","pyodide_kernel","ipython"],a=[];for(let r of n)t.includes(r)||a.push(`await piplite.install('${r}', keep_going=True)`);a.push("import pyodide_kernel"),e.mountDrive&&this._localPath&&a.push("import os",`os.chdir("${this._localPath}")`),await this._pyodide.runPythonAsync(a.join(`
|
|
12
|
-
`))}async initGlobals(e){let{globals:t}=this._pyodide;this._kernel=t.get("pyodide_kernel").kernel_instance.copy(),this._stdout_stream=t.get("pyodide_kernel").stdout_stream.copy(),this._stderr_stream=t.get("pyodide_kernel").stderr_stream.copy(),this._interpreter=this._kernel.interpreter.copy(),this._interpreter.send_comm=this.sendComm.bind(this)}async initFilesystem(e){if(e.mountDrive){let t="/drive",{FS:n,PATH:a,ERRNO_CODES:r}=this._pyodide,{baseUrl:s}=e,{DriveFS:c}=await Promise.resolve().then(()=>(ht(),Ri)),u=new c({FS:n,PATH:a,ERRNO_CODES:r,baseUrl:s,driveName:this._driveName,mountpoint:t});n.
|
|
12
|
+
`))}async initGlobals(e){let{globals:t}=this._pyodide;this._kernel=t.get("pyodide_kernel").kernel_instance.copy(),this._stdout_stream=t.get("pyodide_kernel").stdout_stream.copy(),this._stderr_stream=t.get("pyodide_kernel").stderr_stream.copy(),this._interpreter=this._kernel.interpreter.copy(),this._interpreter.send_comm=this.sendComm.bind(this)}async initFilesystem(e){if(e.mountDrive){let t="/drive",{FS:n,PATH:a,ERRNO_CODES:r}=this._pyodide,{baseUrl:s}=e,{DriveFS:c}=await Promise.resolve().then(()=>(ht(),Ri)),u=new c({FS:n,PATH:a,ERRNO_CODES:r,baseUrl:s,driveName:this._driveName,mountpoint:t});n.mkdirTree(t),n.mount(u,{},t),n.chdir(t),this._driveFS=u}}mapToObject(e){let t=e instanceof Array?[]:{};return e.forEach((n,a)=>{t[a]=n instanceof Map||n instanceof Array?this.mapToObject(n):n}),t}formatResult(e){if(!(e instanceof this._pyodide.ffi.PyProxy))return e;let t=e.toJs();return this.mapToObject(t)}registerCallback(e){this._sendWorkerMessage=e}async setup(e){await this._initialized,this._kernel._parent_header=this._pyodide.toPy(e)}async execute(e,t){await this.setup(t);let n=(o,p,_)=>{let w={execution_count:o,data:this.formatResult(p),metadata:this.formatResult(_)};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:w,type:"execute_result"})},a=(o,p,_)=>{let w={ename:o,evalue:p,traceback:_};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:w,type:"execute_error"})},r=o=>{let p={wait:this.formatResult(o)};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:p,type:"clear_output"})},s=(o,p,_)=>{let w={data:this.formatResult(o),metadata:this.formatResult(p),transient:this.formatResult(_)};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:w,type:"display_data"})},c=(o,p,_)=>{let w={data:this.formatResult(o),metadata:this.formatResult(p),transient:this.formatResult(_)};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:w,type:"update_display_data"})},u=(o,p)=>{let _={name:this.formatResult(o),text:this.formatResult(p)};this._sendWorkerMessage({parentHeader:this.formatResult(this._kernel._parent_header).header,bundle:_,type:"stream"})};this._stdout_stream.publish_stream_callback=u,this._stderr_stream.publish_stream_callback=u,this._interpreter.display_pub.clear_output_callback=r,this._interpreter.display_pub.display_data_callback=s,this._interpreter.display_pub.update_display_data_callback=c,this._interpreter.displayhook.publish_execution_result=n,this._interpreter.input=this.input.bind(this),this._interpreter.getpass=this.getpass.bind(this);let d=await this._kernel.run(e.code),l=this.formatResult(d);return l.status==="error"&&a(l.ename,l.evalue,l.traceback),l}async complete(e,t){await this.setup(t);let n=this._kernel.complete(e.code,e.cursor_pos);return this.formatResult(n)}async inspect(e,t){await this.setup(t);let n=this._kernel.inspect(e.code,e.cursor_pos,e.detail_level);return this.formatResult(n)}async isComplete(e,t){await this.setup(t);let n=this._kernel.is_complete(e.code);return this.formatResult(n)}async commInfo(e,t){await this.setup(t);let n=this._kernel.comm_info(e.target_name);return{comms:this.formatResult(n),status:"ok"}}async commOpen(e,t){await this.setup(t);let n=this._kernel.comm_manager.comm_open(this._pyodide.toPy(null),this._pyodide.toPy(null),this._pyodide.toPy(e));return this.formatResult(n)}async commMsg(e,t){await this.setup(t);let n=this._kernel.comm_manager.comm_msg(this._pyodide.toPy(null),this._pyodide.toPy(null),this._pyodide.toPy(e));return this.formatResult(n)}async commClose(e,t){await this.setup(t);let n=this._kernel.comm_manager.comm_close(this._pyodide.toPy(null),this._pyodide.toPy(null),this._pyodide.toPy(e));return this.formatResult(n)}async inputReply(e,t){await this.setup(t),this._resolveInputReply(e)}async sendInputRequest(e,t){let n={prompt:e,password:t};this._sendWorkerMessage({type:"input_request",parentHeader:this.formatResult(this._kernel._parent_header).header,content:n})}async getpass(e){return e=typeof e=="undefined"?"":e,await this.sendInputRequest(e,!0),(await new Promise(a=>{this._resolveInputReply=a})).value}async input(e){return e=typeof e=="undefined"?"":e,await this.sendInputRequest(e,!1),(await new Promise(a=>{this._resolveInputReply=a})).value}async sendComm(e,t,n,a,r){this._sendWorkerMessage({type:e,content:this.formatResult(t),metadata:this.formatResult(n),ident:this.formatResult(a),buffers:this.formatResult(r),parentHeader:this.formatResult(this._kernel._parent_header).header})}};var vt=class extends we{createAPI(e){return new fe(e.baseUrl,e.driveName,e.mountpoint,e.FS,e.ERRNO_CODES)}},gt=class extends Je{constructor(){super(),this._sendWorkerMessage=e=>{postMessage({_kernelMessage:e})}}async initFilesystem(e){if(e.mountDrive){let t="/drive",{FS:n,PATH:a,ERRNO_CODES:r}=this._pyodide,{baseUrl:s}=e,c=new vt({FS:n,PATH:a,ERRNO_CODES:r,baseUrl:s,driveName:this._driveName,mountpoint:t});n.mkdirTree(t),n.mount(c,{},t),n.chdir(t),this._driveFS=c}}},Rn=new gt;je(Rn);export{gt as PyodideComlinkKernel};
|
|
13
13
|
/*! Bundled license information:
|
|
14
14
|
|
|
15
15
|
comlink/dist/esm/comlink.mjs:
|