diff --git a/gns3-server-2.0.3-add-support-for-old-aiohttp-pkg.patch b/gns3-server-2.0.3-add-support-for-old-aiohttp-pkg.patch
new file mode 100644
index 0000000..1c922bb
--- /dev/null
+++ b/gns3-server-2.0.3-add-support-for-old-aiohttp-pkg.patch
@@ -0,0 +1,938 @@
+diff -ru gns3-server-2.0.3/gns3server/compute/base_manager.py gns3-server-2.0.3.patched/gns3server/compute/base_manager.py
+--- gns3-server-2.0.3/gns3server/compute/base_manager.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/base_manager.py 2017-07-23 16:23:27.861575069 +0100
+@@ -20,7 +20,7 @@
+ import struct
+ import stat
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import socket
+ import shutil
+ import re
+diff -ru gns3-server-2.0.3/gns3server/compute/base_node.py gns3-server-2.0.3.patched/gns3server/compute/base_node.py
+--- gns3-server-2.0.3/gns3server/compute/base_node.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/base_node.py 2017-07-23 16:23:27.850574808 +0100
+@@ -19,7 +19,7 @@
+ import os
+ import stat
+ import logging
+-import aiohttp
++import aiohttp13 as aiohttp
+ import shutil
+ import asyncio
+ import tempfile
+diff -ru gns3-server-2.0.3/gns3server/compute/docker/docker_vm.py gns3-server-2.0.3.patched/gns3server/compute/docker/docker_vm.py
+--- gns3-server-2.0.3/gns3server/compute/docker/docker_vm.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/docker/docker_vm.py 2017-07-23 16:23:27.859575022 +0100
+@@ -23,7 +23,7 @@
+ import shutil
+ import psutil
+ import shlex
+-import aiohttp
++import aiohttp13 as aiohttp
+ import os
+
+ from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer
+diff -ru gns3-server-2.0.3/gns3server/compute/docker/__init__.py gns3-server-2.0.3.patched/gns3server/compute/docker/__init__.py
+--- gns3-server-2.0.3/gns3server/compute/docker/__init__.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/docker/__init__.py 2017-07-23 16:23:27.856574950 +0100
+@@ -23,7 +23,7 @@
+ import json
+ import asyncio
+ import logging
+-import aiohttp
++import aiohttp13 as aiohttp
+ from gns3server.utils import parse_version
+ from gns3server.utils.asyncio import locked_coroutine
+ from gns3server.compute.base_manager import BaseManager
+diff -ru gns3-server-2.0.3/gns3server/compute/dynamips/__init__.py gns3-server-2.0.3.patched/gns3server/compute/dynamips/__init__.py
+--- gns3-server-2.0.3/gns3server/compute/dynamips/__init__.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/dynamips/__init__.py 2017-07-23 16:23:27.855574927 +0100
+@@ -19,7 +19,7 @@
+ Dynamips server module.
+ """
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import sys
+ import os
+ import shutil
+diff -ru gns3-server-2.0.3/gns3server/compute/port_manager.py gns3-server-2.0.3.patched/gns3server/compute/port_manager.py
+--- gns3-server-2.0.3/gns3server/compute/port_manager.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/port_manager.py 2017-07-23 16:22:18.875938586 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import socket
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from gns3server.config import Config
+
+ import logging
+diff -ru gns3-server-2.0.3/gns3server/compute/project_manager.py gns3-server-2.0.3.patched/gns3server/compute/project_manager.py
+--- gns3-server-2.0.3/gns3server/compute/project_manager.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/project_manager.py 2017-07-23 16:23:27.852574855 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ from .project import Project
+ from uuid import UUID
+
+diff -ru gns3-server-2.0.3/gns3server/compute/project.py gns3-server-2.0.3.patched/gns3server/compute/project.py
+--- gns3-server-2.0.3/gns3server/compute/project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/compute/project.py 2017-07-23 16:23:27.847574737 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-import aiohttp
++import aiohttp13 as aiohttp
+ import shutil
+ import asyncio
+ import hashlib
+diff -ru gns3-server-2.0.3/gns3server/controller/compute.py gns3-server-2.0.3.patched/gns3server/controller/compute.py
+--- gns3-server-2.0.3/gns3server/controller/compute.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/compute.py 2017-07-23 16:23:27.911576255 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import ipaddress
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import socket
+ import json
+diff -ru gns3-server-2.0.3/gns3server/controller/export_project.py gns3-server-2.0.3.patched/gns3server/controller/export_project.py
+--- gns3-server-2.0.3/gns3server/controller/export_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/export_project.py 2017-07-23 16:23:27.902576042 +0100
+@@ -18,7 +18,7 @@
+ import os
+ import json
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import zipfile
+ import tempfile
+ import zipstream
+diff -ru gns3-server-2.0.3/gns3server/controller/gns3vm/__init__.py gns3-server-2.0.3.patched/gns3server/controller/gns3vm/__init__.py
+--- gns3-server-2.0.3/gns3server/controller/gns3vm/__init__.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/gns3vm/__init__.py 2017-07-23 16:23:27.885575638 +0100
+@@ -18,7 +18,7 @@
+ import sys
+ import copy
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from ...utils.asyncio import locked_coroutine
+ from .vmware_gns3_vm import VMwareGNS3VM
+diff -ru gns3-server-2.0.3/gns3server/controller/gns3vm/virtualbox_gns3_vm.py gns3-server-2.0.3.patched/gns3server/controller/gns3vm/virtualbox_gns3_vm.py
+--- gns3-server-2.0.3/gns3server/controller/gns3vm/virtualbox_gns3_vm.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/gns3vm/virtualbox_gns3_vm.py 2017-07-23 16:23:27.887575686 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import json.decoder
+-import aiohttp
++import aiohttp13 as aiohttp
+ import logging
+ import asyncio
+ import socket
+diff -ru gns3-server-2.0.3/gns3server/controller/import_project.py gns3-server-2.0.3.patched/gns3server/controller/import_project.py
+--- gns3-server-2.0.3/gns3server/controller/import_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/import_project.py 2017-07-23 16:23:27.889575733 +0100
+@@ -22,7 +22,7 @@
+ import shutil
+ import asyncio
+ import zipfile
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from .topology import load_topology
+
+diff -ru gns3-server-2.0.3/gns3server/controller/__init__.py gns3-server-2.0.3.patched/gns3server/controller/__init__.py
+--- gns3-server-2.0.3/gns3server/controller/__init__.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/__init__.py 2017-07-23 16:23:27.896575899 +0100
+@@ -21,7 +21,7 @@
+ import uuid
+ import socket
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from ..config import Config
+ from .project import Project
+diff -ru gns3-server-2.0.3/gns3server/controller/link.py gns3-server-2.0.3.patched/gns3server/controller/link.py
+--- gns3-server-2.0.3/gns3server/controller/link.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/link.py 2017-07-23 16:23:27.900575994 +0100
+@@ -20,7 +20,7 @@
+ import uuid
+ import html
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ import logging
+ log = logging.getLogger(__name__)
+diff -ru gns3-server-2.0.3/gns3server/controller/node.py gns3-server-2.0.3.patched/gns3server/controller/node.py
+--- gns3-server-2.0.3/gns3server/controller/node.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/node.py 2017-07-23 16:23:27.891575781 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import html
+ import copy
+diff -ru gns3-server-2.0.3/gns3server/controller/notification.py gns3-server-2.0.3.patched/gns3server/controller/notification.py
+--- gns3-server-2.0.3/gns3server/controller/notification.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/notification.py 2017-07-23 16:23:27.907576160 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ from contextlib import contextmanager
+
+diff -ru gns3-server-2.0.3/gns3server/controller/ports/port_factory.py gns3-server-2.0.3.patched/gns3server/controller/ports/port_factory.py
+--- gns3-server-2.0.3/gns3server/controller/ports/port_factory.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/ports/port_factory.py 2017-07-23 16:23:27.898575947 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from .atm_port import ATMPort
+ from .frame_relay_port import FrameRelayPort
+diff -ru gns3-server-2.0.3/gns3server/controller/project.py gns3-server-2.0.3.patched/gns3server/controller/project.py
+--- gns3-server-2.0.3/gns3server/controller/project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/project.py 2017-07-23 16:23:27.894575852 +0100
+@@ -21,7 +21,7 @@
+ import uuid
+ import shutil
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import tempfile
+
+ from uuid import UUID, uuid4
+diff -ru gns3-server-2.0.3/gns3server/controller/snapshot.py gns3-server-2.0.3.patched/gns3server/controller/snapshot.py
+--- gns3-server-2.0.3/gns3server/controller/snapshot.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/snapshot.py 2017-07-23 17:07:35.094495407 +0100
+@@ -20,7 +20,7 @@
+ import uuid
+ import shutil
+ import asyncio
+-import aiohttp.web
++import aiohttp13.web
+ from datetime import datetime, timezone
+
+
+@@ -87,7 +87,7 @@
+ with open(self._path, "rb") as f:
+ project = yield from import_project(self._project.controller, self._project.id, f, location=self._project.path)
+ except (OSError, PermissionError) as e:
+- raise aiohttp.web.HTTPConflict(text=str(e))
++ raise aiohttp13.web.HTTPConflict(text=str(e))
+ yield from project.open()
+ return project
+
+diff -ru gns3-server-2.0.3/gns3server/controller/topology.py gns3-server-2.0.3.patched/gns3server/controller/topology.py
+--- gns3-server-2.0.3/gns3server/controller/topology.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/topology.py 2017-07-23 16:23:27.909576208 +0100
+@@ -23,7 +23,7 @@
+ import glob
+ import shutil
+ import zipfile
+-import aiohttp
++import aiohttp13 as aiohttp
+ import jsonschema
+
+
+diff -ru gns3-server-2.0.3/gns3server/controller/udp_link.py gns3-server-2.0.3.patched/gns3server/controller/udp_link.py
+--- gns3-server-2.0.3/gns3server/controller/udp_link.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/controller/udp_link.py 2017-07-23 16:23:27.905576113 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+
+
+ from .link import Link
+diff -ru gns3-server-2.0.3/gns3server/crash_report.py gns3-server-2.0.3.patched/gns3server/crash_report.py
+--- gns3-server-2.0.3/gns3server/crash_report.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/crash_report.py 2017-07-23 16:23:27.843574642 +0100
+@@ -18,7 +18,7 @@
+ import os
+ import sys
+ import struct
+-import aiohttp
++import aiohttp13 as aiohttp
+ import platform
+
+
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/capabilities_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/capabilities_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/capabilities_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/capabilities_handler.py 2017-07-23 16:22:18.891938965 +0100
+@@ -22,7 +22,7 @@
+ from gns3server.schemas.capabilities import CAPABILITIES_SCHEMA
+ from gns3server.version import __version__
+ from gns3server.compute import MODULES
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+
+
+ class CapabilitiesHandler:
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/docker_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/docker_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/docker_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/docker_handler.py 2017-07-23 16:22:18.890938942 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+
+ from gns3server.web.route import Route
+ from gns3server.compute.docker import Docker
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/iou_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/iou_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/iou_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/iou_handler.py 2017-07-23 16:22:18.879938681 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+
+ from gns3server.web.route import Route
+ from gns3server.schemas.nio import NIO_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/notification_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/notification_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/notification_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/notification_handler.py 2017-07-23 17:07:48.330809400 +0100
+@@ -16,9 +16,9 @@
+ # along with this program. If not, see .
+
+ import asyncio
+-import aiohttp.errors
++import aiohttp13.errors
+
+-from aiohttp.web import WebSocketResponse
++from aiohttp13.web import WebSocketResponse
+ from gns3server.web.route import Route
+ from gns3server.compute.notification_manager import NotificationManager
+
+@@ -30,7 +30,7 @@
+ """
+ try:
+ yield from ws.receive()
+- except aiohttp.errors.WSServerHandshakeError:
++ except aiohttp13.errors.WSServerHandshakeError:
+ pass
+
+
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/project_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/project_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/project_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/project_handler.py 2017-07-23 16:23:27.865575164 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import json
+ import os
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/qemu_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/qemu_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/qemu_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/qemu_handler.py 2017-07-23 16:22:18.884938799 +0100
+@@ -18,7 +18,7 @@
+ import sys
+ import os.path
+
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+
+ from gns3server.web.route import Route
+ from gns3server.compute.project_manager import ProjectManager
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/server_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/server_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/server_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/server_handler.py 2017-07-23 16:22:18.882938752 +0100
+@@ -24,7 +24,7 @@
+ from gns3server.schemas.version import VERSION_SCHEMA
+ from gns3server.compute.port_manager import PortManager
+ from gns3server.version import __version__
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+
+
+ class ServerHandler:
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/virtualbox_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/virtualbox_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/virtualbox_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/virtualbox_handler.py 2017-07-23 16:22:18.881938728 +0100
+@@ -17,7 +17,7 @@
+
+ import os
+
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from gns3server.web.route import Route
+ from gns3server.schemas.nio import NIO_SCHEMA
+ from gns3server.schemas.node import NODE_CAPTURE_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/vmware_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/vmware_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/vmware_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/vmware_handler.py 2017-07-23 16:22:18.888938894 +0100
+@@ -17,7 +17,7 @@
+
+ import os
+
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from gns3server.web.route import Route
+ from gns3server.schemas.node import NODE_CAPTURE_SCHEMA
+ from gns3server.schemas.nio import NIO_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/compute/vpcs_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/compute/vpcs_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/compute/vpcs_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/compute/vpcs_handler.py 2017-07-23 16:22:18.886938847 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from gns3server.web.route import Route
+ from gns3server.schemas.nio import NIO_SCHEMA
+ from gns3server.schemas.node import NODE_CAPTURE_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/drawing_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/drawing_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/drawing_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/drawing_handler.py 2017-07-23 16:23:27.875575401 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from gns3server.web.route import Route
+ from gns3server.controller import Controller
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/gns3_vm_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/gns3_vm_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/gns3_vm_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/gns3_vm_handler.py 2017-07-23 16:22:18.897939108 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from gns3server.web.route import Route
+ from gns3server.controller import Controller
+ from gns3server.schemas.gns3vm import GNS3VM_SETTINGS_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/link_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/link_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/link_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/link_handler.py 2017-07-23 16:23:27.873575354 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from gns3server.web.route import Route
+ from gns3server.controller import Controller
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/node_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/node_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/node_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/node_handler.py 2017-07-23 16:23:27.871575306 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from gns3server.web.route import Route
+ from gns3server.controller import Controller
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/project_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/project_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/project_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/project_handler.py 2017-07-23 17:07:14.300002118 +0100
+@@ -16,8 +16,8 @@
+ # along with this program. If not, see .
+
+ import os
+-import aiohttp
+-import aiohttp.errors
++import aiohttp13 as aiohttp
++import aiohttp13.errors
+ import asyncio
+ import tempfile
+
+@@ -46,7 +46,7 @@
+ """
+ try:
+ yield from ws.receive()
+- except aiohttp.errors.WSServerHandshakeError:
++ except aiohttp13.errors.WSServerHandshakeError:
+ pass
+
+
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/controller/server_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/controller/server_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/controller/server_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/controller/server_handler.py 2017-07-23 16:22:18.895939060 +0100
+@@ -21,7 +21,7 @@
+ from gns3server.schemas.version import VERSION_SCHEMA
+ from gns3server.version import __version__
+
+-from aiohttp.web import HTTPConflict, HTTPForbidden
++from aiohttp13.web import HTTPConflict, HTTPForbidden
+
+ import os
+ import psutil
+diff -ru gns3-server-2.0.3/gns3server/handlers/api/vpcs_handler.py gns3-server-2.0.3.patched/gns3server/handlers/api/vpcs_handler.py
+--- gns3-server-2.0.3/gns3server/handlers/api/vpcs_handler.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/handlers/api/vpcs_handler.py 2017-07-23 16:22:18.893939013 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-from aiohttp.web import HTTPConflict
++from aiohttp13.web import HTTPConflict
+ from ...web.route import Route
+ from ...schemas.nio import NIO_SCHEMA
+ from ...schemas.vpcs import VPCS_CREATE_SCHEMA
+diff -ru gns3-server-2.0.3/gns3server/utils/interfaces.py gns3-server-2.0.3.patched/gns3server/utils/interfaces.py
+--- gns3-server-2.0.3/gns3server/utils/interfaces.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/utils/interfaces.py 2017-07-23 16:23:27.914576326 +0100
+@@ -18,7 +18,7 @@
+
+ import os
+ import sys
+-import aiohttp
++import aiohttp13 as aiohttp
+ import socket
+ import struct
+ import psutil
+diff -ru gns3-server-2.0.3/gns3server/utils/path.py gns3-server-2.0.3.patched/gns3server/utils/path.py
+--- gns3-server-2.0.3/gns3server/utils/path.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/utils/path.py 2017-07-23 16:23:27.913576303 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import os
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from ..config import Config
+
+diff -ru gns3-server-2.0.3/gns3server/web/response.py gns3-server-2.0.3.patched/gns3server/web/response.py
+--- gns3-server-2.0.3/gns3server/web/response.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/web/response.py 2017-07-23 17:09:29.291204391 +0100
+@@ -17,8 +17,8 @@
+
+ import json
+ import jsonschema
+-import aiohttp
+-import aiohttp.web
++import aiohttp13 as aiohttp
++import aiohttp13.web
+ import mimetypes
+ import asyncio
+ import logging
+@@ -33,7 +33,7 @@
+ renderer = jinja2.Environment(loader=jinja2.FileSystemLoader(get_resource('templates')))
+
+
+-class Response(aiohttp.web.Response):
++class Response(aiohttp13.web.Response):
+
+ def __init__(self, request=None, route=None, output_schema=None, headers={}, **kwargs):
+ self._route = route
+@@ -103,7 +103,7 @@
+ jsonschema.validate(answer, self._output_schema)
+ except jsonschema.ValidationError as e:
+ log.error("Invalid output query. JSON schema error: {}".format(e.message))
+- raise aiohttp.web.HTTPBadRequest(text="{}".format(e))
++ raise aiohttp13.web.HTTPBadRequest(text="{}".format(e))
+ self.body = json.dumps(answer, indent=4, sort_keys=True).encode('utf-8')
+
+ @asyncio.coroutine
+@@ -141,4 +141,4 @@
+
+ :params url: Redirection URL
+ """
+- raise aiohttp.web.HTTPFound(url)
++ raise aiohttp13.web.HTTPFound(url)
+diff -ru gns3-server-2.0.3/gns3server/web/route.py gns3-server-2.0.3.patched/gns3server/web/route.py
+--- gns3-server-2.0.3/gns3server/web/route.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/web/route.py 2017-07-23 16:23:27.876575425 +0100
+@@ -19,7 +19,7 @@
+ import json
+ import urllib
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import logging
+ import traceback
+ import jsonschema
+diff -ru gns3-server-2.0.3/gns3server/web/web_server.py gns3-server-2.0.3.patched/gns3server/web/web_server.py
+--- gns3-server-2.0.3/gns3server/web/web_server.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/gns3server/web/web_server.py 2017-07-23 19:25:56.428519718 +0100
+@@ -23,8 +23,8 @@
+ import sys
+ import signal
+ import asyncio
+-import aiohttp
+-import aiohttp_cors
++import aiohttp13 as aiohttp
++import aiohttp13_aiohttp_cors as aiohttp_cors
+ import functools
+ import time
+ import atexit
+diff -ru gns3-server-2.0.3/scripts/random_query.py gns3-server-2.0.3.patched/scripts/random_query.py
+--- gns3-server-2.0.3/scripts/random_query.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/scripts/random_query.py 2017-07-23 17:10:38.426844432 +0100
+@@ -22,8 +22,8 @@
+ import sys
+ import json
+ import math
+-import aiohttp
+-import aiohttp.web
++import aiohttp13 as aiohttp
++import aiohttp13.web
+ import asyncio
+ import random
+
+diff -ru gns3-server-2.0.3/tests/compute/iou/test_iou_vm.py gns3-server-2.0.3.patched/tests/compute/iou/test_iou_vm.py
+--- gns3-server-2.0.3/tests/compute/iou/test_iou_vm.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/iou/test_iou_vm.py 2017-07-23 16:23:27.925576587 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import os
+ import stat
+diff -ru gns3-server-2.0.3/tests/compute/qemu/test_qemu_vm.py gns3-server-2.0.3.patched/tests/compute/qemu/test_qemu_vm.py
+--- gns3-server-2.0.3/tests/compute/qemu/test_qemu_vm.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/qemu/test_qemu_vm.py 2017-07-23 16:23:27.931576730 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import os
+ import sys
+diff -ru gns3-server-2.0.3/tests/compute/test_base_node.py gns3-server-2.0.3.patched/tests/compute/test_base_node.py
+--- gns3-server-2.0.3/tests/compute/test_base_node.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/test_base_node.py 2017-07-23 16:23:27.921576492 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import os
+ from tests.utils import asyncio_patch
+diff -ru gns3-server-2.0.3/tests/compute/test_port_manager.py gns3-server-2.0.3.patched/tests/compute/test_port_manager.py
+--- gns3-server-2.0.3/tests/compute/test_port_manager.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/test_port_manager.py 2017-07-23 16:23:27.920576469 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+ import sys
+ import uuid
+diff -ru gns3-server-2.0.3/tests/compute/test_project_manager.py gns3-server-2.0.3.patched/tests/compute/test_project_manager.py
+--- gns3-server-2.0.3/tests/compute/test_project_manager.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/test_project_manager.py 2017-07-23 16:23:27.927576635 +0100
+@@ -15,7 +15,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see .
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+ from gns3server.compute.project_manager import ProjectManager
+
+diff -ru gns3-server-2.0.3/tests/compute/test_project.py gns3-server-2.0.3.patched/tests/compute/test_project.py
+--- gns3-server-2.0.3/tests/compute/test_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/test_project.py 2017-07-23 16:23:27.928576658 +0100
+@@ -21,7 +21,7 @@
+ import json
+ import asyncio
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import zipfile
+ from uuid import uuid4
+ from unittest.mock import patch
+diff -ru gns3-server-2.0.3/tests/compute/vpcs/test_vpcs_vm.py gns3-server-2.0.3.patched/tests/compute/vpcs/test_vpcs_vm.py
+--- gns3-server-2.0.3/tests/compute/vpcs/test_vpcs_vm.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/compute/vpcs/test_vpcs_vm.py 2017-07-23 16:23:27.923576540 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ import os
+ import sys
+diff -ru gns3-server-2.0.3/tests/conftest.py gns3-server-2.0.3.patched/tests/conftest.py
+--- gns3-server-2.0.3/tests/conftest.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/conftest.py 2017-07-23 16:22:18.899939155 +0100
+@@ -23,7 +23,7 @@
+ import shutil
+ import os
+ import sys
+-from aiohttp import web
++from aiohttp13 import web
+ from unittest.mock import patch
+
+
+diff -ru gns3-server-2.0.3/tests/controller/test_compute.py gns3-server-2.0.3.patched/tests/controller/test_compute.py
+--- gns3-server-2.0.3/tests/controller/test_compute.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_compute.py 2017-07-23 16:23:27.959577394 +0100
+@@ -19,7 +19,7 @@
+ import json
+ import pytest
+ import socket
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ from unittest.mock import patch, MagicMock
+
+diff -ru gns3-server-2.0.3/tests/controller/test_controller.py gns3-server-2.0.3.patched/tests/controller/test_controller.py
+--- gns3-server-2.0.3/tests/controller/test_controller.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_controller.py 2017-07-23 16:23:27.963577489 +0100
+@@ -20,7 +20,7 @@
+ import json
+ import pytest
+ import socket
+-import aiohttp
++import aiohttp13 as aiohttp
+ from unittest.mock import MagicMock
+ from tests.utils import AsyncioMagicMock, asyncio_patch
+
+diff -ru gns3-server-2.0.3/tests/controller/test_export_project.py gns3-server-2.0.3.patched/tests/controller/test_export_project.py
+--- gns3-server-2.0.3/tests/controller/test_export_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_export_project.py 2017-07-23 16:23:27.969577631 +0100
+@@ -19,7 +19,7 @@
+ import os
+ import json
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import zipfile
+
+ from unittest.mock import patch
+diff -ru gns3-server-2.0.3/tests/controller/test_link.py gns3-server-2.0.3.patched/tests/controller/test_link.py
+--- gns3-server-2.0.3/tests/controller/test_link.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_link.py 2017-07-23 16:23:27.952577228 +0100
+@@ -17,7 +17,7 @@
+
+ import os
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import asyncio
+ from unittest.mock import MagicMock
+
+diff -ru gns3-server-2.0.3/tests/controller/test_node.py gns3-server-2.0.3.patched/tests/controller/test_node.py
+--- gns3-server-2.0.3/tests/controller/test_node.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_node.py 2017-07-23 16:23:27.955577299 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+ import shutil
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+ import uuid
+ import asyncio
+diff -ru gns3-server-2.0.3/tests/controller/test_project_open.py gns3-server-2.0.3.patched/tests/controller/test_project_open.py
+--- gns3-server-2.0.3/tests/controller/test_project_open.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_project_open.py 2017-07-23 16:23:27.957577346 +0100
+@@ -18,7 +18,7 @@
+
+ import json
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from tests.utils import asyncio_patch, AsyncioMagicMock
+
+diff -ru gns3-server-2.0.3/tests/controller/test_project.py gns3-server-2.0.3.patched/tests/controller/test_project.py
+--- gns3-server-2.0.3/tests/controller/test_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_project.py 2017-07-23 16:23:27.967577584 +0100
+@@ -21,7 +21,7 @@
+ import uuid
+ import json
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ import zipfile
+ import zipstream
+ from unittest.mock import MagicMock
+diff -ru gns3-server-2.0.3/tests/controller/test_topology.py gns3-server-2.0.3.patched/tests/controller/test_topology.py
+--- gns3-server-2.0.3/tests/controller/test_topology.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_topology.py 2017-07-23 16:23:27.965577536 +0100
+@@ -18,7 +18,7 @@
+ import json
+ import uuid
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+ from unittest.mock import MagicMock
+ from tests.utils import asyncio_patch
+
+diff -ru gns3-server-2.0.3/tests/controller/test_udp_link.py gns3-server-2.0.3.patched/tests/controller/test_udp_link.py
+--- gns3-server-2.0.3/tests/controller/test_udp_link.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/controller/test_udp_link.py 2017-07-23 16:23:27.961577441 +0100
+@@ -17,7 +17,7 @@
+
+ import pytest
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ from unittest.mock import MagicMock
+ from tests.utils import asyncio_patch, AsyncioMagicMock
+
+diff -ru gns3-server-2.0.3/tests/handlers/api/base.py gns3-server-2.0.3.patched/tests/handlers/api/base.py
+--- gns3-server-2.0.3/tests/handlers/api/base.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/base.py 2017-07-23 16:23:27.933576777 +0100
+@@ -21,7 +21,7 @@
+ import json
+ import re
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import os
+
+
+diff -ru gns3-server-2.0.3/tests/handlers/api/compute/test_docker.py gns3-server-2.0.3.patched/tests/handlers/api/compute/test_docker.py
+--- gns3-server-2.0.3/tests/handlers/api/compute/test_docker.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/compute/test_docker.py 2017-07-23 16:23:27.938576896 +0100
+@@ -20,7 +20,7 @@
+ import stat
+ import sys
+ import uuid
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from tests.utils import asyncio_patch
+ from unittest.mock import patch, MagicMock, PropertyMock
+diff -ru gns3-server-2.0.3/tests/handlers/api/compute/test_iou.py gns3-server-2.0.3.patched/tests/handlers/api/compute/test_iou.py
+--- gns3-server-2.0.3/tests/handlers/api/compute/test_iou.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/compute/test_iou.py 2017-07-23 16:23:27.934576801 +0100
+@@ -20,7 +20,7 @@
+ import stat
+ import sys
+ import uuid
+-import aiohttp
++import aiohttp13 as aiohttp
+
+ from tests.utils import asyncio_patch
+ from unittest.mock import patch, MagicMock, PropertyMock
+diff -ru gns3-server-2.0.3/tests/handlers/api/compute/test_project.py gns3-server-2.0.3.patched/tests/handlers/api/compute/test_project.py
+--- gns3-server-2.0.3/tests/handlers/api/compute/test_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/compute/test_project.py 2017-07-23 16:23:27.936576848 +0100
+@@ -22,7 +22,7 @@
+ import uuid
+ import os
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import zipfile
+
+ from unittest.mock import patch
+diff -ru gns3-server-2.0.3/tests/handlers/api/controller/test_drawing.py gns3-server-2.0.3.patched/tests/handlers/api/controller/test_drawing.py
+--- gns3-server-2.0.3/tests/handlers/api/controller/test_drawing.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/controller/test_drawing.py 2017-07-23 16:23:27.939576919 +0100
+@@ -22,7 +22,7 @@
+ import uuid
+ import os
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+
+
+diff -ru gns3-server-2.0.3/tests/handlers/api/controller/test_link.py gns3-server-2.0.3.patched/tests/handlers/api/controller/test_link.py
+--- gns3-server-2.0.3/tests/handlers/api/controller/test_link.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/controller/test_link.py 2017-07-23 16:23:27.941576967 +0100
+@@ -22,7 +22,7 @@
+ import uuid
+ import os
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+
+
+diff -ru gns3-server-2.0.3/tests/handlers/api/controller/test_node.py gns3-server-2.0.3.patched/tests/handlers/api/controller/test_node.py
+--- gns3-server-2.0.3/tests/handlers/api/controller/test_node.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/controller/test_node.py 2017-07-23 16:23:27.943577014 +0100
+@@ -22,7 +22,7 @@
+ import uuid
+ import os
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+
+
+diff -ru gns3-server-2.0.3/tests/handlers/api/controller/test_project.py gns3-server-2.0.3.patched/tests/handlers/api/controller/test_project.py
+--- gns3-server-2.0.3/tests/handlers/api/controller/test_project.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/api/controller/test_project.py 2017-07-23 16:23:27.946577085 +0100
+@@ -22,7 +22,7 @@
+ import uuid
+ import os
+ import asyncio
+-import aiohttp
++import aiohttp13 as aiohttp
+ import pytest
+ import zipfile
+ import json
+diff -ru gns3-server-2.0.3/tests/handlers/test_index.py gns3-server-2.0.3.patched/tests/handlers/test_index.py
+--- gns3-server-2.0.3/tests/handlers/test_index.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/handlers/test_index.py 2017-07-23 16:23:27.949577157 +0100
+@@ -16,7 +16,7 @@
+ # along with this program. If not, see .
+
+
+-import aiohttp
++import aiohttp13 as aiohttp
+ import os
+ from unittest.mock import patch
+
+diff -ru gns3-server-2.0.3/tests/utils/test_path.py gns3-server-2.0.3.patched/tests/utils/test_path.py
+--- gns3-server-2.0.3/tests/utils/test_path.py 2017-06-13 09:35:50.000000000 +0100
++++ gns3-server-2.0.3.patched/tests/utils/test_path.py 2017-07-23 16:23:27.970577655 +0100
+@@ -17,7 +17,7 @@
+
+ import os
+ import pytest
+-import aiohttp
++import aiohttp13 as aiohttp
+
+
+ from gns3server.utils.path import check_path_allowed, get_default_project_directory
diff --git a/gns3-server.spec b/gns3-server.spec
index 763ec98..896a72f 100644
--- a/gns3-server.spec
+++ b/gns3-server.spec
@@ -1,13 +1,12 @@
Name: gns3-server
Version: 2.0.3
-Release: 2%{?dist}
+Release: 4%{?dist}
Summary: Graphical Network Simulator 3
License: GPLv3
URL: http://gns3.com
Source0: https://github.com/GNS3/gns3-server/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: gns3.service
-Patch0: gns3-server-2.0.3-add-aiohttpd2-support.patch
BuildArch: noarch
BuildRequires: python3-devel
@@ -18,14 +17,15 @@ BuildRequires: python-sphinx
#Requires: busybox
#Requires: docker
Requires: qemu-kvm
-Requires: python3-jsonschema
-Requires: python3-aiohttp >= 1.2.0
-Requires: python3-aiohttp-cors >= 0.4.0
+Requires: python3-jsonschema >= 2.4.0
+Requires: python3-aiohttp >= 1.2.0, python3-aiohttp <= 1.4.0
+Requires: python3-aiohttp-cors = 0.4.1
-Requires: python3-jinja2
-Requires: python3-raven
-Requires: python3-psutil
-Requires: python3-zipstream
+Requires: python3-jinja2 >= 2.7.3
+Requires: python3-raven >= 5.23.0
+Requires: python3-psutil >= 3.0.0
+Requires: python3-zipstream >= 1.1.4
+Requires: python3-yarl >= 0.9.8, python3-yarl < 0.10
%description
@@ -45,11 +45,8 @@ Requires: %{name} = %{version}-%{release}
%prep
%autosetup -p1
-# Temporary workarounds
+# PR opened
sed -i '/typing/d' requirements.txt
-sed -i 's/==/>=/g' requirements.txt
-sed -i 's/yarl>=0.9.8,<0.10/yarl>=0.9.8/' requirements.txt
-sed -i 's/aiohttp>=1.3.5,<=1.4.0/aiohttp>=1.3.5/' requirements.txt
%build
%py3_build
@@ -115,6 +112,13 @@ exit 0
%systemd_postun_with_restart gns3.service
%changelog
+* Sun Jul 23 2017 Athmane Madjoudj - 2.0.3-4
+- Bump release number for copr update
+
+* Sun Jul 23 2017 Athmane Madjoudj - 2.0.3-3
+- Remove patch for aiohttp >= 2 since gns3 was instable
+- Use the exact deps version as recommended by upstream
+
* Sat Jul 22 2017 Athmane Madjoudj - 2.0.3-2
- Add a patch to support aiohttp >= 2