Skip to content

Commit b4c8632

Browse files
authored
Merge pull request #338 from kevin-bates/fix-maybe-future
Use appropriate maybe-future to handle asyncio futures
2 parents 6936a3d + 90b4834 commit b4c8632

File tree

3 files changed

+6
-7
lines changed

3 files changed

+6
-7
lines changed

.travis.yml

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,10 @@ dist: xenial # required for Python >= 3.7
22
sudo: false
33
language: python
44
python:
5-
- 2.7
6-
- 3.4
75
- 3.5
86
- 3.6
97
- 3.7
8+
- 3.8
109

1110
env:
1211
- ASYNC_TEST_TIMEOUT=10

kernel_gateway/services/kernels/manager.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from functools import partial
66
from tornado import gen, ioloop
77
from notebook.services.kernels.kernelmanager import MappingKernelManager
8+
from notebook.utils import maybe_future
89
from jupyter_client.ioloop import IOLoopKernelManager
910

1011
class SeedingMappingKernelManager(MappingKernelManager):
@@ -78,7 +79,7 @@ def start_kernel(self, *args, **kwargs):
7879
"""
7980
if self.parent.force_kernel_name:
8081
kwargs['kernel_name'] = self.parent.force_kernel_name
81-
kernel_id = yield gen.maybe_future(super(SeedingMappingKernelManager, self).start_kernel(*args, **kwargs))
82+
kernel_id = yield maybe_future(super(SeedingMappingKernelManager, self).start_kernel(*args, **kwargs))
8283

8384
if kernel_id and self.seed_source is not None:
8485
# Only run source if the kernel spec matches the notebook kernel spec

kernel_gateway/services/sessions/sessionmanager.py

+3-4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"""Session manager that keeps all its metadata in memory."""
44

55
import uuid
6+
from notebook.utils import maybe_future
67
from tornado import web, gen
78
from traitlets.config.configurable import LoggingConfigurable
89
from ipython_genutils.py3compat import unicode_type
@@ -71,10 +72,8 @@ def create_session(self, path=None, kernel_name=None, kernel_id=None, *args, **k
7172
"""
7273
session_id = self.new_session_id()
7374
# allow nbm to specify kernels cwd
74-
kernel_id = yield gen.maybe_future(self.kernel_manager.start_kernel(path=path,
75-
kernel_name=kernel_name))
76-
raise gen.Return(self.save_session(session_id, path=path,
77-
kernel_id=kernel_id))
75+
kernel_id = yield maybe_future(self.kernel_manager.start_kernel(path=path, kernel_name=kernel_name))
76+
raise gen.Return(self.save_session(session_id, path=path, kernel_id=kernel_id))
7877

7978
def save_session(self, session_id, path=None, kernel_id=None, *args, **kwargs):
8079
"""Saves the metadata for the session with the given `session_id`.

0 commit comments

Comments
 (0)