diff --git a/pyjs_code_runner/backend/browser_main/browser_main.py b/pyjs_code_runner/backend/browser_main/browser_main.py index 240ee4b..88d1a74 100644 --- a/pyjs_code_runner/backend/browser_main/browser_main.py +++ b/pyjs_code_runner/backend/browser_main/browser_main.py @@ -75,7 +75,7 @@ async def handle_console(msg): collected_prints += "\\n"; }} - var pyjs = await make_pyjs(print,print); + var pyjs = await make_pyjs(print,print, true); var r = globalThis.eval_main_script(pyjs, "{self.work_dir}","{self.script}"); if({int(self.async_main)}){{ diff --git a/pyjs_code_runner/backend/browser_worker/browser_worker.py b/pyjs_code_runner/backend/browser_worker/browser_worker.py index 1a9d527..1e7a965 100644 --- a/pyjs_code_runner/backend/browser_worker/browser_worker.py +++ b/pyjs_code_runner/backend/browser_worker/browser_worker.py @@ -10,7 +10,7 @@ class BrowserWorkerBackend(BackendBase): def __init__( - self, host_work_dir, work_dir, script, async_main, port, headless, slow_mo + self, host_work_dir, work_dir, script, async_main, port, headless, slow_mo, preload_shared_libs=True ): super().__init__( host_work_dir=host_work_dir, @@ -23,6 +23,7 @@ def __init__( self.port = port self.headless = headless self.slow_mo = slow_mo + self.preload_shared_libs = preload_shared_libs def run(self): # copy html @@ -73,7 +74,7 @@ async def handle_worker(worker): }} - var pyjs = await make_pyjs(print, print); + var pyjs = await make_pyjs(print, print, {str(self.preload_shared_libs).lower()}); var r = eval_main_script(pyjs, "{self.work_dir}","{self.script}"); if({int(self.async_main)}){{ diff --git a/pyjs_code_runner/js/utils.js b/pyjs_code_runner/js/utils.js index 4adb5c6..f576f62 100644 --- a/pyjs_code_runner/js/utils.js +++ b/pyjs_code_runner/js/utils.js @@ -17,13 +17,14 @@ async function fetchMounts(pyjs) { } -async function make_pyjs(print, error) { +async function make_pyjs(print, error, preload_load_shared_libs=true) { var pyjs = await createModule({ print: print, error: print }) await pyjs.bootstrap_from_empack_packed_environment( `./empack_env_meta.json`, /* packages_json_url */ ".", /* package_tarballs_root_url */ - false /* verbose */ + false, /* verbose */ + !preload_load_shared_libs /* skip_loading_shared_libs */ ); globalThis.pyjs = pyjs return pyjs diff --git a/test/conftest.py b/test/conftest.py index 607a0f8..790af44 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -57,5 +57,5 @@ def em_work_dir(): @pytest.fixture def runner(): - runner = CliRunner(mix_stderr=True) + runner = CliRunner() return runner