]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Parse server version info more robustly
authorMatt (work) <matt@digitaleye.com>
Tue, 11 Feb 2014 22:26:03 +0000 (17:26 -0500)
committerMatt (work) <matt@digitaleye.com>
Tue, 11 Feb 2014 22:26:03 +0000 (17:26 -0500)
Closes #2934

lib/sqlalchemy/dialects/mysql/cymysql.py

index 40bbc880ed1683818483572f5c873661c1fb34b3..4972804595b5751c451b2f6dfe8d6e3b855e5603 100644 (file)
@@ -13,6 +13,7 @@
     :url: https://github.com/nakagami/CyMySQL
 
 """
+import re
 
 from .mysqldb import MySQLDialect_mysqldb
 from .base import (BIT, MySQLDialect)
@@ -54,7 +55,13 @@ class MySQLDialect_cymysql(MySQLDialect_mysqldb):
 
     def _get_server_version_info(self, connection):
         dbapi_con = connection.connection
-        version = [int(v) for v in dbapi_con.server_version.split('.')]
+        version = []
+        r = re.compile('[.\-]')
+        for n in r.split(dbapi_con.server_version):
+            try:
+                version.append(int(n))
+            except ValueError:
+                version.append(n)
         return tuple(version)
 
     def _detect_charset(self, connection):