Skip to content

Commit 7f5440d

Browse files
committed
Fix initialization
1 parent 1ffe307 commit 7f5440d

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

jupyter_server/serverapp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1564,7 +1564,7 @@ def init_terminals(self):
15641564

15651565
try:
15661566
from .terminal import initialize
1567-
initialize(server_app=self)
1567+
initialize(self.web_app, self.root_dir, self.connection_url, self.terminado_settings)
15681568
self.terminals_available = True
15691569
except ImportError as e:
15701570
self.log.warning(_i18n("Terminals not available (error was %s)"), e)

jupyter_server/terminal/__init__.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@
1414
from .terminalmanager import TerminalManager
1515

1616

17-
def initialize(server_app):
17+
def initialize(webapp, root_dir, connection_url, settings):
1818
if os.name == 'nt':
1919
default_shell = 'powershell.exe'
2020
else:
2121
default_shell = which('sh')
22-
shell_override = server_app.terminado_settings.get('shell_command')
22+
shell_override = settings.get('shell_command')
2323
shell = (
2424
[os.environ.get('SHELL') or default_shell]
2525
if shell_override is None
@@ -32,19 +32,20 @@ def initialize(server_app):
3232
# the user has specifically set a preferred shell command.
3333
if os.name != 'nt' and shell_override is None and not sys.stdout.isatty():
3434
shell.append('-l')
35-
terminal_manager = server_app.web_app.settings['terminal_manager'] = TerminalManager(
35+
terminal_manager = webapp.settings['terminal_manager'] = TerminalManager(
3636
shell_command=shell,
37-
extra_env={'JUPYTER_SERVER_ROOT': server_app.root_dir,
38-
'JUPYTER_SERVER_URL': server_app.connection_url,
37+
extra_env={'JUPYTER_SERVER_ROOT': root_dir,
38+
'JUPYTER_SERVER_URL': connection_url,
3939
},
40-
parent=server_app,
40+
parent=webapp.settings['serverapp'],
4141
)
42-
terminal_manager.log = server_app.log
43-
base_url = server_app.web_app.settings['base_url']
42+
terminal_manager.log = webapp.settings['serverapp'].log
43+
base_url = webapp.settings['base_url']
4444
handlers = [
45+
(ujoin(base_url, r"/terminals/(\w+)"), TerminalHandler),
4546
(ujoin(base_url, r"/terminals/websocket/(\w+)"), TermSocket,
4647
{'term_manager': terminal_manager}),
4748
(ujoin(base_url, r"/api/terminals"), api_handlers.TerminalRootHandler),
4849
(ujoin(base_url, r"/api/terminals/(\w+)"), api_handlers.TerminalHandler),
4950
]
50-
server_app.web_app.add_handlers(".*$", handlers)
51+
webapp.add_handlers(".*$", handlers)

jupyter_server/terminal/terminalmanager.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,18 @@
66
# Copyright (c) Jupyter Development Team.
77
# Distributed under the terms of the Modified BSD License.
88

9-
import warnings
9+
import terminado
1010

1111
from datetime import timedelta
1212
from jupyter_server._tz import utcnow, isoformat
13-
from terminado import NamedTermManager
1413
from tornado import web
1514
from tornado.ioloop import IOLoop, PeriodicCallback
16-
from traitlets import Integer, validate
15+
from traitlets import Integer
1716
from traitlets.config import LoggingConfigurable
1817
from ..prometheus.metrics import TERMINAL_CURRENTLY_RUNNING_TOTAL
1918

2019

21-
class TerminalManager(LoggingConfigurable, NamedTermManager):
20+
class TerminalManager(LoggingConfigurable, terminado.NamedTermManager):
2221
""" """
2322

2423
_culler_callback = None

0 commit comments

Comments
 (0)