|
75 | 75 |
|
76 | 76 | from .base.handlers import Template404, RedirectWithParams |
77 | 77 | from .log import log_request |
78 | | -from .services.kernels.kernelmanager import MappingKernelManager |
| 78 | +from .services.kernels.kernelmanager import MappingKernelManager, AsyncMappingKernelManager, MappingKernelManagerBase |
79 | 79 | from .services.config import ConfigManager |
80 | 80 | from .services.contents.manager import ContentsManager |
81 | 81 | from .services.contents.filemanager import FileContentsManager |
@@ -1177,6 +1177,7 @@ def _update_mathjax_config(self, change): |
1177 | 1177 |
|
1178 | 1178 | kernel_manager_class = Type( |
1179 | 1179 | default_value=MappingKernelManager, |
| 1180 | + klass=MappingKernelManagerBase, |
1180 | 1181 | config=True, |
1181 | 1182 | help=_('The kernel manager class to use.') |
1182 | 1183 | ) |
@@ -1380,6 +1381,13 @@ def init_configurables(self): |
1380 | 1381 | connection_dir=self.runtime_dir, |
1381 | 1382 | kernel_spec_manager=self.kernel_spec_manager, |
1382 | 1383 | ) |
| 1384 | + # Ensure the appropriate jupyter_client is in place. |
| 1385 | + # TODO: remove once dependencies are updated. |
| 1386 | + if isinstance(self.kernel_manager, AsyncMappingKernelManager): |
| 1387 | + if not hasattr(self.kernel_manager, 'list_kernel_ids'): |
| 1388 | + raise RuntimeError("Using `AsyncMappingKernelManager` without an appropriate " |
| 1389 | + "jupyter_client installed! Upgrade jupyter_client and try again.") |
| 1390 | + |
1383 | 1391 | self.contents_manager = self.contents_manager_class( |
1384 | 1392 | parent=self, |
1385 | 1393 | log=self.log, |
@@ -1897,8 +1905,8 @@ def launch_browser(self): |
1897 | 1905 | assembled_url = urljoin('file:', pathname2url(open_file)) |
1898 | 1906 | else: |
1899 | 1907 | assembled_url = url_path_join(self.connection_url, uri) |
1900 | | - |
1901 | | - b = lambda: browser.open(assembled_url, new=self.webbrowser_open_new) |
| 1908 | + |
| 1909 | + b = lambda: browser.open(assembled_url, new=self.webbrowser_open_new) |
1902 | 1910 | threading.Thread(target=b).start() |
1903 | 1911 |
|
1904 | 1912 | def start(self): |
|
0 commit comments