Fix RuntimeWarning: You have iterated over the result of

pkg_resources.parse_version. This is a legacy behavior

Fix #504
This commit is contained in:
Julien Duponchelle committed 2016-05-02 17:14:15 +02:00
1 parent 978ec1b5be
commit d952718f30
12 files changed
+56 -11

No files matched your search

+1 -1
View File
@@ -24,7 +24,7 @@ import tempfile
import psutil
import platform
from pkg_resources import parse_version
from gns3server.utils import parse_version
from ..utils.asyncio import wait_run_in_executor
from ..ubridge.hypervisor import Hypervisor
from .vm_error import VMError
+1 -1
View File
@@ -24,7 +24,7 @@ import logging
import aiohttp
import urllib
import json
from pkg_resources import parse_version
from gns3server.utils import parse_version
log = logging.getLogger(__name__)
+1 -1
View File
@@ -34,7 +34,7 @@ log = logging.getLogger(__name__)
from gns3server.utils.interfaces import interfaces, is_interface_up
from gns3server.utils.asyncio import wait_run_in_executor
from pkg_resources import parse_version
from gns3server.utils import parse_version
from uuid import UUID, uuid4
from ..base_manager import BaseManager
from ..project_manager import ProjectManager
@@ -21,7 +21,7 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L558
"""
import asyncio
from pkg_resources import parse_version
from gns3server.utils import parse_version
from .device import Device
from ..nios.nio_udp import NIOUDP
+1 -1
View File
@@ -30,7 +30,7 @@ import asyncio
import socket
import gns3server
from pkg_resources import parse_version
from gns3server.utils import parse_version
from .qemu_error import QemuError
from ..adapters.ethernet_adapter import EthernetAdapter
from ..nios.nio_udp import NIOUDP
@@ -28,7 +28,7 @@ import json
import socket
import asyncio
from pkg_resources import parse_version
from gns3server.utils import parse_version
from gns3server.utils.telnet_server import TelnetServer
from gns3server.utils.asyncio import wait_for_file_creation, wait_for_named_pipe_creation
from .virtualbox_error import VirtualBoxError
+1 -1
View File
@@ -31,7 +31,7 @@ import codecs
from collections import OrderedDict
from gns3server.utils.interfaces import interfaces
from gns3server.utils.asyncio import subprocess_check_output
from pkg_resources import parse_version
from gns3server.utils import parse_version
log = logging.getLogger(__name__)
+1 -1
View File
@@ -31,7 +31,7 @@ import shutil
from ...utils.asyncio import wait_for_process_termination
from ...utils.asyncio import monitor_process
from ...utils.asyncio import subprocess_check_output
from pkg_resources import parse_version
from gns3server.utils import parse_version
from .vpcs_error import VPCSError
from ..adapters.ethernet_adapter import EthernetAdapter
from ..nios.nio_udp import NIOUDP
+1 -1
View File
@@ -25,7 +25,7 @@ import asyncio
import socket
import re
from pkg_resources import parse_version
from gns3server.utils import parse_version
from gns3server.utils.asyncio import wait_for_process_termination
from gns3server.utils.asyncio import subprocess_check_output
from .ubridge_hypervisor import UBridgeHypervisor
+30
View File
@@ -16,6 +16,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import re
import textwrap
import posixpath
@@ -44,3 +45,32 @@ def int_to_macaddress(integer):
Convert an integer to a macaddress
"""
return ":".join(textwrap.wrap("%012x" % (integer), width=2))
def parse_version(version):
"""
Return a comparable tuple from a version string.
Replace pkg_resources.parse_version which now display a warning when use for comparing version with tuple
:returns: Version string as comparable tuple
"""
release_type_found = False
version_infos = re.split('(\.|[a-z]+)', version)
version = []
for info in version_infos:
if info == '.' or len(info) == 0:
continue
try:
info = int(info)
version.append(info)
except ValueError:
# We want rc to be at lower level than dev version
if info == 'rc':
info = 'c'
version.append(info)
release_type_found = True
if release_type_found is False:
version.append("final")
return tuple(version)