@@ -56,6 +56,14 @@ export abstract class PyodideRemoteKernel {
56
56
}
57
57
this . _pyodide = await loadPyodide ( {
58
58
indexURL : indexUrl ,
59
+ stdout : ( text : string ) => {
60
+ console . log ( text ) ;
61
+ this . _logMessage ( { type : 'text' , level : 'info' , data : text } ) ;
62
+ } ,
63
+ stderr : ( text : string ) => {
64
+ console . error ( text ) ;
65
+ this . _logMessage ( { type : 'text' , level : 'critical' , data : text } ) ;
66
+ } ,
59
67
...options . loadPyodideOptions ,
60
68
} ) ;
61
69
// @ts -expect-error: pyodide._api is private
@@ -76,29 +84,6 @@ ${e.stack}`;
76
84
data : error ,
77
85
} ) ;
78
86
} ;
79
-
80
- const log = ( msg : string ) => {
81
- console . log ( msg ) ;
82
- this . _logMessage ( { type : 'text' , level : 'info' , data : msg } ) ;
83
- } ;
84
-
85
- const err = ( msg : string ) => {
86
- console . error ( msg ) ;
87
- this . _logMessage ( { type : 'text' , level : 'critical' , data : msg } ) ;
88
- } ;
89
-
90
- // Workaround for being able to get information about packages being loaded by Pyodide
91
- // See discussion in https://github.com/pyodide/pyodide/discussions/5512
92
- const origLoadPackage = this . _pyodide . loadPackage ;
93
- this . _pyodide . loadPackage = ( pkgs , options ) =>
94
- origLoadPackage ( pkgs , {
95
- // Use custom callbacks to surface messages from Pyodide
96
- messageCallback : ( msg : string ) => log ( msg ) ,
97
- errorCallback : ( msg : string ) => {
98
- err ( msg ) ;
99
- } ,
100
- ...options ,
101
- } ) ;
102
87
}
103
88
104
89
protected async initPackageManager (
0 commit comments