diff --git a/gns3server/controller/project.py b/gns3server/controller/project.py index c71ce360..3cf17af8 100644 --- a/gns3server/controller/project.py +++ b/gns3server/controller/project.py @@ -675,7 +675,10 @@ class Project: self._loading = False # Should we start the nodes when project is open if self._auto_start: - yield from self.start_all() + # Start all in the background without waiting for completion + # we ignore errors because we want to let the user open + # their project and fix it + asyncio.async(self.start_all()) @asyncio.coroutine def wait_loaded(self): diff --git a/tests/utils.py b/tests/utils.py index 3c638d52..a818462a 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -18,6 +18,7 @@ import io import asyncio import unittest.mock +import collections.abc class _asyncio_patch: @@ -69,6 +70,7 @@ class AsyncioMagicMock(unittest.mock.MagicMock): """ Magic mock returning coroutine """ + __class__ = collections.abc.Awaitable def __init__(self, return_value=None, return_values=None, **kwargs): """