From 22703dd79fecc844d68033358f3201fd8a8f95cb Mon Sep 17 00:00:00 2001 From: MechCoder Date: Tue, 2 Jun 2015 12:32:40 +0530 Subject: [PATCH 1/5] [SPARK-8032] Make version checking for NumPy in MLlib more robust --- python/pyspark/mllib/__init__.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/python/pyspark/mllib/__init__.py b/python/pyspark/mllib/__init__.py index 07507b2ad0d05..cc1c73da75168 100644 --- a/python/pyspark/mllib/__init__.py +++ b/python/pyspark/mllib/__init__.py @@ -23,7 +23,14 @@ # MLlib currently needs NumPy 1.4+, so complain if lower import numpy -if numpy.version.version < '1.4': +ver = numpy.version.version + +fd = ver.find('.') +ver1 = int(ver[: fd]) +ver = ver[fd + 1:] +ver2 = int(ver[: ver.find('.')]) + +if ver1 < 1 or (ver1 == 1 and ver2 <= 4): raise Exception("MLlib requires NumPy 1.4+") __all__ = ['classification', 'clustering', 'feature', 'fpm', 'linalg', 'random', From e89376c2d2157d59624b205764dfd0045fc5c842 Mon Sep 17 00:00:00 2001 From: MechCoder Date: Tue, 2 Jun 2015 23:10:02 +0530 Subject: [PATCH 2/5] Better checking --- python/pyspark/mllib/__init__.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/python/pyspark/mllib/__init__.py b/python/pyspark/mllib/__init__.py index cc1c73da75168..1b2104a83d453 100644 --- a/python/pyspark/mllib/__init__.py +++ b/python/pyspark/mllib/__init__.py @@ -23,14 +23,9 @@ # MLlib currently needs NumPy 1.4+, so complain if lower import numpy -ver = numpy.version.version -fd = ver.find('.') -ver1 = int(ver[: fd]) -ver = ver[fd + 1:] -ver2 = int(ver[: ver.find('.')]) - -if ver1 < 1 or (ver1 == 1 and ver2 <= 4): +ver = [int(x) for x in numpy.version.version.split(.)[:2]] +if ver < [1, 4]: raise Exception("MLlib requires NumPy 1.4+") __all__ = ['classification', 'clustering', 'feature', 'fpm', 'linalg', 'random', From e35f0d46a0da272dec8d3712c2514c6b747c6fca Mon Sep 17 00:00:00 2001 From: MechCoder Date: Tue, 2 Jun 2015 23:31:08 +0530 Subject: [PATCH 3/5] minor --- python/pyspark/mllib/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pyspark/mllib/__init__.py b/python/pyspark/mllib/__init__.py index 1b2104a83d453..c70af9bdca914 100644 --- a/python/pyspark/mllib/__init__.py +++ b/python/pyspark/mllib/__init__.py @@ -25,7 +25,7 @@ import numpy ver = [int(x) for x in numpy.version.version.split(.)[:2]] -if ver < [1, 4]: +if ver <= [1, 4]: raise Exception("MLlib requires NumPy 1.4+") __all__ = ['classification', 'clustering', 'feature', 'fpm', 'linalg', 'random', From 893fb7e5c78410fc522410de494a0b4dc8ff6669 Mon Sep 17 00:00:00 2001 From: MechCoder Date: Wed, 3 Jun 2015 00:40:56 +0530 Subject: [PATCH 4/5] remove equal to --- python/pyspark/mllib/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pyspark/mllib/__init__.py b/python/pyspark/mllib/__init__.py index c70af9bdca914..1b2104a83d453 100644 --- a/python/pyspark/mllib/__init__.py +++ b/python/pyspark/mllib/__init__.py @@ -25,7 +25,7 @@ import numpy ver = [int(x) for x in numpy.version.version.split(.)[:2]] -if ver <= [1, 4]: +if ver < [1, 4]: raise Exception("MLlib requires NumPy 1.4+") __all__ = ['classification', 'clustering', 'feature', 'fpm', 'linalg', 'random', From 15430f82536eb0354f05264f4b85021d8791efb0 Mon Sep 17 00:00:00 2001 From: MechCoder Date: Wed, 3 Jun 2015 00:51:23 +0530 Subject: [PATCH 5/5] fix syntax error --- python/pyspark/mllib/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pyspark/mllib/__init__.py b/python/pyspark/mllib/__init__.py index 1b2104a83d453..93c6439c65858 100644 --- a/python/pyspark/mllib/__init__.py +++ b/python/pyspark/mllib/__init__.py @@ -24,7 +24,7 @@ import numpy -ver = [int(x) for x in numpy.version.version.split(.)[:2]] +ver = [int(x) for x in numpy.version.version.split('.')[:2]] if ver < [1, 4]: raise Exception("MLlib requires NumPy 1.4+")