diff --git a/jupyter_server/services/kernels/kernelmanager.py b/jupyter_server/services/kernels/kernelmanager.py index 2e3c4a1a6..bcdc8d11f 100644 --- a/jupyter_server/services/kernels/kernelmanager.py +++ b/jupyter_server/services/kernels/kernelmanager.py @@ -723,7 +723,10 @@ def _default_default_kernel_name(self): @observe("default_kernel_name") def _observe_default_kernel_name(self, change): - if hasattr(self.kernel_spec_manager, "default_kernel_name"): + if ( + hasattr(self.kernel_spec_manager, "default_kernel_name") + and self.kernel_spec_manager.default_kernel_name + ): # If the kernel spec manager defines a default kernel name, treat that # one as authoritative. kernel_name = change.new @@ -740,6 +743,8 @@ def _observe_default_kernel_name(self, change): def _on_kernel_spec_manager_default_kernel_name_changed(self, change): # Sync the kernel-spec-manager's trait to the multi-kernel-manager's trait. kernel_name = change.new + if kernel_name is None: + return self.log.debug(f"KernelSpecManager default kernel name changed: {kernel_name}") self.default_kernel_name = kernel_name